--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.0... --------------------------------------------------------------------------------------------------------------- [01:27:13.392] Vidbot :: start() [01:27:13.393] Vidbot :: _next(), _stepIndex:0 of 4 [01:27:13.393] index :: _onStepStarted_vidbot(), step: 1 [01:27:13.395] Vidbot :: step[0], label:Initializing Core [01:27:13.403] index :: _onStepProgress_vidbot(), percent: 20 [01:27:13.403] Vidbot :: _parse() [01:27:13.404] index :: _onStepProgress_vidbot(), percent: 40 [01:27:13.404] Vidbot :: _validate() [01:27:13.405] index :: _onStepProgress_vidbot(), percent: 60 [01:27:13.405] Vidbot :: _fonts() [01:27:13.406] FabricFontManager :: add(), id: SourceSansPro-Bold [01:27:13.406] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [01:27:13.414] FabricFontManager :: add(), id: SourceSansPro-Light [01:27:13.414] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [01:27:13.415] FabricFontManager :: add(), id: DINOT-Bold [01:27:13.415] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [01:27:13.416] FabricFontManager :: add(), id: DINOT-Light [01:27:13.416] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [01:27:13.417] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [01:27:13.417] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [01:27:13.418] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [01:27:13.418] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [01:27:13.419] index :: _onStepProgress_vidbot(), percent: 80 [01:27:13.419] Vidbot :: _clips() [01:27:13.419] StreamManager :: add(), id:audio_vo, type:audio [01:27:13.420] AudioClip[audio_vo] :: constructor() [01:27:13.420] InputStream[audio_vo] :: constructor() [01:27:13.420] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [01:27:13.423] StreamManager :: add(), id:bg_music, type:audio [01:27:13.423] AudioClip[bg_music] :: constructor() [01:27:13.423] InputStream[bg_music] :: constructor() [01:27:13.423] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [01:27:13.423] StreamManager :: add(), id:simplefadedisplay, type:canvas [01:27:13.424] CanvasStream[canvas_758752020120] :: constructor() [01:27:13.424] InputStream[canvas_758752020120] :: constructor() [01:27:13.500] KenBurnsSlideshow[simplefadedisplay] :: constructor() [01:27:13.500] Overlay[simplefadedisplay] :: constructor() [01:27:13.500] CanvasClip[simplefadedisplay] :: constructor() [01:27:13.500] Clip[simplefadedisplay] :: constructor() [01:27:13.501] clip:"simplefadedisplay" added to stream:"canvas_758752020120" [01:27:13.501] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_758752020120', clipId: 'simplefadedisplay' } [01:27:13.501] StreamManager :: add(), id:caption, type:canvas [01:27:13.501] RenCaption[caption] :: constructor() [01:27:13.501] Ren[caption] :: constructor() [01:27:13.501] Overlay[caption] :: constructor() [01:27:13.501] CanvasClip[caption] :: constructor() [01:27:13.501] Clip[caption] :: constructor() [01:27:13.501] clip:"caption" added to stream:"canvas_758752020120" [01:27:13.502] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_758752020120', clipId: 'caption' } [01:27:13.502] StreamManager :: add(), id:options, type:canvas [01:27:13.502] RenOptions[options] :: constructor() [01:27:13.502] Ren[options] :: constructor() [01:27:13.502] Overlay[options] :: constructor() [01:27:13.502] CanvasClip[options] :: constructor() [01:27:13.502] Clip[options] :: constructor() [01:27:13.502] clip:"options" added to stream:"canvas_758752020120" [01:27:13.502] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_758752020120', clipId: 'options' } [01:27:13.502] StreamManager :: add(), id:map, type:canvas [01:27:13.502] RenMap[map] :: constructor() [01:27:13.502] Ren[map] :: constructor() [01:27:13.503] Overlay[map] :: constructor() [01:27:13.503] CanvasClip[map] :: constructor() [01:27:13.503] Clip[map] :: constructor() [01:27:13.503] clip:"map" added to stream:"canvas_758752020120" [01:27:13.503] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_758752020120', clipId: 'map' } [01:27:13.503] all added... [01:27:13.503] Vidbot :: _next(), _stepIndex:1 of 4 [01:27:13.503] index :: _onStepCompleted_vidbot(), step: 1 [01:27:13.503] index :: _onStepStarted_vidbot(), step: 2 [01:27:13.504] Vidbot :: step[1], label:Initializing Input Streams [01:27:13.504] StreamManager :: init() [01:27:13.504] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [01:27:13.505] index :: _onStepProgress_vidbot(), percent: 33 [01:27:13.505] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [01:27:13.505] index :: _onStepProgress_vidbot(), percent: 67 [01:27:13.505] CanvasStream[canvas_758752020120] :: _init(), BEGIN [01:27:13.505] i:0, c.id:simplefadedisplay [01:27:13.506] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [01:27:13.506] KenBurnsSlideshow[simplefadedisplay] :: _validate() [01:27:13.506] KenBurnsSlideshow[undefined] :: _validateAnim() [01:27:13.507] KenBurnsSlideshow[undefined] :: _validateTheme() [01:27:13.508] i:1, c.id:caption [01:27:13.508] RenCaption[caption] :: _init() [01:27:13.508] RenCaption[caption] :: _validate() [01:27:13.509] i:2, c.id:options [01:27:13.509] RenPrice[options] :: _init() [01:27:13.509] RenOptions[options] :: _validate() [01:27:13.510] i:3, c.id:map [01:27:13.510] RenMap[map] :: _init() [01:27:13.510] RenMap[map] :: _validate() [01:27:13.511] KenBurnsSlideshow[simplefadedisplay] :: _build() [01:27:13.517] AnimatedImageFrame[aif] :: constructor() [01:27:13.518] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.518] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_1.jpg [01:27:13.529] RenCaption[caption] :: _build() [01:27:13.547] RenOptions[options] :: _assets() [01:27:13.547] CanvasClip :: LoadSVGFromStringWithPromise() [01:27:13.575] CanvasClip :: LoadSVGFromString(), loaded [01:27:13.577] RenMap[map] :: _assets() [01:27:13.577] CanvasClip :: LoadSVGFromStringWithPromise() [01:27:13.587] CanvasClip :: LoadSVGFromString(), loaded [01:27:13.588] CanvasClip :: LoadImageWithPromise(), src: map_360.jpg [01:27:13.591] Overlay[caption] :: _animate() [01:27:13.594] RenOptions[options] :: _build() [01:27:13.690] CanvasStream[caption] :: _init(), p.then() [01:27:13.691] RenOptions[options] :: _animate() [01:27:13.691] Overlay[options] :: _animate() [01:27:13.692] CanvasStream[options] :: _init(), p.then() [01:27:13.709] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.711] AnimatedImageFrame[aif] :: _init(), END [01:27:13.713] AnimatedImageFrame[aif] :: constructor() [01:27:13.713] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.713] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_2.jpg [01:27:13.724] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.725] RenMap[map] :: _build() [01:27:13.741] Overlay[map] :: _animate() [01:27:13.741] CanvasStream[map] :: _init(), p.then() [01:27:13.754] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.755] AnimatedImageFrame[aif] :: _init(), END [01:27:13.755] AnimatedImageFrame[aif] :: constructor() [01:27:13.755] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.755] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_3.jpg [01:27:13.768] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.768] AnimatedImageFrame[aif] :: _init(), END [01:27:13.769] AnimatedImageFrame[aif] :: constructor() [01:27:13.769] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.769] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_4.jpg [01:27:13.781] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.782] AnimatedImageFrame[aif] :: _init(), END [01:27:13.782] AnimatedImageFrame[aif] :: constructor() [01:27:13.783] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.783] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_5.jpg [01:27:13.794] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.795] AnimatedImageFrame[aif] :: _init(), END [01:27:13.795] AnimatedImageFrame[aif] :: constructor() [01:27:13.795] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.795] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_6.jpg [01:27:13.812] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.813] AnimatedImageFrame[aif] :: _init(), END [01:27:13.813] AnimatedImageFrame[aif] :: constructor() [01:27:13.814] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.814] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_7.jpg [01:27:13.830] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.831] AnimatedImageFrame[aif] :: _init(), END [01:27:13.831] AnimatedImageFrame[aif] :: constructor() [01:27:13.831] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.832] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_8.jpg [01:27:13.848] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.849] AnimatedImageFrame[aif] :: _init(), END [01:27:13.850] AnimatedImageFrame[aif] :: constructor() [01:27:13.850] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.850] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_9.jpg [01:27:13.865] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.866] AnimatedImageFrame[aif] :: _init(), END [01:27:13.866] AnimatedImageFrame[aif] :: constructor() [01:27:13.867] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.867] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_10.jpg [01:27:13.882] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.882] AnimatedImageFrame[aif] :: _init(), END [01:27:13.883] AnimatedImageFrame[aif] :: constructor() [01:27:13.883] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.883] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_11.jpg [01:27:13.899] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.899] AnimatedImageFrame[aif] :: _init(), END [01:27:13.900] AnimatedImageFrame[aif] :: constructor() [01:27:13.900] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.900] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_12.jpg [01:27:13.917] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.918] AnimatedImageFrame[aif] :: _init(), END [01:27:13.918] AnimatedImageFrame[aif] :: constructor() [01:27:13.918] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.918] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_13.jpg [01:27:13.936] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.937] AnimatedImageFrame[aif] :: _init(), END [01:27:13.937] AnimatedImageFrame[aif] :: constructor() [01:27:13.937] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.937] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_14.jpg [01:27:13.954] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.955] AnimatedImageFrame[aif] :: _init(), END [01:27:13.955] AnimatedImageFrame[aif] :: constructor() [01:27:13.955] AnimatedImageFrame[aif] :: _init(), BEGIN [01:27:13.955] CanvasClip :: LoadImageWithPromise(), src: 44DBE54C-9451-A840-E4D5-C57AFAF078D9_15.jpg [01:27:13.979] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [01:27:13.980] AnimatedImageFrame[aif] :: _init(), END [01:27:13.980] Overlay[simplefadedisplay] :: _animate() [01:27:13.981] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [01:27:13.981] CanvasStream[simplefadedisplay] :: _init(), p.then() [01:27:13.981] CanvasStream[canvas_758752020120] :: _init(), promise.all.then() [01:27:13.984] CanvasStream[canvas_758752020120] :: _init(), END [01:27:13.984] StreamMangaer :: init(), stream[canvas_758752020120].then() [01:27:13.984] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_758752020120', progress: 1 } [01:27:13.984] index :: _onStepProgress_vidbot(), percent: 100 [01:27:13.984] StreamManager :: init(), promise.all.then... [01:27:13.985] Vidbot :: StreamMgr.on( 'INITED' ) [01:27:13.985] Vidbot :: _next(), _stepIndex:2 of 4 [01:27:13.985] index :: _onStepCompleted_vidbot(), step: 2 [01:27:13.985] index :: _onStepStarted_vidbot(), step: 3 [01:27:13.985] Vidbot :: step[2], label:Rendering Canvas Streams [01:27:13.986] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [01:27:13.986] StreamManager :: render() [01:27:13.986] CanvasStream[canvas_758752020120] :: render() [01:27:14.016] index :: _onStepProgress_vidbot(), percent: 0 [01:27:22.691] index :: _onStepProgress_vidbot(), percent: 5 [01:27:32.448] index :: _onStepProgress_vidbot(), percent: 10 [01:27:42.170] index :: _onStepProgress_vidbot(), percent: 15 [01:27:50.254] index :: _onStepProgress_vidbot(), percent: 20 [01:27:56.658] index :: _onStepProgress_vidbot(), percent: 25 [01:28:03.445] index :: _onStepProgress_vidbot(), percent: 30 [01:28:13.899] index :: _onStepProgress_vidbot(), percent: 35 [01:28:25.729] index :: _onStepProgress_vidbot(), percent: 40 [01:28:36.705] index :: _onStepProgress_vidbot(), percent: 45 [01:28:50.588] index :: _onStepProgress_vidbot(), percent: 50 [01:29:07.287] index :: _onStepProgress_vidbot(), percent: 55 [01:29:23.487] index :: _onStepProgress_vidbot(), percent: 60 [01:29:38.154] index :: _onStepProgress_vidbot(), percent: 65 [01:29:51.930] index :: _onStepProgress_vidbot(), percent: 70 [01:30:09.031] index :: _onStepProgress_vidbot(), percent: 75 [01:30:26.643] index :: _onStepProgress_vidbot(), percent: 80 [01:30:42.612] index :: _onStepProgress_vidbot(), percent: 85 [01:30:57.906] index :: _onStepProgress_vidbot(), percent: 90 [01:31:15.860] index :: _onStepProgress_vidbot(), percent: 95 [01:31:25.318] index :: _onStepProgress_vidbot(), percent: 100 [01:31:26.148] StreamManager :: render(), Promise.all.then... [01:31:26.148] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [01:31:26.148] Vidbot :: _next(), _stepIndex:3 of 4 [01:31:26.148] index :: _onStepCompleted_vidbot(), step: 3 [01:31:26.149] index :: _onStepStarted_vidbot(), step: 4 [01:31:26.150] Vidbot :: step[3], label:Encoding Media [01:31:26.153] CanvasFilters :: Overlay() [01:31:26.153] AudioStream[audio_vo] :: inputOptions() [01:31:26.154] AudioFilters :: Volume() [01:31:26.154] filter: [2:a]volume=1[2_vol] [01:31:26.154] AudioFilters :: Delay() [01:31:26.154] filter: [2_vol]adelay=0|0[2_del] [01:31:26.154] AudioStream[bg_music] :: inputOptions() [01:31:26.154] AudioFilters :: Volume() [01:31:26.155] filter: [3:a]volume=0.20[3_vol] [01:31:26.155] AudioFilters :: FadeOut() [01:31:26.155] filter: [3_vol]afade=t=out:st=45:d=1[3_fadeout] [01:31:26.155] AudioFilters :: Delay() [01:31:26.155] filter: [3_fadeout]adelay=0|0[3_del] [01:31:26.155] AudioFilters :: Mix() [01:31:26.156] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [01:31:26.156] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [01:31:26.158] hang.time: 60 [01:31:26.264] Vidbot :: ffmpeg.on( 'start' ) [01:31:26.265] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=48 -r 30 -i ./tmp/canvas_758752020120_%05d.png -to 00:00:48.000 -i file:///var/www/html/clie [01:31:26.265] nts/18779/audio/44DBE54C-9451-A840-E4D5-C57AFAF078D9.mp3 -to 00:00:45.000 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Jazz-4.mp3 [01:31:26.265] -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.20[3_vol];[3_vol]afade=t=out:st=45:d= [01:31:26.265] 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] -m [01:31:26.265] ap [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/18779/video/44DBE54C-9451-A840-E4D5-C57A [01:31:26.265] FAF078D9.mp4 [01:31:26.397] index :: _onStepProgress_vidbot(), percent: -4327600953 [01:31:26.841] index :: _onStepProgress_vidbot(), percent: 2 [01:31:27.347] index :: _onStepProgress_vidbot(), percent: 6 [01:31:27.850] index :: _onStepProgress_vidbot(), percent: 10 [01:31:28.857] index :: _onStepProgress_vidbot(), percent: 19 [01:31:29.365] index :: _onStepProgress_vidbot(), percent: 23 [01:31:29.866] index :: _onStepProgress_vidbot(), percent: 28 [01:31:30.384] index :: _onStepProgress_vidbot(), percent: 33 [01:31:30.884] index :: _onStepProgress_vidbot(), percent: 37 [01:31:31.396] index :: _onStepProgress_vidbot(), percent: 42 [01:31:31.896] index :: _onStepProgress_vidbot(), percent: 46 [01:31:32.396] index :: _onStepProgress_vidbot(), percent: 51 [01:31:32.900] index :: _onStepProgress_vidbot(), percent: 55 [01:31:33.915] index :: _onStepProgress_vidbot(), percent: 63 [01:31:34.435] index :: _onStepProgress_vidbot(), percent: 67 [01:31:34.949] index :: _onStepProgress_vidbot(), percent: 72 [01:31:35.448] index :: _onStepProgress_vidbot(), percent: 77 [01:31:35.955] index :: _onStepProgress_vidbot(), percent: 82 [01:31:36.455] index :: _onStepProgress_vidbot(), percent: 86 [01:31:36.956] index :: _onStepProgress_vidbot(), percent: 91 [01:31:37.746] index :: _onStepProgress_vidbot(), percent: 100 [01:31:37.766] Vidbot :: ffmpeg.on( 'end' ), Done! [01:31:37.766] StreamManager :: dispose() [01:31:37.767] CanvasStream[canvas_758752020120] :: dispose() [01:31:37.771] Vidbot :: fflog.on( 'finish' ) [01:31:37.772] fflog.path: /var/www/html/clients/18779/video/44DBE54C-9451-A840-E4D5-C57AFAF078D9.mp4.fflog [01:31:37.772] Vidbot :: _next(), _stepIndex:4 of 4 [01:31:37.772] index :: _onStepCompleted_vidbot(), step: 4 [01:31:37.772] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 264.399, output: '/var/www/html/clients/18779/video/44DBE54C-9451-A840-E4D5-C57AFAF078D9.mp4', duration: 48 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/18779/video/44DBE54C-9451-A840-E4D5-C57AFAF078D9.mp4 Media Duration : 00:00:48.000 Generation Time : 00:04:24.399 ---------------------------------------------------------------------------------------------------------------