--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.0... --------------------------------------------------------------------------------------------------------------- [08:42:59.144] Vidbot :: start() [08:42:59.145] Vidbot :: _next(), _stepIndex:0 of 4 [08:42:59.145] index :: _onStepStarted_vidbot(), step: 1 [08:42:59.146] Vidbot :: step[0], label:Initializing Core [08:42:59.154] index :: _onStepProgress_vidbot(), percent: 20 [08:42:59.154] Vidbot :: _parse() [08:42:59.155] index :: _onStepProgress_vidbot(), percent: 40 [08:42:59.155] Vidbot :: _validate() [08:42:59.156] index :: _onStepProgress_vidbot(), percent: 60 [08:42:59.156] Vidbot :: _fonts() [08:42:59.157] FabricFontManager :: add(), id: SourceSansPro-Bold [08:42:59.157] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [08:42:59.164] FabricFontManager :: add(), id: SourceSansPro-Light [08:42:59.165] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [08:42:59.165] FabricFontManager :: add(), id: DINOT-Bold [08:42:59.165] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [08:42:59.166] FabricFontManager :: add(), id: DINOT-Light [08:42:59.166] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [08:42:59.167] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [08:42:59.167] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [08:42:59.168] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [08:42:59.168] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [08:42:59.169] index :: _onStepProgress_vidbot(), percent: 80 [08:42:59.169] Vidbot :: _clips() [08:42:59.170] StreamManager :: add(), id:audio_vo, type:audio [08:42:59.170] AudioClip[audio_vo] :: constructor() [08:42:59.170] InputStream[audio_vo] :: constructor() [08:42:59.170] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [08:42:59.173] StreamManager :: add(), id:bg_music, type:audio [08:42:59.173] AudioClip[bg_music] :: constructor() [08:42:59.173] InputStream[bg_music] :: constructor() [08:42:59.173] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [08:42:59.173] StreamManager :: add(), id:simplefadedisplay, type:canvas [08:42:59.174] CanvasStream[canvas_1572513769985] :: constructor() [08:42:59.174] InputStream[canvas_1572513769985] :: constructor() [08:42:59.248] KenBurnsSlideshow[simplefadedisplay] :: constructor() [08:42:59.248] Overlay[simplefadedisplay] :: constructor() [08:42:59.248] CanvasClip[simplefadedisplay] :: constructor() [08:42:59.248] Clip[simplefadedisplay] :: constructor() [08:42:59.249] clip:"simplefadedisplay" added to stream:"canvas_1572513769985" [08:42:59.249] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1572513769985', clipId: 'simplefadedisplay' } [08:42:59.249] StreamManager :: add(), id:caption, type:canvas [08:42:59.249] RenCaption[caption] :: constructor() [08:42:59.249] Ren[caption] :: constructor() [08:42:59.249] Overlay[caption] :: constructor() [08:42:59.249] CanvasClip[caption] :: constructor() [08:42:59.249] Clip[caption] :: constructor() [08:42:59.249] clip:"caption" added to stream:"canvas_1572513769985" [08:42:59.249] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1572513769985', clipId: 'caption' } [08:42:59.249] StreamManager :: add(), id:carfax, type:video [08:42:59.250] VideoStream[carfax] :: constructor() [08:42:59.250] InputStream[carfax] :: constructor() [08:42:59.250] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'carfax', clipId: null } [08:42:59.250] all added... [08:42:59.250] Vidbot :: _next(), _stepIndex:1 of 4 [08:42:59.250] index :: _onStepCompleted_vidbot(), step: 1 [08:42:59.250] index :: _onStepStarted_vidbot(), step: 2 [08:42:59.251] Vidbot :: step[1], label:Initializing Input Streams [08:42:59.251] StreamManager :: init() [08:42:59.251] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.25 } [08:42:59.252] index :: _onStepProgress_vidbot(), percent: 25 [08:42:59.252] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.5 } [08:42:59.252] index :: _onStepProgress_vidbot(), percent: 50 [08:42:59.252] CanvasStream[canvas_1572513769985] :: _init(), BEGIN [08:42:59.252] i:0, c.id:simplefadedisplay [08:42:59.253] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [08:42:59.253] KenBurnsSlideshow[simplefadedisplay] :: _validate() [08:42:59.253] KenBurnsSlideshow[undefined] :: _validateAnim() [08:42:59.254] KenBurnsSlideshow[undefined] :: _validateTheme() [08:42:59.255] i:1, c.id:caption [08:42:59.255] RenCaption[caption] :: _init() [08:42:59.255] RenCaption[caption] :: _validate() [08:42:59.256] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'carfax', progress: 0.75 } [08:42:59.256] index :: _onStepProgress_vidbot(), percent: 75 [08:42:59.256] KenBurnsSlideshow[simplefadedisplay] :: _build() [08:42:59.262] AnimatedImageFrame[aif] :: constructor() [08:42:59.263] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.263] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_1.jpg [08:42:59.274] RenCaption[caption] :: _build() [08:42:59.291] Overlay[caption] :: _animate() [08:42:59.294] CanvasStream[caption] :: _init(), p.then() [08:42:59.312] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.315] AnimatedImageFrame[aif] :: _init(), END [08:42:59.316] AnimatedImageFrame[aif] :: constructor() [08:42:59.316] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.316] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_2.jpg [08:42:59.342] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.343] AnimatedImageFrame[aif] :: _init(), END [08:42:59.344] AnimatedImageFrame[aif] :: constructor() [08:42:59.344] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.344] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_3.jpg [08:42:59.366] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.367] AnimatedImageFrame[aif] :: _init(), END [08:42:59.368] AnimatedImageFrame[aif] :: constructor() [08:42:59.368] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.368] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_4.jpg [08:42:59.390] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.391] AnimatedImageFrame[aif] :: _init(), END [08:42:59.391] AnimatedImageFrame[aif] :: constructor() [08:42:59.391] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.391] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_5.jpg [08:42:59.414] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.415] AnimatedImageFrame[aif] :: _init(), END [08:42:59.415] AnimatedImageFrame[aif] :: constructor() [08:42:59.415] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.415] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_6.jpg [08:42:59.437] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.438] AnimatedImageFrame[aif] :: _init(), END [08:42:59.439] AnimatedImageFrame[aif] :: constructor() [08:42:59.439] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.439] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_7.jpg [08:42:59.459] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.459] AnimatedImageFrame[aif] :: _init(), END [08:42:59.460] AnimatedImageFrame[aif] :: constructor() [08:42:59.460] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.460] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_8.jpg [08:42:59.483] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.483] AnimatedImageFrame[aif] :: _init(), END [08:42:59.484] AnimatedImageFrame[aif] :: constructor() [08:42:59.484] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.484] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_9.jpg [08:42:59.505] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.505] AnimatedImageFrame[aif] :: _init(), END [08:42:59.506] AnimatedImageFrame[aif] :: constructor() [08:42:59.506] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.506] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_10.jpg [08:42:59.526] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.527] AnimatedImageFrame[aif] :: _init(), END [08:42:59.527] AnimatedImageFrame[aif] :: constructor() [08:42:59.527] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.527] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_11.jpg [08:42:59.546] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.547] AnimatedImageFrame[aif] :: _init(), END [08:42:59.547] AnimatedImageFrame[aif] :: constructor() [08:42:59.547] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.548] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_12.jpg [08:42:59.565] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.566] AnimatedImageFrame[aif] :: _init(), END [08:42:59.566] AnimatedImageFrame[aif] :: constructor() [08:42:59.567] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.567] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_13.jpg [08:42:59.585] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.586] AnimatedImageFrame[aif] :: _init(), END [08:42:59.586] AnimatedImageFrame[aif] :: constructor() [08:42:59.586] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.586] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_14.jpg [08:42:59.603] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.604] AnimatedImageFrame[aif] :: _init(), END [08:42:59.604] AnimatedImageFrame[aif] :: constructor() [08:42:59.605] AnimatedImageFrame[aif] :: _init(), BEGIN [08:42:59.605] CanvasClip :: LoadImageWithPromise(), src: AA588C38-3C6D-E2F1-7954-83087B9C6288_15.jpg [08:42:59.624] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [08:42:59.625] AnimatedImageFrame[aif] :: _init(), END [08:42:59.625] Overlay[simplefadedisplay] :: _animate() [08:42:59.625] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [08:42:59.625] CanvasStream[simplefadedisplay] :: _init(), p.then() [08:42:59.626] CanvasStream[canvas_1572513769985] :: _init(), promise.all.then() [08:42:59.627] CanvasStream[canvas_1572513769985] :: _init(), END [08:42:59.628] StreamMangaer :: init(), stream[canvas_1572513769985].then() [08:42:59.628] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1572513769985', progress: 1 } [08:42:59.628] index :: _onStepProgress_vidbot(), percent: 100 [08:42:59.628] StreamManager :: init(), promise.all.then... [08:42:59.628] Vidbot :: StreamMgr.on( 'INITED' ) [08:42:59.628] Vidbot :: _next(), _stepIndex:2 of 4 [08:42:59.628] index :: _onStepCompleted_vidbot(), step: 2 [08:42:59.628] index :: _onStepStarted_vidbot(), step: 3 [08:42:59.629] Vidbot :: step[2], label:Rendering Canvas Streams [08:42:59.629] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [08:42:59.629] StreamManager :: render() [08:42:59.630] CanvasStream[canvas_1572513769985] :: render() [08:42:59.659] index :: _onStepProgress_vidbot(), percent: 0 [08:43:07.416] index :: _onStepProgress_vidbot(), percent: 5 [08:43:18.805] index :: _onStepProgress_vidbot(), percent: 10 [08:43:32.446] index :: _onStepProgress_vidbot(), percent: 15 [08:43:46.268] index :: _onStepProgress_vidbot(), percent: 20 [08:44:00.667] index :: _onStepProgress_vidbot(), percent: 25 [08:44:14.599] index :: _onStepProgress_vidbot(), percent: 30 [08:44:28.632] index :: _onStepProgress_vidbot(), percent: 35 [08:44:42.650] index :: _onStepProgress_vidbot(), percent: 40 [08:44:58.384] index :: _onStepProgress_vidbot(), percent: 45 [08:45:13.575] index :: _onStepProgress_vidbot(), percent: 50 [08:45:27.708] index :: _onStepProgress_vidbot(), percent: 55 [08:45:40.651] index :: _onStepProgress_vidbot(), percent: 60 [08:45:52.547] index :: _onStepProgress_vidbot(), percent: 65 [08:46:06.132] index :: _onStepProgress_vidbot(), percent: 70 [08:46:20.714] index :: _onStepProgress_vidbot(), percent: 75 [08:46:35.377] index :: _onStepProgress_vidbot(), percent: 80 [08:46:50.475] index :: _onStepProgress_vidbot(), percent: 85 [08:47:05.807] index :: _onStepProgress_vidbot(), percent: 90 [08:47:21.019] index :: _onStepProgress_vidbot(), percent: 95 [08:47:34.347] index :: _onStepProgress_vidbot(), percent: 100 [08:47:34.503] StreamManager :: render(), Promise.all.then... [08:47:34.504] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [08:47:34.504] Vidbot :: _next(), _stepIndex:3 of 4 [08:47:34.504] index :: _onStepCompleted_vidbot(), step: 3 [08:47:34.505] index :: _onStepStarted_vidbot(), step: 4 [08:47:34.505] Vidbot :: step[3], label:Encoding Media [08:47:34.507] CanvasFilters :: Overlay() [08:47:34.508] VideoStream[carfax] :: inputOptions() [08:47:34.508] VideoFilters :: Tpad() [08:47:34.508] VideoFilters :: Scale() [08:47:34.509] VideoFilters :: Overlay() [08:47:34.509] AudioStream[audio_vo] :: inputOptions() [08:47:34.510] AudioFilters :: Volume() [08:47:34.510] filter: [3:a]volume=1[3_vol] [08:47:34.510] AudioFilters :: Delay() [08:47:34.510] filter: [3_vol]adelay=0|0[3_del] [08:47:34.510] AudioStream[bg_music] :: inputOptions() [08:47:34.510] AudioFilters :: Volume() [08:47:34.510] filter: [4:a]volume=0.25[4_vol] [08:47:34.510] AudioFilters :: FadeOut() [08:47:34.510] filter: [4_vol]afade=t=out:st=45:d=1[4_fadeout] [08:47:34.511] AudioFilters :: Delay() [08:47:34.511] filter: [4_fadeout]adelay=0|0[4_del] [08:47:34.511] VideoStream[carfax] :: inputOptions() [08:47:34.511] AudioFilters :: Volume() [08:47:34.511] filter: [5:a]volume=1[5_vol] [08:47:34.511] AudioFilters :: Delay() [08:47:34.511] filter: [5_vol]adelay=45000|45000[5_del] [08:47:34.511] AudioFilters :: Mix() [08:47:34.511] filter: [3_del][4_del][5_del]amix=inputs=3:duration=longest[a_out] [08:47:34.511] mixed filter: [3_del][4_del][5_del]amix=inputs=3:duration=longest[a_out] [08:47:34.513] hang.time: 60 [08:47:34.594] Vidbot :: ffmpeg.on( 'start' ) [08:47:34.594] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=59.63 -r 30 -i ./tmp/canvas_1572513769985_%05d.png -to 00:00:14.630 -i file:///var/app/video [08:47:34.594] _pre_processor/assets/cpo/carfax_1owner/carfax_1owner_360.mp4 -to 00:00:45.000 -i file:///var/www/html/clients/1836/audio/AA588C38-3C6D-E2F1-7954-8308 [08:47:34.594] 7B9C6288.mp3 -to 00:00:45.000 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Groove-4.mp3 -to 00:00:14.630 -i file:///var/app/video [08:47:34.594] _pre_processor/assets/cpo/carfax_1owner/carfax_1owner_360.mp4 -y -filter_complex [0:v][1:v]overlay=x=0:y=0[1_out];[2:v]tpad=start_duration=44.95[2_tpa [08:47:34.594] d];[2_tpad]scale=w=640:h=360[2_scaled];[1_out][2_scaled]overlay=x=0:y=0:enable='between(t,45,59.63)'[2_out];[3:a]volume=1[3_vol];[3_vol]adelay=0|0[3_d [08:47:34.594] el];[4:a]volume=0.25[4_vol];[4_vol]afade=t=out:st=45:d=1[4_fadeout];[4_fadeout]adelay=0|0[4_del];[5:a]volume=1[5_vol];[5_vol]adelay=45000|45000[5_del] [08:47:34.594] ;[3_del][4_del][5_del]amix=inputs=3:duration=longest[a_out] -acodec aac -vcodec libx264 -r 30 -f mp4 -map [a_out] -map [2_out] -preset veryfast -crf 1 [08:47:34.594] 8 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/1836/video/AA588C38-3C6D-E2F1-7954-83087B9C6288.mp4 [08:47:34.816] index :: _onStepProgress_vidbot(), percent: -3483562732 [08:47:35.257] index :: _onStepProgress_vidbot(), percent: 3 [08:47:35.758] index :: _onStepProgress_vidbot(), percent: 9 [08:47:36.260] index :: _onStepProgress_vidbot(), percent: 15 [08:47:36.778] index :: _onStepProgress_vidbot(), percent: 21 [08:47:37.287] index :: _onStepProgress_vidbot(), percent: 27 [08:47:37.788] index :: _onStepProgress_vidbot(), percent: 34 [08:47:38.290] index :: _onStepProgress_vidbot(), percent: 40 [08:47:38.797] index :: _onStepProgress_vidbot(), percent: 45 [08:47:39.299] index :: _onStepProgress_vidbot(), percent: 51 [08:47:39.799] index :: _onStepProgress_vidbot(), percent: 58 [08:47:40.301] index :: _onStepProgress_vidbot(), percent: 65 [08:47:40.813] index :: _onStepProgress_vidbot(), percent: 72 [08:47:41.313] index :: _onStepProgress_vidbot(), percent: 77 [08:47:41.817] index :: _onStepProgress_vidbot(), percent: 83 [08:47:42.315] index :: _onStepProgress_vidbot(), percent: 92 [08:47:42.761] index :: _onStepProgress_vidbot(), percent: 100 [08:47:42.788] Vidbot :: ffmpeg.on( 'end' ), Done! [08:47:42.789] StreamManager :: dispose() [08:47:42.789] CanvasStream[canvas_1572513769985] :: dispose() [08:47:42.794] Vidbot :: fflog.on( 'finish' ) [08:47:42.794] fflog.path: /var/www/html/clients/1836/video/AA588C38-3C6D-E2F1-7954-83087B9C6288.mp4.fflog [08:47:42.794] Vidbot :: _next(), _stepIndex:4 of 4 [08:47:42.794] index :: _onStepCompleted_vidbot(), step: 4 [08:47:42.794] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 283.667, output: '/var/www/html/clients/1836/video/AA588C38-3C6D-E2F1-7954-83087B9C6288.mp4', duration: 59.63 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/1836/video/AA588C38-3C6D-E2F1-7954-83087B9C6288.mp4 Media Duration : 00:00:59.630 Generation Time : 00:04:43.666 ---------------------------------------------------------------------------------------------------------------