--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.1... --------------------------------------------------------------------------------------------------------------- [12:24:12.162] Vidbot :: start() [12:24:12.163] Vidbot :: _next(), _stepIndex:0 of 4 [12:24:12.163] index :: _onStepStarted_vidbot(), step: 1 [12:24:12.164] Vidbot :: step[0], label:Initializing Core [12:24:12.177] index :: _onStepProgress_vidbot(), percent: 20 [12:24:12.177] Vidbot :: _parse() [12:24:12.179] index :: _onStepProgress_vidbot(), percent: 40 [12:24:12.179] Vidbot :: _validate() [12:24:12.180] index :: _onStepProgress_vidbot(), percent: 60 [12:24:12.180] Vidbot :: _fonts() [12:24:12.180] FabricFontManager :: add(), id: SourceSansPro-Bold [12:24:12.180] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [12:24:12.190] FabricFontManager :: add(), id: SourceSansPro-Light [12:24:12.190] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [12:24:12.191] FabricFontManager :: add(), id: DINOT-Bold [12:24:12.191] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [12:24:12.192] FabricFontManager :: add(), id: DINOT-Light [12:24:12.192] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [12:24:12.193] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [12:24:12.193] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [12:24:12.193] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [12:24:12.194] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [12:24:12.195] index :: _onStepProgress_vidbot(), percent: 80 [12:24:12.195] Vidbot :: _clips() [12:24:12.195] StreamManager :: add(), id:audio_vo, type:audio [12:24:12.196] AudioClip[audio_vo] :: constructor() [12:24:12.196] InputStream[audio_vo] :: constructor() [12:24:12.196] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [12:24:12.199] StreamManager :: add(), id:bg_music, type:audio [12:24:12.199] AudioClip[bg_music] :: constructor() [12:24:12.199] InputStream[bg_music] :: constructor() [12:24:12.200] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [12:24:12.200] StreamManager :: add(), id:simplefadedisplay, type:canvas [12:24:12.200] CanvasStream[canvas_1728057495956] :: constructor() [12:24:12.201] InputStream[canvas_1728057495956] :: constructor() [12:24:12.285] KenBurnsSlideshow[simplefadedisplay] :: constructor() [12:24:12.285] Overlay[simplefadedisplay] :: constructor() [12:24:12.286] CanvasClip[simplefadedisplay] :: constructor() [12:24:12.286] Clip[simplefadedisplay] :: constructor() [12:24:12.286] clip:"simplefadedisplay" added to stream:"canvas_1728057495956" [12:24:12.286] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1728057495956', clipId: 'simplefadedisplay' } [12:24:12.286] StreamManager :: add(), id:caption, type:canvas [12:24:12.286] RenCaption[caption] :: constructor() [12:24:12.287] Ren[caption] :: constructor() [12:24:12.287] Overlay[caption] :: constructor() [12:24:12.287] CanvasClip[caption] :: constructor() [12:24:12.287] Clip[caption] :: constructor() [12:24:12.287] clip:"caption" added to stream:"canvas_1728057495956" [12:24:12.287] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1728057495956', clipId: 'caption' } [12:24:12.287] StreamManager :: add(), id:options, type:canvas [12:24:12.287] RenOptions[options] :: constructor() [12:24:12.287] Ren[options] :: constructor() [12:24:12.287] Overlay[options] :: constructor() [12:24:12.287] CanvasClip[options] :: constructor() [12:24:12.288] Clip[options] :: constructor() [12:24:12.288] clip:"options" added to stream:"canvas_1728057495956" [12:24:12.288] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1728057495956', clipId: 'options' } [12:24:12.288] all added... [12:24:12.288] Vidbot :: _next(), _stepIndex:1 of 4 [12:24:12.288] index :: _onStepCompleted_vidbot(), step: 1 [12:24:12.289] index :: _onStepStarted_vidbot(), step: 2 [12:24:12.289] Vidbot :: step[1], label:Initializing Input Streams [12:24:12.289] StreamManager :: init() [12:24:12.290] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [12:24:12.290] index :: _onStepProgress_vidbot(), percent: 33 [12:24:12.290] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [12:24:12.290] index :: _onStepProgress_vidbot(), percent: 67 [12:24:12.290] CanvasStream[canvas_1728057495956] :: _init(), BEGIN [12:24:12.291] i:0, c.id:simplefadedisplay [12:24:12.291] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [12:24:12.291] KenBurnsSlideshow[simplefadedisplay] :: _validate() [12:24:12.292] KenBurnsSlideshow[undefined] :: _validateAnim() [12:24:12.292] KenBurnsSlideshow[undefined] :: _validateTheme() [12:24:12.293] i:1, c.id:caption [12:24:12.294] RenCaption[caption] :: _init() [12:24:12.294] RenCaption[caption] :: _validate() [12:24:12.295] i:2, c.id:options [12:24:12.296] RenPrice[options] :: _init() [12:24:12.296] RenOptions[options] :: _validate() [12:24:12.297] KenBurnsSlideshow[simplefadedisplay] :: _build() [12:24:12.304] AnimatedImageFrame[aif] :: constructor() [12:24:12.305] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:12.305] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_1.jpg [12:24:12.319] RenCaption[caption] :: _build() [12:24:12.338] RenOptions[options] :: _assets() [12:24:12.339] CanvasClip :: LoadSVGFromStringWithPromise() [12:24:12.372] CanvasClip :: LoadSVGFromString(), loaded [12:24:12.375] Overlay[caption] :: _animate() [12:24:12.379] RenOptions[options] :: _build() [12:24:12.490] CanvasStream[caption] :: _init(), p.then() [12:24:12.491] RenOptions[options] :: _animate() [12:24:12.491] Overlay[options] :: _animate() [12:24:12.492] CanvasStream[options] :: _init(), p.then() [12:24:12.550] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:12.553] AnimatedImageFrame[aif] :: _init(), END [12:24:12.555] AnimatedImageFrame[aif] :: constructor() [12:24:12.555] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:12.555] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_2.jpg [12:24:12.602] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:12.604] AnimatedImageFrame[aif] :: _init(), END [12:24:12.604] AnimatedImageFrame[aif] :: constructor() [12:24:12.604] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:12.604] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_3.jpg [12:24:12.644] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:12.646] AnimatedImageFrame[aif] :: _init(), END [12:24:12.646] AnimatedImageFrame[aif] :: constructor() [12:24:12.646] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:12.647] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_4.jpg [12:24:12.689] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:12.690] AnimatedImageFrame[aif] :: _init(), END [12:24:12.691] AnimatedImageFrame[aif] :: constructor() [12:24:12.691] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:12.691] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_1.jpg [12:24:12.738] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:12.740] AnimatedImageFrame[aif] :: _init(), END [12:24:12.740] AnimatedImageFrame[aif] :: constructor() [12:24:12.740] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:12.740] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_2.jpg [12:24:12.788] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:12.789] AnimatedImageFrame[aif] :: _init(), END [12:24:12.790] AnimatedImageFrame[aif] :: constructor() [12:24:12.790] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:12.790] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_3.jpg [12:24:12.851] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:12.852] AnimatedImageFrame[aif] :: _init(), END [12:24:12.852] AnimatedImageFrame[aif] :: constructor() [12:24:12.852] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:12.852] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_4.jpg [12:24:12.892] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:12.893] AnimatedImageFrame[aif] :: _init(), END [12:24:12.893] AnimatedImageFrame[aif] :: constructor() [12:24:12.893] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:12.894] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_1.jpg [12:24:12.934] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:12.935] AnimatedImageFrame[aif] :: _init(), END [12:24:12.936] AnimatedImageFrame[aif] :: constructor() [12:24:12.936] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:12.936] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_2.jpg [12:24:12.978] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:12.979] AnimatedImageFrame[aif] :: _init(), END [12:24:12.979] AnimatedImageFrame[aif] :: constructor() [12:24:12.979] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:12.980] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_3.jpg [12:24:13.015] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:13.016] AnimatedImageFrame[aif] :: _init(), END [12:24:13.016] AnimatedImageFrame[aif] :: constructor() [12:24:13.016] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:13.016] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_4.jpg [12:24:13.063] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:13.064] AnimatedImageFrame[aif] :: _init(), END [12:24:13.065] AnimatedImageFrame[aif] :: constructor() [12:24:13.065] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:13.065] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_1.jpg [12:24:13.120] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:13.127] AnimatedImageFrame[aif] :: _init(), END [12:24:13.128] AnimatedImageFrame[aif] :: constructor() [12:24:13.128] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:13.128] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_2.jpg [12:24:13.167] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:13.169] AnimatedImageFrame[aif] :: _init(), END [12:24:13.169] AnimatedImageFrame[aif] :: constructor() [12:24:13.169] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:13.169] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_3.jpg [12:24:13.208] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:13.209] AnimatedImageFrame[aif] :: _init(), END [12:24:13.209] AnimatedImageFrame[aif] :: constructor() [12:24:13.210] AnimatedImageFrame[aif] :: _init(), BEGIN [12:24:13.210] CanvasClip :: LoadImageWithPromise(), src: 944F6DF0-AB5C-9784-581F-781F43C616E4_4.jpg [12:24:13.249] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [12:24:13.250] AnimatedImageFrame[aif] :: _init(), END [12:24:13.250] Overlay[simplefadedisplay] :: _animate() [12:24:13.251] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [12:24:13.251] CanvasStream[simplefadedisplay] :: _init(), p.then() [12:24:13.251] CanvasStream[canvas_1728057495956] :: _init(), promise.all.then() [12:24:13.254] CanvasStream[canvas_1728057495956] :: _init(), END [12:24:13.254] StreamMangaer :: init(), stream[canvas_1728057495956].then() [12:24:13.254] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1728057495956', progress: 1 } [12:24:13.254] index :: _onStepProgress_vidbot(), percent: 100 [12:24:13.254] StreamManager :: init(), promise.all.then... [12:24:13.254] Vidbot :: StreamMgr.on( 'INITED' ) [12:24:13.255] Vidbot :: _next(), _stepIndex:2 of 4 [12:24:13.255] index :: _onStepCompleted_vidbot(), step: 2 [12:24:13.255] index :: _onStepStarted_vidbot(), step: 3 [12:24:13.255] Vidbot :: step[2], label:Rendering Canvas Streams [12:24:13.255] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [12:24:13.256] StreamManager :: render() [12:24:13.256] CanvasStream[canvas_1728057495956] :: render() [12:24:13.322] index :: _onStepProgress_vidbot(), percent: 0 [12:24:43.595] index :: _onStepProgress_vidbot(), percent: 5 [12:25:18.491] index :: _onStepProgress_vidbot(), percent: 10 [12:25:50.935] index :: _onStepProgress_vidbot(), percent: 15 [12:26:17.582] index :: _onStepProgress_vidbot(), percent: 20 [12:26:51.145] index :: _onStepProgress_vidbot(), percent: 25 [12:27:27.304] index :: _onStepProgress_vidbot(), percent: 30 [12:28:02.355] index :: _onStepProgress_vidbot(), percent: 35 [12:28:37.594] index :: _onStepProgress_vidbot(), percent: 40 [12:29:05.357] index :: _onStepProgress_vidbot(), percent: 45 [12:29:36.017] index :: _onStepProgress_vidbot(), percent: 50 [12:30:07.400] index :: _onStepProgress_vidbot(), percent: 55 [12:30:33.297] index :: _onStepProgress_vidbot(), percent: 60 [12:30:58.366] index :: _onStepProgress_vidbot(), percent: 65 [12:31:22.778] index :: _onStepProgress_vidbot(), percent: 70 [12:31:47.496] index :: _onStepProgress_vidbot(), percent: 75 [12:32:19.486] index :: _onStepProgress_vidbot(), percent: 80 [12:32:49.650] index :: _onStepProgress_vidbot(), percent: 85 [12:33:23.597] index :: _onStepProgress_vidbot(), percent: 90 [12:33:56.640] index :: _onStepProgress_vidbot(), percent: 95 [12:34:28.184] index :: _onStepProgress_vidbot(), percent: 100 [12:34:31.103] StreamManager :: render(), Promise.all.then... [12:34:31.104] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [12:34:31.104] Vidbot :: _next(), _stepIndex:3 of 4 [12:34:31.104] index :: _onStepCompleted_vidbot(), step: 3 [12:34:31.105] index :: _onStepStarted_vidbot(), step: 4 [12:34:31.105] Vidbot :: step[3], label:Encoding Media [12:34:31.108] CanvasFilters :: Overlay() [12:34:31.109] AudioStream[audio_vo] :: inputOptions() [12:34:31.109] AudioFilters :: Volume() [12:34:31.109] filter: [2:a]volume=1[2_vol] [12:34:31.109] AudioFilters :: Delay() [12:34:31.109] filter: [2_vol]adelay=0|0[2_del] [12:34:31.109] AudioStream[bg_music] :: inputOptions() [12:34:31.109] AudioFilters :: Volume() [12:34:31.110] filter: [3:a]volume=0.25[3_vol] [12:34:31.110] AudioFilters :: FadeOut() [12:34:31.110] filter: [3_vol]afade=t=out:st=46.14:d=1[3_fadeout] [12:34:31.110] AudioFilters :: Delay() [12:34:31.110] filter: [3_fadeout]adelay=0|0[3_del] [12:34:31.110] AudioFilters :: Mix() [12:34:31.110] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [12:34:31.110] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [12:34:31.113] hang.time: 60 [12:34:31.238] Vidbot :: ffmpeg.on( 'start' ) [12:34:31.238] ffmpeg -f lavfi -i color=c=000000:s=960x540:r=30:duration=46.14 -r 30 -i ./tmp/canvas_1728057495956_%05d.png -to 00:00:46.140 -i file:///var/www/html/ [12:34:31.238] clients/19902/audio/944F6DF0-AB5C-9784-581F-781F43C616E4.mp3 -to 00:00:46.140 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/RF3_Ea [12:34:31.238] sy_Listening.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]afad [12:34:31.238] e=t=out:st=46.14: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 [12:34:31.238] mp4 -map [a_out] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/19902/video/944F6DF0- [12:34:31.238] AB5C-9784-581F-781F43C616E4.mp4 [12:34:31.413] index :: _onStepProgress_vidbot(), percent: -4502055607 [12:34:31.845] index :: _onStepProgress_vidbot(), percent: 4 [12:34:32.349] index :: _onStepProgress_vidbot(), percent: 9 [12:34:32.852] index :: _onStepProgress_vidbot(), percent: 13 [12:34:33.354] index :: _onStepProgress_vidbot(), percent: 19 [12:34:33.855] index :: _onStepProgress_vidbot(), percent: 23 [12:34:34.357] index :: _onStepProgress_vidbot(), percent: 28 [12:34:34.869] index :: _onStepProgress_vidbot(), percent: 32 [12:34:35.369] index :: _onStepProgress_vidbot(), percent: 37 [12:34:35.872] index :: _onStepProgress_vidbot(), percent: 42 [12:34:36.375] index :: _onStepProgress_vidbot(), percent: 46 [12:34:36.879] index :: _onStepProgress_vidbot(), percent: 51 [12:34:37.388] index :: _onStepProgress_vidbot(), percent: 56 [12:34:37.890] index :: _onStepProgress_vidbot(), percent: 60 [12:34:38.392] index :: _onStepProgress_vidbot(), percent: 65 [12:34:38.898] index :: _onStepProgress_vidbot(), percent: 71 [12:34:39.397] index :: _onStepProgress_vidbot(), percent: 75 [12:34:40.399] index :: _onStepProgress_vidbot(), percent: 83 [12:34:40.900] index :: _onStepProgress_vidbot(), percent: 87 [12:34:41.401] index :: _onStepProgress_vidbot(), percent: 92 [12:34:41.903] index :: _onStepProgress_vidbot(), percent: 97 [12:34:42.307] index :: _onStepProgress_vidbot(), percent: 100 [12:34:42.356] Vidbot :: ffmpeg.on( 'end' ), Done! [12:34:42.356] StreamManager :: dispose() [12:34:42.357] CanvasStream[canvas_1728057495956] :: dispose() [12:34:42.363] Vidbot :: fflog.on( 'finish' ) [12:34:42.363] fflog.path: /var/www/html/clients/19902/video/944F6DF0-AB5C-9784-581F-781F43C616E4.mp4.fflog [12:34:42.363] Vidbot :: _next(), _stepIndex:4 of 4 [12:34:42.363] index :: _onStepCompleted_vidbot(), step: 4 [12:34:42.364] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 630.218, output: '/var/www/html/clients/19902/video/944F6DF0-AB5C-9784-581F-781F43C616E4.mp4', duration: 46.14 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/19902/video/944F6DF0-AB5C-9784-581F-781F43C616E4.mp4 Media Duration : 00:00:46.140 Generation Time : 00:10:30.217 ---------------------------------------------------------------------------------------------------------------