--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.0... --------------------------------------------------------------------------------------------------------------- [12:29:17.111] Vidbot :: start() [12:29:17.111] Vidbot :: _next(), _stepIndex:0 of 4 [12:29:17.112] index :: _onStepStarted_vidbot(), step: 1 [12:29:17.113] Vidbot :: step[0], label:Initializing Core [12:29:17.122] index :: _onStepProgress_vidbot(), percent: 20 [12:29:17.122] Vidbot :: _parse() [12:29:17.123] index :: _onStepProgress_vidbot(), percent: 40 [12:29:17.123] Vidbot :: _validate() [12:29:17.124] index :: _onStepProgress_vidbot(), percent: 60 [12:29:17.124] Vidbot :: _fonts() [12:29:17.125] FabricFontManager :: add(), id: SourceSansPro-Bold [12:29:17.125] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [12:29:17.133] FabricFontManager :: add(), id: SourceSansPro-Light [12:29:17.134] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [12:29:17.134] FabricFontManager :: add(), id: DINOT-Bold [12:29:17.134] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [12:29:17.135] FabricFontManager :: add(), id: DINOT-Light [12:29:17.135] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [12:29:17.136] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [12:29:17.136] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [12:29:17.137] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [12:29:17.137] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [12:29:17.138] index :: _onStepProgress_vidbot(), percent: 80 [12:29:17.139] Vidbot :: _clips() [12:29:17.139] StreamManager :: add(), id:audio_vo, type:audio [12:29:17.139] AudioClip[audio_vo] :: constructor() [12:29:17.140] InputStream[audio_vo] :: constructor() [12:29:17.140] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [12:29:17.143] StreamManager :: add(), id:bg_music, type:audio [12:29:17.143] AudioClip[bg_music] :: constructor() [12:29:17.143] InputStream[bg_music] :: constructor() [12:29:17.143] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [12:29:17.144] StreamManager :: add(), id:simplefadedisplay, type:canvas [12:29:17.144] CanvasStream[canvas_1339141106053] :: constructor() [12:29:17.144] InputStream[canvas_1339141106053] :: constructor() [12:29:17.230] KenBurnsSlideshow[simplefadedisplay] :: constructor() [12:29:17.231] Overlay[simplefadedisplay] :: constructor() [12:29:17.231] CanvasClip[simplefadedisplay] :: constructor() [12:29:17.231] Clip[simplefadedisplay] :: constructor() [12:29:17.231] clip:"simplefadedisplay" added to stream:"canvas_1339141106053" [12:29:17.231] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1339141106053', clipId: 'simplefadedisplay' } [12:29:17.231] StreamManager :: add(), id:caption, type:canvas [12:29:17.232] RenCaption[caption] :: constructor() [12:29:17.232] Ren[caption] :: constructor() [12:29:17.232] Overlay[caption] :: constructor() [12:29:17.232] CanvasClip[caption] :: constructor() [12:29:17.232] Clip[caption] :: constructor() [12:29:17.232] clip:"caption" added to stream:"canvas_1339141106053" [12:29:17.232] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1339141106053', clipId: 'caption' } [12:29:17.232] all added... [12:29:17.232] Vidbot :: _next(), _stepIndex:1 of 4 [12:29:17.233] index :: _onStepCompleted_vidbot(), step: 1 [12:29:17.233] index :: _onStepStarted_vidbot(), step: 2 [12:29:17.233] Vidbot :: step[1], label:Initializing Input Streams [12:29:17.234] StreamManager :: init() [12:29:17.234] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [12:29:17.234] index :: _onStepProgress_vidbot(), percent: 33 [12:29:17.234] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [12:29:17.234] index :: _onStepProgress_vidbot(), percent: 67 [12:29:17.235] CanvasStream[canvas_1339141106053] :: _init(), BEGIN [12:29:17.235] i:0, c.id:simplefadedisplay [12:29:17.235] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [12:29:17.236] KenBurnsSlideshow[simplefadedisplay] :: _validate() [12:29:17.236] KenBurnsSlideshow[undefined] :: _validateAnim() [12:29:17.237] KenBurnsSlideshow[undefined] :: _validateTheme() [12:29:17.238] i:1, c.id:caption [12:29:17.238] RenCaption[caption] :: _init() [12:29:17.238] RenCaption[caption] :: _validate() [12:29:17.240] KenBurnsSlideshow[simplefadedisplay] :: _build() [12:29:17.246] AnimatedImageFrame[aif] :: constructor() [12:29:17.247] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.248] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_1.jpg [12:29:17.260] RenCaption[caption] :: _build() [12:29:17.276] Overlay[caption] :: _animate() [12:29:17.279] CanvasStream[caption] :: _init(), p.then() [12:29:17.296] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.299] AnimatedImageFrame[aif] :: _init(), END [12:29:17.300] AnimatedImageFrame[aif] :: constructor() [12:29:17.301] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.301] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_2.jpg [12:29:17.314] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.315] AnimatedImageFrame[aif] :: _init(), END [12:29:17.316] AnimatedImageFrame[aif] :: constructor() [12:29:17.316] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.316] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_3.jpg [12:29:17.328] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.329] AnimatedImageFrame[aif] :: _init(), END [12:29:17.329] AnimatedImageFrame[aif] :: constructor() [12:29:17.330] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.330] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_4.jpg [12:29:17.341] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.342] AnimatedImageFrame[aif] :: _init(), END [12:29:17.343] AnimatedImageFrame[aif] :: constructor() [12:29:17.343] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.343] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_1.jpg [12:29:17.356] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.357] AnimatedImageFrame[aif] :: _init(), END [12:29:17.358] AnimatedImageFrame[aif] :: constructor() [12:29:17.358] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.358] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_2.jpg [12:29:17.370] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.371] AnimatedImageFrame[aif] :: _init(), END [12:29:17.372] AnimatedImageFrame[aif] :: constructor() [12:29:17.372] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.372] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_3.jpg [12:29:17.384] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.385] AnimatedImageFrame[aif] :: _init(), END [12:29:17.385] AnimatedImageFrame[aif] :: constructor() [12:29:17.386] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.386] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_4.jpg [12:29:17.397] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.398] AnimatedImageFrame[aif] :: _init(), END [12:29:17.399] AnimatedImageFrame[aif] :: constructor() [12:29:17.399] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.399] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_1.jpg [12:29:17.411] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.412] AnimatedImageFrame[aif] :: _init(), END [12:29:17.413] AnimatedImageFrame[aif] :: constructor() [12:29:17.413] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.413] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_2.jpg [12:29:17.425] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.426] AnimatedImageFrame[aif] :: _init(), END [12:29:17.426] AnimatedImageFrame[aif] :: constructor() [12:29:17.427] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.427] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_3.jpg [12:29:17.438] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.439] AnimatedImageFrame[aif] :: _init(), END [12:29:17.439] AnimatedImageFrame[aif] :: constructor() [12:29:17.439] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.439] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_4.jpg [12:29:17.450] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.451] AnimatedImageFrame[aif] :: _init(), END [12:29:17.452] AnimatedImageFrame[aif] :: constructor() [12:29:17.452] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.452] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_1.jpg [12:29:17.464] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.464] AnimatedImageFrame[aif] :: _init(), END [12:29:17.465] AnimatedImageFrame[aif] :: constructor() [12:29:17.465] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.465] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_2.jpg [12:29:17.476] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.477] AnimatedImageFrame[aif] :: _init(), END [12:29:17.478] AnimatedImageFrame[aif] :: constructor() [12:29:17.478] AnimatedImageFrame[aif] :: _init(), BEGIN [12:29:17.478] CanvasClip :: LoadImageWithPromise(), src: A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0_3.jpg [12:29:17.490] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:29:17.491] AnimatedImageFrame[aif] :: _init(), END [12:29:17.491] Overlay[simplefadedisplay] :: _animate() [12:29:17.492] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [12:29:17.492] CanvasStream[simplefadedisplay] :: _init(), p.then() [12:29:17.492] CanvasStream[canvas_1339141106053] :: _init(), promise.all.then() [12:29:17.494] CanvasStream[canvas_1339141106053] :: _init(), END [12:29:17.494] StreamMangaer :: init(), stream[canvas_1339141106053].then() [12:29:17.494] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1339141106053', progress: 1 } [12:29:17.495] index :: _onStepProgress_vidbot(), percent: 100 [12:29:17.495] StreamManager :: init(), promise.all.then... [12:29:17.495] Vidbot :: StreamMgr.on( 'INITED' ) [12:29:17.495] Vidbot :: _next(), _stepIndex:2 of 4 [12:29:17.495] index :: _onStepCompleted_vidbot(), step: 2 [12:29:17.495] index :: _onStepStarted_vidbot(), step: 3 [12:29:17.496] Vidbot :: step[2], label:Rendering Canvas Streams [12:29:17.496] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [12:29:17.496] StreamManager :: render() [12:29:17.497] CanvasStream[canvas_1339141106053] :: render() [12:29:17.534] index :: _onStepProgress_vidbot(), percent: 0 [12:29:23.682] index :: _onStepProgress_vidbot(), percent: 5 [12:29:30.273] index :: _onStepProgress_vidbot(), percent: 10 [12:29:37.129] index :: _onStepProgress_vidbot(), percent: 15 [12:29:43.990] index :: _onStepProgress_vidbot(), percent: 20 [12:29:50.915] index :: _onStepProgress_vidbot(), percent: 25 [12:29:57.678] index :: _onStepProgress_vidbot(), percent: 30 [12:30:04.465] index :: _onStepProgress_vidbot(), percent: 35 [12:30:11.415] index :: _onStepProgress_vidbot(), percent: 40 [12:30:18.187] index :: _onStepProgress_vidbot(), percent: 45 [12:30:24.867] index :: _onStepProgress_vidbot(), percent: 50 [12:30:31.861] index :: _onStepProgress_vidbot(), percent: 55 [12:30:38.842] index :: _onStepProgress_vidbot(), percent: 60 [12:30:45.620] index :: _onStepProgress_vidbot(), percent: 65 [12:30:52.565] index :: _onStepProgress_vidbot(), percent: 70 [12:30:59.601] index :: _onStepProgress_vidbot(), percent: 75 [12:31:06.391] index :: _onStepProgress_vidbot(), percent: 80 [12:31:13.007] index :: _onStepProgress_vidbot(), percent: 85 [12:31:19.936] index :: _onStepProgress_vidbot(), percent: 90 [12:31:26.883] index :: _onStepProgress_vidbot(), percent: 95 [12:31:33.543] index :: _onStepProgress_vidbot(), percent: 100 [12:31:34.146] StreamManager :: render(), Promise.all.then... [12:31:34.146] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [12:31:34.146] Vidbot :: _next(), _stepIndex:3 of 4 [12:31:34.147] index :: _onStepCompleted_vidbot(), step: 3 [12:31:34.147] index :: _onStepStarted_vidbot(), step: 4 [12:31:34.148] Vidbot :: step[3], label:Encoding Media [12:31:34.151] CanvasFilters :: Overlay() [12:31:34.151] AudioStream[audio_vo] :: inputOptions() [12:31:34.152] AudioFilters :: Volume() [12:31:34.152] filter: [2:a]volume=1[2_vol] [12:31:34.152] AudioFilters :: Delay() [12:31:34.152] filter: [2_vol]adelay=0|0[2_del] [12:31:34.152] AudioStream[bg_music] :: inputOptions() [12:31:34.152] AudioFilters :: Volume() [12:31:34.152] filter: [3:a]volume=0.25[3_vol] [12:31:34.152] AudioFilters :: FadeOut() [12:31:34.152] filter: [3_vol]afade=t=out:st=42.1:d=1[3_fadeout] [12:31:34.153] AudioFilters :: Delay() [12:31:34.153] filter: [3_fadeout]adelay=0|0[3_del] [12:31:34.153] AudioFilters :: Mix() [12:31:34.153] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [12:31:34.153] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [12:31:34.156] hang.time: 60 [12:31:34.270] Vidbot :: ffmpeg.on( 'start' ) [12:31:34.270] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=42.1 -r 30 -i ./tmp/canvas_1339141106053_%05d.png -to 00:00:42.100 -i file:///var/www/html/c [12:31:34.270] lients/1013/audio/A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0.mp3 -to 00:00:42.100 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Concept7 [12:31:34.270] .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 [12:31:34.270] 2.1: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_o [12:31:34.270] ut] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/1013/video/A8BCEC28-6ADE-A04D-385F [12:31:34.271] -AC25F5E8D6F0.mp4 [12:31:34.450] index :: _onStepProgress_vidbot(), percent: -4934081846 [12:31:34.873] index :: _onStepProgress_vidbot(), percent: 2 [12:31:35.385] index :: _onStepProgress_vidbot(), percent: 5 [12:31:36.390] index :: _onStepProgress_vidbot(), percent: 12 [12:31:36.893] index :: _onStepProgress_vidbot(), percent: 15 [12:31:37.897] index :: _onStepProgress_vidbot(), percent: 23 [12:31:38.400] index :: _onStepProgress_vidbot(), percent: 27 [12:31:38.915] index :: _onStepProgress_vidbot(), percent: 30 [12:31:39.910] index :: _onStepProgress_vidbot(), percent: 38 [12:31:40.410] index :: _onStepProgress_vidbot(), percent: 41 [12:31:41.419] index :: _onStepProgress_vidbot(), percent: 47 [12:31:41.919] index :: _onStepProgress_vidbot(), percent: 50 [12:31:42.926] index :: _onStepProgress_vidbot(), percent: 58 [12:31:43.433] index :: _onStepProgress_vidbot(), percent: 62 [12:31:43.926] index :: _onStepProgress_vidbot(), percent: 66 [12:31:44.427] index :: _onStepProgress_vidbot(), percent: 71 [12:31:44.927] index :: _onStepProgress_vidbot(), percent: 76 [12:31:45.437] index :: _onStepProgress_vidbot(), percent: 82 [12:31:45.939] index :: _onStepProgress_vidbot(), percent: 87 [12:31:46.440] index :: _onStepProgress_vidbot(), percent: 92 [12:31:46.940] index :: _onStepProgress_vidbot(), percent: 97 [12:31:47.184] index :: _onStepProgress_vidbot(), percent: 100 [12:31:47.203] Vidbot :: ffmpeg.on( 'end' ), Done! [12:31:47.204] StreamManager :: dispose() [12:31:47.204] CanvasStream[canvas_1339141106053] :: dispose() [12:31:47.209] Vidbot :: fflog.on( 'finish' ) [12:31:47.209] fflog.path: /var/www/html/clients/1013/video/A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0.mp4.fflog [12:31:47.209] Vidbot :: _next(), _stepIndex:4 of 4 [12:31:47.210] index :: _onStepCompleted_vidbot(), step: 4 [12:31:47.210] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 150.119, output: '/var/www/html/clients/1013/video/A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0.mp4', duration: 42.1 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/1013/video/A8BCEC28-6ADE-A04D-385F-AC25F5E8D6F0.mp4 Media Duration : 00:00:42.100 Generation Time : 00:02:30.118 ---------------------------------------------------------------------------------------------------------------