--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.0... --------------------------------------------------------------------------------------------------------------- [17:13:09.353] Vidbot :: start() [17:13:09.353] Vidbot :: _next(), _stepIndex:0 of 4 [17:13:09.353] index :: _onStepStarted_vidbot(), step: 1 [17:13:09.355] Vidbot :: step[0], label:Initializing Core [17:13:09.363] index :: _onStepProgress_vidbot(), percent: 20 [17:13:09.364] Vidbot :: _parse() [17:13:09.365] index :: _onStepProgress_vidbot(), percent: 40 [17:13:09.365] Vidbot :: _validate() [17:13:09.366] index :: _onStepProgress_vidbot(), percent: 60 [17:13:09.366] Vidbot :: _fonts() [17:13:09.367] FabricFontManager :: add(), id: SourceSansPro-Bold [17:13:09.367] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [17:13:09.375] FabricFontManager :: add(), id: SourceSansPro-Light [17:13:09.375] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [17:13:09.376] FabricFontManager :: add(), id: DINOT-Bold [17:13:09.376] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [17:13:09.377] FabricFontManager :: add(), id: DINOT-Light [17:13:09.377] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [17:13:09.378] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [17:13:09.378] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [17:13:09.379] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [17:13:09.379] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [17:13:09.380] index :: _onStepProgress_vidbot(), percent: 80 [17:13:09.381] Vidbot :: _clips() [17:13:09.381] StreamManager :: add(), id:audio_vo, type:audio [17:13:09.382] AudioClip[audio_vo] :: constructor() [17:13:09.382] InputStream[audio_vo] :: constructor() [17:13:09.382] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [17:13:09.385] StreamManager :: add(), id:bg_music, type:audio [17:13:09.385] AudioClip[bg_music] :: constructor() [17:13:09.385] InputStream[bg_music] :: constructor() [17:13:09.385] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [17:13:09.386] StreamManager :: add(), id:intro, type:video [17:13:09.386] VideoStream[intro] :: constructor() [17:13:09.386] InputStream[intro] :: constructor() [17:13:09.386] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'intro', clipId: null } [17:13:09.386] StreamManager :: add(), id:simplefadedisplay, type:canvas [17:13:09.387] CanvasStream[canvas_589873836320] :: constructor() [17:13:09.387] InputStream[canvas_589873836320] :: constructor() [17:13:09.485] KenBurnsSlideshow[simplefadedisplay] :: constructor() [17:13:09.485] Overlay[simplefadedisplay] :: constructor() [17:13:09.485] CanvasClip[simplefadedisplay] :: constructor() [17:13:09.485] Clip[simplefadedisplay] :: constructor() [17:13:09.485] clip:"simplefadedisplay" added to stream:"canvas_589873836320" [17:13:09.485] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_589873836320', clipId: 'simplefadedisplay' } [17:13:09.486] StreamManager :: add(), id:caption, type:canvas [17:13:09.486] RenCaption[caption] :: constructor() [17:13:09.486] Ren[caption] :: constructor() [17:13:09.486] Overlay[caption] :: constructor() [17:13:09.486] CanvasClip[caption] :: constructor() [17:13:09.486] Clip[caption] :: constructor() [17:13:09.486] clip:"caption" added to stream:"canvas_589873836320" [17:13:09.486] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_589873836320', clipId: 'caption' } [17:13:09.487] StreamManager :: add(), id:outro, type:video [17:13:09.487] VideoStream[outro] :: constructor() [17:13:09.487] InputStream[outro] :: constructor() [17:13:09.487] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'outro', clipId: null } [17:13:09.487] all added... [17:13:09.487] Vidbot :: _next(), _stepIndex:1 of 4 [17:13:09.487] index :: _onStepCompleted_vidbot(), step: 1 [17:13:09.488] index :: _onStepStarted_vidbot(), step: 2 [17:13:09.488] Vidbot :: step[1], label:Initializing Input Streams [17:13:09.488] StreamManager :: init() [17:13:09.489] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.2 } [17:13:09.489] index :: _onStepProgress_vidbot(), percent: 20 [17:13:09.489] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.4 } [17:13:09.489] index :: _onStepProgress_vidbot(), percent: 40 [17:13:09.489] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'intro', progress: 0.6 } [17:13:09.489] index :: _onStepProgress_vidbot(), percent: 60 [17:13:09.490] CanvasStream[canvas_589873836320] :: _init(), BEGIN [17:13:09.490] i:0, c.id:simplefadedisplay [17:13:09.490] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [17:13:09.491] KenBurnsSlideshow[simplefadedisplay] :: _validate() [17:13:09.491] KenBurnsSlideshow[undefined] :: _validateAnim() [17:13:09.492] KenBurnsSlideshow[undefined] :: _validateTheme() [17:13:09.493] i:1, c.id:caption [17:13:09.493] RenCaption[caption] :: _init() [17:13:09.494] RenCaption[caption] :: _validate() [17:13:09.494] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'outro', progress: 0.8 } [17:13:09.495] index :: _onStepProgress_vidbot(), percent: 80 [17:13:09.495] KenBurnsSlideshow[simplefadedisplay] :: _build() [17:13:09.501] AnimatedImageFrame[aif] :: constructor() [17:13:09.502] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.503] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_1.jpg [17:13:09.515] RenCaption[caption] :: _build() [17:13:09.533] Overlay[caption] :: _animate() [17:13:09.536] CanvasStream[caption] :: _init(), p.then() [17:13:09.566] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.569] AnimatedImageFrame[aif] :: _init(), END [17:13:09.570] AnimatedImageFrame[aif] :: constructor() [17:13:09.571] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.571] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_2.jpg [17:13:09.597] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.599] AnimatedImageFrame[aif] :: _init(), END [17:13:09.599] AnimatedImageFrame[aif] :: constructor() [17:13:09.600] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.600] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_3.jpg [17:13:09.625] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.626] AnimatedImageFrame[aif] :: _init(), END [17:13:09.627] AnimatedImageFrame[aif] :: constructor() [17:13:09.627] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.627] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_4.jpg [17:13:09.652] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.653] AnimatedImageFrame[aif] :: _init(), END [17:13:09.653] AnimatedImageFrame[aif] :: constructor() [17:13:09.654] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.654] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_1.jpg [17:13:09.679] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.680] AnimatedImageFrame[aif] :: _init(), END [17:13:09.680] AnimatedImageFrame[aif] :: constructor() [17:13:09.680] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.681] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_2.jpg [17:13:09.705] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.706] AnimatedImageFrame[aif] :: _init(), END [17:13:09.706] AnimatedImageFrame[aif] :: constructor() [17:13:09.707] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.707] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_3.jpg [17:13:09.731] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.733] AnimatedImageFrame[aif] :: _init(), END [17:13:09.733] AnimatedImageFrame[aif] :: constructor() [17:13:09.733] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.733] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_4.jpg [17:13:09.759] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.760] AnimatedImageFrame[aif] :: _init(), END [17:13:09.761] AnimatedImageFrame[aif] :: constructor() [17:13:09.761] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.761] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_1.jpg [17:13:09.789] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.790] AnimatedImageFrame[aif] :: _init(), END [17:13:09.791] AnimatedImageFrame[aif] :: constructor() [17:13:09.791] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.791] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_2.jpg [17:13:09.816] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.817] AnimatedImageFrame[aif] :: _init(), END [17:13:09.818] AnimatedImageFrame[aif] :: constructor() [17:13:09.818] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.818] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_3.jpg [17:13:09.843] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.844] AnimatedImageFrame[aif] :: _init(), END [17:13:09.845] AnimatedImageFrame[aif] :: constructor() [17:13:09.845] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.845] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_4.jpg [17:13:09.870] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.871] AnimatedImageFrame[aif] :: _init(), END [17:13:09.871] AnimatedImageFrame[aif] :: constructor() [17:13:09.872] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.872] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_1.jpg [17:13:09.897] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.898] AnimatedImageFrame[aif] :: _init(), END [17:13:09.898] AnimatedImageFrame[aif] :: constructor() [17:13:09.898] AnimatedImageFrame[aif] :: _init(), BEGIN [17:13:09.899] CanvasClip :: LoadImageWithPromise(), src: D96EDFF1-5967-B82F-755D-80FE9D4D104F_2.jpg [17:13:09.922] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [17:13:09.924] AnimatedImageFrame[aif] :: _init(), END [17:13:09.924] Overlay[simplefadedisplay] :: _animate() [17:13:09.925] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [17:13:09.925] CanvasStream[simplefadedisplay] :: _init(), p.then() [17:13:09.925] CanvasStream[canvas_589873836320] :: _init(), promise.all.then() [17:13:09.927] CanvasStream[canvas_589873836320] :: _init(), END [17:13:09.927] StreamMangaer :: init(), stream[canvas_589873836320].then() [17:13:09.927] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_589873836320', progress: 1 } [17:13:09.928] index :: _onStepProgress_vidbot(), percent: 100 [17:13:09.928] StreamManager :: init(), promise.all.then... [17:13:09.928] Vidbot :: StreamMgr.on( 'INITED' ) [17:13:09.928] Vidbot :: _next(), _stepIndex:2 of 4 [17:13:09.928] index :: _onStepCompleted_vidbot(), step: 2 [17:13:09.928] index :: _onStepStarted_vidbot(), step: 3 [17:13:09.928] Vidbot :: step[2], label:Rendering Canvas Streams [17:13:09.929] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [17:13:09.929] StreamManager :: render() [17:13:09.930] CanvasStream[canvas_589873836320] :: render() [17:13:10.004] index :: _onStepProgress_vidbot(), percent: 0 [17:13:14.487] index :: _onStepProgress_vidbot(), percent: 5 [17:13:19.388] index :: _onStepProgress_vidbot(), percent: 10 [17:13:28.570] index :: _onStepProgress_vidbot(), percent: 15 [17:13:43.655] index :: _onStepProgress_vidbot(), percent: 20 [17:13:57.935] index :: _onStepProgress_vidbot(), percent: 25 [17:14:13.237] index :: _onStepProgress_vidbot(), percent: 30 [17:14:27.300] index :: _onStepProgress_vidbot(), percent: 35 [17:14:41.241] index :: _onStepProgress_vidbot(), percent: 40 [17:14:55.517] index :: _onStepProgress_vidbot(), percent: 45 [17:15:08.090] index :: _onStepProgress_vidbot(), percent: 50 [17:15:21.390] index :: _onStepProgress_vidbot(), percent: 55 [17:15:37.295] index :: _onStepProgress_vidbot(), percent: 60 [17:15:52.672] index :: _onStepProgress_vidbot(), percent: 65 [17:16:06.370] index :: _onStepProgress_vidbot(), percent: 70 [17:16:19.949] index :: _onStepProgress_vidbot(), percent: 75 [17:16:34.053] index :: _onStepProgress_vidbot(), percent: 80 [17:16:47.200] index :: _onStepProgress_vidbot(), percent: 85 [17:17:01.245] index :: _onStepProgress_vidbot(), percent: 90 [17:17:16.230] index :: _onStepProgress_vidbot(), percent: 95 [17:17:26.330] index :: _onStepProgress_vidbot(), percent: 100 [17:17:26.713] StreamManager :: render(), Promise.all.then... [17:17:26.713] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [17:17:26.713] Vidbot :: _next(), _stepIndex:3 of 4 [17:17:26.714] index :: _onStepCompleted_vidbot(), step: 3 [17:17:26.714] index :: _onStepStarted_vidbot(), step: 4 [17:17:26.715] Vidbot :: step[3], label:Encoding Media [17:17:26.718] VideoStream[intro] :: inputOptions() [17:17:26.718] VideoFilters :: Scale() [17:17:26.718] VideoFilters :: Overlay() [17:17:26.719] CanvasFilters :: Overlay() [17:17:26.719] VideoStream[outro] :: inputOptions() [17:17:26.719] VideoFilters :: Tpad() [17:17:26.719] VideoFilters :: Scale() [17:17:26.719] VideoFilters :: Overlay() [17:17:26.720] AudioStream[audio_vo] :: inputOptions() [17:17:26.720] AudioFilters :: Volume() [17:17:26.721] filter: [4:a]volume=1[4_vol] [17:17:26.721] AudioFilters :: Delay() [17:17:26.721] filter: [4_vol]adelay=6070|6070[4_del] [17:17:26.721] AudioStream[bg_music] :: inputOptions() [17:17:26.721] AudioFilters :: Volume() [17:17:26.721] filter: [5:a]volume=0.25[5_vol] [17:17:26.721] AudioFilters :: FadeOut() [17:17:26.721] filter: [5_vol]afade=t=out:st=41.6:d=1[5_fadeout] [17:17:26.721] AudioFilters :: Delay() [17:17:26.721] filter: [5_fadeout]adelay=6070|6070[5_del] [17:17:26.721] VideoStream[intro] :: inputOptions() [17:17:26.722] AudioFilters :: Volume() [17:17:26.722] filter: [6:a]volume=1[6_vol] [17:17:26.722] AudioFilters :: Delay() [17:17:26.722] filter: [6_vol]adelay=0|0[6_del] [17:17:26.722] VideoStream[outro] :: inputOptions() [17:17:26.722] AudioFilters :: Volume() [17:17:26.722] filter: [7:a]volume=1[7_vol] [17:17:26.722] AudioFilters :: Delay() [17:17:26.722] filter: [7_vol]adelay=47670|47670[7_del] [17:17:26.722] AudioFilters :: Mix() [17:17:26.722] filter: [4_del][5_del][6_del][7_del]amix=inputs=4:duration=longest[a_out] [17:17:26.722] mixed filter: [4_del][5_del][6_del][7_del]amix=inputs=4:duration=longest[a_out] [17:17:26.725] hang.time: 60 [17:17:26.843] Vidbot :: ffmpeg.on( 'start' ) [17:17:26.843] ffmpeg -f lavfi -i color=c=000000:s=960x540:r=30:duration=52.68 -to 00:00:06.070 -i file:///var/www/html/clients/6073/library/960_intro.mp4 -r 30 -i . [17:17:26.843] /tmp/canvas_589873836320_%05d.png -to 00:00:05.009 -i file:///var/www/html/clients/6073/library/960_outro.mp4 -to 00:00:41.600 -i file:///var/www/html [17:17:26.843] /clients/6073/audio/D96EDFF1-5967-B82F-755D-80FE9D4D104F.mp3 -to 00:00:41.600 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Jazz-3 [17:17:26.843] .mp3 -to 00:00:06.070 -i file:///var/www/html/clients/6073/library/960_intro.mp4 -to 00:00:05.009 -i file:///var/www/html/clients/6073/library/960_out [17:17:26.843] ro.mp4 -y -filter_complex [1:v]scale=w=960:h=540[1_scaled];[0:v][1_scaled]overlay=x=0:y=0:enable='between(t,0,6.07)'[1_out];[1_out][2:v]overlay=x=0:y= [17:17:26.843] 0[2_out];[3:v]tpad=start_duration=47.620000000000005[3_tpad];[3_tpad]scale=w=960:h=540[3_scaled];[2_out][3_scaled]overlay=x=0:y=0:enable='between(t,47 [17:17:26.843] .67,52.68)'[3_out];[4:a]volume=1[4_vol];[4_vol]adelay=6070|6070[4_del];[5:a]volume=0.25[5_vol];[5_vol]afade=t=out:st=41.6:d=1[5_fadeout];[5_fadeout]ad [17:17:26.843] elay=6070|6070[5_del];[6:a]volume=1[6_vol];[6_vol]adelay=0|0[6_del];[7:a]volume=1[7_vol];[7_vol]adelay=47670|47670[7_del];[4_del][5_del][6_del][7_del] [17:17:26.843] amix=inputs=4:duration=longest[a_out] -acodec aac -vcodec libx264 -r 30 -f mp4 -map [a_out] -map [3_out] -preset veryfast -crf 18 -movflags frag_keyfr [17:17:26.843] ame+empty_moov -pix_fmt yuv420p /var/www/html/clients/6073/video/D96EDFF1-5967-B82F-755D-80FE9D4D104F.mp4 [17:17:27.198] index :: _onStepProgress_vidbot(), percent: -3943144376 [17:17:27.616] index :: _onStepProgress_vidbot(), percent: 1 [17:17:28.616] index :: _onStepProgress_vidbot(), percent: 5 [17:17:30.138] index :: _onStepProgress_vidbot(), percent: 10 [17:17:31.643] index :: _onStepProgress_vidbot(), percent: 16 [17:17:32.658] index :: _onStepProgress_vidbot(), percent: 20 [17:17:34.178] index :: _onStepProgress_vidbot(), percent: 25 [17:17:35.693] index :: _onStepProgress_vidbot(), percent: 31 [17:17:36.701] index :: _onStepProgress_vidbot(), percent: 35 [17:17:38.213] index :: _onStepProgress_vidbot(), percent: 41 [17:17:39.219] index :: _onStepProgress_vidbot(), percent: 46 [17:17:40.229] index :: _onStepProgress_vidbot(), percent: 50 [17:17:41.239] index :: _onStepProgress_vidbot(), percent: 55 [17:17:42.755] index :: _onStepProgress_vidbot(), percent: 62 [17:17:43.758] index :: _onStepProgress_vidbot(), percent: 66 [17:17:44.765] index :: _onStepProgress_vidbot(), percent: 71 [17:17:45.767] index :: _onStepProgress_vidbot(), percent: 76 [17:17:46.774] index :: _onStepProgress_vidbot(), percent: 80 [17:17:47.780] index :: _onStepProgress_vidbot(), percent: 85 [17:17:48.787] index :: _onStepProgress_vidbot(), percent: 91 [17:17:49.788] index :: _onStepProgress_vidbot(), percent: 97 [17:17:50.155] index :: _onStepProgress_vidbot(), percent: 100 [17:17:50.223] Vidbot :: ffmpeg.on( 'end' ), Done! [17:17:50.223] StreamManager :: dispose() [17:17:50.223] CanvasStream[canvas_589873836320] :: dispose() [17:17:50.228] Vidbot :: fflog.on( 'finish' ) [17:17:50.228] fflog.path: /var/www/html/clients/6073/video/D96EDFF1-5967-B82F-755D-80FE9D4D104F.mp4.fflog [17:17:50.228] Vidbot :: _next(), _stepIndex:4 of 4 [17:17:50.228] index :: _onStepCompleted_vidbot(), step: 4 [17:17:50.229] index :: _onComplete_vidbot(), data: { stepTime: 0.001, appTime: 280.896, output: '/var/www/html/clients/6073/video/D96EDFF1-5967-B82F-755D-80FE9D4D104F.mp4', duration: 52.68 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/6073/video/D96EDFF1-5967-B82F-755D-80FE9D4D104F.mp4 Media Duration : 00:00:52.679 Generation Time : 00:04:40.896 ---------------------------------------------------------------------------------------------------------------