--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.1... --------------------------------------------------------------------------------------------------------------- [00:39:32.463] Vidbot :: start() [00:39:32.463] Vidbot :: _next(), _stepIndex:0 of 4 [00:39:32.464] index :: _onStepStarted_vidbot(), step: 1 [00:39:32.465] Vidbot :: step[0], label:Initializing Core [00:39:32.474] index :: _onStepProgress_vidbot(), percent: 20 [00:39:32.474] Vidbot :: _parse() [00:39:32.475] index :: _onStepProgress_vidbot(), percent: 40 [00:39:32.476] Vidbot :: _validate() [00:39:32.476] index :: _onStepProgress_vidbot(), percent: 60 [00:39:32.477] Vidbot :: _fonts() [00:39:32.477] FabricFontManager :: add(), id: SourceSansPro-Bold [00:39:32.477] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [00:39:32.486] FabricFontManager :: add(), id: SourceSansPro-Light [00:39:32.486] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [00:39:32.487] FabricFontManager :: add(), id: DINOT-Bold [00:39:32.487] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [00:39:32.488] FabricFontManager :: add(), id: DINOT-Light [00:39:32.488] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [00:39:32.488] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [00:39:32.489] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [00:39:32.489] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [00:39:32.489] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [00:39:32.491] index :: _onStepProgress_vidbot(), percent: 80 [00:39:32.491] Vidbot :: _clips() [00:39:32.491] StreamManager :: add(), id:audio_vo, type:audio [00:39:32.492] AudioClip[audio_vo] :: constructor() [00:39:32.492] InputStream[audio_vo] :: constructor() [00:39:32.492] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [00:39:32.495] StreamManager :: add(), id:bg_music, type:audio [00:39:32.495] AudioClip[bg_music] :: constructor() [00:39:32.495] InputStream[bg_music] :: constructor() [00:39:32.495] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [00:39:32.496] StreamManager :: add(), id:simplefadedisplay, type:canvas [00:39:32.496] CanvasStream[canvas_649896586526] :: constructor() [00:39:32.496] InputStream[canvas_649896586526] :: constructor() [00:39:32.578] KenBurnsSlideshow[simplefadedisplay] :: constructor() [00:39:32.579] Overlay[simplefadedisplay] :: constructor() [00:39:32.579] CanvasClip[simplefadedisplay] :: constructor() [00:39:32.579] Clip[simplefadedisplay] :: constructor() [00:39:32.579] clip:"simplefadedisplay" added to stream:"canvas_649896586526" [00:39:32.579] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_649896586526', clipId: 'simplefadedisplay' } [00:39:32.579] all added... [00:39:32.579] Vidbot :: _next(), _stepIndex:1 of 4 [00:39:32.580] index :: _onStepCompleted_vidbot(), step: 1 [00:39:32.580] index :: _onStepStarted_vidbot(), step: 2 [00:39:32.580] Vidbot :: step[1], label:Initializing Input Streams [00:39:32.581] StreamManager :: init() [00:39:32.581] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [00:39:32.581] index :: _onStepProgress_vidbot(), percent: 33 [00:39:32.581] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [00:39:32.582] index :: _onStepProgress_vidbot(), percent: 67 [00:39:32.582] CanvasStream[canvas_649896586526] :: _init(), BEGIN [00:39:32.582] i:0, c.id:simplefadedisplay [00:39:32.582] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [00:39:32.583] KenBurnsSlideshow[simplefadedisplay] :: _validate() [00:39:32.583] KenBurnsSlideshow[undefined] :: _validateAnim() [00:39:32.584] KenBurnsSlideshow[undefined] :: _validateTheme() [00:39:32.585] KenBurnsSlideshow[simplefadedisplay] :: _build() [00:39:32.592] AnimatedImageFrame[aif] :: constructor() [00:39:32.593] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:32.593] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_1.jpg [00:39:32.666] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:32.671] AnimatedImageFrame[aif] :: _init(), END [00:39:32.674] AnimatedImageFrame[aif] :: constructor() [00:39:32.674] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:32.674] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_2.jpg [00:39:32.741] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:32.743] AnimatedImageFrame[aif] :: _init(), END [00:39:32.744] AnimatedImageFrame[aif] :: constructor() [00:39:32.744] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:32.744] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_3.jpg [00:39:32.801] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:32.803] AnimatedImageFrame[aif] :: _init(), END [00:39:32.804] AnimatedImageFrame[aif] :: constructor() [00:39:32.804] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:32.804] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_4.jpg [00:39:32.862] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:32.863] AnimatedImageFrame[aif] :: _init(), END [00:39:32.864] AnimatedImageFrame[aif] :: constructor() [00:39:32.864] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:32.864] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_5.jpg [00:39:32.916] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:32.918] AnimatedImageFrame[aif] :: _init(), END [00:39:32.918] AnimatedImageFrame[aif] :: constructor() [00:39:32.918] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:32.918] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_6.jpg [00:39:32.974] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:32.975] AnimatedImageFrame[aif] :: _init(), END [00:39:32.975] AnimatedImageFrame[aif] :: constructor() [00:39:32.976] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:32.976] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_7.jpg [00:39:33.018] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.019] AnimatedImageFrame[aif] :: _init(), END [00:39:33.020] AnimatedImageFrame[aif] :: constructor() [00:39:33.020] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.020] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_8.jpg [00:39:33.079] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.080] AnimatedImageFrame[aif] :: _init(), END [00:39:33.080] AnimatedImageFrame[aif] :: constructor() [00:39:33.081] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.081] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_9.jpg [00:39:33.144] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.150] AnimatedImageFrame[aif] :: _init(), END [00:39:33.150] AnimatedImageFrame[aif] :: constructor() [00:39:33.151] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.151] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_10.jpg [00:39:33.212] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.214] AnimatedImageFrame[aif] :: _init(), END [00:39:33.214] AnimatedImageFrame[aif] :: constructor() [00:39:33.214] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.215] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_11.jpg [00:39:33.267] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.268] AnimatedImageFrame[aif] :: _init(), END [00:39:33.268] AnimatedImageFrame[aif] :: constructor() [00:39:33.268] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.269] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_12.jpg [00:39:33.316] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.317] AnimatedImageFrame[aif] :: _init(), END [00:39:33.317] AnimatedImageFrame[aif] :: constructor() [00:39:33.317] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.317] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_13.jpg [00:39:33.367] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.368] AnimatedImageFrame[aif] :: _init(), END [00:39:33.368] AnimatedImageFrame[aif] :: constructor() [00:39:33.368] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.369] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_14.jpg [00:39:33.425] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.426] AnimatedImageFrame[aif] :: _init(), END [00:39:33.426] AnimatedImageFrame[aif] :: constructor() [00:39:33.426] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.427] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_15.jpg [00:39:33.474] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.475] AnimatedImageFrame[aif] :: _init(), END [00:39:33.476] AnimatedImageFrame[aif] :: constructor() [00:39:33.476] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.476] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_16.jpg [00:39:33.531] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.532] AnimatedImageFrame[aif] :: _init(), END [00:39:33.533] AnimatedImageFrame[aif] :: constructor() [00:39:33.533] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.533] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_17.jpg [00:39:33.577] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.578] AnimatedImageFrame[aif] :: _init(), END [00:39:33.578] AnimatedImageFrame[aif] :: constructor() [00:39:33.578] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.579] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_18.jpg [00:39:33.629] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.630] AnimatedImageFrame[aif] :: _init(), END [00:39:33.630] AnimatedImageFrame[aif] :: constructor() [00:39:33.630] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.631] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_19.jpg [00:39:33.690] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.691] AnimatedImageFrame[aif] :: _init(), END [00:39:33.691] AnimatedImageFrame[aif] :: constructor() [00:39:33.692] AnimatedImageFrame[aif] :: _init(), BEGIN [00:39:33.692] CanvasClip :: LoadImageWithPromise(), src: 273ED9CC-D37C-A295-8466-B80C456C79FF_20.jpg [00:39:33.742] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:39:33.743] AnimatedImageFrame[aif] :: _init(), END [00:39:33.744] Overlay[simplefadedisplay] :: _animate() [00:39:33.745] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [00:39:33.745] CanvasStream[simplefadedisplay] :: _init(), p.then() [00:39:33.745] CanvasStream[canvas_649896586526] :: _init(), promise.all.then() [00:39:33.747] CanvasStream[canvas_649896586526] :: _init(), END [00:39:33.747] StreamMangaer :: init(), stream[canvas_649896586526].then() [00:39:33.747] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_649896586526', progress: 1 } [00:39:33.747] index :: _onStepProgress_vidbot(), percent: 100 [00:39:33.747] StreamManager :: init(), promise.all.then... [00:39:33.748] Vidbot :: StreamMgr.on( 'INITED' ) [00:39:33.748] Vidbot :: _next(), _stepIndex:2 of 4 [00:39:33.748] index :: _onStepCompleted_vidbot(), step: 2 [00:39:33.748] index :: _onStepStarted_vidbot(), step: 3 [00:39:33.748] Vidbot :: step[2], label:Rendering Canvas Streams [00:39:33.749] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [00:39:33.749] StreamManager :: render() [00:39:33.749] CanvasStream[canvas_649896586526] :: render() [00:39:33.874] index :: _onStepProgress_vidbot(), percent: 0 [00:40:35.067] index :: _onStepProgress_vidbot(), percent: 5 [00:41:41.180] index :: _onStepProgress_vidbot(), percent: 10 [00:42:46.097] index :: _onStepProgress_vidbot(), percent: 15 [00:43:49.336] index :: _onStepProgress_vidbot(), percent: 20 [00:44:50.112] index :: _onStepProgress_vidbot(), percent: 25 [00:45:56.708] index :: _onStepProgress_vidbot(), percent: 30 [00:46:50.752] index :: _onStepProgress_vidbot(), percent: 35 [00:47:57.969] index :: _onStepProgress_vidbot(), percent: 40 [00:49:02.595] index :: _onStepProgress_vidbot(), percent: 45 [00:50:08.224] index :: _onStepProgress_vidbot(), percent: 50 [00:51:12.476] index :: _onStepProgress_vidbot(), percent: 55 [00:52:13.702] index :: _onStepProgress_vidbot(), percent: 60 [00:53:13.825] index :: _onStepProgress_vidbot(), percent: 65 [00:54:16.165] index :: _onStepProgress_vidbot(), percent: 70 [00:55:18.437] index :: _onStepProgress_vidbot(), percent: 75 [00:56:24.263] index :: _onStepProgress_vidbot(), percent: 80 [00:57:22.094] index :: _onStepProgress_vidbot(), percent: 85 [00:58:14.817] index :: _onStepProgress_vidbot(), percent: 90 [00:59:05.912] index :: _onStepProgress_vidbot(), percent: 95 [00:59:57.961] index :: _onStepProgress_vidbot(), percent: 100 [01:00:02.555] StreamManager :: render(), Promise.all.then... [01:00:02.555] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [01:00:02.556] Vidbot :: _next(), _stepIndex:3 of 4 [01:00:02.556] index :: _onStepCompleted_vidbot(), step: 3 [01:00:02.556] index :: _onStepStarted_vidbot(), step: 4 [01:00:02.557] Vidbot :: step[3], label:Encoding Media [01:00:02.560] CanvasFilters :: Overlay() [01:00:02.560] AudioStream[audio_vo] :: inputOptions() [01:00:02.561] AudioFilters :: Volume() [01:00:02.561] filter: [2:a]volume=1[2_vol] [01:00:02.561] AudioFilters :: Delay() [01:00:02.561] filter: [2_vol]adelay=0|0[2_del] [01:00:02.561] AudioStream[bg_music] :: inputOptions() [01:00:02.561] AudioFilters :: Volume() [01:00:02.561] filter: [3:a]volume=0.25[3_vol] [01:00:02.562] AudioFilters :: FadeOut() [01:00:02.562] filter: [3_vol]afade=t=out:st=60:d=1[3_fadeout] [01:00:02.562] AudioFilters :: Delay() [01:00:02.562] filter: [3_fadeout]adelay=0|0[3_del] [01:00:02.562] AudioFilters :: Mix() [01:00:02.562] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [01:00:02.562] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [01:00:02.565] hang.time: 60 [01:00:02.767] Vidbot :: ffmpeg.on( 'start' ) [01:00:02.767] ffmpeg -f lavfi -i color=c=000000:s=1280x720:r=30:duration=60 -r 30 -i ./tmp/canvas_649896586526_%05d.png -to 00:01:00.000 -i file:///var/www/html/cli [01:00:02.768] ents/20349/audio/273ED9CC-D37C-A295-8466-B80C456C79FF.mp3 -to 00:01:00.000 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Orchestra [01:00:02.768] -3_30.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 [01:00:02.768] :st=60: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 [ [01:00:02.768] a_out] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/20349/video/273ED9CC-D37C-A295- [01:00:02.768] 8466-B80C456C79FF.mp4 [01:00:03.182] index :: _onStepProgress_vidbot(), percent: -3462080762 [01:00:03.541] index :: _onStepProgress_vidbot(), percent: 1 [01:00:05.059] index :: _onStepProgress_vidbot(), percent: 5 [01:00:07.105] index :: _onStepProgress_vidbot(), percent: 10 [01:00:08.615] index :: _onStepProgress_vidbot(), percent: 15 [01:00:10.632] index :: _onStepProgress_vidbot(), percent: 20 [01:00:12.172] index :: _onStepProgress_vidbot(), percent: 25 [01:00:14.206] index :: _onStepProgress_vidbot(), percent: 31 [01:00:15.721] index :: _onStepProgress_vidbot(), percent: 35 [01:00:17.234] index :: _onStepProgress_vidbot(), percent: 40 [01:00:19.244] index :: _onStepProgress_vidbot(), percent: 45 [01:00:20.780] index :: _onStepProgress_vidbot(), percent: 50 [01:00:22.814] index :: _onStepProgress_vidbot(), percent: 56 [01:00:24.374] index :: _onStepProgress_vidbot(), percent: 60 [01:00:25.897] index :: _onStepProgress_vidbot(), percent: 65 [01:00:27.937] index :: _onStepProgress_vidbot(), percent: 70 [01:00:29.966] index :: _onStepProgress_vidbot(), percent: 75 [01:00:32.525] index :: _onStepProgress_vidbot(), percent: 80 [01:00:34.634] index :: _onStepProgress_vidbot(), percent: 85 [01:00:36.665] index :: _onStepProgress_vidbot(), percent: 90 [01:00:38.769] index :: _onStepProgress_vidbot(), percent: 95 [01:00:40.937] index :: _onStepProgress_vidbot(), percent: 100 [01:00:41.093] Vidbot :: ffmpeg.on( 'end' ), Done! [01:00:41.094] StreamManager :: dispose() [01:00:41.094] CanvasStream[canvas_649896586526] :: dispose() [01:00:41.100] Vidbot :: fflog.on( 'finish' ) [01:00:41.100] fflog.path: /var/www/html/clients/20349/video/273ED9CC-D37C-A295-8466-B80C456C79FF.mp4.fflog [01:00:41.100] Vidbot :: _next(), _stepIndex:4 of 4 [01:00:41.100] index :: _onStepCompleted_vidbot(), step: 4 [01:00:41.102] index :: _onComplete_vidbot(), data: { stepTime: 0.002, appTime: 1268.66, output: '/var/www/html/clients/20349/video/273ED9CC-D37C-A295-8466-B80C456C79FF.mp4', duration: 60 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/20349/video/273ED9CC-D37C-A295-8466-B80C456C79FF.mp4 Media Duration : 00:01:00.000 Generation Time : 00:21:08.660 ---------------------------------------------------------------------------------------------------------------