--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.1... --------------------------------------------------------------------------------------------------------------- [16:41:22.160] Vidbot :: start() [16:41:22.161] Vidbot :: _next(), _stepIndex:0 of 4 [16:41:22.161] index :: _onStepStarted_vidbot(), step: 1 [16:41:22.162] Vidbot :: step[0], label:Initializing Core [16:41:22.171] index :: _onStepProgress_vidbot(), percent: 20 [16:41:22.171] Vidbot :: _parse() [16:41:22.172] index :: _onStepProgress_vidbot(), percent: 40 [16:41:22.172] Vidbot :: _validate() [16:41:22.173] index :: _onStepProgress_vidbot(), percent: 60 [16:41:22.173] Vidbot :: _fonts() [16:41:22.173] FabricFontManager :: add(), id: SourceSansPro-Bold [16:41:22.174] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [16:41:22.182] FabricFontManager :: add(), id: SourceSansPro-Light [16:41:22.182] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [16:41:22.183] FabricFontManager :: add(), id: DINOT-Bold [16:41:22.183] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [16:41:22.184] FabricFontManager :: add(), id: DINOT-Light [16:41:22.184] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [16:41:22.185] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [16:41:22.185] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [16:41:22.186] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [16:41:22.186] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [16:41:22.187] index :: _onStepProgress_vidbot(), percent: 80 [16:41:22.187] Vidbot :: _clips() [16:41:22.187] StreamManager :: add(), id:audio_vo, type:audio [16:41:22.188] AudioClip[audio_vo] :: constructor() [16:41:22.188] InputStream[audio_vo] :: constructor() [16:41:22.188] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [16:41:22.191] StreamManager :: add(), id:bg_music, type:audio [16:41:22.191] AudioClip[bg_music] :: constructor() [16:41:22.191] InputStream[bg_music] :: constructor() [16:41:22.191] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [16:41:22.191] StreamManager :: add(), id:mira, type:canvas [16:41:22.192] CanvasStream[canvas_11525905999] :: constructor() [16:41:22.192] InputStream[canvas_11525905999] :: constructor() [16:41:22.265] MiraSlideshow[mira] :: constructor() [16:41:22.265] Mira[mira] :: constructor() [16:41:22.266] Overlay[mira] :: constructor() [16:41:22.266] CanvasClip[mira] :: constructor() [16:41:22.266] Clip[mira] :: constructor() [16:41:22.266] clip:"mira" added to stream:"canvas_11525905999" [16:41:22.266] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_11525905999', clipId: 'mira' } [16:41:22.266] all added... [16:41:22.266] Vidbot :: _next(), _stepIndex:1 of 4 [16:41:22.267] index :: _onStepCompleted_vidbot(), step: 1 [16:41:22.267] index :: _onStepStarted_vidbot(), step: 2 [16:41:22.267] Vidbot :: step[1], label:Initializing Input Streams [16:41:22.268] StreamManager :: init() [16:41:22.268] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [16:41:22.268] index :: _onStepProgress_vidbot(), percent: 33 [16:41:22.268] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [16:41:22.268] index :: _onStepProgress_vidbot(), percent: 67 [16:41:22.269] CanvasStream[canvas_11525905999] :: _init(), BEGIN [16:41:22.269] i:0, c.id:mira [16:41:22.269] MiraSlideshow[mira] :: _init(), BEGIN [16:41:22.270] MiraSlideshow[mira] :: _validate() [16:41:22.271] MiraSlideshow :: _validateSlides() [16:41:22.271] i:0, s.type: title [16:41:22.272] i:1, s.type: info [16:41:22.272] i:2, s.type: image [16:41:22.272] i:3, s.type: image [16:41:22.272] i:4, s.type: image [16:41:22.272] i:5, s.type: image [16:41:22.272] i:6, s.type: image [16:41:22.272] i:7, s.type: image [16:41:22.272] i:8, s.type: image [16:41:22.272] i:9, s.type: image [16:41:22.272] i:10, s.type: image [16:41:22.272] i:11, s.type: image [16:41:22.272] i:12, s.type: image [16:41:22.272] i:13, s.type: image [16:41:22.276] MiraSlideshow[mira] :: _build(), BEGIN [16:41:22.280] MiraTitlecard[titlecard] :: constructor() [16:41:22.280] Mira[titlecard] :: constructor() [16:41:22.281] Overlay[titlecard] :: constructor() [16:41:22.281] CanvasClip[titlecard] :: constructor() [16:41:22.281] Clip[titlecard] :: constructor() [16:41:22.281] MiraTitlecard[titlecard] :: _init() [16:41:22.281] MiraTitlecard[titlecard] :: _validate() [16:41:22.282] MiraTitlecard[titlecard] :: _build() [16:41:22.305] Overlay[titlecard] :: _animate() [16:41:22.307] MiraTitlecard[titlecard] :: _animate() [16:41:22.309] AnimatedImageFrame[aiftitle] :: constructor() [16:41:22.310] AnimatedImageFrame[aiftitle] :: _init(), BEGIN [16:41:22.310] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_1.jpg [16:41:22.369] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.373] AnimatedImageFrame[aiftitle] :: _init(), END [16:41:22.378] MiraInfosheet[info] :: constructor() [16:41:22.378] Mira[info] :: constructor() [16:41:22.378] Overlay[info] :: constructor() [16:41:22.378] CanvasClip[info] :: constructor() [16:41:22.378] Clip[info] :: constructor() [16:41:22.378] MiraInfosheet[info] :: _init() [16:41:22.378] MiraInfosheet[info] :: _validate() [16:41:22.380] MiraInfosheet[info] :: _build() [16:41:22.391] RenOptions[info] :: _animate() [16:41:22.391] Overlay[info] :: _animate() [16:41:22.393] AnimatedImageFrame[info1] :: constructor() [16:41:22.393] AnimatedImageFrame[info2] :: constructor() [16:41:22.393] AnimatedImageFrame[info3] :: constructor() [16:41:22.393] AnimatedImageFrame[info1] :: _init(), BEGIN [16:41:22.393] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_2.jpg [16:41:22.431] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.433] AnimatedImageFrame[info1] :: _init(), END [16:41:22.433] AnimatedImageFrame[info2] :: _init(), BEGIN [16:41:22.433] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_5.jpg [16:41:22.469] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.470] AnimatedImageFrame[info2] :: _init(), END [16:41:22.470] AnimatedImageFrame[info3] :: _init(), BEGIN [16:41:22.470] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_8.jpg [16:41:22.504] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.505] AnimatedImageFrame[info3] :: _init(), END [16:41:22.506] AnimatedImageFrame[image] :: constructor() [16:41:22.507] AnimatedImageFrame[image] :: _init(), BEGIN [16:41:22.507] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_1.jpg [16:41:22.554] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.556] AnimatedImageFrame[image] :: _init(), END [16:41:22.556] AnimatedImageFrame[image] :: constructor() [16:41:22.556] AnimatedImageFrame[image] :: _init(), BEGIN [16:41:22.556] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_2.jpg [16:41:22.592] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.594] AnimatedImageFrame[image] :: _init(), END [16:41:22.594] AnimatedImageFrame[image] :: constructor() [16:41:22.594] AnimatedImageFrame[image] :: _init(), BEGIN [16:41:22.594] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_3.jpg [16:41:22.631] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.632] AnimatedImageFrame[image] :: _init(), END [16:41:22.633] AnimatedImageFrame[image] :: constructor() [16:41:22.633] AnimatedImageFrame[image] :: _init(), BEGIN [16:41:22.633] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_4.jpg [16:41:22.670] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.671] AnimatedImageFrame[image] :: _init(), END [16:41:22.672] AnimatedImageFrame[image] :: constructor() [16:41:22.672] AnimatedImageFrame[image] :: _init(), BEGIN [16:41:22.672] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_5.jpg [16:41:22.711] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.712] AnimatedImageFrame[image] :: _init(), END [16:41:22.713] AnimatedImageFrame[image] :: constructor() [16:41:22.713] AnimatedImageFrame[image] :: _init(), BEGIN [16:41:22.713] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_6.jpg [16:41:22.745] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.746] AnimatedImageFrame[image] :: _init(), END [16:41:22.746] AnimatedImageFrame[image] :: constructor() [16:41:22.746] AnimatedImageFrame[image] :: _init(), BEGIN [16:41:22.746] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_7.jpg [16:41:22.776] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.777] AnimatedImageFrame[image] :: _init(), END [16:41:22.777] AnimatedImageFrame[image] :: constructor() [16:41:22.777] AnimatedImageFrame[image] :: _init(), BEGIN [16:41:22.777] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_8.jpg [16:41:22.807] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.808] AnimatedImageFrame[image] :: _init(), END [16:41:22.809] AnimatedImageFrame[image] :: constructor() [16:41:22.809] AnimatedImageFrame[image] :: _init(), BEGIN [16:41:22.809] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_9.jpg [16:41:22.840] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.841] AnimatedImageFrame[image] :: _init(), END [16:41:22.842] AnimatedImageFrame[image] :: constructor() [16:41:22.842] AnimatedImageFrame[image] :: _init(), BEGIN [16:41:22.842] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_10.jpg [16:41:22.872] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.873] AnimatedImageFrame[image] :: _init(), END [16:41:22.873] AnimatedImageFrame[image] :: constructor() [16:41:22.874] AnimatedImageFrame[image] :: _init(), BEGIN [16:41:22.874] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_11.jpg [16:41:22.911] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.912] AnimatedImageFrame[image] :: _init(), END [16:41:22.913] AnimatedImageFrame[image] :: constructor() [16:41:22.913] AnimatedImageFrame[image] :: _init(), BEGIN [16:41:22.913] CanvasClip :: LoadImageWithPromise(), src: 5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31_12.jpg [16:41:22.949] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [16:41:22.950] AnimatedImageFrame[image] :: _init(), END [16:41:22.951] MiraSlideshow[mira] :: _build(), END [16:41:22.951] Overlay[mira] :: _animate() [16:41:22.952] MiraSlideshow[mira] :: _init(), END [16:41:22.952] CanvasStream[mira] :: _init(), p.then() [16:41:22.952] CanvasStream[canvas_11525905999] :: _init(), promise.all.then() [16:41:22.953] CanvasStream[canvas_11525905999] :: _init(), END [16:41:22.953] StreamMangaer :: init(), stream[canvas_11525905999].then() [16:41:22.953] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_11525905999', progress: 1 } [16:41:22.954] index :: _onStepProgress_vidbot(), percent: 100 [16:41:22.954] StreamManager :: init(), promise.all.then... [16:41:22.954] Vidbot :: StreamMgr.on( 'INITED' ) [16:41:22.954] Vidbot :: _next(), _stepIndex:2 of 4 [16:41:22.954] index :: _onStepCompleted_vidbot(), step: 2 [16:41:22.954] index :: _onStepStarted_vidbot(), step: 3 [16:41:22.955] Vidbot :: step[2], label:Rendering Canvas Streams [16:41:22.955] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [16:41:22.955] StreamManager :: render() [16:41:22.956] CanvasStream[canvas_11525905999] :: render() [16:41:23.017] index :: _onStepProgress_vidbot(), percent: 0 [16:41:51.187] index :: _onStepProgress_vidbot(), percent: 5 [16:42:02.377] index :: _onStepProgress_vidbot(), percent: 10 [16:42:27.534] index :: _onStepProgress_vidbot(), percent: 15 [16:42:54.853] index :: _onStepProgress_vidbot(), percent: 20 [16:43:25.156] index :: _onStepProgress_vidbot(), percent: 25 [16:43:55.091] index :: _onStepProgress_vidbot(), percent: 30 [16:44:24.376] index :: _onStepProgress_vidbot(), percent: 35 [16:44:54.461] index :: _onStepProgress_vidbot(), percent: 40 [16:45:23.734] index :: _onStepProgress_vidbot(), percent: 45 [16:45:52.120] index :: _onStepProgress_vidbot(), percent: 50 [16:46:19.847] index :: _onStepProgress_vidbot(), percent: 55 [16:46:49.729] index :: _onStepProgress_vidbot(), percent: 60 [16:47:18.675] index :: _onStepProgress_vidbot(), percent: 65 [16:47:46.951] index :: _onStepProgress_vidbot(), percent: 70 [16:48:12.993] index :: _onStepProgress_vidbot(), percent: 75 [16:48:40.899] index :: _onStepProgress_vidbot(), percent: 80 [16:49:08.735] index :: _onStepProgress_vidbot(), percent: 85 [16:49:36.469] index :: _onStepProgress_vidbot(), percent: 90 [16:50:02.969] index :: _onStepProgress_vidbot(), percent: 95 [16:50:28.307] index :: _onStepProgress_vidbot(), percent: 100 [16:50:30.237] StreamManager :: render(), Promise.all.then... [16:50:30.237] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [16:50:30.238] Vidbot :: _next(), _stepIndex:3 of 4 [16:50:30.238] index :: _onStepCompleted_vidbot(), step: 3 [16:50:30.238] index :: _onStepStarted_vidbot(), step: 4 [16:50:30.239] Vidbot :: step[3], label:Encoding Media [16:50:30.241] CanvasFilters :: Overlay() [16:50:30.242] AudioStream[audio_vo] :: inputOptions() [16:50:30.242] AudioFilters :: Volume() [16:50:30.242] filter: [2:a]volume=1[2_vol] [16:50:30.242] AudioFilters :: Delay() [16:50:30.242] filter: [2_vol]adelay=0|0[2_del] [16:50:30.243] AudioStream[bg_music] :: inputOptions() [16:50:30.243] AudioFilters :: Volume() [16:50:30.243] filter: [3:a]volume=0.15[3_vol] [16:50:30.243] AudioFilters :: FadeOut() [16:50:30.243] filter: [3_vol]afade=t=out:st=45:d=1[3_fadeout] [16:50:30.243] AudioFilters :: Delay() [16:50:30.243] filter: [3_fadeout]adelay=0|0[3_del] [16:50:30.243] AudioFilters :: Mix() [16:50:30.243] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [16:50:30.243] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [16:50:30.246] hang.time: 60 [16:50:30.334] Vidbot :: ffmpeg.on( 'start' ) [16:50:30.334] ffmpeg -f lavfi -i color=c=000000:s=960x540:r=30:duration=45 -r 30 -i ./tmp/canvas_11525905999_%05d.png -to 00:00:45.000 -i file:///var/www/html/clien [16:50:30.334] ts/21774/audio/5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31.mp3 -to 00:00:45.000 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Groove-4.mp [16:50:30.334] 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.15[3_vol];[3_vol]afade=t=out:st=45:d [16:50:30.334] =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] - [16:50:30.334] map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/21774/video/5C33AFFE-E8E6-3A3C-CFA8-E04 [16:50:30.334] 7BC98FF31.mp4 [16:50:30.504] index :: _onStepProgress_vidbot(), percent: -4616107683 [16:50:30.923] index :: _onStepProgress_vidbot(), percent: 2 [16:50:31.435] index :: _onStepProgress_vidbot(), percent: 8 [16:50:31.938] index :: _onStepProgress_vidbot(), percent: 12 [16:50:32.448] index :: _onStepProgress_vidbot(), percent: 16 [16:50:33.464] index :: _onStepProgress_vidbot(), percent: 24 [16:50:33.973] index :: _onStepProgress_vidbot(), percent: 27 [16:50:34.477] index :: _onStepProgress_vidbot(), percent: 31 [16:50:34.977] index :: _onStepProgress_vidbot(), percent: 35 [16:50:35.981] index :: _onStepProgress_vidbot(), percent: 43 [16:50:36.500] index :: _onStepProgress_vidbot(), percent: 46 [16:50:37.006] index :: _onStepProgress_vidbot(), percent: 51 [16:50:38.023] index :: _onStepProgress_vidbot(), percent: 58 [16:50:38.522] index :: _onStepProgress_vidbot(), percent: 62 [16:50:39.023] index :: _onStepProgress_vidbot(), percent: 67 [16:50:39.526] index :: _onStepProgress_vidbot(), percent: 73 [16:50:40.026] index :: _onStepProgress_vidbot(), percent: 79 [16:50:40.537] index :: _onStepProgress_vidbot(), percent: 85 [16:50:41.039] index :: _onStepProgress_vidbot(), percent: 90 [16:50:41.540] index :: _onStepProgress_vidbot(), percent: 96 [16:50:41.993] index :: _onStepProgress_vidbot(), percent: 100 [16:50:42.028] Vidbot :: ffmpeg.on( 'end' ), Done! [16:50:42.028] StreamManager :: dispose() [16:50:42.029] CanvasStream[canvas_11525905999] :: dispose() [16:50:42.033] Vidbot :: fflog.on( 'finish' ) [16:50:42.034] fflog.path: /var/www/html/clients/21774/video/5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31.mp4.fflog [16:50:42.034] Vidbot :: _next(), _stepIndex:4 of 4 [16:50:42.034] index :: _onStepCompleted_vidbot(), step: 4 [16:50:42.034] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 559.892, output: '/var/www/html/clients/21774/video/5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31.mp4', duration: 45 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/21774/video/5C33AFFE-E8E6-3A3C-CFA8-E047BC98FF31.mp4 Media Duration : 00:00:45.000 Generation Time : 00:09:19.892 ---------------------------------------------------------------------------------------------------------------