--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.1... --------------------------------------------------------------------------------------------------------------- [02:53:17.903] Vidbot :: start() [02:53:17.903] Vidbot :: _next(), _stepIndex:0 of 4 [02:53:17.904] index :: _onStepStarted_vidbot(), step: 1 [02:53:17.905] Vidbot :: step[0], label:Initializing Core [02:53:17.913] index :: _onStepProgress_vidbot(), percent: 20 [02:53:17.913] Vidbot :: _parse() [02:53:17.915] index :: _onStepProgress_vidbot(), percent: 40 [02:53:17.915] Vidbot :: _validate() [02:53:17.916] index :: _onStepProgress_vidbot(), percent: 60 [02:53:17.916] Vidbot :: _fonts() [02:53:17.916] FabricFontManager :: add(), id: SourceSansPro-Bold [02:53:17.916] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [02:53:17.924] FabricFontManager :: add(), id: SourceSansPro-Light [02:53:17.924] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [02:53:17.925] FabricFontManager :: add(), id: DINOT-Bold [02:53:17.925] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [02:53:17.926] FabricFontManager :: add(), id: DINOT-Light [02:53:17.926] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [02:53:17.927] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [02:53:17.927] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [02:53:17.928] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [02:53:17.928] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [02:53:17.929] index :: _onStepProgress_vidbot(), percent: 80 [02:53:17.929] Vidbot :: _clips() [02:53:17.929] StreamManager :: add(), id:audio_vo, type:audio [02:53:17.930] AudioClip[audio_vo] :: constructor() [02:53:17.930] InputStream[audio_vo] :: constructor() [02:53:17.930] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [02:53:17.933] StreamManager :: add(), id:bg_music, type:audio [02:53:17.933] AudioClip[bg_music] :: constructor() [02:53:17.933] InputStream[bg_music] :: constructor() [02:53:17.933] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [02:53:17.933] StreamManager :: add(), id:simplefadedisplay, type:canvas [02:53:17.933] CanvasStream[canvas_570107424352] :: constructor() [02:53:17.934] InputStream[canvas_570107424352] :: constructor() [02:53:18.008] KenBurnsSlideshow[simplefadedisplay] :: constructor() [02:53:18.009] Overlay[simplefadedisplay] :: constructor() [02:53:18.009] CanvasClip[simplefadedisplay] :: constructor() [02:53:18.009] Clip[simplefadedisplay] :: constructor() [02:53:18.009] clip:"simplefadedisplay" added to stream:"canvas_570107424352" [02:53:18.009] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_570107424352', clipId: 'simplefadedisplay' } [02:53:18.009] StreamManager :: add(), id:caption, type:canvas [02:53:18.010] RenCaption[caption] :: constructor() [02:53:18.010] Ren[caption] :: constructor() [02:53:18.010] Overlay[caption] :: constructor() [02:53:18.010] CanvasClip[caption] :: constructor() [02:53:18.010] Clip[caption] :: constructor() [02:53:18.010] clip:"caption" added to stream:"canvas_570107424352" [02:53:18.010] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_570107424352', clipId: 'caption' } [02:53:18.010] all added... [02:53:18.010] Vidbot :: _next(), _stepIndex:1 of 4 [02:53:18.011] index :: _onStepCompleted_vidbot(), step: 1 [02:53:18.011] index :: _onStepStarted_vidbot(), step: 2 [02:53:18.011] Vidbot :: step[1], label:Initializing Input Streams [02:53:18.012] StreamManager :: init() [02:53:18.012] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [02:53:18.012] index :: _onStepProgress_vidbot(), percent: 33 [02:53:18.012] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [02:53:18.012] index :: _onStepProgress_vidbot(), percent: 67 [02:53:18.013] CanvasStream[canvas_570107424352] :: _init(), BEGIN [02:53:18.013] i:0, c.id:simplefadedisplay [02:53:18.013] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [02:53:18.014] KenBurnsSlideshow[simplefadedisplay] :: _validate() [02:53:18.014] KenBurnsSlideshow[undefined] :: _validateAnim() [02:53:18.014] KenBurnsSlideshow[undefined] :: _validateTheme() [02:53:18.015] i:1, c.id:caption [02:53:18.016] RenCaption[caption] :: _init() [02:53:18.016] RenCaption[caption] :: _validate() [02:53:18.017] KenBurnsSlideshow[simplefadedisplay] :: _build() [02:53:18.023] AnimatedImageFrame[aif] :: constructor() [02:53:18.024] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.024] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_1.jpg [02:53:18.036] RenCaption[caption] :: _build() [02:53:18.052] Overlay[caption] :: _animate() [02:53:18.054] CanvasStream[caption] :: _init(), p.then() [02:53:18.069] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.072] AnimatedImageFrame[aif] :: _init(), END [02:53:18.074] AnimatedImageFrame[aif] :: constructor() [02:53:18.074] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.074] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_2.jpg [02:53:18.088] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.089] AnimatedImageFrame[aif] :: _init(), END [02:53:18.090] AnimatedImageFrame[aif] :: constructor() [02:53:18.090] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.090] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_3.jpg [02:53:18.103] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.104] AnimatedImageFrame[aif] :: _init(), END [02:53:18.105] AnimatedImageFrame[aif] :: constructor() [02:53:18.105] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.105] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_4.jpg [02:53:18.118] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.119] AnimatedImageFrame[aif] :: _init(), END [02:53:18.120] AnimatedImageFrame[aif] :: constructor() [02:53:18.120] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.120] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_1.jpg [02:53:18.131] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.132] AnimatedImageFrame[aif] :: _init(), END [02:53:18.133] AnimatedImageFrame[aif] :: constructor() [02:53:18.133] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.133] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_2.jpg [02:53:18.144] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.145] AnimatedImageFrame[aif] :: _init(), END [02:53:18.146] AnimatedImageFrame[aif] :: constructor() [02:53:18.146] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.146] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_3.jpg [02:53:18.157] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.158] AnimatedImageFrame[aif] :: _init(), END [02:53:18.158] AnimatedImageFrame[aif] :: constructor() [02:53:18.158] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.159] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_4.jpg [02:53:18.169] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.171] AnimatedImageFrame[aif] :: _init(), END [02:53:18.171] AnimatedImageFrame[aif] :: constructor() [02:53:18.171] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.171] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_1.jpg [02:53:18.183] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.184] AnimatedImageFrame[aif] :: _init(), END [02:53:18.185] AnimatedImageFrame[aif] :: constructor() [02:53:18.185] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.185] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_2.jpg [02:53:18.196] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.197] AnimatedImageFrame[aif] :: _init(), END [02:53:18.197] AnimatedImageFrame[aif] :: constructor() [02:53:18.197] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.197] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_3.jpg [02:53:18.208] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.209] AnimatedImageFrame[aif] :: _init(), END [02:53:18.210] AnimatedImageFrame[aif] :: constructor() [02:53:18.210] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.210] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_4.jpg [02:53:18.221] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.222] AnimatedImageFrame[aif] :: _init(), END [02:53:18.223] AnimatedImageFrame[aif] :: constructor() [02:53:18.223] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.223] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_1.jpg [02:53:18.235] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.236] AnimatedImageFrame[aif] :: _init(), END [02:53:18.236] AnimatedImageFrame[aif] :: constructor() [02:53:18.236] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.236] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_2.jpg [02:53:18.247] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.248] AnimatedImageFrame[aif] :: _init(), END [02:53:18.248] AnimatedImageFrame[aif] :: constructor() [02:53:18.249] AnimatedImageFrame[aif] :: _init(), BEGIN [02:53:18.249] CanvasClip :: LoadImageWithPromise(), src: 32A6D3BA-A359-69D4-72F1-60C1467E16B9_3.jpg [02:53:18.260] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [02:53:18.261] AnimatedImageFrame[aif] :: _init(), END [02:53:18.261] Overlay[simplefadedisplay] :: _animate() [02:53:18.262] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [02:53:18.262] CanvasStream[simplefadedisplay] :: _init(), p.then() [02:53:18.262] CanvasStream[canvas_570107424352] :: _init(), promise.all.then() [02:53:18.264] CanvasStream[canvas_570107424352] :: _init(), END [02:53:18.264] StreamMangaer :: init(), stream[canvas_570107424352].then() [02:53:18.264] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_570107424352', progress: 1 } [02:53:18.264] index :: _onStepProgress_vidbot(), percent: 100 [02:53:18.264] StreamManager :: init(), promise.all.then... [02:53:18.265] Vidbot :: StreamMgr.on( 'INITED' ) [02:53:18.265] Vidbot :: _next(), _stepIndex:2 of 4 [02:53:18.265] index :: _onStepCompleted_vidbot(), step: 2 [02:53:18.265] index :: _onStepStarted_vidbot(), step: 3 [02:53:18.265] Vidbot :: step[2], label:Rendering Canvas Streams [02:53:18.266] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [02:53:18.266] StreamManager :: render() [02:53:18.266] CanvasStream[canvas_570107424352] :: render() [02:53:18.297] index :: _onStepProgress_vidbot(), percent: 0 [02:53:24.707] index :: _onStepProgress_vidbot(), percent: 5 [02:53:31.646] index :: _onStepProgress_vidbot(), percent: 10 [02:53:39.247] index :: _onStepProgress_vidbot(), percent: 15 [02:53:46.330] index :: _onStepProgress_vidbot(), percent: 20 [02:53:53.717] index :: _onStepProgress_vidbot(), percent: 25 [02:54:01.136] index :: _onStepProgress_vidbot(), percent: 30 [02:54:08.480] index :: _onStepProgress_vidbot(), percent: 35 [02:54:15.992] index :: _onStepProgress_vidbot(), percent: 40 [02:54:23.106] index :: _onStepProgress_vidbot(), percent: 45 [02:54:30.826] index :: _onStepProgress_vidbot(), percent: 50 [02:54:37.706] index :: _onStepProgress_vidbot(), percent: 55 [02:54:45.331] index :: _onStepProgress_vidbot(), percent: 60 [02:54:52.952] index :: _onStepProgress_vidbot(), percent: 65 [02:55:01.434] index :: _onStepProgress_vidbot(), percent: 70 [02:55:08.482] index :: _onStepProgress_vidbot(), percent: 75 [02:55:15.465] index :: _onStepProgress_vidbot(), percent: 80 [02:55:24.090] index :: _onStepProgress_vidbot(), percent: 85 [02:55:32.308] index :: _onStepProgress_vidbot(), percent: 90 [02:55:41.045] index :: _onStepProgress_vidbot(), percent: 95 [02:55:49.619] index :: _onStepProgress_vidbot(), percent: 100 [02:55:50.441] StreamManager :: render(), Promise.all.then... [02:55:50.441] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [02:55:50.441] Vidbot :: _next(), _stepIndex:3 of 4 [02:55:50.442] index :: _onStepCompleted_vidbot(), step: 3 [02:55:50.442] index :: _onStepStarted_vidbot(), step: 4 [02:55:50.443] Vidbot :: step[3], label:Encoding Media [02:55:50.446] CanvasFilters :: Overlay() [02:55:50.446] AudioStream[audio_vo] :: inputOptions() [02:55:50.446] AudioFilters :: Volume() [02:55:50.447] filter: [2:a]volume=1[2_vol] [02:55:50.447] AudioFilters :: Delay() [02:55:50.447] filter: [2_vol]adelay=0|0[2_del] [02:55:50.447] AudioStream[bg_music] :: inputOptions() [02:55:50.447] AudioFilters :: Volume() [02:55:50.447] filter: [3:a]volume=0.25[3_vol] [02:55:50.447] AudioFilters :: FadeOut() [02:55:50.447] filter: [3_vol]afade=t=out:st=43.51:d=1[3_fadeout] [02:55:50.447] AudioFilters :: Delay() [02:55:50.448] filter: [3_fadeout]adelay=0|0[3_del] [02:55:50.448] AudioFilters :: Mix() [02:55:50.448] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [02:55:50.448] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [02:55:50.450] hang.time: 60 [02:55:50.576] Vidbot :: ffmpeg.on( 'start' ) [02:55:50.576] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=43.51 -r 30 -i ./tmp/canvas_570107424352_%05d.png -to 00:00:43.509 -i file:///var/www/html/c [02:55:50.576] lients/1301/audio/32A6D3BA-A359-69D4-72F1-60C1467E16B9.mp3 -to 00:00:43.509 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Groove-4 [02:55:50.576] .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=4 [02:55:50.576] 3.51: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_ [02:55:50.577] out] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/1301/video/32A6D3BA-A359-69D4-72F [02:55:50.577] 1-60C1467E16B9.mp4 [02:55:50.815] index :: _onStepProgress_vidbot(), percent: -4774186296 [02:55:51.203] index :: _onStepProgress_vidbot(), percent: 1 [02:55:52.199] index :: _onStepProgress_vidbot(), percent: 7 [02:55:52.702] index :: _onStepProgress_vidbot(), percent: 10 [02:55:53.704] index :: _onStepProgress_vidbot(), percent: 17 [02:55:54.211] index :: _onStepProgress_vidbot(), percent: 20 [02:55:55.216] index :: _onStepProgress_vidbot(), percent: 28 [02:55:55.722] index :: _onStepProgress_vidbot(), percent: 32 [02:55:56.228] index :: _onStepProgress_vidbot(), percent: 36 [02:55:56.731] index :: _onStepProgress_vidbot(), percent: 42 [02:55:57.241] index :: _onStepProgress_vidbot(), percent: 48 [02:55:57.741] index :: _onStepProgress_vidbot(), percent: 53 [02:55:58.246] index :: _onStepProgress_vidbot(), percent: 58 [02:55:58.747] index :: _onStepProgress_vidbot(), percent: 63 [02:55:59.247] index :: _onStepProgress_vidbot(), percent: 68 [02:55:59.748] index :: _onStepProgress_vidbot(), percent: 74 [02:56:00.283] index :: _onStepProgress_vidbot(), percent: 78 [02:56:00.784] index :: _onStepProgress_vidbot(), percent: 83 [02:56:01.289] index :: _onStepProgress_vidbot(), percent: 87 [02:56:01.798] index :: _onStepProgress_vidbot(), percent: 92 [02:56:02.292] index :: _onStepProgress_vidbot(), percent: 97 [02:56:02.618] index :: _onStepProgress_vidbot(), percent: 100 [02:56:02.639] Vidbot :: ffmpeg.on( 'end' ), Done! [02:56:02.640] StreamManager :: dispose() [02:56:02.640] CanvasStream[canvas_570107424352] :: dispose() [02:56:02.645] Vidbot :: fflog.on( 'finish' ) [02:56:02.645] fflog.path: /var/www/html/clients/1301/video/32A6D3BA-A359-69D4-72F1-60C1467E16B9.mp4.fflog [02:56:02.646] Vidbot :: _next(), _stepIndex:4 of 4 [02:56:02.646] index :: _onStepCompleted_vidbot(), step: 4 [02:56:02.646] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 164.762, output: '/var/www/html/clients/1301/video/32A6D3BA-A359-69D4-72F1-60C1467E16B9.mp4', duration: 43.51 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/1301/video/32A6D3BA-A359-69D4-72F1-60C1467E16B9.mp4 Media Duration : 00:00:43.509 Generation Time : 00:02:44.762 ---------------------------------------------------------------------------------------------------------------