--------------------------------------------------------------------------------------------------------------- INITIALIZING VIDBOT, v1.7.1... --------------------------------------------------------------------------------------------------------------- [11:54:31.695] Vidbot :: start() [11:54:31.695] Vidbot :: _next(), _stepIndex:0 of 4 [11:54:31.696] index :: _onStepStarted_vidbot(), step: 1 [11:54:31.697] Vidbot :: step[0], label:Initializing Core [11:54:31.721] index :: _onStepProgress_vidbot(), percent: 20 [11:54:32.187] Vidbot :: _parse() [11:54:32.189] index :: _onStepProgress_vidbot(), percent: 40 [11:54:32.189] Vidbot :: _validate() [11:54:32.190] index :: _onStepProgress_vidbot(), percent: 60 [11:54:32.191] Vidbot :: _fonts() [11:54:32.191] FabricFontManager :: add(), id: SourceSansPro-Bold [11:54:32.191] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Bold.ttf [11:54:32.202] FabricFontManager :: add(), id: SourceSansPro-Light [11:54:32.202] src: /var/app/Vidbot-V2/assets/fonts/SourceSansPro/SourceSansPro-Light.ttf [11:54:32.203] FabricFontManager :: add(), id: DINOT-Bold [11:54:32.203] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Bold.otf [11:54:32.204] FabricFontManager :: add(), id: DINOT-Light [11:54:32.204] src: /var/app/Vidbot-V2/assets/fonts/DINOT/DINOT-Light.otf [11:54:32.205] FabricFontManager :: add(), id: TradeGothicLTStd-Regular [11:54:32.205] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Regular.otf [11:54:32.205] FabricFontManager :: add(), id: TradeGothicLTStd-Bold [11:54:32.206] src: /var/app/Vidbot-V2/assets/fonts/TradeGothicCond/TradeGothicLTStd-Bold.otf [11:54:32.207] index :: _onStepProgress_vidbot(), percent: 80 [11:54:32.207] Vidbot :: _clips() [11:54:32.207] StreamManager :: add(), id:audio_vo, type:audio [11:54:32.208] AudioClip[audio_vo] :: constructor() [11:54:32.208] InputStream[audio_vo] :: constructor() [11:54:32.208] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'audio_vo', clipId: null } [11:54:32.211] StreamManager :: add(), id:bg_music, type:audio [11:54:32.211] AudioClip[bg_music] :: constructor() [11:54:32.211] InputStream[bg_music] :: constructor() [11:54:32.211] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'bg_music', clipId: null } [11:54:32.212] StreamManager :: add(), id:simplefadedisplay, type:canvas [11:54:32.212] CanvasStream[canvas_1137969073607] :: constructor() [11:54:32.212] InputStream[canvas_1137969073607] :: constructor() [11:54:32.294] KenBurnsSlideshow[simplefadedisplay] :: constructor() [11:54:32.709] Overlay[simplefadedisplay] :: constructor() [11:54:32.709] CanvasClip[simplefadedisplay] :: constructor() [11:54:32.709] Clip[simplefadedisplay] :: constructor() [11:54:32.710] clip:"simplefadedisplay" added to stream:"canvas_1137969073607" [11:54:32.710] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1137969073607', clipId: 'simplefadedisplay' } [11:54:32.710] StreamManager :: add(), id:caption, type:canvas [11:54:32.710] RenCaption[caption] :: constructor() [11:54:32.710] Ren[caption] :: constructor() [11:54:32.710] Overlay[caption] :: constructor() [11:54:32.710] CanvasClip[caption] :: constructor() [11:54:32.710] Clip[caption] :: constructor() [11:54:32.710] clip:"caption" added to stream:"canvas_1137969073607" [11:54:32.710] Vidbot :: StreamMgr.on( 'ADDED' ), data: { streamID: 'canvas_1137969073607', clipId: 'caption' } [11:54:32.711] all added... [11:54:32.711] Vidbot :: _next(), _stepIndex:1 of 4 [11:54:32.711] index :: _onStepCompleted_vidbot(), step: 1 [11:54:32.711] index :: _onStepStarted_vidbot(), step: 2 [11:54:32.711] Vidbot :: step[1], label:Initializing Input Streams [11:54:32.712] StreamManager :: init() [11:54:32.712] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'audio_vo', progress: 0.3333333333333333 } [11:54:32.712] index :: _onStepProgress_vidbot(), percent: 33 [11:54:32.712] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'bg_music', progress: 0.6666666666666666 } [11:54:32.713] index :: _onStepProgress_vidbot(), percent: 67 [11:54:32.713] CanvasStream[canvas_1137969073607] :: _init(), BEGIN [11:54:32.713] i:0, c.id:simplefadedisplay [11:54:32.713] KenBurnsSlideshow[simplefadedisplay] :: _init(), BEGIN [11:54:32.714] KenBurnsSlideshow[simplefadedisplay] :: _validate() [11:54:32.714] KenBurnsSlideshow[undefined] :: _validateAnim() [11:54:32.715] KenBurnsSlideshow[undefined] :: _validateTheme() [11:54:32.716] i:1, c.id:caption [11:54:32.716] RenCaption[caption] :: _init() [11:54:32.716] RenCaption[caption] :: _validate() [11:54:32.718] KenBurnsSlideshow[simplefadedisplay] :: _build() [11:54:32.723] AnimatedImageFrame[aif] :: constructor() [11:54:32.724] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:32.724] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_1.jpg [11:54:32.735] RenCaption[caption] :: _build() [11:54:32.750] Overlay[caption] :: _animate() [11:54:32.752] CanvasStream[caption] :: _init(), p.then() [11:54:32.772] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:32.775] AnimatedImageFrame[aif] :: _init(), END [11:54:32.777] AnimatedImageFrame[aif] :: constructor() [11:54:32.777] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:32.777] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_2.jpg [11:54:32.826] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:32.828] AnimatedImageFrame[aif] :: _init(), END [11:54:32.829] AnimatedImageFrame[aif] :: constructor() [11:54:32.829] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:32.829] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_3.jpg [11:54:32.921] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:32.922] AnimatedImageFrame[aif] :: _init(), END [11:54:32.923] AnimatedImageFrame[aif] :: constructor() [11:54:32.923] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:32.923] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_4.jpg [11:54:32.941] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:32.942] AnimatedImageFrame[aif] :: _init(), END [11:54:32.943] AnimatedImageFrame[aif] :: constructor() [11:54:32.943] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:32.943] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_1.jpg [11:54:32.968] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:32.969] AnimatedImageFrame[aif] :: _init(), END [11:54:32.970] AnimatedImageFrame[aif] :: constructor() [11:54:32.970] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:32.970] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_2.jpg [11:54:32.995] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:32.996] AnimatedImageFrame[aif] :: _init(), END [11:54:32.996] AnimatedImageFrame[aif] :: constructor() [11:54:32.997] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:32.997] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_3.jpg [11:54:33.015] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.016] AnimatedImageFrame[aif] :: _init(), END [11:54:33.017] AnimatedImageFrame[aif] :: constructor() [11:54:33.017] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.017] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_4.jpg [11:54:33.034] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.036] AnimatedImageFrame[aif] :: _init(), END [11:54:33.036] AnimatedImageFrame[aif] :: constructor() [11:54:33.036] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.037] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_1.jpg [11:54:33.055] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.056] AnimatedImageFrame[aif] :: _init(), END [11:54:33.056] AnimatedImageFrame[aif] :: constructor() [11:54:33.056] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.057] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_2.jpg [11:54:33.074] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.075] AnimatedImageFrame[aif] :: _init(), END [11:54:33.076] AnimatedImageFrame[aif] :: constructor() [11:54:33.076] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.076] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_3.jpg [11:54:33.100] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.101] AnimatedImageFrame[aif] :: _init(), END [11:54:33.101] AnimatedImageFrame[aif] :: constructor() [11:54:33.101] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.101] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_4.jpg [11:54:33.126] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.127] AnimatedImageFrame[aif] :: _init(), END [11:54:33.128] AnimatedImageFrame[aif] :: constructor() [11:54:33.128] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.128] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_1.jpg [11:54:33.146] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.147] AnimatedImageFrame[aif] :: _init(), END [11:54:33.148] AnimatedImageFrame[aif] :: constructor() [11:54:33.148] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.148] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_2.jpg [11:54:33.169] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.170] AnimatedImageFrame[aif] :: _init(), END [11:54:33.171] AnimatedImageFrame[aif] :: constructor() [11:54:33.171] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.171] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_3.jpg [11:54:33.188] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.189] AnimatedImageFrame[aif] :: _init(), END [11:54:33.190] AnimatedImageFrame[aif] :: constructor() [11:54:33.190] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.190] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_4.jpg [11:54:33.207] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.208] AnimatedImageFrame[aif] :: _init(), END [11:54:33.209] AnimatedImageFrame[aif] :: constructor() [11:54:33.209] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.209] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_1.jpg [11:54:33.227] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.228] AnimatedImageFrame[aif] :: _init(), END [11:54:33.228] AnimatedImageFrame[aif] :: constructor() [11:54:33.228] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.229] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_2.jpg [11:54:33.246] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.247] AnimatedImageFrame[aif] :: _init(), END [11:54:33.248] AnimatedImageFrame[aif] :: constructor() [11:54:33.248] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.248] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_3.jpg [11:54:33.269] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.270] AnimatedImageFrame[aif] :: _init(), END [11:54:33.271] AnimatedImageFrame[aif] :: constructor() [11:54:33.271] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.271] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_4.jpg [11:54:33.287] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.288] AnimatedImageFrame[aif] :: _init(), END [11:54:33.288] AnimatedImageFrame[aif] :: constructor() [11:54:33.289] AnimatedImageFrame[aif] :: _init(), BEGIN [11:54:33.289] CanvasClip :: LoadImageWithPromise(), src: 34FB09F6-74DE-09D9-ED46-D81A082F8D5A_1.jpg [11:54:33.305] CanvasClip :: LoadImageWithPromise(), loaded, isError: false [11:54:33.306] AnimatedImageFrame[aif] :: _init(), END [11:54:33.306] Overlay[simplefadedisplay] :: _animate() [11:54:33.307] KenBurnsSlideshow[simplefadedisplay] :: _init(), END [11:54:33.307] CanvasStream[simplefadedisplay] :: _init(), p.then() [11:54:33.307] CanvasStream[canvas_1137969073607] :: _init(), promise.all.then() [11:54:33.309] CanvasStream[canvas_1137969073607] :: _init(), END [11:54:33.310] StreamMangaer :: init(), stream[canvas_1137969073607].then() [11:54:33.310] Vidbot :: StreamMgr.on( 'STREAM_INITED' ), data: { streamID: 'canvas_1137969073607', progress: 1 } [11:54:33.310] index :: _onStepProgress_vidbot(), percent: 100 [11:54:33.310] StreamManager :: init(), promise.all.then... [11:54:33.310] Vidbot :: StreamMgr.on( 'INITED' ) [11:54:33.310] Vidbot :: _next(), _stepIndex:2 of 4 [11:54:33.311] index :: _onStepCompleted_vidbot(), step: 2 [11:54:33.311] index :: _onStepStarted_vidbot(), step: 3 [11:54:33.311] Vidbot :: step[2], label:Rendering Canvas Streams [11:54:33.311] Vidbot :: StreamMgr.on( 'RENDER_STARTED' ), data: undefined [11:54:33.311] StreamManager :: render() [11:54:33.312] CanvasStream[canvas_1137969073607] :: render() [11:54:33.349] index :: _onStepProgress_vidbot(), percent: 0 [11:54:48.006] index :: _onStepProgress_vidbot(), percent: 5 [11:55:02.762] index :: _onStepProgress_vidbot(), percent: 10 [11:55:19.862] index :: _onStepProgress_vidbot(), percent: 15 [11:55:34.714] index :: _onStepProgress_vidbot(), percent: 20 [11:55:52.573] index :: _onStepProgress_vidbot(), percent: 25 [11:56:08.306] index :: _onStepProgress_vidbot(), percent: 30 [11:56:24.937] index :: _onStepProgress_vidbot(), percent: 35 [11:56:39.089] index :: _onStepProgress_vidbot(), percent: 40 [11:56:56.678] index :: _onStepProgress_vidbot(), percent: 45 [11:57:11.084] index :: _onStepProgress_vidbot(), percent: 50 [11:57:28.727] index :: _onStepProgress_vidbot(), percent: 55 [11:57:43.270] index :: _onStepProgress_vidbot(), percent: 60 [11:57:57.561] index :: _onStepProgress_vidbot(), percent: 65 [11:58:11.501] index :: _onStepProgress_vidbot(), percent: 70 [11:58:27.273] index :: _onStepProgress_vidbot(), percent: 75 [11:58:40.990] index :: _onStepProgress_vidbot(), percent: 80 [11:58:55.723] index :: _onStepProgress_vidbot(), percent: 85 [11:59:09.632] index :: _onStepProgress_vidbot(), percent: 90 [11:59:24.247] index :: _onStepProgress_vidbot(), percent: 95 [11:59:40.438] index :: _onStepProgress_vidbot(), percent: 100 [11:59:42.394] StreamManager :: render(), Promise.all.then... [11:59:42.394] Vidbot :: StreamMgr.on( 'RENDER_COMPLETED' ), data: undefined [11:59:42.395] Vidbot :: _next(), _stepIndex:3 of 4 [11:59:42.395] index :: _onStepCompleted_vidbot(), step: 3 [11:59:42.396] index :: _onStepStarted_vidbot(), step: 4 [11:59:42.397] Vidbot :: step[3], label:Encoding Media [11:59:42.399] CanvasFilters :: Overlay() [11:59:42.400] AudioStream[audio_vo] :: inputOptions() [11:59:42.400] AudioFilters :: Volume() [11:59:42.400] filter: [2:a]volume=1[2_vol] [11:59:42.401] AudioFilters :: Delay() [11:59:42.401] filter: [2_vol]adelay=0|0[2_del] [11:59:42.401] AudioStream[bg_music] :: inputOptions() [11:59:42.401] AudioFilters :: Volume() [11:59:42.401] filter: [3:a]volume=0.25[3_vol] [11:59:42.402] AudioFilters :: FadeOut() [11:59:42.402] filter: [3_vol]afade=t=out:st=62.47:d=1[3_fadeout] [11:59:42.402] AudioFilters :: Delay() [11:59:42.402] filter: [3_fadeout]adelay=0|0[3_del] [11:59:42.402] AudioFilters :: Mix() [11:59:42.402] filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [11:59:42.402] mixed filter: [2_del][3_del]amix=inputs=2:duration=longest[a_out] [11:59:42.405] hang.time: 60 [11:59:42.522] Vidbot :: ffmpeg.on( 'start' ) [11:59:42.522] ffmpeg -f lavfi -i color=c=000000:s=640x360:r=30:duration=62.47 -r 30 -i ./tmp/canvas_1137969073607_%05d.png -to 00:01:02.469 -i file:///var/www/html/ [11:59:42.522] clients/10231/audio/34FB09F6-74DE-09D9-ED46-D81A082F8D5A.mp3 -to 00:01:02.469 -i file:///var/app/video_pre_processor/assets/vidbot/_files/audio/Concep [11:59:42.522] t4.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 [11:59:42.522] =62.47: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 [ [11:59:42.522] a_out] -map [1_out] -preset veryfast -crf 18 -movflags frag_keyframe+empty_moov -pix_fmt yuv420p /var/www/html/clients/10231/video/34FB09F6-74DE-09D9- [11:59:42.523] ED46-D81A082F8D5A.mp4 [11:59:42.669] index :: _onStepProgress_vidbot(), percent: -3325193625 [11:59:43.103] index :: _onStepProgress_vidbot(), percent: 1 [11:59:44.117] index :: _onStepProgress_vidbot(), percent: 7 [11:59:45.123] index :: _onStepProgress_vidbot(), percent: 12 [11:59:46.126] index :: _onStepProgress_vidbot(), percent: 15 [11:59:47.638] index :: _onStepProgress_vidbot(), percent: 22 [11:59:48.151] index :: _onStepProgress_vidbot(), percent: 25 [11:59:49.160] index :: _onStepProgress_vidbot(), percent: 32 [11:59:49.661] index :: _onStepProgress_vidbot(), percent: 35 [11:59:50.679] index :: _onStepProgress_vidbot(), percent: 43 [11:59:51.177] index :: _onStepProgress_vidbot(), percent: 47 [11:59:51.682] index :: _onStepProgress_vidbot(), percent: 51 [11:59:52.683] index :: _onStepProgress_vidbot(), percent: 57 [11:59:53.184] index :: _onStepProgress_vidbot(), percent: 60 [11:59:54.184] index :: _onStepProgress_vidbot(), percent: 65 [11:59:55.197] index :: _onStepProgress_vidbot(), percent: 70 [11:59:56.209] index :: _onStepProgress_vidbot(), percent: 76 [11:59:56.709] index :: _onStepProgress_vidbot(), percent: 80 [11:59:57.720] index :: _onStepProgress_vidbot(), percent: 87 [11:59:58.237] index :: _onStepProgress_vidbot(), percent: 91 [11:59:58.737] index :: _onStepProgress_vidbot(), percent: 95 [11:59:59.537] index :: _onStepProgress_vidbot(), percent: 100 [11:59:59.565] Vidbot :: ffmpeg.on( 'end' ), Done! [11:59:59.565] StreamManager :: dispose() [11:59:59.566] CanvasStream[canvas_1137969073607] :: dispose() [11:59:59.571] Vidbot :: fflog.on( 'finish' ) [11:59:59.572] fflog.path: /var/www/html/clients/10231/video/34FB09F6-74DE-09D9-ED46-D81A082F8D5A.mp4.fflog [11:59:59.572] Vidbot :: _next(), _stepIndex:4 of 4 [11:59:59.572] index :: _onStepCompleted_vidbot(), step: 4 [11:59:59.572] index :: _onComplete_vidbot(), data: { stepTime: 0, appTime: 327.902, output: '/var/www/html/clients/10231/video/34FB09F6-74DE-09D9-ED46-D81A082F8D5A.mp4', duration: 62.47 } --------------------------------------------------------------------------------------------------------------- Output File : /var/app/video_pre_processor/jobs/postp//var/www/html/clients/10231/video/34FB09F6-74DE-09D9-ED46-D81A082F8D5A.mp4 Media Duration : 00:01:02.469 Generation Time : 00:05:27.901 ---------------------------------------------------------------------------------------------------------------