--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.0... --------------------------------------------------------------------------------------------------------------- [19:41:44.641] Vidbot :: start() [19:41:44.641] Vidbot :: _next(), _stepIndex:0 of 4 [19:41:44.642] index :: _onStepStarted_vidbot(), step: 1 [19:41:44.643] Vidbot :: step[0], label:Initializing Core [19:41:44.652] index :: _onStepProgress_vidbot(), percent: 20 [19:41:44.652] Vidbot :: _parse() [19:41:44.653] index :: _onStepProgress_vidbot(), percent: 40 [19:41:44.653] Vidbot :: _validate() [19:41:44.654] index :: _onStepProgress_vidbot(), percent: 60 [19:41:44.654] Vidbot :: _fonts() [19:41:44.655] FabricFontManager :: add(), id: SourceSansPro-Bold [19:41:44.655] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [19:41:44.664] FabricFontManager :: add(), id: SourceSansPro-Light [19:41:44.664] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [19:41:44.665] FabricFontManager :: add(), id: DINOT-Bold [19:41:44.665] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [19:41:44.666] FabricFontManager :: add(), id: DINOT-Light [19:41:44.666] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [19:41:44.667] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [19:41:44.667] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [19:41:44.668] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [19:41:44.668] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [19:41:44.669] index :: _onStepProgress_vidbot(), percent: 80 [19:41:44.669] Vidbot :: _clips() [19:41:44.670] StreamManager :: add(), id:audio_vo, type:audio [19:41:44.670] AudioClip[audio_vo] :: constructor() [19:41:44.670] InputStream[audio_vo] :: constructor() [19:41:44.670] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [19:41:44.673] StreamManager :: add(), id:bg_music, type:audio [19:41:44.673] AudioClip[bg_music] :: constructor() [19:41:44.673] InputStream[bg_music] :: constructor() [19:41:44.674] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [19:41:44.674] StreamManager :: add(), id:simplefadedisplay, type:canvas [19:41:44.674] CanvasStream[canvas_1680036444528] :: constructor() [19:41:44.674] InputStream[canvas_1680036444528] :: constructor() [19:41:44.759] KenBurnsSlideshow[simplefadedisplay] :: constructor() [19:41:44.760] Overlay[simplefadedisplay] :: constructor() [19:41:44.760] CanvasClip[simplefadedisplay] :: constructor() [19:41:44.760] Clip[simplefadedisplay] :: constructor() [19:41:44.760] clip:"simplefadedisplay" added to stream:"canvas_1680036444528" [19:41:44.760] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1680036444528', clipId: 'simplefadedisplay' } [19:41:44.760] StreamManager :: add(), id:caption, type:canvas [19:41:44.761] RenCaption[caption] :: constructor() [19:41:44.761] Ren[caption] :: constructor() [19:41:44.761] Overlay[caption] :: constructor() [19:41:44.761] CanvasClip[caption] :: constructor() [19:41:44.761] Clip[caption] :: constructor() [19:41:44.761] clip:"caption" added to stream:"canvas_1680036444528" [19:41:44.761] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1680036444528', clipId: 'caption' } [19:41:44.761] all added... [19:41:44.761] Vidbot :: _next(), _stepIndex:1 of 4 [19:41:44.762] index :: _onStepCompleted_vidbot(), step: 1 [19:41:44.762] index :: _onStepStarted_vidbot(), step: 2 [19:41:44.762] Vidbot :: step[1], label:Initializing Input Streams [19:41:44.763] StreamManager :: init() [19:41:44.763] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [19:41:44.763] index :: _onStepProgress_vidbot(), percent: 33 [19:41:44.763] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [19:41:44.763] index :: _onStepProgress_vidbot(), percent: 67 [19:41:44.764] CanvasStream[canvas_1680036444528] :: _init(), BEGIN [19:41:44.764] i:0, c.id:simplefadedisplay [19:41:44.764] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [19:41:44.765] KenBurnsSlideshow[simplefadedisplay] :: _validate() [19:41:44.765] KenBurnsSlideshow[undefined] :: _validateAnim() [19:41:44.766] KenBurnsSlideshow[undefined] :: _validateTheme() [19:41:44.767] i:1, c.id:caption [19:41:44.767] RenCaption[caption] :: _init() [19:41:44.767] RenCaption[caption] :: _validate() [19:41:44.768] KenBurnsSlideshow[simplefadedisplay] :: _build() [19:41:44.775] AnimatedImageFrame[aif] :: constructor() [19:41:44.783] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:44.783] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_1.jpg [19:41:44.797] RenCaption[caption] :: _build() [19:41:44.814] Overlay[caption] :: _animate() [19:41:44.817] CanvasStream[caption] :: _init(), p.then() [19:41:44.844] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:44.851] AnimatedImageFrame[aif] :: _init(), END [19:41:44.853] AnimatedImageFrame[aif] :: constructor() [19:41:44.853] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:44.853] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_2.jpg [19:41:44.883] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:44.884] AnimatedImageFrame[aif] :: _init(), END [19:41:44.885] AnimatedImageFrame[aif] :: constructor() [19:41:44.885] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:44.886] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_3.jpg [19:41:44.908] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:44.909] AnimatedImageFrame[aif] :: _init(), END [19:41:44.910] AnimatedImageFrame[aif] :: constructor() [19:41:44.910] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:44.910] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_4.jpg [19:41:44.932] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:44.933] AnimatedImageFrame[aif] :: _init(), END [19:41:44.934] AnimatedImageFrame[aif] :: constructor() [19:41:44.934] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:44.934] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_1.jpg [19:41:44.956] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:44.957] AnimatedImageFrame[aif] :: _init(), END [19:41:44.958] AnimatedImageFrame[aif] :: constructor() [19:41:44.958] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:44.958] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_2.jpg [19:41:44.979] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:44.980] AnimatedImageFrame[aif] :: _init(), END [19:41:44.981] AnimatedImageFrame[aif] :: constructor() [19:41:44.981] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:44.981] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_3.jpg [19:41:45.002] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:45.003] AnimatedImageFrame[aif] :: _init(), END [19:41:45.004] AnimatedImageFrame[aif] :: constructor() [19:41:45.004] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:45.004] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_4.jpg [19:41:45.025] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:45.027] AnimatedImageFrame[aif] :: _init(), END [19:41:45.027] AnimatedImageFrame[aif] :: constructor() [19:41:45.028] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:45.028] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_1.jpg [19:41:45.049] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:45.050] AnimatedImageFrame[aif] :: _init(), END [19:41:45.051] AnimatedImageFrame[aif] :: constructor() [19:41:45.051] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:45.051] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_2.jpg [19:41:45.075] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:45.077] AnimatedImageFrame[aif] :: _init(), END [19:41:45.077] AnimatedImageFrame[aif] :: constructor() [19:41:45.077] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:45.077] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_3.jpg [19:41:45.098] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:45.100] AnimatedImageFrame[aif] :: _init(), END [19:41:45.100] AnimatedImageFrame[aif] :: constructor() [19:41:45.100] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:45.100] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_4.jpg [19:41:45.134] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:45.135] AnimatedImageFrame[aif] :: _init(), END [19:41:45.135] AnimatedImageFrame[aif] :: constructor() [19:41:45.136] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:45.136] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_1.jpg [19:41:45.158] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:45.159] AnimatedImageFrame[aif] :: _init(), END [19:41:45.160] AnimatedImageFrame[aif] :: constructor() [19:41:45.160] AnimatedImageFrame[aif] :: _init(), BEGIN [19:41:45.160] CanvasClip :: LoadImageWithPromise(), src: 09B520A1-CE05-A128-B0E3-713AF904FC0E_2.jpg [19:41:45.181] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [19:41:45.182] AnimatedImageFrame[aif] :: _init(), END [19:41:45.183] Overlay[simplefadedisplay] :: _animate() [19:41:45.183] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [19:41:45.184] CanvasStream[simplefadedisplay] :: _init(), p.then() [19:41:45.184] CanvasStream[canvas_1680036444528] :: _init(), promise.all.then() [19:41:45.186] CanvasStream[canvas_1680036444528] :: _init(), END [19:41:45.186] StreamMangaer :: init(), stream[canvas_1680036444528].then() [19:41:45.186] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1680036444528', progress: 1 } [19:41:45.187] index :: _onStepProgress_vidbot(), percent: 100 [19:41:45.187] StreamManager :: init(), promise.all.then... [19:41:45.187] Vidbot :: StreamMgr.on( 'INITED' ) [19:41:45.187] Vidbot :: _next(), _stepIndex:2 of 4 [19:41:45.187] index :: _onStepCompleted_vidbot(), step: 2 [19:41:45.187] index :: _onStepStarted_vidbot(), step: 3 [19:41:45.188] Vidbot :: step[2], label:Rendering Canvas Streams [19:41:45.188] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [19:41:45.188] StreamManager :: render() [19:41:45.189] CanvasStream[canvas_1680036444528] :: render() [19:41:45.227] index :: _onStepProgress_vidbot(), percent: 0 [19:41:56.956] index :: _onStepProgress_vidbot(), percent: 5 [19:42:09.778] index :: _onStepProgress_vidbot(), percent: 10 [19:42:21.730] index :: _onStepProgress_vidbot(), percent: 15 [19:42:34.996] index :: _onStepProgress_vidbot(), percent: 20 [19:42:48.733] index :: _onStepProgress_vidbot(), percent: 25 [19:43:01.384] index :: _onStepProgress_vidbot(), percent: 30 [19:43:15.076] index :: _onStepProgress_vidbot(), percent: 35 [19:43:28.783] index :: _onStepProgress_vidbot(), percent: 40 [19:43:41.586] index :: _onStepProgress_vidbot(), percent: 45 [19:43:54.852] index :: _onStepProgress_vidbot(), percent: 50 [19:44:08.452] index :: _onStepProgress_vidbot(), percent: 55 [19:44:20.365] index :: _onStepProgress_vidbot(), percent: 60 [19:44:32.839] index :: _onStepProgress_vidbot(), percent: 65 [19:44:44.746] index :: _onStepProgress_vidbot(), percent: 70 [19:44:57.899] index :: _onStepProgress_vidbot(), percent: 75 [19:45:10.880] index :: _onStepProgress_vidbot(), percent: 80 [19:45:23.814] index :: _onStepProgress_vidbot(), percent: 85 [19:45:36.968] index :: _onStepProgress_vidbot(), percent: 90 [19:45:50.299] index :: _onStepProgress_vidbot(), percent: 95 [19:46:03.742] index :: _onStepProgress_vidbot(), percent: 100 [19:46:04.964] StreamManager :: render(), Promise.all.then... [19:46:04.964] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [19:46:04.965] Vidbot :: _next(), _stepIndex:3 of 4 [19:46:04.965] index :: _onStepCompleted_vidbot(), step: 3 [19:46:04.965] index :: _onStepStarted_vidbot(), step: 4 [19:46:04.966] Vidbot :: step[3], label:Encoding Media [19:46:04.969] CanvasFilters :: Overlay() [19:46:04.969] AudioStream[audio_vo] :: inputOptions() [19:46:04.970] AudioFilters :: Volume() [19:46:04.970] filter: [2:a]volume=1[2_vol] [19:46:04.970] AudioFilters :: Delay() [19:46:04.970] filter: [2_vol]adelay=0|0[2_del] [19:46:04.970] AudioStream[bg_music] :: inputOptions() [19:46:04.970] AudioFilters :: Volume() [19:46:04.970] filter: [3:a]volume=0.25[3_vol] [19:46:04.970] AudioFilters :: FadeOut() [19:46:04.971] filter: [3_vol]afade=t=out:st=40.43:d=1[3_fadeout] [19:46:04.971] AudioFilters :: Delay() [19:46:04.971] filter: [3_fadeout]adelay=0|0[3_del] [19:46:04.971] AudioFilters :: Mix() [19:46:04.971] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [19:46:04.971] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [19:46:04.974] hang.time: 60 [19:46:05.067] Vidbot :: ffmpeg.on( 'start' ) [19:46:05.067] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=40.43 -r 30 -i ./tmp/canvas_1680036444528_%05d.png -to 00:00:40.429 -i file:///var/www/html/ [19:46:05.067] clients/8920/audio/09B520A1-CE05-A128-B0E3-713AF904FC0E.mp3 -to 00:00:40.429 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/bgmusic [19:46:05.067] .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 [19:46:05.067] 0.43: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_ [19:46:05.067] out] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/8920/video/09B520A1-CE05-A128-B0E [19:46:05.067] 3-713AF904FC0E.mp4 [19:46:05.203] index :: _onStepProgress_vidbot(), percent: -5137888838 [19:46:05.658] index :: _onStepProgress_vidbot(), percent: 2 [19:46:06.159] index :: _onStepProgress_vidbot(), percent: 7 [19:46:06.660] index :: _onStepProgress_vidbot(), percent: 11 [19:46:07.167] index :: _onStepProgress_vidbot(), percent: 16 [19:46:07.670] index :: _onStepProgress_vidbot(), percent: 20 [19:46:08.673] index :: _onStepProgress_vidbot(), percent: 29 [19:46:09.180] index :: _onStepProgress_vidbot(), percent: 34 [19:46:09.681] index :: _onStepProgress_vidbot(), percent: 38 [19:46:10.184] index :: _onStepProgress_vidbot(), percent: 44 [19:46:10.686] index :: _onStepProgress_vidbot(), percent: 49 [19:46:11.188] index :: _onStepProgress_vidbot(), percent: 55 [19:46:11.689] index :: _onStepProgress_vidbot(), percent: 60 [19:46:12.189] index :: _onStepProgress_vidbot(), percent: 65 [19:46:12.690] index :: _onStepProgress_vidbot(), percent: 70 [19:46:13.197] index :: _onStepProgress_vidbot(), percent: 76 [19:46:13.710] index :: _onStepProgress_vidbot(), percent: 80 [19:46:14.214] index :: _onStepProgress_vidbot(), percent: 85 [19:46:14.720] index :: _onStepProgress_vidbot(), percent: 90 [19:46:15.225] index :: _onStepProgress_vidbot(), percent: 95 [19:46:15.676] index :: _onStepProgress_vidbot(), percent: 100 [19:46:15.694] Vidbot :: ffmpeg.on( 'end' ), Done! [19:46:15.694] StreamManager :: dispose() [19:46:15.695] CanvasStream[canvas_1680036444528] :: dispose() [19:46:15.700] Vidbot :: fflog.on( 'finish' ) [19:46:15.700] fflog.path: /var/www/html/clients/8920/video/09B520A1-CE05-A128-B0E3-713AF904FC0E.mp4.fflog [19:46:15.700] Vidbot :: _next(), _stepIndex:4 of 4 [19:46:15.700] index :: _onStepCompleted_vidbot(), step: 4 [19:46:15.700] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 271.08, output: '/var/www/html/clients/8920/video/09B520A1-CE05-A128-B0E3-713AF904FC0E.mp4', duration: 40.43 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/8920/video/09B520A1-CE05-A128-B0E3-713AF904FC0E.mp4 Media Duration : 00:00:40.429 Generation Time : 00:04:31.079 ---------------------------------------------------------------------------------------------------------------