--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.1... --------------------------------------------------------------------------------------------------------------- [12:41:27.914] Vidbot :: start() [12:41:27.915] Vidbot :: _next(), _stepIndex:0 of 4 [12:41:27.915] index :: _onStepStarted_vidbot(), step: 1 [12:41:27.916] Vidbot :: step[0], label:Initializing Core [12:41:27.925] index :: _onStepProgress_vidbot(), percent: 20 [12:41:27.925] Vidbot :: _parse() [12:41:27.926] index :: _onStepProgress_vidbot(), percent: 40 [12:41:27.926] Vidbot :: _validate() [12:41:27.927] index :: _onStepProgress_vidbot(), percent: 60 [12:41:27.927] Vidbot :: _fonts() [12:41:27.927] FabricFontManager :: add(), id: SourceSansPro-Bold [12:41:27.927] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [12:41:27.935] FabricFontManager :: add(), id: SourceSansPro-Light [12:41:27.935] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [12:41:27.936] FabricFontManager :: add(), id: DINOT-Bold [12:41:27.936] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [12:41:27.937] FabricFontManager :: add(), id: DINOT-Light [12:41:27.937] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [12:41:27.938] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [12:41:27.938] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [12:41:27.939] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [12:41:27.939] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [12:41:27.940] index :: _onStepProgress_vidbot(), percent: 80 [12:41:27.940] Vidbot :: _clips() [12:41:27.940] StreamManager :: add(), id:audio_vo, type:audio [12:41:27.941] AudioClip[audio_vo] :: constructor() [12:41:27.941] InputStream[audio_vo] :: constructor() [12:41:27.941] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [12:41:27.943] StreamManager :: add(), id:bg_music, type:audio [12:41:27.943] AudioClip[bg_music] :: constructor() [12:41:27.944] InputStream[bg_music] :: constructor() [12:41:27.944] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [12:41:27.944] StreamManager :: add(), id:simplefadedisplay, type:canvas [12:41:27.944] CanvasStream[canvas_1413303640348] :: constructor() [12:41:27.944] InputStream[canvas_1413303640348] :: constructor() [12:41:28.019] KenBurnsSlideshow[simplefadedisplay] :: constructor() [12:41:28.019] Overlay[simplefadedisplay] :: constructor() [12:41:28.019] CanvasClip[simplefadedisplay] :: constructor() [12:41:28.019] Clip[simplefadedisplay] :: constructor() [12:41:28.019] clip:"simplefadedisplay" added to stream:"canvas_1413303640348" [12:41:28.019] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1413303640348', clipId: 'simplefadedisplay' } [12:41:28.020] StreamManager :: add(), id:caption, type:canvas [12:41:28.020] RenCaption[caption] :: constructor() [12:41:28.020] Ren[caption] :: constructor() [12:41:28.020] Overlay[caption] :: constructor() [12:41:28.020] CanvasClip[caption] :: constructor() [12:41:28.020] Clip[caption] :: constructor() [12:41:28.020] clip:"caption" added to stream:"canvas_1413303640348" [12:41:28.020] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1413303640348', clipId: 'caption' } [12:41:28.020] all added... [12:41:28.020] Vidbot :: _next(), _stepIndex:1 of 4 [12:41:28.021] index :: _onStepCompleted_vidbot(), step: 1 [12:41:28.021] index :: _onStepStarted_vidbot(), step: 2 [12:41:28.021] Vidbot :: step[1], label:Initializing Input Streams [12:41:28.022] StreamManager :: init() [12:41:28.022] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [12:41:28.022] index :: _onStepProgress_vidbot(), percent: 33 [12:41:28.022] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [12:41:28.022] index :: _onStepProgress_vidbot(), percent: 67 [12:41:28.023] CanvasStream[canvas_1413303640348] :: _init(), BEGIN [12:41:28.023] i:0, c.id:simplefadedisplay [12:41:28.023] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [12:41:28.024] KenBurnsSlideshow[simplefadedisplay] :: _validate() [12:41:28.024] KenBurnsSlideshow[undefined] :: _validateAnim() [12:41:28.025] KenBurnsSlideshow[undefined] :: _validateTheme() [12:41:28.026] i:1, c.id:caption [12:41:28.026] RenCaption[caption] :: _init() [12:41:28.026] RenCaption[caption] :: _validate() [12:41:28.028] KenBurnsSlideshow[simplefadedisplay] :: _build() [12:41:28.034] AnimatedImageFrame[aif] :: constructor() [12:41:28.035] AnimatedImageFrame[aif] :: _init(), BEGIN [12:41:28.035] CanvasClip :: LoadImageWithPromise(), src: E859F02D-AB66-D942-C925-6C8337A7D0ED_1.jpg [12:41:28.046] RenCaption[caption] :: _build() [12:41:28.060] Overlay[caption] :: _animate() [12:41:28.063] CanvasStream[caption] :: _init(), p.then() [12:41:28.077] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:41:28.081] AnimatedImageFrame[aif] :: _init(), END [12:41:28.083] AnimatedImageFrame[aif] :: constructor() [12:41:28.083] AnimatedImageFrame[aif] :: _init(), BEGIN [12:41:28.083] CanvasClip :: LoadImageWithPromise(), src: E859F02D-AB66-D942-C925-6C8337A7D0ED_2.jpg [12:41:28.096] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:41:28.098] AnimatedImageFrame[aif] :: _init(), END [12:41:28.098] AnimatedImageFrame[aif] :: constructor() [12:41:28.099] AnimatedImageFrame[aif] :: _init(), BEGIN [12:41:28.099] CanvasClip :: LoadImageWithPromise(), src: E859F02D-AB66-D942-C925-6C8337A7D0ED_3.jpg [12:41:28.110] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:41:28.111] AnimatedImageFrame[aif] :: _init(), END [12:41:28.112] AnimatedImageFrame[aif] :: constructor() [12:41:28.112] AnimatedImageFrame[aif] :: _init(), BEGIN [12:41:28.112] CanvasClip :: LoadImageWithPromise(), src: E859F02D-AB66-D942-C925-6C8337A7D0ED_4.jpg [12:41:28.123] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:41:28.124] AnimatedImageFrame[aif] :: _init(), END [12:41:28.125] AnimatedImageFrame[aif] :: constructor() [12:41:28.125] AnimatedImageFrame[aif] :: _init(), BEGIN [12:41:28.125] CanvasClip :: LoadImageWithPromise(), src: E859F02D-AB66-D942-C925-6C8337A7D0ED_1.jpg [12:41:28.135] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:41:28.136] AnimatedImageFrame[aif] :: _init(), END [12:41:28.137] AnimatedImageFrame[aif] :: constructor() [12:41:28.137] AnimatedImageFrame[aif] :: _init(), BEGIN [12:41:28.137] CanvasClip :: LoadImageWithPromise(), src: E859F02D-AB66-D942-C925-6C8337A7D0ED_2.jpg [12:41:28.147] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:41:28.148] AnimatedImageFrame[aif] :: _init(), END [12:41:28.148] AnimatedImageFrame[aif] :: constructor() [12:41:28.149] AnimatedImageFrame[aif] :: _init(), BEGIN [12:41:28.149] CanvasClip :: LoadImageWithPromise(), src: E859F02D-AB66-D942-C925-6C8337A7D0ED_3.jpg [12:41:28.159] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:41:28.160] AnimatedImageFrame[aif] :: _init(), END [12:41:28.160] AnimatedImageFrame[aif] :: constructor() [12:41:28.160] AnimatedImageFrame[aif] :: _init(), BEGIN [12:41:28.161] CanvasClip :: LoadImageWithPromise(), src: E859F02D-AB66-D942-C925-6C8337A7D0ED_4.jpg [12:41:28.171] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:41:28.172] AnimatedImageFrame[aif] :: _init(), END [12:41:28.173] AnimatedImageFrame[aif] :: constructor() [12:41:28.173] AnimatedImageFrame[aif] :: _init(), BEGIN [12:41:28.173] CanvasClip :: LoadImageWithPromise(), src: E859F02D-AB66-D942-C925-6C8337A7D0ED_1.jpg [12:41:28.210] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:41:28.211] AnimatedImageFrame[aif] :: _init(), END [12:41:28.211] AnimatedImageFrame[aif] :: constructor() [12:41:28.212] AnimatedImageFrame[aif] :: _init(), BEGIN [12:41:28.212] CanvasClip :: LoadImageWithPromise(), src: E859F02D-AB66-D942-C925-6C8337A7D0ED_2.jpg [12:41:28.233] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:41:28.234] AnimatedImageFrame[aif] :: _init(), END [12:41:28.234] Overlay[simplefadedisplay] :: _animate() [12:41:28.235] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [12:41:28.235] CanvasStream[simplefadedisplay] :: _init(), p.then() [12:41:28.235] CanvasStream[canvas_1413303640348] :: _init(), promise.all.then() [12:41:28.237] CanvasStream[canvas_1413303640348] :: _init(), END [12:41:28.237] StreamMangaer :: init(), stream[canvas_1413303640348].then() [12:41:28.237] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1413303640348', progress: 1 } [12:41:28.238] index :: _onStepProgress_vidbot(), percent: 100 [12:41:28.238] StreamManager :: init(), promise.all.then... [12:41:28.238] Vidbot :: StreamMgr.on( 'INITED' ) [12:41:28.238] Vidbot :: _next(), _stepIndex:2 of 4 [12:41:28.238] index :: _onStepCompleted_vidbot(), step: 2 [12:41:28.238] index :: _onStepStarted_vidbot(), step: 3 [12:41:28.239] Vidbot :: step[2], label:Rendering Canvas Streams [12:41:28.239] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [12:41:28.239] StreamManager :: render() [12:41:28.240] CanvasStream[canvas_1413303640348] :: render() [12:41:28.272] index :: _onStepProgress_vidbot(), percent: 0 [12:41:32.649] index :: _onStepProgress_vidbot(), percent: 5 [12:41:37.305] index :: _onStepProgress_vidbot(), percent: 10 [12:41:42.343] index :: _onStepProgress_vidbot(), percent: 15 [12:41:47.300] index :: _onStepProgress_vidbot(), percent: 20 [12:41:55.558] index :: _onStepProgress_vidbot(), percent: 25 [12:42:00.299] index :: _onStepProgress_vidbot(), percent: 30 [12:42:05.760] index :: _onStepProgress_vidbot(), percent: 35 [12:42:10.360] index :: _onStepProgress_vidbot(), percent: 40 [12:42:15.595] index :: _onStepProgress_vidbot(), percent: 45 [12:42:21.442] index :: _onStepProgress_vidbot(), percent: 50 [12:42:28.031] index :: _onStepProgress_vidbot(), percent: 55 [12:42:32.769] index :: _onStepProgress_vidbot(), percent: 60 [12:42:37.666] index :: _onStepProgress_vidbot(), percent: 65 [12:42:42.399] index :: _onStepProgress_vidbot(), percent: 70 [12:42:48.256] index :: _onStepProgress_vidbot(), percent: 75 [12:42:53.392] index :: _onStepProgress_vidbot(), percent: 80 [12:42:59.910] index :: _onStepProgress_vidbot(), percent: 85 [12:43:04.906] index :: _onStepProgress_vidbot(), percent: 90 [12:43:10.800] index :: _onStepProgress_vidbot(), percent: 95 [12:43:15.865] index :: _onStepProgress_vidbot(), percent: 100 [12:43:16.243] StreamManager :: render(), Promise.all.then... [12:43:16.244] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [12:43:16.244] Vidbot :: _next(), _stepIndex:3 of 4 [12:43:16.244] index :: _onStepCompleted_vidbot(), step: 3 [12:43:16.244] index :: _onStepStarted_vidbot(), step: 4 [12:43:16.245] Vidbot :: step[3], label:Encoding Media [12:43:16.248] CanvasFilters :: Overlay() [12:43:16.248] AudioStream[audio_vo] :: inputOptions() [12:43:16.248] AudioFilters :: Volume() [12:43:16.248] filter: [2:a]volume=1[2_vol] [12:43:16.249] AudioFilters :: Delay() [12:43:16.249] filter: [2_vol]adelay=0|0[2_del] [12:43:16.249] AudioStream[bg_music] :: inputOptions() [12:43:16.249] AudioFilters :: Volume() [12:43:16.249] filter: [3:a]volume=0.25[3_vol] [12:43:16.249] AudioFilters :: FadeOut() [12:43:16.249] filter: [3_vol]afade=t=out:st=29.25:d=1[3_fadeout] [12:43:16.249] AudioFilters :: Delay() [12:43:16.249] filter: [3_fadeout]adelay=0|0[3_del] [12:43:16.250] AudioFilters :: Mix() [12:43:16.250] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [12:43:16.250] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [12:43:16.252] hang.time: 60 [12:43:16.331] Vidbot :: ffmpeg.on( 'start' ) [12:43:16.332] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=29.25 -r 30 -i ./tmp/canvas_1413303640348_%05d.png -to 00:00:29.250 -i file:///var/www/html/ [12:43:16.332] clients/2173/audio/E859F02D-AB66-D942-C925-6C8337A7D0ED.mp3 -to 00:00:29.250 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Rock.mp [12:43:16.332] 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=29.2 [12:43:16.332] 5: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_out [12:43:16.332] ] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/2173/video/E859F02D-AB66-D942-C925-6 [12:43:16.332] C8337A7D0ED.mp4 [12:43:16.530] index :: _onStepProgress_vidbot(), percent: -7101704127 [12:43:16.925] index :: _onStepProgress_vidbot(), percent: 1 [12:43:17.935] index :: _onStepProgress_vidbot(), percent: 10 [12:43:18.435] index :: _onStepProgress_vidbot(), percent: 19 [12:43:18.944] index :: _onStepProgress_vidbot(), percent: 26 [12:43:19.450] index :: _onStepProgress_vidbot(), percent: 35 [12:43:19.950] index :: _onStepProgress_vidbot(), percent: 42 [12:43:20.457] index :: _onStepProgress_vidbot(), percent: 48 [12:43:21.194] index :: _onStepProgress_vidbot(), percent: 55 [12:43:22.204] index :: _onStepProgress_vidbot(), percent: 64 [12:43:22.750] index :: _onStepProgress_vidbot(), percent: 66 [12:43:23.253] index :: _onStepProgress_vidbot(), percent: 74 [12:43:23.756] index :: _onStepProgress_vidbot(), percent: 81 [12:43:24.256] index :: _onStepProgress_vidbot(), percent: 87 [12:43:25.257] index :: _onStepProgress_vidbot(), percent: 93 [12:43:25.772] index :: _onStepProgress_vidbot(), percent: 100 [12:43:25.872] Vidbot :: ffmpeg.on( 'end' ), Done! [12:43:25.872] StreamManager :: dispose() [12:43:25.873] CanvasStream[canvas_1413303640348] :: dispose() [12:43:25.877] Vidbot :: fflog.on( 'finish' ) [12:43:25.877] fflog.path: /var/www/html/clients/2173/video/E859F02D-AB66-D942-C925-6C8337A7D0ED.mp4.fflog [12:43:25.877] Vidbot :: _next(), _stepIndex:4 of 4 [12:43:25.877] index :: _onStepCompleted_vidbot(), step: 4 [12:43:25.878] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 117.982, output: '/var/www/html/clients/2173/video/E859F02D-AB66-D942-C925-6C8337A7D0ED.mp4', duration: 29.25 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/2173/video/E859F02D-AB66-D942-C925-6C8337A7D0ED.mp4 Media Duration : 00:00:29.250 Generation Time : 00:01:57.981 ---------------------------------------------------------------------------------------------------------------