--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.1... --------------------------------------------------------------------------------------------------------------- [03:45:19.901] Vidbot :: start() [03:45:19.901] Vidbot :: _next(), _stepIndex:0 of 4 [03:45:19.902] index :: _onStepStarted_vidbot(), step: 1 [03:45:19.903] Vidbot :: step[0], label:Initializing Core [03:45:19.911] index :: _onStepProgress_vidbot(), percent: 20 [03:45:19.912] Vidbot :: _parse() [03:45:19.913] index :: _onStepProgress_vidbot(), percent: 40 [03:45:19.913] Vidbot :: _validate() [03:45:19.914] index :: _onStepProgress_vidbot(), percent: 60 [03:45:19.914] Vidbot :: _fonts() [03:45:19.914] FabricFontManager :: add(), id: SourceSansPro-Bold [03:45:19.914] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [03:45:19.922] FabricFontManager :: add(), id: SourceSansPro-Light [03:45:19.922] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [03:45:19.923] FabricFontManager :: add(), id: DINOT-Bold [03:45:19.923] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [03:45:19.924] FabricFontManager :: add(), id: DINOT-Light [03:45:19.924] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [03:45:19.925] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [03:45:19.925] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [03:45:19.926] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [03:45:19.926] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [03:45:19.927] index :: _onStepProgress_vidbot(), percent: 80 [03:45:19.927] Vidbot :: _clips() [03:45:19.928] StreamManager :: add(), id:audio_vo, type:audio [03:45:19.928] AudioClip[audio_vo] :: constructor() [03:45:19.928] InputStream[audio_vo] :: constructor() [03:45:19.928] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [03:45:19.931] StreamManager :: add(), id:bg_music, type:audio [03:45:19.931] AudioClip[bg_music] :: constructor() [03:45:19.931] InputStream[bg_music] :: constructor() [03:45:19.931] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [03:45:19.931] StreamManager :: add(), id:simplefadedisplay, type:canvas [03:45:19.932] CanvasStream[canvas_1742649144471] :: constructor() [03:45:19.932] InputStream[canvas_1742649144471] :: constructor() [03:45:20.009] KenBurnsSlideshow[simplefadedisplay] :: constructor() [03:45:20.009] Overlay[simplefadedisplay] :: constructor() [03:45:20.009] CanvasClip[simplefadedisplay] :: constructor() [03:45:20.009] Clip[simplefadedisplay] :: constructor() [03:45:20.009] clip:"simplefadedisplay" added to stream:"canvas_1742649144471" [03:45:20.009] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1742649144471', clipId: 'simplefadedisplay' } [03:45:20.010] StreamManager :: add(), id:caption, type:canvas [03:45:20.010] RenCaption[caption] :: constructor() [03:45:20.010] Ren[caption] :: constructor() [03:45:20.010] Overlay[caption] :: constructor() [03:45:20.010] CanvasClip[caption] :: constructor() [03:45:20.010] Clip[caption] :: constructor() [03:45:20.010] clip:"caption" added to stream:"canvas_1742649144471" [03:45:20.010] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1742649144471', clipId: 'caption' } [03:45:20.011] all added... [03:45:20.011] Vidbot :: _next(), _stepIndex:1 of 4 [03:45:20.011] index :: _onStepCompleted_vidbot(), step: 1 [03:45:20.011] index :: _onStepStarted_vidbot(), step: 2 [03:45:20.011] Vidbot :: step[1], label:Initializing Input Streams [03:45:20.012] StreamManager :: init() [03:45:20.012] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [03:45:20.013] index :: _onStepProgress_vidbot(), percent: 33 [03:45:20.013] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [03:45:20.013] index :: _onStepProgress_vidbot(), percent: 67 [03:45:20.013] CanvasStream[canvas_1742649144471] :: _init(), BEGIN [03:45:20.013] i:0, c.id:simplefadedisplay [03:45:20.014] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [03:45:20.014] KenBurnsSlideshow[simplefadedisplay] :: _validate() [03:45:20.015] KenBurnsSlideshow[undefined] :: _validateAnim() [03:45:20.015] KenBurnsSlideshow[undefined] :: _validateTheme() [03:45:20.016] i:1, c.id:caption [03:45:20.016] RenCaption[caption] :: _init() [03:45:20.017] RenCaption[caption] :: _validate() [03:45:20.018] KenBurnsSlideshow[simplefadedisplay] :: _build() [03:45:20.034] AnimatedImageFrame[aif] :: constructor() [03:45:20.035] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.035] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_1.jpg [03:45:20.048] RenCaption[caption] :: _build() [03:45:20.065] Overlay[caption] :: _animate() [03:45:20.068] CanvasStream[caption] :: _init(), p.then() [03:45:20.083] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.087] AnimatedImageFrame[aif] :: _init(), END [03:45:20.088] AnimatedImageFrame[aif] :: constructor() [03:45:20.089] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.089] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_2.jpg [03:45:20.102] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.104] AnimatedImageFrame[aif] :: _init(), END [03:45:20.104] AnimatedImageFrame[aif] :: constructor() [03:45:20.105] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.105] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_3.jpg [03:45:20.117] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.118] AnimatedImageFrame[aif] :: _init(), END [03:45:20.119] AnimatedImageFrame[aif] :: constructor() [03:45:20.119] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.119] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_4.jpg [03:45:20.131] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.132] AnimatedImageFrame[aif] :: _init(), END [03:45:20.133] AnimatedImageFrame[aif] :: constructor() [03:45:20.133] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.133] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_1.jpg [03:45:20.145] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.146] AnimatedImageFrame[aif] :: _init(), END [03:45:20.147] AnimatedImageFrame[aif] :: constructor() [03:45:20.147] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.147] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_2.jpg [03:45:20.158] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.159] AnimatedImageFrame[aif] :: _init(), END [03:45:20.160] AnimatedImageFrame[aif] :: constructor() [03:45:20.160] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.160] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_3.jpg [03:45:20.172] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.173] AnimatedImageFrame[aif] :: _init(), END [03:45:20.174] AnimatedImageFrame[aif] :: constructor() [03:45:20.174] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.174] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_4.jpg [03:45:20.186] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.187] AnimatedImageFrame[aif] :: _init(), END [03:45:20.187] AnimatedImageFrame[aif] :: constructor() [03:45:20.188] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.188] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_1.jpg [03:45:20.198] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.199] AnimatedImageFrame[aif] :: _init(), END [03:45:20.199] AnimatedImageFrame[aif] :: constructor() [03:45:20.200] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.200] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_2.jpg [03:45:20.210] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.211] AnimatedImageFrame[aif] :: _init(), END [03:45:20.212] AnimatedImageFrame[aif] :: constructor() [03:45:20.212] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.212] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_3.jpg [03:45:20.222] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.223] AnimatedImageFrame[aif] :: _init(), END [03:45:20.224] AnimatedImageFrame[aif] :: constructor() [03:45:20.224] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.224] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_4.jpg [03:45:20.236] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.237] AnimatedImageFrame[aif] :: _init(), END [03:45:20.237] AnimatedImageFrame[aif] :: constructor() [03:45:20.237] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.238] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_1.jpg [03:45:20.249] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.250] AnimatedImageFrame[aif] :: _init(), END [03:45:20.251] AnimatedImageFrame[aif] :: constructor() [03:45:20.251] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.251] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_2.jpg [03:45:20.261] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.262] AnimatedImageFrame[aif] :: _init(), END [03:45:20.263] AnimatedImageFrame[aif] :: constructor() [03:45:20.263] AnimatedImageFrame[aif] :: _init(), BEGIN [03:45:20.263] CanvasClip :: LoadImageWithPromise(), src: F00824E7-AD94-3AC3-66A6-084BF87F8B6E_3.jpg [03:45:20.273] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [03:45:20.274] AnimatedImageFrame[aif] :: _init(), END [03:45:20.275] Overlay[simplefadedisplay] :: _animate() [03:45:20.275] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [03:45:20.275] CanvasStream[simplefadedisplay] :: _init(), p.then() [03:45:20.276] CanvasStream[canvas_1742649144471] :: _init(), promise.all.then() [03:45:20.278] CanvasStream[canvas_1742649144471] :: _init(), END [03:45:20.278] StreamMangaer :: init(), stream[canvas_1742649144471].then() [03:45:20.278] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1742649144471', progress: 1 } [03:45:20.278] index :: _onStepProgress_vidbot(), percent: 100 [03:45:20.278] StreamManager :: init(), promise.all.then... [03:45:20.278] Vidbot :: StreamMgr.on( 'INITED' ) [03:45:20.279] Vidbot :: _next(), _stepIndex:2 of 4 [03:45:20.279] index :: _onStepCompleted_vidbot(), step: 2 [03:45:20.279] index :: _onStepStarted_vidbot(), step: 3 [03:45:20.279] Vidbot :: step[2], label:Rendering Canvas Streams [03:45:20.280] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [03:45:20.280] StreamManager :: render() [03:45:20.280] CanvasStream[canvas_1742649144471] :: render() [03:45:20.311] index :: _onStepProgress_vidbot(), percent: 0 [03:45:25.833] index :: _onStepProgress_vidbot(), percent: 5 [03:45:31.937] index :: _onStepProgress_vidbot(), percent: 10 [03:45:37.900] index :: _onStepProgress_vidbot(), percent: 15 [03:45:43.908] index :: _onStepProgress_vidbot(), percent: 20 [03:45:49.923] index :: _onStepProgress_vidbot(), percent: 25 [03:45:55.808] index :: _onStepProgress_vidbot(), percent: 30 [03:46:01.635] index :: _onStepProgress_vidbot(), percent: 35 [03:46:07.834] index :: _onStepProgress_vidbot(), percent: 40 [03:46:14.550] index :: _onStepProgress_vidbot(), percent: 45 [03:46:21.624] index :: _onStepProgress_vidbot(), percent: 50 [03:46:28.431] index :: _onStepProgress_vidbot(), percent: 55 [03:46:35.602] index :: _onStepProgress_vidbot(), percent: 60 [03:46:42.559] index :: _onStepProgress_vidbot(), percent: 65 [03:46:49.584] index :: _onStepProgress_vidbot(), percent: 70 [03:46:56.527] index :: _onStepProgress_vidbot(), percent: 75 [03:47:03.222] index :: _onStepProgress_vidbot(), percent: 80 [03:47:10.233] index :: _onStepProgress_vidbot(), percent: 85 [03:47:17.051] index :: _onStepProgress_vidbot(), percent: 90 [03:47:24.118] index :: _onStepProgress_vidbot(), percent: 95 [03:47:31.533] index :: _onStepProgress_vidbot(), percent: 100 [03:47:32.098] StreamManager :: render(), Promise.all.then... [03:47:32.099] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [03:47:32.099] Vidbot :: _next(), _stepIndex:3 of 4 [03:47:32.099] index :: _onStepCompleted_vidbot(), step: 3 [03:47:32.100] index :: _onStepStarted_vidbot(), step: 4 [03:47:32.101] Vidbot :: step[3], label:Encoding Media [03:47:32.103] CanvasFilters :: Overlay() [03:47:32.103] AudioStream[audio_vo] :: inputOptions() [03:47:32.104] AudioFilters :: Volume() [03:47:32.104] filter: [2:a]volume=1[2_vol] [03:47:32.104] AudioFilters :: Delay() [03:47:32.104] filter: [2_vol]adelay=0|0[2_del] [03:47:32.104] AudioStream[bg_music] :: inputOptions() [03:47:32.104] AudioFilters :: Volume() [03:47:32.104] filter: [3:a]volume=0.25[3_vol] [03:47:32.105] AudioFilters :: FadeOut() [03:47:32.105] filter: [3_vol]afade=t=out:st=43.42:d=1[3_fadeout] [03:47:32.105] AudioFilters :: Delay() [03:47:32.105] filter: [3_fadeout]adelay=0|0[3_del] [03:47:32.105] AudioFilters :: Mix() [03:47:32.105] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [03:47:32.105] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [03:47:32.108] hang.time: 60 [03:47:32.205] Vidbot :: ffmpeg.on( 'start' ) [03:47:32.205] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=43.42 -r 30 -i ./tmp/canvas_1742649144471_%05d.png -to 00:00:43.420 -i file:///var/www/html/ [03:47:32.205] clients/21326/audio/F00824E7-AD94-3AC3-66A6-084BF87F8B6E.mp3 -to 00:00:43.420 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Rock-3 [03:47:32.205] .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=4 [03:47:32.205] 3.42: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_ [03:47:32.205] out] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/21326/video/F00824E7-AD94-3AC3-66 [03:47:32.205] A6-084BF87F8B6E.mp4 [03:47:32.336] index :: _onStepProgress_vidbot(), percent: -4784082122 [03:47:32.787] index :: _onStepProgress_vidbot(), percent: 3 [03:47:33.298] index :: _onStepProgress_vidbot(), percent: 10 [03:47:33.798] index :: _onStepProgress_vidbot(), percent: 16 [03:47:34.299] index :: _onStepProgress_vidbot(), percent: 22 [03:47:34.806] index :: _onStepProgress_vidbot(), percent: 28 [03:47:35.308] index :: _onStepProgress_vidbot(), percent: 34 [03:47:35.808] index :: _onStepProgress_vidbot(), percent: 39 [03:47:36.309] index :: _onStepProgress_vidbot(), percent: 44 [03:47:36.811] index :: _onStepProgress_vidbot(), percent: 49 [03:47:37.319] index :: _onStepProgress_vidbot(), percent: 55 [03:47:37.827] index :: _onStepProgress_vidbot(), percent: 60 [03:47:38.331] index :: _onStepProgress_vidbot(), percent: 65 [03:47:38.836] index :: _onStepProgress_vidbot(), percent: 71 [03:47:39.339] index :: _onStepProgress_vidbot(), percent: 76 [03:47:39.844] index :: _onStepProgress_vidbot(), percent: 81 [03:47:41.361] index :: _onStepProgress_vidbot(), percent: 90 [03:47:41.868] index :: _onStepProgress_vidbot(), percent: 96 [03:47:42.302] index :: _onStepProgress_vidbot(), percent: 100 [03:47:42.322] Vidbot :: ffmpeg.on( 'end' ), Done! [03:47:42.323] StreamManager :: dispose() [03:47:42.323] CanvasStream[canvas_1742649144471] :: dispose() [03:47:42.328] Vidbot :: fflog.on( 'finish' ) [03:47:42.328] fflog.path: /var/www/html/clients/21326/video/F00824E7-AD94-3AC3-66A6-084BF87F8B6E.mp4.fflog [03:47:42.328] Vidbot :: _next(), _stepIndex:4 of 4 [03:47:42.328] index :: _onStepCompleted_vidbot(), step: 4 [03:47:42.329] index :: _onComplete_vidbot(), data: { stepTime: 0.001, appTime: 142.448, output: '/var/www/html/clients/21326/video/F00824E7-AD94-3AC3-66A6-084BF87F8B6E.mp4', duration: 43.42 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/21326/video/F00824E7-AD94-3AC3-66A6-084BF87F8B6E.mp4 Media Duration : 00:00:43.420 Generation Time : 00:02:22.448 ---------------------------------------------------------------------------------------------------------------