--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.1... --------------------------------------------------------------------------------------------------------------- [13:37:46.774] Vidbot :: start() [13:37:46.774] Vidbot :: _next(), _stepIndex:0 of 4 [13:37:46.775] index :: _onStepStarted_vidbot(), step: 1 [13:37:46.776] Vidbot :: step[0], label:Initializing Core [13:37:46.784] index :: _onStepProgress_vidbot(), percent: 20 [13:37:46.785] Vidbot :: _parse() [13:37:46.786] index :: _onStepProgress_vidbot(), percent: 40 [13:37:46.786] Vidbot :: _validate() [13:37:46.787] index :: _onStepProgress_vidbot(), percent: 60 [13:37:46.787] Vidbot :: _fonts() [13:37:46.787] FabricFontManager :: add(), id: SourceSansPro-Bold [13:37:46.787] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [13:37:46.796] FabricFontManager :: add(), id: SourceSansPro-Light [13:37:46.796] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [13:37:46.797] FabricFontManager :: add(), id: DINOT-Bold [13:37:46.797] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [13:37:46.797] FabricFontManager :: add(), id: DINOT-Light [13:37:46.798] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [13:37:46.798] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [13:37:46.798] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [13:37:46.799] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [13:37:46.799] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [13:37:46.800] index :: _onStepProgress_vidbot(), percent: 80 [13:37:46.800] Vidbot :: _clips() [13:37:46.801] StreamManager :: add(), id:audio_vo, type:audio [13:37:46.801] AudioClip[audio_vo] :: constructor() [13:37:46.802] InputStream[audio_vo] :: constructor() [13:37:46.802] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [13:37:46.804] StreamManager :: add(), id:bg_music, type:audio [13:37:46.805] AudioClip[bg_music] :: constructor() [13:37:46.805] InputStream[bg_music] :: constructor() [13:37:46.805] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [13:37:46.805] StreamManager :: add(), id:simplefadedisplay, type:canvas [13:37:46.805] CanvasStream[canvas_293028323385] :: constructor() [13:37:46.805] InputStream[canvas_293028323385] :: constructor() [13:37:46.879] KenBurnsSlideshow[simplefadedisplay] :: constructor() [13:37:46.879] Overlay[simplefadedisplay] :: constructor() [13:37:46.879] CanvasClip[simplefadedisplay] :: constructor() [13:37:46.879] Clip[simplefadedisplay] :: constructor() [13:37:46.879] clip:"simplefadedisplay" added to stream:"canvas_293028323385" [13:37:46.879] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_293028323385', clipId: 'simplefadedisplay' } [13:37:46.879] StreamManager :: add(), id:infosheet, type:canvas [13:37:46.880] RenInfosheet[infosheet] :: constructor() [13:37:46.880] Ren[infosheet] :: constructor() [13:37:46.880] Overlay[infosheet] :: constructor() [13:37:46.880] CanvasClip[infosheet] :: constructor() [13:37:46.880] Clip[infosheet] :: constructor() [13:37:46.880] clip:"infosheet" added to stream:"canvas_293028323385" [13:37:46.880] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_293028323385', clipId: 'infosheet' } [13:37:46.880] StreamManager :: add(), id:caption, type:canvas [13:37:46.880] RenCaption[caption] :: constructor() [13:37:46.880] Ren[caption] :: constructor() [13:37:46.880] Overlay[caption] :: constructor() [13:37:46.881] CanvasClip[caption] :: constructor() [13:37:46.881] Clip[caption] :: constructor() [13:37:46.881] clip:"caption" added to stream:"canvas_293028323385" [13:37:46.881] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_293028323385', clipId: 'caption' } [13:37:46.881] all added... [13:37:46.881] Vidbot :: _next(), _stepIndex:1 of 4 [13:37:46.881] index :: _onStepCompleted_vidbot(), step: 1 [13:37:46.881] index :: _onStepStarted_vidbot(), step: 2 [13:37:46.882] Vidbot :: step[1], label:Initializing Input Streams [13:37:46.882] StreamManager :: init() [13:37:46.882] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [13:37:46.883] index :: _onStepProgress_vidbot(), percent: 33 [13:37:46.883] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [13:37:46.883] index :: _onStepProgress_vidbot(), percent: 67 [13:37:46.883] CanvasStream[canvas_293028323385] :: _init(), BEGIN [13:37:46.883] i:0, c.id:simplefadedisplay [13:37:46.884] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [13:37:46.884] KenBurnsSlideshow[simplefadedisplay] :: _validate() [13:37:46.884] KenBurnsSlideshow[undefined] :: _validateAnim() [13:37:46.885] KenBurnsSlideshow[undefined] :: _validateTheme() [13:37:46.886] i:1, c.id:infosheet [13:37:46.886] RenInfosheet[infosheet] :: _init() [13:37:46.886] RenInfosheet[infosheet] :: _validate() [13:37:46.887] i:2, c.id:caption [13:37:46.887] RenCaption[caption] :: _init() [13:37:46.887] RenCaption[caption] :: _validate() [13:37:46.888] KenBurnsSlideshow[simplefadedisplay] :: _build() [13:37:46.894] AnimatedImageFrame[aif] :: constructor() [13:37:46.895] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:46.895] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_1.jpg [13:37:46.906] RenInfosheet[infosheet] :: _assets() [13:37:46.907] CanvasClip :: LoadSVGFromStringWithPromise() [13:37:46.928] CanvasClip :: LoadSVGFromString(), loaded [13:37:46.929] RenCaption[caption] :: _build() [13:37:46.953] Overlay[caption] :: _animate() [13:37:46.957] RenInfosheet[infosheet] :: _build() [13:37:46.973] Overlay[infosheet] :: _animate() [13:37:46.974] CanvasStream[caption] :: _init(), p.then() [13:37:46.974] CanvasStream[infosheet] :: _init(), p.then() [13:37:46.989] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:46.993] AnimatedImageFrame[aif] :: _init(), END [13:37:46.994] AnimatedImageFrame[aif] :: constructor() [13:37:46.994] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:46.995] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_2.jpg [13:37:47.007] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.008] AnimatedImageFrame[aif] :: _init(), END [13:37:47.009] AnimatedImageFrame[aif] :: constructor() [13:37:47.009] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:47.009] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_3.jpg [13:37:47.021] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.022] AnimatedImageFrame[aif] :: _init(), END [13:37:47.022] AnimatedImageFrame[aif] :: constructor() [13:37:47.023] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:47.023] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_4.jpg [13:37:47.034] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.035] AnimatedImageFrame[aif] :: _init(), END [13:37:47.035] AnimatedImageFrame[aif] :: constructor() [13:37:47.035] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:47.035] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_1.jpg [13:37:47.046] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.047] AnimatedImageFrame[aif] :: _init(), END [13:37:47.047] AnimatedImageFrame[aif] :: constructor() [13:37:47.047] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:47.048] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_2.jpg [13:37:47.058] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.059] AnimatedImageFrame[aif] :: _init(), END [13:37:47.059] AnimatedImageFrame[aif] :: constructor() [13:37:47.060] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:47.060] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_3.jpg [13:37:47.070] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.071] AnimatedImageFrame[aif] :: _init(), END [13:37:47.072] AnimatedImageFrame[aif] :: constructor() [13:37:47.072] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:47.072] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_4.jpg [13:37:47.082] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.083] AnimatedImageFrame[aif] :: _init(), END [13:37:47.084] AnimatedImageFrame[aif] :: constructor() [13:37:47.084] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:47.084] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_1.jpg [13:37:47.102] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.103] AnimatedImageFrame[aif] :: _init(), END [13:37:47.103] AnimatedImageFrame[aif] :: constructor() [13:37:47.104] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:47.104] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_2.jpg [13:37:47.115] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.116] AnimatedImageFrame[aif] :: _init(), END [13:37:47.116] AnimatedImageFrame[aif] :: constructor() [13:37:47.116] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:47.116] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_3.jpg [13:37:47.127] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.128] AnimatedImageFrame[aif] :: _init(), END [13:37:47.129] AnimatedImageFrame[aif] :: constructor() [13:37:47.129] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:47.129] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_4.jpg [13:37:47.140] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.140] AnimatedImageFrame[aif] :: _init(), END [13:37:47.141] AnimatedImageFrame[aif] :: constructor() [13:37:47.141] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:47.141] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_1.jpg [13:37:47.152] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.153] AnimatedImageFrame[aif] :: _init(), END [13:37:47.154] AnimatedImageFrame[aif] :: constructor() [13:37:47.154] AnimatedImageFrame[aif] :: _init(), BEGIN [13:37:47.154] CanvasClip :: LoadImageWithPromise(), src: 0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1_2.jpg [13:37:47.165] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [13:37:47.166] AnimatedImageFrame[aif] :: _init(), END [13:37:47.166] Overlay[simplefadedisplay] :: _animate() [13:37:47.167] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [13:37:47.167] CanvasStream[simplefadedisplay] :: _init(), p.then() [13:37:47.167] CanvasStream[canvas_293028323385] :: _init(), promise.all.then() [13:37:47.170] CanvasStream[canvas_293028323385] :: _init(), END [13:37:47.170] StreamMangaer :: init(), stream[canvas_293028323385].then() [13:37:47.170] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_293028323385', progress: 1 } [13:37:47.170] index :: _onStepProgress_vidbot(), percent: 100 [13:37:47.170] StreamManager :: init(), promise.all.then... [13:37:47.170] Vidbot :: StreamMgr.on( 'INITED' ) [13:37:47.170] Vidbot :: _next(), _stepIndex:2 of 4 [13:37:47.170] index :: _onStepCompleted_vidbot(), step: 2 [13:37:47.171] index :: _onStepStarted_vidbot(), step: 3 [13:37:47.171] Vidbot :: step[2], label:Rendering Canvas Streams [13:37:47.171] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [13:37:47.171] StreamManager :: render() [13:37:47.172] CanvasStream[canvas_293028323385] :: render() [13:37:47.208] index :: _onStepProgress_vidbot(), percent: 0 [13:37:55.169] index :: _onStepProgress_vidbot(), percent: 5 [13:38:05.763] index :: _onStepProgress_vidbot(), percent: 10 [13:38:18.186] index :: _onStepProgress_vidbot(), percent: 15 [13:38:31.367] index :: _onStepProgress_vidbot(), percent: 20 [13:38:42.933] index :: _onStepProgress_vidbot(), percent: 25 [13:38:53.879] index :: _onStepProgress_vidbot(), percent: 30 [13:39:05.426] index :: _onStepProgress_vidbot(), percent: 35 [13:39:17.334] index :: _onStepProgress_vidbot(), percent: 40 [13:39:28.526] index :: _onStepProgress_vidbot(), percent: 45 [13:39:39.657] index :: _onStepProgress_vidbot(), percent: 50 [13:39:51.603] index :: _onStepProgress_vidbot(), percent: 55 [13:40:02.743] index :: _onStepProgress_vidbot(), percent: 60 [13:40:14.595] index :: _onStepProgress_vidbot(), percent: 65 [13:40:26.200] index :: _onStepProgress_vidbot(), percent: 70 [13:40:37.892] index :: _onStepProgress_vidbot(), percent: 75 [13:40:49.785] index :: _onStepProgress_vidbot(), percent: 80 [13:41:00.904] index :: _onStepProgress_vidbot(), percent: 85 [13:41:11.747] index :: _onStepProgress_vidbot(), percent: 90 [13:41:23.363] index :: _onStepProgress_vidbot(), percent: 95 [13:41:35.265] index :: _onStepProgress_vidbot(), percent: 100 [13:41:36.273] StreamManager :: render(), Promise.all.then... [13:41:36.273] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [13:41:36.273] Vidbot :: _next(), _stepIndex:3 of 4 [13:41:36.273] index :: _onStepCompleted_vidbot(), step: 3 [13:41:36.274] index :: _onStepStarted_vidbot(), step: 4 [13:41:36.275] Vidbot :: step[3], label:Encoding Media [13:41:36.277] CanvasFilters :: Overlay() [13:41:36.278] AudioStream[audio_vo] :: inputOptions() [13:41:36.278] AudioFilters :: Volume() [13:41:36.278] filter: [2:a]volume=1[2_vol] [13:41:36.278] AudioFilters :: Delay() [13:41:36.279] filter: [2_vol]adelay=0|0[2_del] [13:41:36.279] AudioStream[bg_music] :: inputOptions() [13:41:36.279] AudioFilters :: Volume() [13:41:36.279] filter: [3:a]volume=0.0[3_vol] [13:41:36.279] AudioFilters :: FadeOut() [13:41:36.279] filter: [3_vol]afade=t=out:st=39.71:d=1[3_fadeout] [13:41:36.279] AudioFilters :: Delay() [13:41:36.280] filter: [3_fadeout]adelay=0|0[3_del] [13:41:36.280] AudioFilters :: Mix() [13:41:36.280] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [13:41:36.280] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [13:41:36.282] hang.time: 60 [13:41:36.377] Vidbot :: ffmpeg.on( 'start' ) [13:41:36.377] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=39.71 -r 30 -i ./tmp/canvas_293028323385_%05d.png -to 00:00:42.710 -i file:///var/www/html/c [13:41:36.378] lients/16512/audio/0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1.mp3 -to 00:00:39.710 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/bgmusic [13:41:36.378] .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.0[3_vol];[3_vol]afade=t=out:st=39 [13:41:36.378] .71: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 [13:41:36.378] ut] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/16512/video/0DE1D0EA-5D98-D5B8-4B7 [13:41:36.378] 3-B5DE78B8F8C1.mp4 [13:41:36.514] index :: _onStepProgress_vidbot(), percent: -5231046228 [13:41:36.962] index :: _onStepProgress_vidbot(), percent: 5 [13:41:37.463] index :: _onStepProgress_vidbot(), percent: 13 [13:41:37.963] index :: _onStepProgress_vidbot(), percent: 20 [13:41:38.463] index :: _onStepProgress_vidbot(), percent: 27 [13:41:38.969] index :: _onStepProgress_vidbot(), percent: 33 [13:41:39.474] index :: _onStepProgress_vidbot(), percent: 40 [13:41:39.979] index :: _onStepProgress_vidbot(), percent: 46 [13:41:40.479] index :: _onStepProgress_vidbot(), percent: 52 [13:41:40.988] index :: _onStepProgress_vidbot(), percent: 58 [13:41:41.491] index :: _onStepProgress_vidbot(), percent: 64 [13:41:41.989] index :: _onStepProgress_vidbot(), percent: 70 [13:41:42.489] index :: _onStepProgress_vidbot(), percent: 77 [13:41:42.995] index :: _onStepProgress_vidbot(), percent: 83 [13:41:43.495] index :: _onStepProgress_vidbot(), percent: 89 [13:41:44.001] index :: _onStepProgress_vidbot(), percent: 95 [13:41:44.365] index :: _onStepProgress_vidbot(), percent: 108 [13:41:44.383] Vidbot :: ffmpeg.on( 'end' ), Done! [13:41:44.383] StreamManager :: dispose() [13:41:44.383] CanvasStream[canvas_293028323385] :: dispose() [13:41:44.389] Vidbot :: fflog.on( 'finish' ) [13:41:44.389] fflog.path: /var/www/html/clients/16512/video/0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1.mp4.fflog [13:41:44.389] Vidbot :: _next(), _stepIndex:4 of 4 [13:41:44.389] index :: _onStepCompleted_vidbot(), step: 4 [13:41:44.390] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 237.634, output: '/var/www/html/clients/16512/video/0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1.mp4', duration: 39.71 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/16512/video/0DE1D0EA-5D98-D5B8-4B73-B5DE78B8F8C1.mp4 Media Duration : 00:00:39.710 Generation Time : 00:03:57.633 ---------------------------------------------------------------------------------------------------------------