--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.6.0... --------------------------------------------------------------------------------------------------------------- [01:03:06.915] Vidbot :: start() [01:03:06.915] Vidbot :: _next(), _stepIndex:0 of 4 [01:03:06.915] index :: _onStepStarted_vidbot(), step: 1 [01:03:06.916] Vidbot :: step[0], label:Initializing Core [01:03:06.921] index :: _onStepProgress_vidbot(), percent: 20 [01:03:06.921] Vidbot :: _parse() [01:03:06.922] index :: _onStepProgress_vidbot(), percent: 40 [01:03:06.922] Vidbot :: _validate() [01:03:06.922] index :: _onStepProgress_vidbot(), percent: 60 [01:03:06.922] Vidbot :: _fonts() [01:03:06.922] FabricFontManager :: add(), id: SourceSansPro-Bold [01:03:06.922] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [01:03:06.927] FabricFontManager :: add(), id: SourceSansPro-Light [01:03:06.927] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [01:03:06.928] FabricFontManager :: add(), id: DINOT-Bold [01:03:06.928] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [01:03:06.928] FabricFontManager :: add(), id: DINOT-Light [01:03:06.928] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [01:03:06.929] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [01:03:06.929] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [01:03:06.929] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [01:03:06.929] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [01:03:06.930] index :: _onStepProgress_vidbot(), percent: 80 [01:03:06.930] Vidbot :: _clips() [01:03:06.930] StreamManager :: add(), id:audio_vo, type:audio [01:03:06.931] AudioClip[audio_vo] :: constructor() [01:03:06.931] InputStream[audio_vo] :: constructor() [01:03:06.931] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [01:03:06.932] StreamManager :: add(), id:bg_music, type:audio [01:03:06.932] AudioClip[bg_music] :: constructor() [01:03:06.932] InputStream[bg_music] :: constructor() [01:03:06.933] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [01:03:06.933] StreamManager :: add(), id:simplefadedisplay, type:canvas [01:03:06.933] CanvasStream[canvas_1592832858921] :: constructor() [01:03:06.933] InputStream[canvas_1592832858921] :: constructor() [01:03:06.975] KenBurnsSlideshow[simplefadedisplay] :: constructor() [01:03:06.975] Overlay[simplefadedisplay] :: constructor() [01:03:06.975] CanvasClip[simplefadedisplay] :: constructor() [01:03:06.975] Clip[simplefadedisplay] :: constructor() [01:03:06.975] clip:"simplefadedisplay" added to stream:"canvas_1592832858921" [01:03:06.975] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1592832858921', clipId: 'simplefadedisplay' } [01:03:06.976] StreamManager :: add(), id:caption, type:canvas [01:03:06.976] RenCaption[caption] :: constructor() [01:03:06.976] Ren[caption] :: constructor() [01:03:06.976] Overlay[caption] :: constructor() [01:03:06.976] CanvasClip[caption] :: constructor() [01:03:06.976] Clip[caption] :: constructor() [01:03:06.976] clip:"caption" added to stream:"canvas_1592832858921" [01:03:06.976] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1592832858921', clipId: 'caption' } [01:03:06.976] all added... [01:03:06.976] Vidbot :: _next(), _stepIndex:1 of 4 [01:03:06.976] index :: _onStepCompleted_vidbot(), step: 1 [01:03:06.976] index :: _onStepStarted_vidbot(), step: 2 [01:03:06.977] Vidbot :: step[1], label:Initializing Input Streams [01:03:06.977] StreamManager :: init() [01:03:06.977] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [01:03:06.977] index :: _onStepProgress_vidbot(), percent: 33 [01:03:06.977] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [01:03:06.977] index :: _onStepProgress_vidbot(), percent: 67 [01:03:06.978] CanvasStream[canvas_1592832858921] :: _init(), BEGIN [01:03:06.978] i:0, c.id:simplefadedisplay [01:03:06.978] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [01:03:06.978] KenBurnsSlideshow[simplefadedisplay] :: _validate() [01:03:06.978] KenBurnsSlideshow[undefined] :: _validateAnim() [01:03:06.979] KenBurnsSlideshow[undefined] :: _validateTheme() [01:03:06.979] i:1, c.id:caption [01:03:06.979] RenCaption[caption] :: _init() [01:03:06.980] RenCaption[caption] :: _validate() [01:03:06.980] KenBurnsSlideshow[simplefadedisplay] :: _build() [01:03:06.983] AnimatedImageFrame[aif] :: constructor() [01:03:06.984] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:06.984] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_1.jpg [01:03:06.991] RenCaption[caption] :: _build() [01:03:07.000] Overlay[caption] :: _animate() [01:03:07.001] CanvasStream[caption] :: _init(), p.then() [01:03:07.013] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.015] AnimatedImageFrame[aif] :: _init(), END [01:03:07.016] AnimatedImageFrame[aif] :: constructor() [01:03:07.016] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.016] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_2.jpg [01:03:07.024] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.025] AnimatedImageFrame[aif] :: _init(), END [01:03:07.025] AnimatedImageFrame[aif] :: constructor() [01:03:07.025] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.026] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_3.jpg [01:03:07.032] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.033] AnimatedImageFrame[aif] :: _init(), END [01:03:07.033] AnimatedImageFrame[aif] :: constructor() [01:03:07.033] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.033] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_4.jpg [01:03:07.040] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.041] AnimatedImageFrame[aif] :: _init(), END [01:03:07.041] AnimatedImageFrame[aif] :: constructor() [01:03:07.041] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.041] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_1.jpg [01:03:07.048] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.049] AnimatedImageFrame[aif] :: _init(), END [01:03:07.049] AnimatedImageFrame[aif] :: constructor() [01:03:07.049] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.049] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_2.jpg [01:03:07.056] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.057] AnimatedImageFrame[aif] :: _init(), END [01:03:07.057] AnimatedImageFrame[aif] :: constructor() [01:03:07.057] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.057] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_3.jpg [01:03:07.063] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.064] AnimatedImageFrame[aif] :: _init(), END [01:03:07.064] AnimatedImageFrame[aif] :: constructor() [01:03:07.065] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.065] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_4.jpg [01:03:07.071] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.072] AnimatedImageFrame[aif] :: _init(), END [01:03:07.072] AnimatedImageFrame[aif] :: constructor() [01:03:07.072] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.072] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_1.jpg [01:03:07.079] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.080] AnimatedImageFrame[aif] :: _init(), END [01:03:07.080] AnimatedImageFrame[aif] :: constructor() [01:03:07.081] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.081] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_2.jpg [01:03:07.087] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.087] AnimatedImageFrame[aif] :: _init(), END [01:03:07.088] AnimatedImageFrame[aif] :: constructor() [01:03:07.088] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.088] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_3.jpg [01:03:07.094] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.095] AnimatedImageFrame[aif] :: _init(), END [01:03:07.095] AnimatedImageFrame[aif] :: constructor() [01:03:07.095] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.095] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_4.jpg [01:03:07.102] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.102] AnimatedImageFrame[aif] :: _init(), END [01:03:07.103] AnimatedImageFrame[aif] :: constructor() [01:03:07.103] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.103] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_1.jpg [01:03:07.110] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.110] AnimatedImageFrame[aif] :: _init(), END [01:03:07.111] AnimatedImageFrame[aif] :: constructor() [01:03:07.111] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.111] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_2.jpg [01:03:07.117] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.118] AnimatedImageFrame[aif] :: _init(), END [01:03:07.118] AnimatedImageFrame[aif] :: constructor() [01:03:07.118] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.118] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_3.jpg [01:03:07.124] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.125] AnimatedImageFrame[aif] :: _init(), END [01:03:07.126] AnimatedImageFrame[aif] :: constructor() [01:03:07.126] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.126] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_4.jpg [01:03:07.132] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.132] AnimatedImageFrame[aif] :: _init(), END [01:03:07.133] AnimatedImageFrame[aif] :: constructor() [01:03:07.133] AnimatedImageFrame[aif] :: _init(), BEGIN [01:03:07.133] CanvasClip :: LoadImageWithPromise(), src: 91842583-D351-4D72-27A5-51C634EF4CE8_1.jpg [01:03:07.139] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:03:07.139] AnimatedImageFrame[aif] :: _init(), END [01:03:07.140] Overlay[simplefadedisplay] :: _animate() [01:03:07.140] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [01:03:07.140] CanvasStream[simplefadedisplay] :: _init(), p.then() [01:03:07.140] CanvasStream[canvas_1592832858921] :: _init(), promise.all.then() [01:03:07.141] CanvasStream[canvas_1592832858921] :: _init(), END [01:03:07.142] StreamMangaer :: init(), stream[canvas_1592832858921].then() [01:03:07.142] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1592832858921', progress: 1 } [01:03:07.142] index :: _onStepProgress_vidbot(), percent: 100 [01:03:07.142] StreamManager :: init(), promise.all.then... [01:03:07.142] Vidbot :: StreamMgr.on( 'INITED' ) [01:03:07.142] Vidbot :: _next(), _stepIndex:2 of 4 [01:03:07.142] index :: _onStepCompleted_vidbot(), step: 2 [01:03:07.142] index :: _onStepStarted_vidbot(), step: 3 [01:03:07.142] Vidbot :: step[2], label:Rendering Canvas Streams [01:03:07.142] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [01:03:07.143] StreamManager :: render() [01:03:07.143] CanvasStream[canvas_1592832858921] :: render() [01:03:07.160] index :: _onStepProgress_vidbot(), percent: 0 [01:03:11.896] index :: _onStepProgress_vidbot(), percent: 5 [01:03:17.331] index :: _onStepProgress_vidbot(), percent: 10 [01:03:23.368] index :: _onStepProgress_vidbot(), percent: 15 [01:03:29.426] index :: _onStepProgress_vidbot(), percent: 20 [01:03:35.052] index :: _onStepProgress_vidbot(), percent: 25 [01:03:40.858] index :: _onStepProgress_vidbot(), percent: 30 [01:03:46.699] index :: _onStepProgress_vidbot(), percent: 35 [01:03:52.010] index :: _onStepProgress_vidbot(), percent: 40 [01:03:57.986] index :: _onStepProgress_vidbot(), percent: 45 [01:04:04.587] index :: _onStepProgress_vidbot(), percent: 50 [01:04:10.349] index :: _onStepProgress_vidbot(), percent: 55 [01:04:16.000] index :: _onStepProgress_vidbot(), percent: 60 [01:04:21.670] index :: _onStepProgress_vidbot(), percent: 65 [01:04:27.634] index :: _onStepProgress_vidbot(), percent: 70 [01:04:33.509] index :: _onStepProgress_vidbot(), percent: 75 [01:04:40.167] index :: _onStepProgress_vidbot(), percent: 80 [01:04:46.455] index :: _onStepProgress_vidbot(), percent: 85 [01:04:52.431] index :: _onStepProgress_vidbot(), percent: 90 [01:04:57.683] index :: _onStepProgress_vidbot(), percent: 95 [01:05:04.731] index :: _onStepProgress_vidbot(), percent: 100 [01:05:05.425] StreamManager :: render(), Promise.all.then... [01:05:05.425] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [01:05:05.425] Vidbot :: _next(), _stepIndex:3 of 4 [01:05:05.426] index :: _onStepCompleted_vidbot(), step: 3 [01:05:05.426] index :: _onStepStarted_vidbot(), step: 4 [01:05:05.427] Vidbot :: step[3], label:Encoding Media [01:05:05.429] CanvasFilters :: Overlay() [01:05:05.429] AudioStream[audio_vo] :: inputOptions() [01:05:05.430] AudioFilters :: Volume() [01:05:05.430] filter: [2:a]volume=1[2_vol] [01:05:05.430] AudioFilters :: Delay() [01:05:05.430] filter: [2_vol]adelay=0|0[2_del] [01:05:05.430] AudioStream[bg_music] :: inputOptions() [01:05:05.430] AudioFilters :: Volume() [01:05:05.430] filter: [3:a]volume=0.25[3_vol] [01:05:05.430] AudioFilters :: FadeOut() [01:05:05.430] filter: [3_vol]afade=t=out:st=50.74:d=1[3_fadeout] [01:05:05.430] AudioFilters :: Delay() [01:05:05.430] filter: [3_fadeout]adelay=0|0[3_del] [01:05:05.430] AudioFilters :: Mix() [01:05:05.430] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [01:05:05.430] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [01:05:05.434] hang.time: 60 [01:05:05.504] Vidbot :: ffmpeg.on( 'start' ) [01:05:05.504] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=50.74 -r 30 -i ./tmp/canvas_1592832858921_%05d.png -to 00:00:50.740 -i file:///var/www/html/ [01:05:05.504] clients/19307/audio/91842583-D351-4D72-27A5-51C634EF4CE8.mp3 -to 00:00:50.740 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Groove [01:05:05.505] .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=5 [01:05:05.505] 0.74: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_ [01:05:05.505] out] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/19307/video/91842583-D351-4D72-27 [01:05:05.505] A5-51C634EF4CE8.mp4 [01:05:05.570] index :: _onStepProgress_vidbot(), percent: -4093907090 [01:05:06.051] index :: _onStepProgress_vidbot(), percent: 5 [01:05:06.552] index :: _onStepProgress_vidbot(), percent: 10 [01:05:07.053] index :: _onStepProgress_vidbot(), percent: 16 [01:05:07.554] index :: _onStepProgress_vidbot(), percent: 22 [01:05:08.056] index :: _onStepProgress_vidbot(), percent: 28 [01:05:08.561] index :: _onStepProgress_vidbot(), percent: 34 [01:05:09.062] index :: _onStepProgress_vidbot(), percent: 40 [01:05:09.562] index :: _onStepProgress_vidbot(), percent: 46 [01:05:10.063] index :: _onStepProgress_vidbot(), percent: 52 [01:05:10.567] index :: _onStepProgress_vidbot(), percent: 58 [01:05:11.070] index :: _onStepProgress_vidbot(), percent: 64 [01:05:11.572] index :: _onStepProgress_vidbot(), percent: 69 [01:05:12.074] index :: _onStepProgress_vidbot(), percent: 76 [01:05:12.576] index :: _onStepProgress_vidbot(), percent: 82 [01:05:13.077] index :: _onStepProgress_vidbot(), percent: 88 [01:05:13.580] index :: _onStepProgress_vidbot(), percent: 94 [01:05:14.047] index :: _onStepProgress_vidbot(), percent: 100 [01:05:14.063] Vidbot :: ffmpeg.on( 'end' ), Done! [01:05:14.063] StreamManager :: dispose() [01:05:14.063] CanvasStream[canvas_1592832858921] :: dispose() [01:05:14.068] Vidbot :: fflog.on( 'finish' ) [01:05:14.068] fflog.path: /var/www/html/clients/19307/video/91842583-D351-4D72-27A5-51C634EF4CE8.mp4.fflog [01:05:14.068] Vidbot :: _next(), _stepIndex:4 of 4 [01:05:14.068] index :: _onStepCompleted_vidbot(), step: 4 [01:05:14.068] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 127.161, output: '/var/www/html/clients/19307/video/91842583-D351-4D72-27A5-51C634EF4CE8.mp4', duration: 50.74 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/19307/video/91842583-D351-4D72-27A5-51C634EF4CE8.mp4 Media Duration : 00:00:50.740 Generation Time : 00:02:07.161 ---------------------------------------------------------------------------------------------------------------