There are a few tracs on it, and this: https://superuser.com/questions/902661/ffmpeg-past-duration-0-xxxxxx-too-large Seems to be a bug somehow to me but I never looked closely enough.
On Mon, Apr 16, 2018 at 7:50 PM, Gabriel Balaich <roderroo...@gmail.com> wrote: > Hey all, I'm having an issue with the "Past duration too large" warning > being spammed in my console. > > Suggestions range from silencing the console to applying the "fps=xxx" > filter, but when I apply the fps filter it adds stutter to my > video, and silencing my console isn't really an actual solution as I lose > visibility of everything else. For example I can't view what > segment I'm on, or other warnings and error messages that may be important. > Oddly enough I have found that doubling my input framerate and then calling > the actual framerate I want before the output gets rid > of the warning completely: > > ffmpeg -y -thread_queue_size 9999 -indexmem 9999 -guess_layout_max 0 -f > dshow -video_size 3440x1440 -rtbufsize 2147.48M ^ > -framerate 200 -pixel_format nv12 -i video="Video (00 Pro Capture HDMI > 4K+)":audio="SPDIF/ADAT (1+2) (RME Fireface UC)" ^ > -map 0:0,0:1 -map 0:1 -c:v h264_nvenc -r 100 -rc-lookahead 200 -forced-idr > 1 -strict_gop 1 -sc_threshold 0 -flags +cgop ^ > -force_key_frames expr:gte(t,n_forced*2) -preset: llhp -pix_fmt nv12 -b:v > 250M -minrate 250M -maxrate 250M -bufsize 250M ^ > -c:a aac -ar 44100 -b:a 384k -ac 2 -af "atrim=0.035, asetpts=PTS-STARTPTS, > aresample=async=250" -vsync 1 -ss 00:00:01.096 ^ > -max_muxing_queue_size 9999 -f segment -segment_time 600 -segment_wrap 9 > -reset_timestamps 1 ^ > C:\Users\djcim\Videos\PC\PC\PC%02d.ts > > As you can see I have -framerate on the input at 200 and -r on the output > at 100, I have absolutely no idea why this would negate, > hide, or prevent the warning message. And while this has solved my issue > with this specific video input device, it doesn't work with > just any video input device. The Magewell is a really high end card and > allows 200 fps recording at certain resolutions, and while it > doesn't actually support 200 fps at the resolution I am recording I believe > that it's ability to do so at other resolutions is why ffmpeg > is allowing me to set that option in the first place. When I try to do the > same thing with my Elgato capture card it throws an error > and won't even let me start recording, as one would expect: > > ffmpeg -y -thread_queue_size 9999 -indexmem 9999 -guess_layout_max 0 -f > dshow -video_size 1920x1080 -rtbufsize 2147.48M ^ > -framerate 120 -pixel_format yuyv422 -i video="Game Capture HD60 Pro > (Video) (#01)":audio="ADAT (5+6) (RME Fireface UC)" ^ > -map 0:0,0:1 -map 0:1 -c:v h264_nvenc -r 60 -rc-lookahead 120 -forced-idr 1 > -strict_gop 1 -sc_threshold 0 -flags +cgop ^ > -force_key_frames expr:gte(t,n_forced*2) -preset: llhp -pix_fmt yuv420p > -b:v 40M -minrate 40M -maxrate 40M -bufsize 40M ^ > -c:a aac -ar 44100 -b:a 384k -ac 2 -af "pan=mono|c0=c0, adelay=120|120, > aresample=async=250" -vsync 1 ^ > -max_muxing_queue_size 9999 -f segment -segment_time 600 -segment_wrap 9 > -reset_timestamps 1 ^ > C:\Users\djcim\Videos\PC\Camera\CPC%02d.ts > > So in the end I have to change -framerate back to 60 in-which the "Past > duration too large" error is spammed at an alarming, and > sometimes even console breaking rate. From what I gather looking at the > source code the error occurs when the delta between > input PTS and output PTS is less than -.06. I'm not entirely sure what that > entails but would there be a way for me to adjust either > the output or input PTS so the threshold is never crossed? I've tried a few > things with setpts but nothing seems to work, I just > really don't have a concrete understanding of PTS and how to adjust them. > > With my experience and limited knowledge it would seem the only solutions I > have are: > A) Dispose of my Elgato capture card and purchase another Magewell so I can > double the input framerate. > B) Modify the if statement in the source code and compile FFmpeg myself. > > Magewell capture cards are extremely expensive, and while I really wish I > could just double the framerate and be done with it, it is > pretty clear that that is not a conventional or "actual" solution. And > constantly modifying the source code and compiling everything > myself every time I want to update sounds tiresome. I am fairly confident > there is a solution to this but I lack the knowledge, any > help or advice would be much appreciated. Keep in mind that I need to > maintain a constant integer framerate so I can force > keyframes at correct intervals, keep segments at consistent lengths, and > maintain a/v synchronization. Basically, if possible, I'd like > to keep all my existing options but add something to stop, or prevent the > warning message without silencing my console. > > Thanks for any help > _______________________________________________ > ffmpeg-user mailing list > ffmpeg-user@ffmpeg.org > http://ffmpeg.org/mailman/listinfo/ffmpeg-user > > To unsubscribe, visit link above, or email > ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".