--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.1... --------------------------------------------------------------------------------------------------------------- [04:42:30.324] Vidbot :: start() [04:42:30.324] Vidbot :: _next(), _stepIndex:0 of 4 [04:42:30.325] index :: _onStepStarted_vidbot(), step: 1 [04:42:30.326] Vidbot :: step[0], label:Initializing Core [04:42:30.335] index :: _onStepProgress_vidbot(), percent: 20 [04:42:30.336] Vidbot :: _parse() [04:42:30.337] index :: _onStepProgress_vidbot(), percent: 40 [04:42:30.337] Vidbot :: _validate() [04:42:30.338] index :: _onStepProgress_vidbot(), percent: 60 [04:42:30.338] Vidbot :: _fonts() [04:42:30.339] FabricFontManager :: add(), id: SourceSansPro-Bold [04:42:30.339] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [04:42:30.348] FabricFontManager :: add(), id: SourceSansPro-Light [04:42:30.348] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [04:42:30.349] FabricFontManager :: add(), id: DINOT-Bold [04:42:30.349] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [04:42:30.350] FabricFontManager :: add(), id: DINOT-Light [04:42:30.350] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [04:42:30.351] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [04:42:30.351] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [04:42:30.351] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [04:42:30.352] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [04:42:30.353] index :: _onStepProgress_vidbot(), percent: 80 [04:42:30.353] Vidbot :: _clips() [04:42:30.354] StreamManager :: add(), id:audio_vo, type:audio [04:42:30.354] AudioClip[audio_vo] :: constructor() [04:42:30.354] InputStream[audio_vo] :: constructor() [04:42:30.354] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [04:42:30.357] StreamManager :: add(), id:bg_music, type:audio [04:42:30.357] AudioClip[bg_music] :: constructor() [04:42:30.357] InputStream[bg_music] :: constructor() [04:42:30.358] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [04:42:30.358] StreamManager :: add(), id:simplefadedisplay, type:canvas [04:42:30.358] CanvasStream[canvas_1679006718349] :: constructor() [04:42:30.358] InputStream[canvas_1679006718349] :: constructor() [04:42:30.437] KenBurnsSlideshow[simplefadedisplay] :: constructor() [04:42:30.437] Overlay[simplefadedisplay] :: constructor() [04:42:30.437] CanvasClip[simplefadedisplay] :: constructor() [04:42:30.437] Clip[simplefadedisplay] :: constructor() [04:42:30.437] clip:"simplefadedisplay" added to stream:"canvas_1679006718349" [04:42:30.438] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1679006718349', clipId: 'simplefadedisplay' } [04:42:30.438] StreamManager :: add(), id:caption, type:canvas [04:42:30.438] RenCaption[caption] :: constructor() [04:42:30.438] Ren[caption] :: constructor() [04:42:30.438] Overlay[caption] :: constructor() [04:42:30.438] CanvasClip[caption] :: constructor() [04:42:30.438] Clip[caption] :: constructor() [04:42:30.438] clip:"caption" added to stream:"canvas_1679006718349" [04:42:30.438] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1679006718349', clipId: 'caption' } [04:42:30.439] all added... [04:42:30.439] Vidbot :: _next(), _stepIndex:1 of 4 [04:42:30.439] index :: _onStepCompleted_vidbot(), step: 1 [04:42:30.439] index :: _onStepStarted_vidbot(), step: 2 [04:42:30.439] Vidbot :: step[1], label:Initializing Input Streams [04:42:30.440] StreamManager :: init() [04:42:30.440] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [04:42:30.440] index :: _onStepProgress_vidbot(), percent: 33 [04:42:30.440] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [04:42:30.441] index :: _onStepProgress_vidbot(), percent: 67 [04:42:30.441] CanvasStream[canvas_1679006718349] :: _init(), BEGIN [04:42:30.441] i:0, c.id:simplefadedisplay [04:42:30.442] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [04:42:30.442] KenBurnsSlideshow[simplefadedisplay] :: _validate() [04:42:30.442] KenBurnsSlideshow[undefined] :: _validateAnim() [04:42:30.443] KenBurnsSlideshow[undefined] :: _validateTheme() [04:42:30.444] i:1, c.id:caption [04:42:30.444] RenCaption[caption] :: _init() [04:42:30.445] RenCaption[caption] :: _validate() [04:42:30.446] KenBurnsSlideshow[simplefadedisplay] :: _build() [04:42:30.453] AnimatedImageFrame[aif] :: constructor() [04:42:30.454] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.454] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_1.jpg [04:42:30.467] RenCaption[caption] :: _build() [04:42:30.485] Overlay[caption] :: _animate() [04:42:30.488] CanvasStream[caption] :: _init(), p.then() [04:42:30.505] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.508] AnimatedImageFrame[aif] :: _init(), END [04:42:30.510] AnimatedImageFrame[aif] :: constructor() [04:42:30.510] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.510] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_2.jpg [04:42:30.524] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.525] AnimatedImageFrame[aif] :: _init(), END [04:42:30.526] AnimatedImageFrame[aif] :: constructor() [04:42:30.526] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.526] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_3.jpg [04:42:30.538] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.539] AnimatedImageFrame[aif] :: _init(), END [04:42:30.540] AnimatedImageFrame[aif] :: constructor() [04:42:30.540] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.540] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_4.jpg [04:42:30.552] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.553] AnimatedImageFrame[aif] :: _init(), END [04:42:30.553] AnimatedImageFrame[aif] :: constructor() [04:42:30.554] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.554] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_1.jpg [04:42:30.565] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.566] AnimatedImageFrame[aif] :: _init(), END [04:42:30.567] AnimatedImageFrame[aif] :: constructor() [04:42:30.567] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.567] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_2.jpg [04:42:30.578] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.579] AnimatedImageFrame[aif] :: _init(), END [04:42:30.580] AnimatedImageFrame[aif] :: constructor() [04:42:30.580] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.580] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_3.jpg [04:42:30.592] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.593] AnimatedImageFrame[aif] :: _init(), END [04:42:30.594] AnimatedImageFrame[aif] :: constructor() [04:42:30.594] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.594] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_4.jpg [04:42:30.606] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.607] AnimatedImageFrame[aif] :: _init(), END [04:42:30.608] AnimatedImageFrame[aif] :: constructor() [04:42:30.608] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.608] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_1.jpg [04:42:30.619] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.620] AnimatedImageFrame[aif] :: _init(), END [04:42:30.621] AnimatedImageFrame[aif] :: constructor() [04:42:30.621] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.621] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_2.jpg [04:42:30.632] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.633] AnimatedImageFrame[aif] :: _init(), END [04:42:30.633] AnimatedImageFrame[aif] :: constructor() [04:42:30.634] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.634] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_3.jpg [04:42:30.645] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.645] AnimatedImageFrame[aif] :: _init(), END [04:42:30.646] AnimatedImageFrame[aif] :: constructor() [04:42:30.646] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.646] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_4.jpg [04:42:30.657] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.658] AnimatedImageFrame[aif] :: _init(), END [04:42:30.659] AnimatedImageFrame[aif] :: constructor() [04:42:30.659] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.659] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_1.jpg [04:42:30.670] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.671] AnimatedImageFrame[aif] :: _init(), END [04:42:30.671] AnimatedImageFrame[aif] :: constructor() [04:42:30.671] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.671] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_2.jpg [04:42:30.682] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.683] AnimatedImageFrame[aif] :: _init(), END [04:42:30.684] AnimatedImageFrame[aif] :: constructor() [04:42:30.684] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.684] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_3.jpg [04:42:30.696] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.697] AnimatedImageFrame[aif] :: _init(), END [04:42:30.698] AnimatedImageFrame[aif] :: constructor() [04:42:30.698] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.698] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_4.jpg [04:42:30.710] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.711] AnimatedImageFrame[aif] :: _init(), END [04:42:30.711] AnimatedImageFrame[aif] :: constructor() [04:42:30.711] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.711] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_1.jpg [04:42:30.723] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.724] AnimatedImageFrame[aif] :: _init(), END [04:42:30.725] AnimatedImageFrame[aif] :: constructor() [04:42:30.725] AnimatedImageFrame[aif] :: _init(), BEGIN [04:42:30.725] CanvasClip :: LoadImageWithPromise(), src: 42AAB92C-4E49-DF8F-D388-DC054659AAA9_2.jpg [04:42:30.736] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [04:42:30.737] AnimatedImageFrame[aif] :: _init(), END [04:42:30.738] Overlay[simplefadedisplay] :: _animate() [04:42:30.738] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [04:42:30.738] CanvasStream[simplefadedisplay] :: _init(), p.then() [04:42:30.739] CanvasStream[canvas_1679006718349] :: _init(), promise.all.then() [04:42:30.748] CanvasStream[canvas_1679006718349] :: _init(), END [04:42:30.748] StreamMangaer :: init(), stream[canvas_1679006718349].then() [04:42:30.748] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1679006718349', progress: 1 } [04:42:30.749] index :: _onStepProgress_vidbot(), percent: 100 [04:42:30.749] StreamManager :: init(), promise.all.then... [04:42:30.749] Vidbot :: StreamMgr.on( 'INITED' ) [04:42:30.749] Vidbot :: _next(), _stepIndex:2 of 4 [04:42:30.749] index :: _onStepCompleted_vidbot(), step: 2 [04:42:30.749] index :: _onStepStarted_vidbot(), step: 3 [04:42:30.749] Vidbot :: step[2], label:Rendering Canvas Streams [04:42:30.750] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [04:42:30.750] StreamManager :: render() [04:42:30.751] CanvasStream[canvas_1679006718349] :: render() [04:42:30.783] index :: _onStepProgress_vidbot(), percent: 0 [04:42:38.923] index :: _onStepProgress_vidbot(), percent: 5 [04:42:48.458] index :: _onStepProgress_vidbot(), percent: 10 [04:42:58.609] index :: _onStepProgress_vidbot(), percent: 15 [04:43:09.493] index :: _onStepProgress_vidbot(), percent: 20 [04:43:19.159] index :: _onStepProgress_vidbot(), percent: 25 [04:43:28.597] index :: _onStepProgress_vidbot(), percent: 30 [04:43:37.674] index :: _onStepProgress_vidbot(), percent: 35 [04:43:50.994] index :: _onStepProgress_vidbot(), percent: 40 [04:44:01.396] index :: _onStepProgress_vidbot(), percent: 45 [04:44:12.395] index :: _onStepProgress_vidbot(), percent: 50 [04:44:25.599] index :: _onStepProgress_vidbot(), percent: 55 [04:44:37.241] index :: _onStepProgress_vidbot(), percent: 60 [04:44:47.557] index :: _onStepProgress_vidbot(), percent: 65 [04:44:57.368] index :: _onStepProgress_vidbot(), percent: 70 [04:45:08.427] index :: _onStepProgress_vidbot(), percent: 75 [04:45:19.391] index :: _onStepProgress_vidbot(), percent: 80 [04:45:30.061] index :: _onStepProgress_vidbot(), percent: 85 [04:45:41.084] index :: _onStepProgress_vidbot(), percent: 90 [04:45:54.558] index :: _onStepProgress_vidbot(), percent: 95 [04:46:07.884] index :: _onStepProgress_vidbot(), percent: 100 [04:46:08.851] StreamManager :: render(), Promise.all.then... [04:46:08.852] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [04:46:08.852] Vidbot :: _next(), _stepIndex:3 of 4 [04:46:08.852] index :: _onStepCompleted_vidbot(), step: 3 [04:46:08.853] index :: _onStepStarted_vidbot(), step: 4 [04:46:08.854] Vidbot :: step[3], label:Encoding Media [04:46:08.856] CanvasFilters :: Overlay() [04:46:08.857] AudioStream[audio_vo] :: inputOptions() [04:46:08.857] AudioFilters :: Volume() [04:46:08.857] filter: [2:a]volume=1[2_vol] [04:46:08.857] AudioFilters :: Delay() [04:46:08.857] filter: [2_vol]adelay=0|0[2_del] [04:46:08.857] AudioStream[bg_music] :: inputOptions() [04:46:08.857] AudioFilters :: Volume() [04:46:08.857] filter: [3:a]volume=0.25[3_vol] [04:46:08.858] AudioFilters :: FadeOut() [04:46:08.858] filter: [3_vol]afade=t=out:st=51.79:d=1[3_fadeout] [04:46:08.858] AudioFilters :: Delay() [04:46:08.858] filter: [3_fadeout]adelay=0|0[3_del] [04:46:08.858] AudioFilters :: Mix() [04:46:08.858] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [04:46:08.858] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [04:46:08.861] hang.time: 60 [04:46:08.951] Vidbot :: ffmpeg.on( 'start' ) [04:46:08.952] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=51.79 -r 30 -i ./tmp/canvas_1679006718349_%05d.png -to 00:00:51.789 -i file:///var/www/html/ [04:46:08.952] clients/666/audio/42AAB92C-4E49-DF8F-D388-DC054659AAA9.mp3 -to 00:00:51.789 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/RF5_Loun [04:46:08.952] ge_Jazz.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=o [04:46:08.952] ut:st=51.79: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 - [04:46:08.952] map [a_out] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/666/video/42AAB92C-4E49-DF [04:46:08.952] 8F-D388-DC054659AAA9.mp4 [04:46:09.124] index :: _onStepProgress_vidbot(), percent: -4010906463 [04:46:09.564] index :: _onStepProgress_vidbot(), percent: 2 [04:46:10.576] index :: _onStepProgress_vidbot(), percent: 8 [04:46:11.078] index :: _onStepProgress_vidbot(), percent: 12 [04:46:11.582] index :: _onStepProgress_vidbot(), percent: 16 [04:46:12.589] index :: _onStepProgress_vidbot(), percent: 23 [04:46:13.098] index :: _onStepProgress_vidbot(), percent: 27 [04:46:13.599] index :: _onStepProgress_vidbot(), percent: 32 [04:46:14.106] index :: _onStepProgress_vidbot(), percent: 36 [04:46:14.606] index :: _onStepProgress_vidbot(), percent: 41 [04:46:15.108] index :: _onStepProgress_vidbot(), percent: 45 [04:46:16.109] index :: _onStepProgress_vidbot(), percent: 52 [04:46:16.613] index :: _onStepProgress_vidbot(), percent: 56 [04:46:17.116] index :: _onStepProgress_vidbot(), percent: 60 [04:46:18.116] index :: _onStepProgress_vidbot(), percent: 68 [04:46:18.617] index :: _onStepProgress_vidbot(), percent: 71 [04:46:19.123] index :: _onStepProgress_vidbot(), percent: 76 [04:46:20.134] index :: _onStepProgress_vidbot(), percent: 84 [04:46:20.634] index :: _onStepProgress_vidbot(), percent: 87 [04:46:21.143] index :: _onStepProgress_vidbot(), percent: 90 [04:46:22.154] index :: _onStepProgress_vidbot(), percent: 98 [04:46:22.407] index :: _onStepProgress_vidbot(), percent: 100 [04:46:22.426] Vidbot :: ffmpeg.on( 'end' ), Done! [04:46:22.426] StreamManager :: dispose() [04:46:22.426] CanvasStream[canvas_1679006718349] :: dispose() [04:46:22.444] Vidbot :: fflog.on( 'finish' ) [04:46:22.444] fflog.path: /var/www/html/clients/666/video/42AAB92C-4E49-DF8F-D388-DC054659AAA9.mp4.fflog [04:46:22.444] Vidbot :: _next(), _stepIndex:4 of 4 [04:46:22.444] index :: _onStepCompleted_vidbot(), step: 4 [04:46:22.445] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 232.141, output: '/var/www/html/clients/666/video/42AAB92C-4E49-DF8F-D388-DC054659AAA9.mp4', duration: 51.79 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/666/video/42AAB92C-4E49-DF8F-D388-DC054659AAA9.mp4 Media Duration : 00:00:51.789 Generation Time : 00:03:52.140 ---------------------------------------------------------------------------------------------------------------