--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.1... --------------------------------------------------------------------------------------------------------------- [11:14:52.819] Vidbot :: start() [11:14:52.820] Vidbot :: _next(), _stepIndex:0 of 4 [11:14:52.820] index :: _onStepStarted_vidbot(), step: 1 [11:14:52.821] Vidbot :: step[0], label:Initializing Core [11:14:52.831] index :: _onStepProgress_vidbot(), percent: 20 [11:14:52.831] Vidbot :: _parse() [11:14:52.832] index :: _onStepProgress_vidbot(), percent: 40 [11:14:52.833] Vidbot :: _validate() [11:14:52.833] index :: _onStepProgress_vidbot(), percent: 60 [11:14:52.834] Vidbot :: _fonts() [11:14:52.834] FabricFontManager :: add(), id: SourceSansPro-Bold [11:14:52.834] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [11:14:52.843] FabricFontManager :: add(), id: SourceSansPro-Light [11:14:52.843] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [11:14:52.844] FabricFontManager :: add(), id: DINOT-Bold [11:14:52.844] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [11:14:52.845] FabricFontManager :: add(), id: DINOT-Light [11:14:52.845] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [11:14:52.846] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [11:14:52.846] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [11:14:52.847] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [11:14:52.847] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [11:14:52.848] index :: _onStepProgress_vidbot(), percent: 80 [11:14:52.848] Vidbot :: _clips() [11:14:52.849] StreamManager :: add(), id:audio_vo, type:audio [11:14:52.849] AudioClip[audio_vo] :: constructor() [11:14:52.849] InputStream[audio_vo] :: constructor() [11:14:52.850] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [11:14:52.852] StreamManager :: add(), id:bg_music, type:audio [11:14:52.852] AudioClip[bg_music] :: constructor() [11:14:52.853] InputStream[bg_music] :: constructor() [11:14:52.853] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [11:14:52.853] StreamManager :: add(), id:simplefadedisplay, type:canvas [11:14:52.853] CanvasStream[canvas_1685908993508] :: constructor() [11:14:52.854] InputStream[canvas_1685908993508] :: constructor() [11:14:52.937] KenBurnsSlideshow[simplefadedisplay] :: constructor() [11:14:52.937] Overlay[simplefadedisplay] :: constructor() [11:14:52.937] CanvasClip[simplefadedisplay] :: constructor() [11:14:52.938] Clip[simplefadedisplay] :: constructor() [11:14:52.938] clip:"simplefadedisplay" added to stream:"canvas_1685908993508" [11:14:52.938] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1685908993508', clipId: 'simplefadedisplay' } [11:14:52.938] StreamManager :: add(), id:caption, type:canvas [11:14:52.938] RenCaption[caption] :: constructor() [11:14:52.938] Ren[caption] :: constructor() [11:14:52.939] Overlay[caption] :: constructor() [11:14:52.939] CanvasClip[caption] :: constructor() [11:14:52.939] Clip[caption] :: constructor() [11:14:52.939] clip:"caption" added to stream:"canvas_1685908993508" [11:14:52.939] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1685908993508', clipId: 'caption' } [11:14:52.939] all added... [11:14:52.939] Vidbot :: _next(), _stepIndex:1 of 4 [11:14:52.939] index :: _onStepCompleted_vidbot(), step: 1 [11:14:52.940] index :: _onStepStarted_vidbot(), step: 2 [11:14:52.940] Vidbot :: step[1], label:Initializing Input Streams [11:14:52.940] StreamManager :: init() [11:14:52.941] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [11:14:52.941] index :: _onStepProgress_vidbot(), percent: 33 [11:14:52.941] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [11:14:52.941] index :: _onStepProgress_vidbot(), percent: 67 [11:14:52.942] CanvasStream[canvas_1685908993508] :: _init(), BEGIN [11:14:52.942] i:0, c.id:simplefadedisplay [11:14:52.942] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [11:14:52.942] KenBurnsSlideshow[simplefadedisplay] :: _validate() [11:14:52.943] KenBurnsSlideshow[undefined] :: _validateAnim() [11:14:52.943] KenBurnsSlideshow[undefined] :: _validateTheme() [11:14:52.944] i:1, c.id:caption [11:14:52.945] RenCaption[caption] :: _init() [11:14:52.945] RenCaption[caption] :: _validate() [11:14:52.947] KenBurnsSlideshow[simplefadedisplay] :: _build() [11:14:52.953] AnimatedImageFrame[aif] :: constructor() [11:14:52.954] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:52.954] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_1.jpg [11:14:52.967] RenCaption[caption] :: _build() [11:14:52.985] Overlay[caption] :: _animate() [11:14:52.987] CanvasStream[caption] :: _init(), p.then() [11:14:53.010] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.014] AnimatedImageFrame[aif] :: _init(), END [11:14:53.016] AnimatedImageFrame[aif] :: constructor() [11:14:53.016] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:53.016] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_2.jpg [11:14:53.039] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.040] AnimatedImageFrame[aif] :: _init(), END [11:14:53.041] AnimatedImageFrame[aif] :: constructor() [11:14:53.041] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:53.041] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_3.jpg [11:14:53.061] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.063] AnimatedImageFrame[aif] :: _init(), END [11:14:53.063] AnimatedImageFrame[aif] :: constructor() [11:14:53.064] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:53.064] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_4.jpg [11:14:53.082] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.084] AnimatedImageFrame[aif] :: _init(), END [11:14:53.084] AnimatedImageFrame[aif] :: constructor() [11:14:53.084] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:53.085] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_1.jpg [11:14:53.103] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.104] AnimatedImageFrame[aif] :: _init(), END [11:14:53.104] AnimatedImageFrame[aif] :: constructor() [11:14:53.105] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:53.105] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_2.jpg [11:14:53.123] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.124] AnimatedImageFrame[aif] :: _init(), END [11:14:53.125] AnimatedImageFrame[aif] :: constructor() [11:14:53.125] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:53.125] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_3.jpg [11:14:53.143] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.144] AnimatedImageFrame[aif] :: _init(), END [11:14:53.145] AnimatedImageFrame[aif] :: constructor() [11:14:53.145] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:53.145] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_4.jpg [11:14:53.163] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.164] AnimatedImageFrame[aif] :: _init(), END [11:14:53.165] AnimatedImageFrame[aif] :: constructor() [11:14:53.165] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:53.165] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_1.jpg [11:14:53.183] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.184] AnimatedImageFrame[aif] :: _init(), END [11:14:53.184] AnimatedImageFrame[aif] :: constructor() [11:14:53.185] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:53.185] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_2.jpg [11:14:53.202] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.204] AnimatedImageFrame[aif] :: _init(), END [11:14:53.204] AnimatedImageFrame[aif] :: constructor() [11:14:53.204] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:53.204] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_3.jpg [11:14:53.222] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.223] AnimatedImageFrame[aif] :: _init(), END [11:14:53.224] AnimatedImageFrame[aif] :: constructor() [11:14:53.224] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:53.224] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_4.jpg [11:14:53.242] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.243] AnimatedImageFrame[aif] :: _init(), END [11:14:53.243] AnimatedImageFrame[aif] :: constructor() [11:14:53.244] AnimatedImageFrame[aif] :: _init(), BEGIN [11:14:53.244] CanvasClip :: LoadImageWithPromise(), src: 75245B27-D69A-2D01-EDA5-E348CD21304E_1.jpg [11:14:53.261] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:14:53.263] AnimatedImageFrame[aif] :: _init(), END [11:14:53.263] Overlay[simplefadedisplay] :: _animate() [11:14:53.264] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [11:14:53.264] CanvasStream[simplefadedisplay] :: _init(), p.then() [11:14:53.264] CanvasStream[canvas_1685908993508] :: _init(), promise.all.then() [11:14:53.266] CanvasStream[canvas_1685908993508] :: _init(), END [11:14:53.266] StreamMangaer :: init(), stream[canvas_1685908993508].then() [11:14:53.267] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1685908993508', progress: 1 } [11:14:53.267] index :: _onStepProgress_vidbot(), percent: 100 [11:14:53.267] StreamManager :: init(), promise.all.then... [11:14:53.267] Vidbot :: StreamMgr.on( 'INITED' ) [11:14:53.267] Vidbot :: _next(), _stepIndex:2 of 4 [11:14:53.267] index :: _onStepCompleted_vidbot(), step: 2 [11:14:53.268] index :: _onStepStarted_vidbot(), step: 3 [11:14:53.268] Vidbot :: step[2], label:Rendering Canvas Streams [11:14:53.268] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [11:14:53.268] StreamManager :: render() [11:14:53.269] CanvasStream[canvas_1685908993508] :: render() [11:14:53.306] index :: _onStepProgress_vidbot(), percent: 0 [11:15:02.164] index :: _onStepProgress_vidbot(), percent: 5 [11:15:11.433] index :: _onStepProgress_vidbot(), percent: 10 [11:15:19.778] index :: _onStepProgress_vidbot(), percent: 15 [11:15:28.945] index :: _onStepProgress_vidbot(), percent: 20 [11:15:37.905] index :: _onStepProgress_vidbot(), percent: 25 [11:15:46.621] index :: _onStepProgress_vidbot(), percent: 30 [11:15:55.932] index :: _onStepProgress_vidbot(), percent: 35 [11:16:04.495] index :: _onStepProgress_vidbot(), percent: 40 [11:16:13.670] index :: _onStepProgress_vidbot(), percent: 45 [11:16:22.595] index :: _onStepProgress_vidbot(), percent: 50 [11:16:30.734] index :: _onStepProgress_vidbot(), percent: 55 [11:16:39.813] index :: _onStepProgress_vidbot(), percent: 60 [11:16:49.991] index :: _onStepProgress_vidbot(), percent: 65 [11:16:59.623] index :: _onStepProgress_vidbot(), percent: 70 [11:17:09.126] index :: _onStepProgress_vidbot(), percent: 75 [11:17:18.277] index :: _onStepProgress_vidbot(), percent: 80 [11:17:27.292] index :: _onStepProgress_vidbot(), percent: 85 [11:17:36.221] index :: _onStepProgress_vidbot(), percent: 90 [11:17:44.930] index :: _onStepProgress_vidbot(), percent: 95 [11:17:54.066] index :: _onStepProgress_vidbot(), percent: 100 [11:17:54.732] StreamManager :: render(), Promise.all.then... [11:17:54.732] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [11:17:54.733] Vidbot :: _next(), _stepIndex:3 of 4 [11:17:54.733] index :: _onStepCompleted_vidbot(), step: 3 [11:17:54.733] index :: _onStepStarted_vidbot(), step: 4 [11:17:54.734] Vidbot :: step[3], label:Encoding Media [11:17:54.737] CanvasFilters :: Overlay() [11:17:54.737] AudioStream[audio_vo] :: inputOptions() [11:17:54.738] AudioFilters :: Volume() [11:17:54.738] filter: [2:a]volume=1[2_vol] [11:17:54.738] AudioFilters :: Delay() [11:17:54.738] filter: [2_vol]adelay=0|0[2_del] [11:17:54.738] AudioStream[bg_music] :: inputOptions() [11:17:54.738] AudioFilters :: Volume() [11:17:54.738] filter: [3:a]volume=0.25[3_vol] [11:17:54.739] AudioFilters :: FadeOut() [11:17:54.739] filter: [3_vol]afade=t=out:st=38.13:d=1[3_fadeout] [11:17:54.739] AudioFilters :: Delay() [11:17:54.739] filter: [3_fadeout]adelay=0|0[3_del] [11:17:54.739] AudioFilters :: Mix() [11:17:54.739] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [11:17:54.739] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [11:17:54.742] hang.time: 60 [11:17:54.848] Vidbot :: ffmpeg.on( 'start' ) [11:17:54.848] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=38.13 -r 30 -i ./tmp/canvas_1685908993508_%05d.png -to 00:00:38.130 -i file:///var/www/html/ [11:17:54.848] clients/10231/audio/75245B27-D69A-2D01-EDA5-E348CD21304E.mp3 -to 00:00:38.130 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Hip Ho [11:17:54.848] p.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= [11:17:54.848] 38.13: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 [11:17:54.848] _out] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/10231/video/75245B27-D69A-2D01-E [11:17:54.848] DA5-E348CD21304E.mp4 [11:17:54.986] index :: _onStepProgress_vidbot(), percent: -5447806077 [11:17:55.425] index :: _onStepProgress_vidbot(), percent: 2 [11:17:55.934] index :: _onStepProgress_vidbot(), percent: 7 [11:17:56.434] index :: _onStepProgress_vidbot(), percent: 14 [11:17:56.935] index :: _onStepProgress_vidbot(), percent: 20 [11:17:57.437] index :: _onStepProgress_vidbot(), percent: 26 [11:17:57.937] index :: _onStepProgress_vidbot(), percent: 31 [11:17:58.448] index :: _onStepProgress_vidbot(), percent: 36 [11:17:58.953] index :: _onStepProgress_vidbot(), percent: 42 [11:17:59.455] index :: _onStepProgress_vidbot(), percent: 48 [11:17:59.956] index :: _onStepProgress_vidbot(), percent: 52 [11:18:00.464] index :: _onStepProgress_vidbot(), percent: 57 [11:18:00.964] index :: _onStepProgress_vidbot(), percent: 62 [11:18:01.464] index :: _onStepProgress_vidbot(), percent: 67 [11:18:01.987] index :: _onStepProgress_vidbot(), percent: 70 [11:18:02.990] index :: _onStepProgress_vidbot(), percent: 78 [11:18:03.495] index :: _onStepProgress_vidbot(), percent: 84 [11:18:03.997] index :: _onStepProgress_vidbot(), percent: 90 [11:18:04.496] index :: _onStepProgress_vidbot(), percent: 96 [11:18:04.767] index :: _onStepProgress_vidbot(), percent: 100 [11:18:04.785] Vidbot :: ffmpeg.on( 'end' ), Done! [11:18:04.785] StreamManager :: dispose() [11:18:04.785] CanvasStream[canvas_1685908993508] :: dispose() [11:18:04.790] Vidbot :: fflog.on( 'finish' ) [11:18:04.790] fflog.path: /var/www/html/clients/10231/video/75245B27-D69A-2D01-EDA5-E348CD21304E.mp4.fflog [11:18:04.790] Vidbot :: _next(), _stepIndex:4 of 4 [11:18:04.790] index :: _onStepCompleted_vidbot(), step: 4 [11:18:04.791] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 191.991, output: '/var/www/html/clients/10231/video/75245B27-D69A-2D01-EDA5-E348CD21304E.mp4', duration: 38.13 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/10231/video/75245B27-D69A-2D01-EDA5-E348CD21304E.mp4 Media Duration : 00:00:38.130 Generation Time : 00:03:11.991 ---------------------------------------------------------------------------------------------------------------