--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.0... --------------------------------------------------------------------------------------------------------------- [00:27:52.789] Vidbot :: start() [00:27:52.790] Vidbot :: _next(), _stepIndex:0 of 4 [00:27:52.790] index :: _onStepStarted_vidbot(), step: 1 [00:27:52.792] Vidbot :: step[0], label:Initializing Core [00:27:52.800] index :: _onStepProgress_vidbot(), percent: 20 [00:27:52.801] Vidbot :: _parse() [00:27:52.802] index :: _onStepProgress_vidbot(), percent: 40 [00:27:52.802] Vidbot :: _validate() [00:27:52.803] index :: _onStepProgress_vidbot(), percent: 60 [00:27:52.803] Vidbot :: _fonts() [00:27:52.804] FabricFontManager :: add(), id: SourceSansPro-Bold [00:27:52.804] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [00:27:52.812] FabricFontManager :: add(), id: SourceSansPro-Light [00:27:52.812] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [00:27:52.813] FabricFontManager :: add(), id: DINOT-Bold [00:27:52.813] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [00:27:52.814] FabricFontManager :: add(), id: DINOT-Light [00:27:52.814] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [00:27:52.815] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [00:27:52.815] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [00:27:52.816] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [00:27:52.816] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [00:27:52.817] index :: _onStepProgress_vidbot(), percent: 80 [00:27:52.817] Vidbot :: _clips() [00:27:52.818] StreamManager :: add(), id:audio_vo, type:audio [00:27:52.818] AudioClip[audio_vo] :: constructor() [00:27:52.818] InputStream[audio_vo] :: constructor() [00:27:52.819] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [00:27:52.821] StreamManager :: add(), id:bg_music, type:audio [00:27:52.821] AudioClip[bg_music] :: constructor() [00:27:52.822] InputStream[bg_music] :: constructor() [00:27:52.822] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [00:27:52.822] StreamManager :: add(), id:simplefadedisplay, type:canvas [00:27:52.822] CanvasStream[canvas_1585242992881] :: constructor() [00:27:52.823] InputStream[canvas_1585242992881] :: constructor() [00:27:52.909] KenBurnsSlideshow[simplefadedisplay] :: constructor() [00:27:52.909] Overlay[simplefadedisplay] :: constructor() [00:27:52.909] CanvasClip[simplefadedisplay] :: constructor() [00:27:52.909] Clip[simplefadedisplay] :: constructor() [00:27:52.909] clip:"simplefadedisplay" added to stream:"canvas_1585242992881" [00:27:52.909] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1585242992881', clipId: 'simplefadedisplay' } [00:27:52.910] StreamManager :: add(), id:caption, type:canvas [00:27:52.910] RenCaption[caption] :: constructor() [00:27:52.910] Ren[caption] :: constructor() [00:27:52.910] Overlay[caption] :: constructor() [00:27:52.911] CanvasClip[caption] :: constructor() [00:27:52.911] Clip[caption] :: constructor() [00:27:52.911] clip:"caption" added to stream:"canvas_1585242992881" [00:27:52.911] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1585242992881', clipId: 'caption' } [00:27:52.911] all added... [00:27:52.911] Vidbot :: _next(), _stepIndex:1 of 4 [00:27:52.911] index :: _onStepCompleted_vidbot(), step: 1 [00:27:52.912] index :: _onStepStarted_vidbot(), step: 2 [00:27:52.912] Vidbot :: step[1], label:Initializing Input Streams [00:27:52.912] StreamManager :: init() [00:27:52.913] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [00:27:52.913] index :: _onStepProgress_vidbot(), percent: 33 [00:27:52.913] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [00:27:52.913] index :: _onStepProgress_vidbot(), percent: 67 [00:27:52.914] CanvasStream[canvas_1585242992881] :: _init(), BEGIN [00:27:52.918] i:0, c.id:simplefadedisplay [00:27:52.919] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [00:27:52.919] KenBurnsSlideshow[simplefadedisplay] :: _validate() [00:27:52.919] KenBurnsSlideshow[undefined] :: _validateAnim() [00:27:52.920] KenBurnsSlideshow[undefined] :: _validateTheme() [00:27:52.921] i:1, c.id:caption [00:27:52.921] RenCaption[caption] :: _init() [00:27:52.922] RenCaption[caption] :: _validate() [00:27:52.923] KenBurnsSlideshow[simplefadedisplay] :: _build() [00:27:52.929] AnimatedImageFrame[aif] :: constructor() [00:27:52.930] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:52.931] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_1.jpg [00:27:52.944] RenCaption[caption] :: _build() [00:27:52.960] Overlay[caption] :: _animate() [00:27:52.963] CanvasStream[caption] :: _init(), p.then() [00:27:53.009] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.012] AnimatedImageFrame[aif] :: _init(), END [00:27:53.014] AnimatedImageFrame[aif] :: constructor() [00:27:53.014] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.014] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_2.jpg [00:27:53.058] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.060] AnimatedImageFrame[aif] :: _init(), END [00:27:53.060] AnimatedImageFrame[aif] :: constructor() [00:27:53.060] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.061] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_3.jpg [00:27:53.099] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.101] AnimatedImageFrame[aif] :: _init(), END [00:27:53.101] AnimatedImageFrame[aif] :: constructor() [00:27:53.102] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.102] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_4.jpg [00:27:53.142] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.143] AnimatedImageFrame[aif] :: _init(), END [00:27:53.143] AnimatedImageFrame[aif] :: constructor() [00:27:53.144] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.144] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_5.jpg [00:27:53.180] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.181] AnimatedImageFrame[aif] :: _init(), END [00:27:53.182] AnimatedImageFrame[aif] :: constructor() [00:27:53.182] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.182] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_6.jpg [00:27:53.220] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.221] AnimatedImageFrame[aif] :: _init(), END [00:27:53.222] AnimatedImageFrame[aif] :: constructor() [00:27:53.222] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.222] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_7.jpg [00:27:53.263] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.264] AnimatedImageFrame[aif] :: _init(), END [00:27:53.265] AnimatedImageFrame[aif] :: constructor() [00:27:53.265] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.265] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_8.jpg [00:27:53.302] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.303] AnimatedImageFrame[aif] :: _init(), END [00:27:53.304] AnimatedImageFrame[aif] :: constructor() [00:27:53.304] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.304] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_9.jpg [00:27:53.350] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.351] AnimatedImageFrame[aif] :: _init(), END [00:27:53.352] AnimatedImageFrame[aif] :: constructor() [00:27:53.352] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.352] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_10.jpg [00:27:53.395] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.396] AnimatedImageFrame[aif] :: _init(), END [00:27:53.397] AnimatedImageFrame[aif] :: constructor() [00:27:53.397] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.397] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_11.jpg [00:27:53.440] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.441] AnimatedImageFrame[aif] :: _init(), END [00:27:53.442] AnimatedImageFrame[aif] :: constructor() [00:27:53.442] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.442] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_12.jpg [00:27:53.488] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.489] AnimatedImageFrame[aif] :: _init(), END [00:27:53.490] AnimatedImageFrame[aif] :: constructor() [00:27:53.490] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.490] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_13.jpg [00:27:53.529] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.530] AnimatedImageFrame[aif] :: _init(), END [00:27:53.531] AnimatedImageFrame[aif] :: constructor() [00:27:53.531] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.531] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_14.jpg [00:27:53.573] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.574] AnimatedImageFrame[aif] :: _init(), END [00:27:53.575] AnimatedImageFrame[aif] :: constructor() [00:27:53.575] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.575] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_15.jpg [00:27:53.617] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.619] AnimatedImageFrame[aif] :: _init(), END [00:27:53.619] AnimatedImageFrame[aif] :: constructor() [00:27:53.619] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.619] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_16.jpg [00:27:53.674] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.675] AnimatedImageFrame[aif] :: _init(), END [00:27:53.676] AnimatedImageFrame[aif] :: constructor() [00:27:53.676] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.676] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_17.jpg [00:27:53.714] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.715] AnimatedImageFrame[aif] :: _init(), END [00:27:53.715] AnimatedImageFrame[aif] :: constructor() [00:27:53.715] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.715] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_18.jpg [00:27:53.750] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.751] AnimatedImageFrame[aif] :: _init(), END [00:27:53.751] AnimatedImageFrame[aif] :: constructor() [00:27:53.751] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.752] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_19.jpg [00:27:53.787] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.788] AnimatedImageFrame[aif] :: _init(), END [00:27:53.789] AnimatedImageFrame[aif] :: constructor() [00:27:53.789] AnimatedImageFrame[aif] :: _init(), BEGIN [00:27:53.789] CanvasClip :: LoadImageWithPromise(), src: A7060D52-F2D4-B113-0BEB-C9A8584009F6_20.jpg [00:27:53.822] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [00:27:53.823] AnimatedImageFrame[aif] :: _init(), END [00:27:53.823] Overlay[simplefadedisplay] :: _animate() [00:27:53.824] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [00:27:53.824] CanvasStream[simplefadedisplay] :: _init(), p.then() [00:27:53.824] CanvasStream[canvas_1585242992881] :: _init(), promise.all.then() [00:27:53.826] CanvasStream[canvas_1585242992881] :: _init(), END [00:27:53.826] StreamMangaer :: init(), stream[canvas_1585242992881].then() [00:27:53.826] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1585242992881', progress: 1 } [00:27:53.827] index :: _onStepProgress_vidbot(), percent: 100 [00:27:53.827] StreamManager :: init(), promise.all.then... [00:27:53.827] Vidbot :: StreamMgr.on( 'INITED' ) [00:27:53.827] Vidbot :: _next(), _stepIndex:2 of 4 [00:27:53.827] index :: _onStepCompleted_vidbot(), step: 2 [00:27:53.827] index :: _onStepStarted_vidbot(), step: 3 [00:27:53.827] Vidbot :: step[2], label:Rendering Canvas Streams [00:27:53.828] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [00:27:53.828] StreamManager :: render() [00:27:53.829] CanvasStream[canvas_1585242992881] :: render() [00:27:53.900] index :: _onStepProgress_vidbot(), percent: 0 [00:28:30.684] index :: _onStepProgress_vidbot(), percent: 5 [00:29:05.967] index :: _onStepProgress_vidbot(), percent: 10 [00:29:40.695] index :: _onStepProgress_vidbot(), percent: 15 [00:30:17.545] index :: _onStepProgress_vidbot(), percent: 20 [00:30:54.444] index :: _onStepProgress_vidbot(), percent: 25 [00:31:28.686] index :: _onStepProgress_vidbot(), percent: 30 [00:32:04.818] index :: _onStepProgress_vidbot(), percent: 35 [00:32:43.615] index :: _onStepProgress_vidbot(), percent: 40 [00:33:21.533] index :: _onStepProgress_vidbot(), percent: 45 [00:33:54.223] index :: _onStepProgress_vidbot(), percent: 50 [00:34:33.682] index :: _onStepProgress_vidbot(), percent: 55 [00:35:06.194] index :: _onStepProgress_vidbot(), percent: 60 [00:35:42.203] index :: _onStepProgress_vidbot(), percent: 65 [00:36:17.859] index :: _onStepProgress_vidbot(), percent: 70 [00:36:54.260] index :: _onStepProgress_vidbot(), percent: 75 [00:37:32.915] index :: _onStepProgress_vidbot(), percent: 80 [00:38:17.849] index :: _onStepProgress_vidbot(), percent: 85 [00:38:59.494] index :: _onStepProgress_vidbot(), percent: 90 [00:39:36.329] index :: _onStepProgress_vidbot(), percent: 95 [00:40:12.037] index :: _onStepProgress_vidbot(), percent: 100 [00:40:15.288] StreamManager :: render(), Promise.all.then... [00:40:15.288] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [00:40:15.289] Vidbot :: _next(), _stepIndex:3 of 4 [00:40:15.289] index :: _onStepCompleted_vidbot(), step: 3 [00:40:15.290] index :: _onStepStarted_vidbot(), step: 4 [00:40:15.291] Vidbot :: step[3], label:Encoding Media [00:40:15.293] CanvasFilters :: Overlay() [00:40:15.294] AudioStream[audio_vo] :: inputOptions() [00:40:15.294] AudioFilters :: Volume() [00:40:15.294] filter: [2:a]volume=1[2_vol] [00:40:15.294] AudioFilters :: Delay() [00:40:15.294] filter: [2_vol]adelay=0|0[2_del] [00:40:15.294] AudioStream[bg_music] :: inputOptions() [00:40:15.295] AudioFilters :: Volume() [00:40:15.295] filter: [3:a]volume=0.25[3_vol] [00:40:15.295] AudioFilters :: FadeOut() [00:40:15.295] filter: [3_vol]afade=t=out:st=60:d=1[3_fadeout] [00:40:15.295] AudioFilters :: Delay() [00:40:15.295] filter: [3_fadeout]adelay=0|0[3_del] [00:40:15.295] AudioFilters :: Mix() [00:40:15.295] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [00:40:15.295] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [00:40:15.298] hang.time: 60 [00:40:15.453] Vidbot :: ffmpeg.on( 'start' ) [00:40:15.453] ffmpeg -f lavfi -i color=c=000000:s=960x540:r=30:duration=60 -r 30 -i ./tmp/canvas_1585242992881_%05d.png -to 00:01:00.000 -i file:///var/www/html/cli [00:40:15.453] ents/6932/audio/A7060D52-F2D4-B113-0BEB-C9A8584009F6.mp3 -to 00:01:00.000 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/PushPin.mp [00:40:15.453] 3 -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=60:d [00:40:15.453] =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_out] - [00:40:15.453] map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/6932/video/A7060D52-F2D4-B113-0BEB-C9A8 [00:40:15.453] 584009F6.mp4 [00:40:15.688] index :: _onStepProgress_vidbot(), percent: -3462080762 [00:40:16.065] index :: _onStepProgress_vidbot(), percent: 1 [00:40:17.088] index :: _onStepProgress_vidbot(), percent: 5 [00:40:18.612] index :: _onStepProgress_vidbot(), percent: 10 [00:40:20.132] index :: _onStepProgress_vidbot(), percent: 16 [00:40:21.143] index :: _onStepProgress_vidbot(), percent: 20 [00:40:22.671] index :: _onStepProgress_vidbot(), percent: 26 [00:40:24.195] index :: _onStepProgress_vidbot(), percent: 31 [00:40:25.212] index :: _onStepProgress_vidbot(), percent: 35 [00:40:26.740] index :: _onStepProgress_vidbot(), percent: 41 [00:40:27.745] index :: _onStepProgress_vidbot(), percent: 47 [00:40:28.747] index :: _onStepProgress_vidbot(), percent: 52 [00:40:29.255] index :: _onStepProgress_vidbot(), percent: 55 [00:40:30.264] index :: _onStepProgress_vidbot(), percent: 60 [00:40:31.278] index :: _onStepProgress_vidbot(), percent: 66 [00:40:32.285] index :: _onStepProgress_vidbot(), percent: 70 [00:40:33.799] index :: _onStepProgress_vidbot(), percent: 77 [00:40:34.807] index :: _onStepProgress_vidbot(), percent: 82 [00:40:35.813] index :: _onStepProgress_vidbot(), percent: 87 [00:40:36.316] index :: _onStepProgress_vidbot(), percent: 90 [00:40:37.320] index :: _onStepProgress_vidbot(), percent: 95 [00:40:38.227] index :: _onStepProgress_vidbot(), percent: 100 [00:40:38.259] Vidbot :: ffmpeg.on( 'end' ), Done! [00:40:38.259] StreamManager :: dispose() [00:40:38.260] CanvasStream[canvas_1585242992881] :: dispose() [00:40:38.265] Vidbot :: fflog.on( 'finish' ) [00:40:38.265] fflog.path: /var/www/html/clients/6932/video/A7060D52-F2D4-B113-0BEB-C9A8584009F6.mp4.fflog [00:40:38.265] Vidbot :: _next(), _stepIndex:4 of 4 [00:40:38.265] index :: _onStepCompleted_vidbot(), step: 4 [00:40:38.266] index :: _onComplete_vidbot(), data: { stepTime: 0.001, appTime: 765.497, output: '/var/www/html/clients/6932/video/A7060D52-F2D4-B113-0BEB-C9A8584009F6.mp4', duration: 60 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/6932/video/A7060D52-F2D4-B113-0BEB-C9A8584009F6.mp4 Media Duration : 00:01:00.000 Generation Time : 00:12:45.496 ---------------------------------------------------------------------------------------------------------------