--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.0... --------------------------------------------------------------------------------------------------------------- [16:45:41.005] Vidbot :: start() [16:45:41.006] Vidbot :: _next(), _stepIndex:0 of 4 [16:45:41.006] index :: _onStepStarted_vidbot(), step: 1 [16:45:41.008] Vidbot :: step[0], label:Initializing Core [16:45:41.016] index :: _onStepProgress_vidbot(), percent: 20 [16:45:41.016] Vidbot :: _parse() [16:45:41.017] index :: _onStepProgress_vidbot(), percent: 40 [16:45:41.017] Vidbot :: _validate() [16:45:41.018] index :: _onStepProgress_vidbot(), percent: 60 [16:45:41.018] Vidbot :: _fonts() [16:45:41.019] FabricFontManager :: add(), id: SourceSansPro-Bold [16:45:41.019] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [16:45:41.027] FabricFontManager :: add(), id: SourceSansPro-Light [16:45:41.027] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [16:45:41.028] FabricFontManager :: add(), id: DINOT-Bold [16:45:41.028] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [16:45:41.028] FabricFontManager :: add(), id: DINOT-Light [16:45:41.029] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [16:45:41.029] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [16:45:41.029] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [16:45:41.030] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [16:45:41.030] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [16:45:41.031] index :: _onStepProgress_vidbot(), percent: 80 [16:45:41.031] Vidbot :: _clips() [16:45:41.032] StreamManager :: add(), id:audio_vo, type:audio [16:45:41.032] AudioClip[audio_vo] :: constructor() [16:45:41.032] InputStream[audio_vo] :: constructor() [16:45:41.032] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [16:45:41.035] StreamManager :: add(), id:bg_music, type:audio [16:45:41.035] AudioClip[bg_music] :: constructor() [16:45:41.035] InputStream[bg_music] :: constructor() [16:45:41.035] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [16:45:41.036] StreamManager :: add(), id:simplefadedisplay, type:canvas [16:45:41.036] CanvasStream[canvas_1016657232545] :: constructor() [16:45:41.036] InputStream[canvas_1016657232545] :: constructor() [16:45:41.118] KenBurnsSlideshow[simplefadedisplay] :: constructor() [16:45:41.118] Overlay[simplefadedisplay] :: constructor() [16:45:41.118] CanvasClip[simplefadedisplay] :: constructor() [16:45:41.118] Clip[simplefadedisplay] :: constructor() [16:45:41.119] clip:"simplefadedisplay" added to stream:"canvas_1016657232545" [16:45:41.119] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1016657232545', clipId: 'simplefadedisplay' } [16:45:41.119] StreamManager :: add(), id:caption, type:canvas [16:45:41.119] RenCaption[caption] :: constructor() [16:45:41.119] Ren[caption] :: constructor() [16:45:41.119] Overlay[caption] :: constructor() [16:45:41.119] CanvasClip[caption] :: constructor() [16:45:41.119] Clip[caption] :: constructor() [16:45:41.119] clip:"caption" added to stream:"canvas_1016657232545" [16:45:41.119] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1016657232545', clipId: 'caption' } [16:45:41.120] all added... [16:45:41.120] Vidbot :: _next(), _stepIndex:1 of 4 [16:45:41.120] index :: _onStepCompleted_vidbot(), step: 1 [16:45:41.120] index :: _onStepStarted_vidbot(), step: 2 [16:45:41.120] Vidbot :: step[1], label:Initializing Input Streams [16:45:41.121] StreamManager :: init() [16:45:41.121] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [16:45:41.121] index :: _onStepProgress_vidbot(), percent: 33 [16:45:41.121] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [16:45:41.122] index :: _onStepProgress_vidbot(), percent: 67 [16:45:41.122] CanvasStream[canvas_1016657232545] :: _init(), BEGIN [16:45:41.122] i:0, c.id:simplefadedisplay [16:45:41.122] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [16:45:41.123] KenBurnsSlideshow[simplefadedisplay] :: _validate() [16:45:41.123] KenBurnsSlideshow[undefined] :: _validateAnim() [16:45:41.124] KenBurnsSlideshow[undefined] :: _validateTheme() [16:45:41.125] i:1, c.id:caption [16:45:41.125] RenCaption[caption] :: _init() [16:45:41.125] RenCaption[caption] :: _validate() [16:45:41.126] KenBurnsSlideshow[simplefadedisplay] :: _build() [16:45:41.132] AnimatedImageFrame[aif] :: constructor() [16:45:41.133] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.133] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_1.jpg [16:45:41.146] RenCaption[caption] :: _build() [16:45:41.164] Overlay[caption] :: _animate() [16:45:41.167] CanvasStream[caption] :: _init(), p.then() [16:45:41.187] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.190] AnimatedImageFrame[aif] :: _init(), END [16:45:41.191] AnimatedImageFrame[aif] :: constructor() [16:45:41.192] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.192] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_2.jpg [16:45:41.211] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.212] AnimatedImageFrame[aif] :: _init(), END [16:45:41.213] AnimatedImageFrame[aif] :: constructor() [16:45:41.213] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.213] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_3.jpg [16:45:41.233] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.234] AnimatedImageFrame[aif] :: _init(), END [16:45:41.235] AnimatedImageFrame[aif] :: constructor() [16:45:41.235] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.235] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_4.jpg [16:45:41.250] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.251] AnimatedImageFrame[aif] :: _init(), END [16:45:41.252] AnimatedImageFrame[aif] :: constructor() [16:45:41.252] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.252] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_5.jpg [16:45:41.270] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.271] AnimatedImageFrame[aif] :: _init(), END [16:45:41.271] AnimatedImageFrame[aif] :: constructor() [16:45:41.271] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.271] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_6.jpg [16:45:41.285] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.286] AnimatedImageFrame[aif] :: _init(), END [16:45:41.286] AnimatedImageFrame[aif] :: constructor() [16:45:41.286] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.286] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_7.jpg [16:45:41.303] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.304] AnimatedImageFrame[aif] :: _init(), END [16:45:41.304] AnimatedImageFrame[aif] :: constructor() [16:45:41.305] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.305] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_8.jpg [16:45:41.346] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.347] AnimatedImageFrame[aif] :: _init(), END [16:45:41.348] AnimatedImageFrame[aif] :: constructor() [16:45:41.348] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.348] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_9.jpg [16:45:41.368] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.369] AnimatedImageFrame[aif] :: _init(), END [16:45:41.369] AnimatedImageFrame[aif] :: constructor() [16:45:41.369] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.369] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_10.jpg [16:45:41.387] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.387] AnimatedImageFrame[aif] :: _init(), END [16:45:41.388] AnimatedImageFrame[aif] :: constructor() [16:45:41.388] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.388] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_11.jpg [16:45:41.403] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.404] AnimatedImageFrame[aif] :: _init(), END [16:45:41.405] AnimatedImageFrame[aif] :: constructor() [16:45:41.405] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.405] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_1.jpg [16:45:41.420] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.421] AnimatedImageFrame[aif] :: _init(), END [16:45:41.422] AnimatedImageFrame[aif] :: constructor() [16:45:41.422] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.422] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_2.jpg [16:45:41.448] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.449] AnimatedImageFrame[aif] :: _init(), END [16:45:41.450] AnimatedImageFrame[aif] :: constructor() [16:45:41.450] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.450] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_3.jpg [16:45:41.469] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.470] AnimatedImageFrame[aif] :: _init(), END [16:45:41.471] AnimatedImageFrame[aif] :: constructor() [16:45:41.471] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.471] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_4.jpg [16:45:41.486] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.487] AnimatedImageFrame[aif] :: _init(), END [16:45:41.487] AnimatedImageFrame[aif] :: constructor() [16:45:41.487] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.487] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_5.jpg [16:45:41.513] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.514] AnimatedImageFrame[aif] :: _init(), END [16:45:41.515] AnimatedImageFrame[aif] :: constructor() [16:45:41.515] AnimatedImageFrame[aif] :: _init(), BEGIN [16:45:41.515] CanvasClip :: LoadImageWithPromise(), src: 0F98357A-1E20-55E6-B81F-853B6E88B5A8_6.jpg [16:45:41.528] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:45:41.529] AnimatedImageFrame[aif] :: _init(), END [16:45:41.529] Overlay[simplefadedisplay] :: _animate() [16:45:41.530] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [16:45:41.530] CanvasStream[simplefadedisplay] :: _init(), p.then() [16:45:41.530] CanvasStream[canvas_1016657232545] :: _init(), promise.all.then() [16:45:41.532] CanvasStream[canvas_1016657232545] :: _init(), END [16:45:41.532] StreamMangaer :: init(), stream[canvas_1016657232545].then() [16:45:41.532] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1016657232545', progress: 1 } [16:45:41.532] index :: _onStepProgress_vidbot(), percent: 100 [16:45:41.532] StreamManager :: init(), promise.all.then... [16:45:41.532] Vidbot :: StreamMgr.on( 'INITED' ) [16:45:41.533] Vidbot :: _next(), _stepIndex:2 of 4 [16:45:41.533] index :: _onStepCompleted_vidbot(), step: 2 [16:45:41.533] index :: _onStepStarted_vidbot(), step: 3 [16:45:41.533] Vidbot :: step[2], label:Rendering Canvas Streams [16:45:41.533] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [16:45:41.534] StreamManager :: render() [16:45:41.534] CanvasStream[canvas_1016657232545] :: render() [16:45:41.565] index :: _onStepProgress_vidbot(), percent: 0 [16:45:47.784] index :: _onStepProgress_vidbot(), percent: 5 [16:45:54.407] index :: _onStepProgress_vidbot(), percent: 10 [16:46:02.175] index :: _onStepProgress_vidbot(), percent: 15 [16:46:14.506] index :: _onStepProgress_vidbot(), percent: 20 [16:46:23.133] index :: _onStepProgress_vidbot(), percent: 25 [16:46:35.654] index :: _onStepProgress_vidbot(), percent: 30 [16:46:45.999] index :: _onStepProgress_vidbot(), percent: 35 [16:46:55.002] index :: _onStepProgress_vidbot(), percent: 40 [16:47:06.351] index :: _onStepProgress_vidbot(), percent: 45 [16:47:19.557] index :: _onStepProgress_vidbot(), percent: 50 [16:47:33.753] index :: _onStepProgress_vidbot(), percent: 55 [16:47:46.735] index :: _onStepProgress_vidbot(), percent: 60 [16:47:57.322] index :: _onStepProgress_vidbot(), percent: 65 [16:48:04.093] index :: _onStepProgress_vidbot(), percent: 70 [16:48:10.654] index :: _onStepProgress_vidbot(), percent: 75 [16:48:16.303] index :: _onStepProgress_vidbot(), percent: 80 [16:48:26.204] index :: _onStepProgress_vidbot(), percent: 85 [16:48:38.361] index :: _onStepProgress_vidbot(), percent: 90 [16:48:47.934] index :: _onStepProgress_vidbot(), percent: 95 [16:49:00.592] index :: _onStepProgress_vidbot(), percent: 100 [16:49:01.799] StreamManager :: render(), Promise.all.then... [16:49:01.799] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [16:49:01.800] Vidbot :: _next(), _stepIndex:3 of 4 [16:49:01.800] index :: _onStepCompleted_vidbot(), step: 3 [16:49:01.800] index :: _onStepStarted_vidbot(), step: 4 [16:49:01.801] Vidbot :: step[3], label:Encoding Media [16:49:01.803] CanvasFilters :: Overlay() [16:49:01.804] AudioStream[audio_vo] :: inputOptions() [16:49:01.804] AudioFilters :: Volume() [16:49:01.804] filter: [2:a]volume=1[2_vol] [16:49:01.804] AudioFilters :: Delay() [16:49:01.804] filter: [2_vol]adelay=0|0[2_del] [16:49:01.805] AudioStream[bg_music] :: inputOptions() [16:49:01.805] AudioFilters :: Volume() [16:49:01.805] filter: [3:a]volume=0.25[3_vol] [16:49:01.805] AudioFilters :: FadeOut() [16:49:01.805] filter: [3_vol]afade=t=out:st=48.12:d=1[3_fadeout] [16:49:01.805] AudioFilters :: Delay() [16:49:01.805] filter: [3_fadeout]adelay=0|0[3_del] [16:49:01.805] AudioFilters :: Mix() [16:49:01.805] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [16:49:01.805] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [16:49:01.808] hang.time: 60 [16:49:01.908] Vidbot :: ffmpeg.on( 'start' ) [16:49:01.909] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=48.12 -r 30 -i ./tmp/canvas_1016657232545_%05d.png -to 00:00:48.119 -i file:///var/www/html/ [16:49:01.909] clients/9847/audio/0F98357A-1E20-55E6-B81F-853B6E88B5A8.mp3 -to 00:00:48.119 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Concept [16:49:01.909] 10.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 [16:49:01.909] =48.12: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 [ [16:49:01.909] a_out] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/9847/video/0F98357A-1E20-55E6-B [16:49:01.909] 81F-853B6E88B5A8.mp4 [16:49:02.056] index :: _onStepProgress_vidbot(), percent: -4316808930 [16:49:02.489] index :: _onStepProgress_vidbot(), percent: 2 [16:49:03.493] index :: _onStepProgress_vidbot(), percent: 7 [16:49:04.003] index :: _onStepProgress_vidbot(), percent: 12 [16:49:04.510] index :: _onStepProgress_vidbot(), percent: 17 [16:49:05.011] index :: _onStepProgress_vidbot(), percent: 22 [16:49:05.512] index :: _onStepProgress_vidbot(), percent: 27 [16:49:06.017] index :: _onStepProgress_vidbot(), percent: 31 [16:49:06.519] index :: _onStepProgress_vidbot(), percent: 36 [16:49:07.027] index :: _onStepProgress_vidbot(), percent: 40 [16:49:07.528] index :: _onStepProgress_vidbot(), percent: 45 [16:49:08.537] index :: _onStepProgress_vidbot(), percent: 52 [16:49:09.040] index :: _onStepProgress_vidbot(), percent: 56 [16:49:09.549] index :: _onStepProgress_vidbot(), percent: 60 [16:49:10.550] index :: _onStepProgress_vidbot(), percent: 69 [16:49:11.062] index :: _onStepProgress_vidbot(), percent: 73 [16:49:11.562] index :: _onStepProgress_vidbot(), percent: 77 [16:49:12.066] index :: _onStepProgress_vidbot(), percent: 82 [16:49:12.568] index :: _onStepProgress_vidbot(), percent: 87 [16:49:13.070] index :: _onStepProgress_vidbot(), percent: 91 [16:49:13.576] index :: _onStepProgress_vidbot(), percent: 97 [16:49:13.899] index :: _onStepProgress_vidbot(), percent: 100 [16:49:13.922] Vidbot :: ffmpeg.on( 'end' ), Done! [16:49:13.923] StreamManager :: dispose() [16:49:13.923] CanvasStream[canvas_1016657232545] :: dispose() [16:49:13.928] Vidbot :: fflog.on( 'finish' ) [16:49:13.928] fflog.path: /var/www/html/clients/9847/video/0F98357A-1E20-55E6-B81F-853B6E88B5A8.mp4.fflog [16:49:13.928] Vidbot :: _next(), _stepIndex:4 of 4 [16:49:13.928] index :: _onStepCompleted_vidbot(), step: 4 [16:49:13.928] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 212.941, output: '/var/www/html/clients/9847/video/0F98357A-1E20-55E6-B81F-853B6E88B5A8.mp4', duration: 48.12 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/9847/video/0F98357A-1E20-55E6-B81F-853B6E88B5A8.mp4 Media Duration : 00:00:48.119 Generation Time : 00:03:32.941 ---------------------------------------------------------------------------------------------------------------