--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.1... --------------------------------------------------------------------------------------------------------------- [03:54:01.072] Vidbot :: start() [03:54:01.073] Vidbot :: _next(), _stepIndex:0 of 4 [03:54:01.074] index :: _onStepStarted_vidbot(), step: 1 [03:54:01.075] Vidbot :: step[0], label:Initializing Core [03:54:01.085] index :: _onStepProgress_vidbot(), percent: 20 [03:54:01.085] Vidbot :: _parse() [03:54:01.086] index :: _onStepProgress_vidbot(), percent: 40 [03:54:01.087] Vidbot :: _validate() [03:54:01.088] index :: _onStepProgress_vidbot(), percent: 60 [03:54:01.088] Vidbot :: _fonts() [03:54:01.088] FabricFontManager :: add(), id: SourceSansPro-Bold [03:54:01.088] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [03:54:01.097] FabricFontManager :: add(), id: SourceSansPro-Light [03:54:01.098] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [03:54:01.098] FabricFontManager :: add(), id: DINOT-Bold [03:54:01.099] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [03:54:01.099] FabricFontManager :: add(), id: DINOT-Light [03:54:01.099] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [03:54:01.100] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [03:54:01.100] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [03:54:01.101] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [03:54:01.101] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [03:54:01.102] index :: _onStepProgress_vidbot(), percent: 80 [03:54:01.103] Vidbot :: _clips() [03:54:01.103] StreamManager :: add(), id:audio_vo, type:audio [03:54:01.104] AudioClip[audio_vo] :: constructor() [03:54:01.104] InputStream[audio_vo] :: constructor() [03:54:01.104] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [03:54:01.107] StreamManager :: add(), id:bg_music, type:audio [03:54:01.107] AudioClip[bg_music] :: constructor() [03:54:01.107] InputStream[bg_music] :: constructor() [03:54:01.107] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [03:54:01.108] StreamManager :: add(), id:simplefadedisplay, type:canvas [03:54:01.108] CanvasStream[canvas_1540045431023] :: constructor() [03:54:01.108] InputStream[canvas_1540045431023] :: constructor() [03:54:01.194] KenBurnsSlideshow[simplefadedisplay] :: constructor() [03:54:01.195] Overlay[simplefadedisplay] :: constructor() [03:54:01.195] CanvasClip[simplefadedisplay] :: constructor() [03:54:01.195] Clip[simplefadedisplay] :: constructor() [03:54:01.195] clip:"simplefadedisplay" added to stream:"canvas_1540045431023" [03:54:01.195] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1540045431023', clipId: 'simplefadedisplay' } [03:54:01.195] StreamManager :: add(), id:caption, type:canvas [03:54:01.196] RenCaption[caption] :: constructor() [03:54:01.196] Ren[caption] :: constructor() [03:54:01.196] Overlay[caption] :: constructor() [03:54:01.196] CanvasClip[caption] :: constructor() [03:54:01.196] Clip[caption] :: constructor() [03:54:01.196] clip:"caption" added to stream:"canvas_1540045431023" [03:54:01.196] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1540045431023', clipId: 'caption' } [03:54:01.196] all added... [03:54:01.196] Vidbot :: _next(), _stepIndex:1 of 4 [03:54:01.197] index :: _onStepCompleted_vidbot(), step: 1 [03:54:01.197] index :: _onStepStarted_vidbot(), step: 2 [03:54:01.197] Vidbot :: step[1], label:Initializing Input Streams [03:54:01.198] StreamManager :: init() [03:54:01.198] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [03:54:01.198] index :: _onStepProgress_vidbot(), percent: 33 [03:54:01.198] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [03:54:01.199] index :: _onStepProgress_vidbot(), percent: 67 [03:54:01.199] CanvasStream[canvas_1540045431023] :: _init(), BEGIN [03:54:01.199] i:0, c.id:simplefadedisplay [03:54:01.200] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [03:54:01.200] KenBurnsSlideshow[simplefadedisplay] :: _validate() [03:54:01.200] KenBurnsSlideshow[undefined] :: _validateAnim() [03:54:01.201] KenBurnsSlideshow[undefined] :: _validateTheme() [03:54:01.202] i:1, c.id:caption [03:54:01.202] RenCaption[caption] :: _init() [03:54:01.203] RenCaption[caption] :: _validate() [03:54:01.204] KenBurnsSlideshow[simplefadedisplay] :: _build() [03:54:01.211] AnimatedImageFrame[aif] :: constructor() [03:54:01.212] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.212] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_1.jpg [03:54:01.226] RenCaption[caption] :: _build() [03:54:01.243] Overlay[caption] :: _animate() [03:54:01.246] CanvasStream[caption] :: _init(), p.then() [03:54:01.270] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.275] AnimatedImageFrame[aif] :: _init(), END [03:54:01.277] AnimatedImageFrame[aif] :: constructor() [03:54:01.277] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.277] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_2.jpg [03:54:01.299] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.300] AnimatedImageFrame[aif] :: _init(), END [03:54:01.301] AnimatedImageFrame[aif] :: constructor() [03:54:01.301] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.301] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_3.jpg [03:54:01.322] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.323] AnimatedImageFrame[aif] :: _init(), END [03:54:01.324] AnimatedImageFrame[aif] :: constructor() [03:54:01.324] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.324] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_4.jpg [03:54:01.343] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.345] AnimatedImageFrame[aif] :: _init(), END [03:54:01.345] AnimatedImageFrame[aif] :: constructor() [03:54:01.346] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.346] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_5.jpg [03:54:01.366] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.367] AnimatedImageFrame[aif] :: _init(), END [03:54:01.368] AnimatedImageFrame[aif] :: constructor() [03:54:01.368] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.368] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_6.jpg [03:54:01.388] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.390] AnimatedImageFrame[aif] :: _init(), END [03:54:01.390] AnimatedImageFrame[aif] :: constructor() [03:54:01.390] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.390] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_7.jpg [03:54:01.411] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.412] AnimatedImageFrame[aif] :: _init(), END [03:54:01.413] AnimatedImageFrame[aif] :: constructor() [03:54:01.413] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.413] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_8.jpg [03:54:01.433] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.434] AnimatedImageFrame[aif] :: _init(), END [03:54:01.435] AnimatedImageFrame[aif] :: constructor() [03:54:01.435] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.435] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_9.jpg [03:54:01.453] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.454] AnimatedImageFrame[aif] :: _init(), END [03:54:01.455] AnimatedImageFrame[aif] :: constructor() [03:54:01.455] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.455] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_10.jpg [03:54:01.478] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.479] AnimatedImageFrame[aif] :: _init(), END [03:54:01.479] AnimatedImageFrame[aif] :: constructor() [03:54:01.480] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.480] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_11.jpg [03:54:01.498] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.500] AnimatedImageFrame[aif] :: _init(), END [03:54:01.500] AnimatedImageFrame[aif] :: constructor() [03:54:01.500] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.500] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_12.jpg [03:54:01.518] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.519] AnimatedImageFrame[aif] :: _init(), END [03:54:01.520] AnimatedImageFrame[aif] :: constructor() [03:54:01.520] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.520] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_13.jpg [03:54:01.540] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.541] AnimatedImageFrame[aif] :: _init(), END [03:54:01.542] AnimatedImageFrame[aif] :: constructor() [03:54:01.542] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.542] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_14.jpg [03:54:01.558] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.560] AnimatedImageFrame[aif] :: _init(), END [03:54:01.560] AnimatedImageFrame[aif] :: constructor() [03:54:01.560] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.560] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_15.jpg [03:54:01.579] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.580] AnimatedImageFrame[aif] :: _init(), END [03:54:01.580] AnimatedImageFrame[aif] :: constructor() [03:54:01.580] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.581] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_16.jpg [03:54:01.597] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.598] AnimatedImageFrame[aif] :: _init(), END [03:54:01.598] AnimatedImageFrame[aif] :: constructor() [03:54:01.599] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.599] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_17.jpg [03:54:01.614] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.616] AnimatedImageFrame[aif] :: _init(), END [03:54:01.616] AnimatedImageFrame[aif] :: constructor() [03:54:01.616] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.617] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_18.jpg [03:54:01.634] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.636] AnimatedImageFrame[aif] :: _init(), END [03:54:01.636] AnimatedImageFrame[aif] :: constructor() [03:54:01.636] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.637] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_19.jpg [03:54:01.657] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.658] AnimatedImageFrame[aif] :: _init(), END [03:54:01.659] AnimatedImageFrame[aif] :: constructor() [03:54:01.659] AnimatedImageFrame[aif] :: _init(), BEGIN [03:54:01.659] CanvasClip :: LoadImageWithPromise(), src: 5C0E2CCC-A720-A12D-727C-A3033FFA69DF_20.jpg [03:54:01.674] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:54:01.675] AnimatedImageFrame[aif] :: _init(), END [03:54:01.676] Overlay[simplefadedisplay] :: _animate() [03:54:01.676] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [03:54:01.676] CanvasStream[simplefadedisplay] :: _init(), p.then() [03:54:01.677] CanvasStream[canvas_1540045431023] :: _init(), promise.all.then() [03:54:01.679] CanvasStream[canvas_1540045431023] :: _init(), END [03:54:01.679] StreamMangaer :: init(), stream[canvas_1540045431023].then() [03:54:01.679] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1540045431023', progress: 1 } [03:54:01.679] index :: _onStepProgress_vidbot(), percent: 100 [03:54:01.680] StreamManager :: init(), promise.all.then... [03:54:01.680] Vidbot :: StreamMgr.on( 'INITED' ) [03:54:01.680] Vidbot :: _next(), _stepIndex:2 of 4 [03:54:01.680] index :: _onStepCompleted_vidbot(), step: 2 [03:54:01.680] index :: _onStepStarted_vidbot(), step: 3 [03:54:01.680] Vidbot :: step[2], label:Rendering Canvas Streams [03:54:01.681] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [03:54:01.681] StreamManager :: render() [03:54:01.682] CanvasStream[canvas_1540045431023] :: render() [03:54:01.719] index :: _onStepProgress_vidbot(), percent: 0 [03:54:18.347] index :: _onStepProgress_vidbot(), percent: 5 [03:54:36.267] index :: _onStepProgress_vidbot(), percent: 10 [03:54:53.804] index :: _onStepProgress_vidbot(), percent: 15 [03:55:09.277] index :: _onStepProgress_vidbot(), percent: 20 [03:55:26.673] index :: _onStepProgress_vidbot(), percent: 25 [03:55:43.253] index :: _onStepProgress_vidbot(), percent: 30 [03:55:59.623] index :: _onStepProgress_vidbot(), percent: 35 [03:56:17.191] index :: _onStepProgress_vidbot(), percent: 40 [03:56:33.321] index :: _onStepProgress_vidbot(), percent: 45 [03:56:51.083] index :: _onStepProgress_vidbot(), percent: 50 [03:57:07.937] index :: _onStepProgress_vidbot(), percent: 55 [03:57:22.192] index :: _onStepProgress_vidbot(), percent: 60 [03:57:38.904] index :: _onStepProgress_vidbot(), percent: 65 [03:57:50.646] index :: _onStepProgress_vidbot(), percent: 70 [03:58:04.404] index :: _onStepProgress_vidbot(), percent: 75 [03:58:17.837] index :: _onStepProgress_vidbot(), percent: 80 [03:58:31.514] index :: _onStepProgress_vidbot(), percent: 85 [03:58:46.680] index :: _onStepProgress_vidbot(), percent: 90 [03:58:59.781] index :: _onStepProgress_vidbot(), percent: 95 [03:59:10.160] index :: _onStepProgress_vidbot(), percent: 100 [03:59:11.088] StreamManager :: render(), Promise.all.then... [03:59:11.088] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [03:59:11.089] Vidbot :: _next(), _stepIndex:3 of 4 [03:59:11.089] index :: _onStepCompleted_vidbot(), step: 3 [03:59:11.089] index :: _onStepStarted_vidbot(), step: 4 [03:59:11.090] Vidbot :: step[3], label:Encoding Media [03:59:11.093] CanvasFilters :: Overlay() [03:59:11.094] AudioStream[audio_vo] :: inputOptions() [03:59:11.094] AudioFilters :: Volume() [03:59:11.094] filter: [2:a]volume=1[2_vol] [03:59:11.094] AudioFilters :: Delay() [03:59:11.094] filter: [2_vol]adelay=0|0[2_del] [03:59:11.095] AudioStream[bg_music] :: inputOptions() [03:59:11.095] AudioFilters :: Volume() [03:59:11.095] filter: [3:a]volume=0.25[3_vol] [03:59:11.095] AudioFilters :: FadeOut() [03:59:11.095] filter: [3_vol]afade=t=out:st=60:d=1[3_fadeout] [03:59:11.095] AudioFilters :: Delay() [03:59:11.095] filter: [3_fadeout]adelay=0|0[3_del] [03:59:11.095] AudioFilters :: Mix() [03:59:11.095] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [03:59:11.095] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [03:59:11.098] hang.time: 60 [03:59:11.202] Vidbot :: ffmpeg.on( 'start' ) [03:59:11.202] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=60 -r 30 -i ./tmp/canvas_1540045431023_%05d.png -to 00:01:00.000 -i file:///var/www/html/cli [03:59:11.202] ents/10651/audio/5C0E2CCC-A720-A12D-727C-A3033FFA69DF.mp3 -to 00:01:00.000 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/RF6_Rock. [03:59:11.202] mp3 -y -filter_complex [0:v][1:v]overlay=x=0:y=0[1_out];[2:a]volume=1[2_vol];[2_vol]adelay=0|0[2_del];[3:a]volume=0.25[3_vol];[3_vol]afade=t=out:st=60 [03:59:11.202] :d=1[3_fadeout];[3_fadeout]adelay=0|0[3_del];[2_del][3_del]amix=inputs=2:duration=longest[a_out] -acodec aac -vcodec libx264 -r 30 -f mp4 -map [a_out] [03:59:11.202] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/10651/video/5C0E2CCC-A720-A12D-727C-A [03:59:11.202] 3033FFA69DF.mp4 [03:59:11.360] index :: _onStepProgress_vidbot(), percent: -3462080762 [03:59:11.789] index :: _onStepProgress_vidbot(), percent: 1 [03:59:12.796] index :: _onStepProgress_vidbot(), percent: 6 [03:59:13.806] index :: _onStepProgress_vidbot(), percent: 12 [03:59:14.307] index :: _onStepProgress_vidbot(), percent: 15 [03:59:15.316] index :: _onStepProgress_vidbot(), percent: 20 [03:59:16.351] index :: _onStepProgress_vidbot(), percent: 26 [03:59:17.359] index :: _onStepProgress_vidbot(), percent: 31 [03:59:18.362] index :: _onStepProgress_vidbot(), percent: 37 [03:59:18.872] index :: _onStepProgress_vidbot(), percent: 40 [03:59:19.885] index :: _onStepProgress_vidbot(), percent: 46 [03:59:20.886] index :: _onStepProgress_vidbot(), percent: 52 [03:59:21.392] index :: _onStepProgress_vidbot(), percent: 55 [03:59:22.402] index :: _onStepProgress_vidbot(), percent: 61 [03:59:23.400] index :: _onStepProgress_vidbot(), percent: 67 [03:59:23.908] index :: _onStepProgress_vidbot(), percent: 71 [03:59:24.910] index :: _onStepProgress_vidbot(), percent: 77 [03:59:25.410] index :: _onStepProgress_vidbot(), percent: 80 [03:59:26.414] index :: _onStepProgress_vidbot(), percent: 87 [03:59:26.919] index :: _onStepProgress_vidbot(), percent: 90 [03:59:27.920] index :: _onStepProgress_vidbot(), percent: 97 [03:59:28.418] index :: _onStepProgress_vidbot(), percent: 100 [03:59:28.438] Vidbot :: ffmpeg.on( 'end' ), Done! [03:59:28.438] StreamManager :: dispose() [03:59:28.439] CanvasStream[canvas_1540045431023] :: dispose() [03:59:28.444] Vidbot :: fflog.on( 'finish' ) [03:59:28.444] fflog.path: /var/www/html/clients/10651/video/5C0E2CCC-A720-A12D-727C-A3033FFA69DF.mp4.fflog [03:59:28.444] Vidbot :: _next(), _stepIndex:4 of 4 [03:59:28.444] index :: _onStepCompleted_vidbot(), step: 4 [03:59:28.444] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 327.393, output: '/var/www/html/clients/10651/video/5C0E2CCC-A720-A12D-727C-A3033FFA69DF.mp4', duration: 60 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/10651/video/5C0E2CCC-A720-A12D-727C-A3033FFA69DF.mp4 Media Duration : 00:01:00.000 Generation Time : 00:05:27.392 ---------------------------------------------------------------------------------------------------------------