Re: [FFmpeg-user] buffer underflow (?)
On Fri, Sep 29, 2023 at 6:35 PM Carl Zwanzig wrote: > On 9/29/2023 2:25 PM, Mark Filipak wrote: > > On Fri, Sep 29, 2023 at 12:59 PM Carl Zwanzig wrote: > >> -bsf[:stream_specifier] bitstream_filters (output,per-stream) > >> :a will do the audio, :s for subtitles, etc > >> (that's in the doc) > > > No, it's not in the doc. > > It surely is, that's where I quoted it from- > https://ffmpeg.org/ffmpeg-all.html#Advanced-options and about 300 lines down > (or search for "-bsf"). It's around line 1760 of doc/ffmpeg.texi in the > source tree. Needed usage information for 'ffmpeg-bitstream-filters.html' is buried in 'ffmpeg-all.html'. Oh, that's brilliant. It's just another case that proves that programmers should not write user documentation. ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On 9/29/2023 2:25 PM, Mark Filipak wrote: On Fri, Sep 29, 2023 at 12:59 PM Carl Zwanzig wrote: -bsf[:stream_specifier] bitstream_filters (output,per-stream) :a will do the audio, :s for subtitles, etc (that's in the doc) No, it's not in the doc. It surely is, that's where I quoted it from- https://ffmpeg.org/ffmpeg-all.html#Advanced-options and about 300 lines down (or search for "-bsf"). It's around line 1760 of doc/ffmpeg.texi in the source tree. (You could also look at https://ffmpeg.org/ffmpeg-bitstream-filters.html) Those are documentation for ffmpeg, pretty much the reference set unless you read the source code. And the 'doc' are programmer documentations, not user documentation. Where did you get -that- idea? (User doc has been a thing for at least 50 years, I still have some of those books, and probably a lot longer.) BTW, the text "underflow" only appears maybe 20 times in the copy of the source I have handy (I'm not going to update just for this). Possibly the most relevant ones are- libavformat/mpegenc.c: "buffer underflow st=%d bufi=%d size=%d\n", libavcodec/ratecontrol.c:av_log(s->avctx, AV_LOG_ERROR, "rc buffer underflow\n"); but we don't know _because_we_don't_have_the_console_output_. z! ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On 9/29/23, Mark Filipak wrote: > On Fri, Sep 29, 2023 at 12:59 PM Carl Zwanzig wrote: >> >> On 9/29/2023 9:45 AM, Mark Filipak wrote: >> >> > Carl, please enlighten me: >> > If I '-bsf:v setts...' that appears to only affect video. Duh... >> >> -bsf[:stream_specifier] bitstream_filters (output,per-stream) >> :a will do the audio, :s for subtitles, etc >> (that's in the doc) > > No, it's not in the doc. And the 'doc' are programmer documentations, > not user documentation. I would like to help make actual user > documentation but I've been rebuffed in the past. > > Also, you wrote "etc". (?. What else is there?) > >> > Is there a global 'setts'-type directive that will simultaneously fix up >> > PTSs/DTSs/time_base for video, audio, subtitles, and chapters? >> I expect that three -bsf: options in a row would do the job but haven't >> tried it. > > It created a total train wreck. If you want to salvage something by yourself only, without reencoding, you have not enough skills. ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On Fri, Sep 29, 2023 at 12:59 PM Carl Zwanzig wrote: > > On 9/29/2023 9:45 AM, Mark Filipak wrote: > > > Carl, please enlighten me: > > If I '-bsf:v setts...' that appears to only affect video. Duh... > > -bsf[:stream_specifier] bitstream_filters (output,per-stream) > :a will do the audio, :s for subtitles, etc > (that's in the doc) No, it's not in the doc. And the 'doc' are programmer documentations, not user documentation. I would like to help make actual user documentation but I've been rebuffed in the past. Also, you wrote "etc". (?. What else is there?) > > Is there a global 'setts'-type directive that will simultaneously fix up > > PTSs/DTSs/time_base for video, audio, subtitles, and chapters? > I expect that three -bsf: options in a row would do the job but haven't > tried it. It created a total train wreck. ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On 9/29/2023 9:45 AM, Mark Filipak wrote: Carl, please enlighten me: If I '-bsf:v setts...' that appears to only affect video. Duh... -bsf[:stream_specifier] bitstream_filters (output,per-stream) :a will do the audio, :s for subtitles, etc (that's in the doc) Is there a global 'setts'-type directive that will simultaneously fix up PTSs/DTSs/time_base for video, audio, subtitles, and chapters? I expect that three -bsf: options in a row would do the job but haven't tried it. z! who only does enlightenment for them self, not for other people. ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On 9/29/2023 9:29 AM, Mark Filipak wrote: On Fri, Sep 29, 2023 at 12:05 PM Carl Zwanzig wrote: But you can pull down the code I could... and read the concat muxer, Yes... which shouldn't be difficult if you've down real-time coding. I don't read 'C'. My code is micro. It's not difficult (and many people haved use 'c' on all manner of tiny processors, I did for z-80s). You could also look at a 'c' language primer (or- at least put some effort into it; anyone who's written RT assembler code should be able to follow the flow and structure). (Sigh!) You're asking me to reproduce a couple of days of work, and in the right order. I'll try. But I've gotten "buffer underflow" errors in the past, many times, and never really thought about it. Now I'm thinking about and it doesn't make sense. But I'll try to reproduce it. You're asking everyone else what an ambiguous error message means with only the barest of information; often that gets only the barest of response. Later, z! ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On Fri, Sep 29, 2023 at 12:05 PM Carl Zwanzig wrote: -snip- I'll try. Carl, please enlighten me: If I '-bsf:v setts...' that appears to only affect video. Duh... Is there a global 'setts'-type directive that will simultaneously fix up PTSs/DTSs/time_base for video, audio, subtitles, and chapters? ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On Fri, Sep 29, 2023 at 12:05 PM Carl Zwanzig wrote: > > On 9/29/2023 8:42 AM, Mark Filipak wrote: > > I do need help. I didn't write ffmpeg. > > But you can pull down the code I could... > and read the concat muxer, Yes... > which shouldn't be difficult if you've down real-time coding. I don't read 'C'. My code is micro. -snip- > To answer one question- Why "buffer underflow"? Maybe it's the wrong error > message for a specific condition _but_ we'll never have a clue without > seeing console output (which, as Harald points out, you should know is > appropriate). (Sigh!) You're asking me to reproduce a couple of days of work, and in the right order. I'll try. But I've gotten "buffer underflow" errors in the past, many times, and never really thought about it. Now I'm thinking about and it doesn't make sense. But I'll try to reproduce it. ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On 9/29/2023 8:42 AM, Mark Filipak wrote: I do need help. I didn't write ffmpeg. But you can pull down the code and read the concat muxer, which shouldn't be difficult if you've down real-time coding. There have been more than a couple of times when simply searching for the error message led me to the code and reading that lead me to what I needed to know. (I've even posted some of that research here.) To answer one question- Why "buffer underflow"? Maybe it's the wrong error message for a specific condition _but_ we'll never have a clue without seeing console output (which, as Harald points out, you should know is appropriate). z! ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On Fri, Sep 29, 2023 at 11:48 AM H. Vidal, Jr. wrote: > > Semantics are a little different presumably but the concept > is the same: presumably, an underflow condition exists when > a consuming process may have the expectation of available data > but cannot satisfy that consumption because of (presumably > then unavailable, perhaps by error) lack of producer data. Error? In a concat? All the source files exist. What about a consumer who is ...confused? getting a bad signal? > Fair guess? Yup, absolutely. > Welcome to corrections if incorrect. Did not write > ffmpeg. Have written video software with underflow considerations. > > Can we please stop with the 'my code's bigger than yours' now? Hehehe... That's good. ...I'm 77 years old. My code is not bigger than anyone's. ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
Semantics are a little different presumably but the concept is the same: presumably, an underflow condition exists when a consuming process may have the expectation of available data but cannot satisfy that consumption because of (presumably then unavailable, perhaps by error) lack of producer data. Fair guess? Welcome to corrections if incorrect. Did not write ffmpeg. Have written video software with underflow considerations. Can we please stop with the 'my code's bigger than yours' now? hv On 9/29/23 11:43, Paul B Mahol wrote: On 9/29/23, Mark Filipak wrote: On Fri, Sep 29, 2023 at 11:36 AM Paul B Mahol wrote: On 9/29/23, Mark Filipak wrote: On Fri, Sep 29, 2023 at 11:01 AM Paul B Mahol wrote: -snip- Buffer underflow - something is too small in size. So there is unused, wasteful space left. That's not correct. Also could mean decoder and/or demuxer did not processed whole buffer. That's not underflow. That can be produced by underflow, but it's not underflow. Why would a process access a buffer before buffering is finished? Clearly you know better ... Clearly. I've written 8051 real time code and kernel. This have nothing to do with real time code and/or kernel. ... and do not need help at all. I do need help. I didn't write ffmpeg. ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On Fri, Sep 29, 2023 at 11:01 AM Paul B Mahol wrote: -snip- > Now I wonder what is wrong using concat demuxer. There you go, Paul. That's the right question. ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On 9/29/23, Mark Filipak wrote: > On Fri, Sep 29, 2023 at 11:36 AM Paul B Mahol wrote: >> >> On 9/29/23, Mark Filipak wrote: >> > On Fri, Sep 29, 2023 at 11:01 AM Paul B Mahol wrote: >> > -snip- >> >> Buffer underflow - something is too small in size. So there is unused, >> >> wasteful space left. >> > >> > That's not correct. >> > >> >> Also could mean decoder and/or demuxer did not processed whole buffer. >> > >> > That's not underflow. That can be produced by underflow, but it's not >> > underflow. >> > Why would a process access a buffer before buffering is finished? >> >> Clearly you know better ... > > Clearly. I've written 8051 real time code and kernel. This have nothing to do with real time code and/or kernel. > >>... and do not need help at all. > > I do need help. I didn't write ffmpeg. > ___ > ffmpeg-user mailing list > ffmpeg-user@ffmpeg.org > https://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 https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On Fri, Sep 29, 2023 at 11:36 AM Paul B Mahol wrote: > > On 9/29/23, Mark Filipak wrote: > > On Fri, Sep 29, 2023 at 11:01 AM Paul B Mahol wrote: > > -snip- > >> Buffer underflow - something is too small in size. So there is unused, > >> wasteful space left. > > > > That's not correct. > > > >> Also could mean decoder and/or demuxer did not processed whole buffer. > > > > That's not underflow. That can be produced by underflow, but it's not > > underflow. > > Why would a process access a buffer before buffering is finished? > > Clearly you know better ... Clearly. I've written 8051 real time code and kernel. >... and do not need help at all. I do need help. I didn't write ffmpeg. ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On 9/29/23, Mark Filipak wrote: > On Fri, Sep 29, 2023 at 11:01 AM Paul B Mahol wrote: > -snip- >> Buffer underflow - something is too small in size. So there is unused, >> wasteful space left. > > That's not correct. > >> Also could mean decoder and/or demuxer did not processed whole buffer. > > That's not underflow. That can be produced by underflow, but it's not > underflow. > Why would a process access a buffer before buffering is finished? Clearly you know better and do not need help at all. > ___ > ffmpeg-user mailing list > ffmpeg-user@ffmpeg.org > https://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 https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On Fri, Sep 29, 2023 at 11:01 AM Paul B Mahol wrote: -snip- > Buffer underflow - something is too small in size. So there is unused, > wasteful space left. That's not correct. > Also could mean decoder and/or demuxer did not processed whole buffer. That's not underflow. That can be produced by underflow, but it's not underflow. Why would a process access a buffer before buffering is finished? ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On 9/29/23, Mark Filipak wrote: > On Fri, Sep 29, 2023 at 10:38 AM Reindl Harald > wrote: >> Am 29.09.23 um 16:33 schrieb Mark Filipak: >> > This is an ffmpeg architecture question, so I don't have a specific log. >> >> but you have real outputs >> >> > When concatenating involving only demuxing and muxing, I sometimes get >> > "buffer underflow". Why underflow? It's not a real time process. >> >> you are long enough on the list to know that copy&paste of the whole >> input/output is required > > Okay. I'll explain. When I tried > ffmpeg -i "concat:c:\1.mp4|2.mp4 .." That is simple concat at file level, it almost never works correctly. Unless really streamed format is used, like mpegts. > and that failed on "duplicate MOOV Atom", I converted the MP4s, 1: to > MKVs, and 2: to MPEGs, and 3: to VOBs, and repeated with each of them. > In one of them I got "buffer underflow". Now I wonder what is wrong using concat demuxer. > > I woke up this morning -- I'm in the US -- asking myself, "buffer > underflow? How is that possible?" I don't remember which of the > concats: MKVs or MPEGs or VOBs, did that. So, I don't have a log. A > log should not be required to ask: "How is a buffer underflow possible > when it's not a real time process?" Buffer overflow - something is too big in size. So can not be put into buffer. Buffer underflow - something is too small in size. So there is unused, wasteful space left. Also could mean decoder and/or demuxer did not processed whole buffer. > ___ > ffmpeg-user mailing list > ffmpeg-user@ffmpeg.org > https://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 https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
On Fri, Sep 29, 2023 at 10:38 AM Reindl Harald wrote: > Am 29.09.23 um 16:33 schrieb Mark Filipak: > > This is an ffmpeg architecture question, so I don't have a specific log. > > but you have real outputs > > > When concatenating involving only demuxing and muxing, I sometimes get > > "buffer underflow". Why underflow? It's not a real time process. > > you are long enough on the list to know that copy&paste of the whole > input/output is required Okay. I'll explain. When I tried ffmpeg -i "concat:c:\1.mp4|2.mp4 .." and that failed on "duplicate MOOV Atom", I converted the MP4s, 1: to MKVs, and 2: to MPEGs, and 3: to VOBs, and repeated with each of them. In one of them I got "buffer underflow". I woke up this morning -- I'm in the US -- asking myself, "buffer underflow? How is that possible?" I don't remember which of the concats: MKVs or MPEGs or VOBs, did that. So, I don't have a log. A log should not be required to ask: "How is a buffer underflow possible when it's not a real time process?" ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow (?)
Am 29.09.23 um 16:33 schrieb Mark Filipak: This is an ffmpeg architecture question, so I don't have a specific log. but you have real outputs When concatenating involving only demuxing and muxing, I sometimes get "buffer underflow". Why underflow? It's not a real time process. you are long enough on the list to know that copy&paste of the whole input/output is required ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-user] buffer underflow (?)
This is an ffmpeg architecture question, so I don't have a specific log. When concatenating involving only demuxing and muxing, I sometimes get "buffer underflow". Why underflow? It's not a real time process. ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] buffer underflow - processing VOB files
Hi Carl Eugen and Paul, I dug into the source code and found the line of code causing the problem, referring to commit: ae9297097696f3d06417a6e8a5368d5f38a6edb4 I rolled back this one line of code and the issue went away: diff --git a/libavcodec/ac3_parser.c b/libavcodec/ac3_parser.c index f4618bf215..1015245a90 100644 --- a/libavcodec/ac3_parser.c +++ b/libavcodec/ac3_parser.c @@ -218,8 +218,8 @@ static int ac3_sync(uint64_t state, AACAC3ParseContext *hdr_info, else if (hdr_info->codec_id == AV_CODEC_ID_NONE) hdr_info->codec_id = AV_CODEC_ID_AC3; + *need_next_header = (hdr.frame_type != EAC3_FRAME_TYPE_AC3_CONVERT); *new_frame_start = (hdr.frame_type != EAC3_FRAME_TYPE_DEPENDENT); - *need_next_header = *new_frame_start || (hdr.frame_type != EAC3_FRAME_TYPE_AC3_CONVERT); return hdr.frame_size; } I reviewed the change set of ae9297097696f3d06417a6e8a5368d5f38a6edb4and see support for 16 channel audio was added. For the legacy case, it looks like functionality should be maintained with the exception of setting "need_next_header". My rollback likely breaks the new EAC3 but I just want to show what I think is breaking my test case. My hope is that you will review this change set, and specifically this one line of code, to see if you possibly agree. You may not need to try my sample, the problem may be visible to you in just reviewing the code. Thanks and Regards, Bob ___ 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". ___ 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".
Re: [FFmpeg-user] buffer underflow - processing VOB files
Hi Carl Eugen and Paul, I dug into the source code and found the line of code causing the problem, referring to commit: ae9297097696f3d06417a6e8a5368d5f38a6edb4 I rolled back this one line of code and the issue went away: diff --git a/libavcodec/ac3_parser.c b/libavcodec/ac3_parser.cindex f4618bf215..1015245a90 100644--- a/libavcodec/ac3_parser.c+++ b/libavcodec/ac3_parser.c@@ -218,8 +218,8 @@ static int ac3_sync(uint64_t state, AACAC3ParseContext *hdr_info, else if (hdr_info->codec_id == AV_CODEC_ID_NONE) hdr_info->codec_id = AV_CODEC_ID_AC3; + *need_next_header = (hdr.frame_type != EAC3_FRAME_TYPE_AC3_CONVERT); *new_frame_start = (hdr.frame_type != EAC3_FRAME_TYPE_DEPENDENT);- *need_next_header = *new_frame_start || (hdr.frame_type != EAC3_FRAME_TYPE_AC3_CONVERT); return hdr.frame_size; } I reviewed the change set of ae9297097696f3d06417a6e8a5368d5f38a6edb4and see support for 16 channel audio was added. For the legacy case, it looks like functionality should be maintained with the exception of setting "need_next_header". My rollback likely breaks the new EAC3 but I just want to show what I think is breaking my test case. My hope is that you will review this change set, and specifically this one line of code, to see if you possibly agree. You may not need to try my sample, the problem may be visible to you in just reviewing the code. Thanks and Regards, Bob ___ 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".
[FFmpeg-user] buffer underflow - processing VOB files
>While this method is unorthodox and makes helping you needlessly >difficult, Sorry, I'm still learning the ropes... I found //streams.videolan.org/upload/ and placed the one phasebtop1ntscdvd.VOB file there. It this proper? I did not have a TRAC number to fill in. >the bigger issue is that while your original mail only >mentions vob input, your private message starts with iec input, >making it impossible for me to understand what you would >ike to report. The iec input code was to only show how the phasebtop1ntscdvd.VOB file was created and I thought it might be useful information. This problem I am reporting can be reproduced simply with this: ./ffmpeg -i phasebtop1ntscdvd.VOB -ss 50 -target ntsc-dvd -flags +cgop+ilme+ildct -alternate_scan 1 -top 1 -g 15 -sc_threshold 10 -y out.VOB -v debug >Sorry, Carl EugenNP- Thank you.Bob ___ 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".
Re: [FFmpeg-user] buffer underflow - processing VOB files
2018-08-08 0:21 GMT+02:00, Bob DeCarlo : >>I sent out a google drive link. Let me know if this is OK. > > Just wondering if the video files were received or if I need to use > a different method to submit them? While this method is unorthodox and makes helping you needlessly difficult, the bigger issue is that while your original mail only mentions vob input, your private message starts with iec input, making it impossible for me to understand what you would like to report. Sorry, Carl Eugen ___ 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] buffer underflow - processing VOB files
>All, >I sent out a google drive link. Let me know if this is OK. Just wondering if the video files were received or if I need to use a different method to submit them? Thanks, Bob ___ 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".
[FFmpeg-user] buffer underflow - processing VOB files
All, I sent out a google drive link. Let me know if this is OK. phasebtop1ntscdvd.VOB is a sample file created using a recent FFMPEG version from a video capture device. The text file shows the text output of that recording. This file reproduces the underflow issue as previously described. Maybe there is problem is here? I also included VTS_01_1.VOB which was recorded by a Panasonic DVD recorder. I see that the issue is NOT reproduced using this as input file. - new information - Does this help? In summary: build from: e5819fa62930966e6fb905cef21c985b91631d87 and test: ./ffmpeg -i ~/Videos/phasebtop1ntscdvd.VOB -ss 50 -target ntsc-dvd -flags +cgop+ilme+ildct -alternate_scan 1 -top 1 -g 15 -sc_threshold 10 -y out.VOB -v debug The result seems good. -- build from: ae9297097696f3d06417a6e8a5368d5f38a6edb4 and test: ./ffmpeg -i ~/Videos/phasebtop1ntscdvd.VOB -ss 50 -target ntsc-dvd -flags +cgop+ilme+ildct -alternate_scan 1 -top 1 -g 15 -sc_threshold 10 -y out.VOB -v debug The result core dumps. Apply p.patch, rebuild, and retest. The result is underflow which is the issue I am reporting. Note: FFMPEG has been a useful tool for splicing, lowering bitrate, etc,,, and repairing video files. That is why this came up as an issue. Whatever you need me to do next, please ask... Thanks! Bob ___ 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".
Re: [FFmpeg-user] buffer underflow - processing VOB files
2018-08-02 20:47 GMT+02:00, Carl Zwanzig : > On 8/2/2018 11:39 AM, Paul B Mahol wrote: >> Without sample we can not help you. > > Sure 'we' can, an input sample isn't needed to review the patch. > (A sample is only needed to _test_ the patch.) This is not completely true. > (It really looks like Bob's helping the ffmpeg community, not the > other way around; he found a problem, ran down the cause, > provided a patch. Suggesting a revert is not the same as providing a patch. Carl Eugen ___ 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".
Re: [FFmpeg-user] buffer underflow - processing VOB files
On 8/2/18, Carl Zwanzig wrote: > On 8/2/2018 11:39 AM, Paul B Mahol wrote: >> Without sample we can not help you. > > Sure 'we' can, an input sample isn't needed to review the patch. (A sample > is only needed to _test_ the patch.) > > (It really looks like Bob's helping the ffmpeg community, not the other way > around; he found a problem, ran down the cause, provided a patch. That's a > lot more that many readers do. The least anyone else can do is look at the > code.) Patch is invalid. ___ 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".
Re: [FFmpeg-user] buffer underflow - processing VOB files
On 8/2/2018 11:39 AM, Paul B Mahol wrote: Without sample we can not help you. Sure 'we' can, an input sample isn't needed to review the patch. (A sample is only needed to _test_ the patch.) (It really looks like Bob's helping the ffmpeg community, not the other way around; he found a problem, ran down the cause, provided a patch. That's a lot more that many readers do. The least anyone else can do is look at the code.) z! ___ 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".
Re: [FFmpeg-user] buffer underflow - processing VOB files
On 8/2/18, Bob DeCarlo wrote: > Hi Paul, > (greatly appreciate your interest) > > The patch that fixes the core dump I think was added by you: > commit 0b86ea03d8415b5a3a6b07f3012a8097bca26ea5 > Author: Paul B Date: Fri Mar 30 10:14:48 2018 +0200 > avcodec/ac3: fix out of array access introduced previously > Signed-off-by: Paul B > > I'm not 100% sure but this change is where I think the underflow issue came > into play: > commit ae9297097696f3d06417a6e8a5368d5f38a6edb4 (HEAD) > Author: Paul B > Date: Mon Mar 26 13:47:29 2018 +0200 > avcodec/eac3: add support for dependent stream > Signed-off-by: Paul B Without sample we can not help you. Upload it with any service that provides such thing. ___ 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] buffer underflow - processing VOB files
Hi Paul, (greatly appreciate your interest) The patch that fixes the core dump I think was added by you: commit 0b86ea03d8415b5a3a6b07f3012a8097bca26ea5 Author: Paul B Date: Fri Mar 30 10:14:48 2018 +0200 avcodec/ac3: fix out of array access introduced previously Signed-off-by: Paul B I'm not 100% sure but this change is where I think the underflow issue came into play: commit ae9297097696f3d06417a6e8a5368d5f38a6edb4 (HEAD) Author: Paul B Date: Mon Mar 26 13:47:29 2018 +0200 avcodec/eac3: add support for dependent stream Signed-off-by: Paul B ___ 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". ___ 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] buffer underflow - processing VOB files
>Please share patch and input files. Thanks Paul... I generated the patch using git diff, this is not my code- just trying to be clear. I found that the core dump was solved by this code change which allowed me to locate the code change that causes my buffer underrun problem. Below are the contents of the patch. ( I cannot seem to access upload.ffmpeg.org, maybe my company firewall is blocking. I will try again later.) $ git diff 91bb871376730a2394ed0ae1a3fd4295977002d3 > 0b86ea03d8415b5a3a6b07f3012a8097bca26ea5 >p.patch # This fixes the core dump issue, not the underrrun issue $ cat p.patch diff --git a/libavcodec/ac3.h b/libavcodec/ac3.h index 5c9c37727e..f8f6a81f45 100644 --- a/libavcodec/ac3.h +++ b/libavcodec/ac3.h @@ -28,6 +28,7 @@ #define AVCODEC_AC3_H #define AC3_MAX_CODED_FRAME_SIZE 3840 /* in bytes */ +#define EAC3_MAX_CHANNELS 16 /**< maximum number of channels in EAC3 */ #define AC3_MAX_CHANNELS 7 /**< maximum number of channels, including coupling channel */ #define CPL_CH 0 /**< coupling channel index */ diff --git a/libavcodec/ac3dec.c b/libavcodec/ac3dec.c index ac5c6d636a..b14d2e74ac 100644 --- a/libavcodec/ac3dec.c +++ b/libavcodec/ac3dec.c @@ -1488,7 +1488,7 @@ static int ac3_decode_frame(AVCodecContext * avctx, void *data, int blk, ch, err, offset, ret; int got_independent_frame = 0; const uint8_t *channel_map; - uint8_t extended_channel_map[AC3_MAX_CHANNELS * 2]; + uint8_t extended_channel_map[EAC3_MAX_CHANNELS]; const SHORTFLOAT *output[AC3_MAX_CHANNELS]; enum AVMatrixEncoding matrix_encoding; AVDownmixInfo *downmix_info; @@ -1685,7 +1685,7 @@ dependent_frame: avctx->bit_rate = s->bit_rate + s->prev_bit_rate; } - for (ch = 0; ch < 16; ch++) + for (ch = 0; ch < EAC3_MAX_CHANNELS; ch++) extended_channel_map[ch] = ch; if (s->frame_type == EAC3_FRAME_TYPE_DEPENDENT) { @@ -1698,7 +1698,7 @@ dependent_frame: channel_layout = ich_layout; for (ch = 0; ch < 16; ch++) { - if (s->channel_map & (1 << (15 - ch))) { + if (s->channel_map & (1 << (EAC3_MAX_CHANNELS - ch - 1))) { channel_layout |= custom_channel_map_locations[ch][1]; } } @@ -1706,8 +1706,8 @@ dependent_frame: avctx->channel_layout = channel_layout; avctx->channels = av_get_channel_layout_nb_channels(channel_layout); - for (ch = 0; ch < 16; ch++) { - if (s->channel_map & (1 << (15 - ch))) { + for (ch = 0; ch < EAC3_MAX_CHANNELS; ch++) { + if (s->channel_map & (1 << (EAC3_MAX_CHANNELS - ch - 1))) { if (custom_channel_map_locations[ch][0]) { int index = av_get_channel_layout_channel_index(channel_layout, custom_channel_map_locations[ch][1]); diff --git a/libavcodec/ac3dec.h b/libavcodec/ac3dec.h index ae5ef4bbc9..ce1434b55c 100644 --- a/libavcodec/ac3dec.h +++ b/libavcodec/ac3dec.h @@ -242,12 +242,12 @@ typedef struct AC3DecodeContext { ///@name Aligned arrays DECLARE_ALIGNED(16, int, fixed_coeffs)[AC3_MAX_CHANNELS][AC3_MAX_COEFS]; ///< fixed-point transform coefficients DECLARE_ALIGNED(32, INTFLOAT, transform_coeffs)[AC3_MAX_CHANNELS][AC3_MAX_COEFS]; ///< transform coefficients - DECLARE_ALIGNED(32, INTFLOAT, delay)[2 * AC3_MAX_CHANNELS][AC3_BLOCK_SIZE]; ///< delay - added to the next block + DECLARE_ALIGNED(32, INTFLOAT, delay)[EAC3_MAX_CHANNELS][AC3_BLOCK_SIZE]; ///< delay - added to the next block DECLARE_ALIGNED(32, INTFLOAT, window)[AC3_BLOCK_SIZE]; ///< window coefficients DECLARE_ALIGNED(32, INTFLOAT, tmp_output)[AC3_BLOCK_SIZE]; ///< temporary storage for output before windowing - DECLARE_ALIGNED(32, SHORTFLOAT, output)[2 * AC3_MAX_CHANNELS][AC3_BLOCK_SIZE]; ///< output after imdct transform and windowing + DECLARE_ALIGNED(32, SHORTFLOAT, output)[EAC3_MAX_CHANNELS][AC3_BLOCK_SIZE]; ///< output after imdct transform and windowing DECLARE_ALIGNED(32, uint8_t, input_buffer)[AC3_FRAME_BUFFER_SIZE + AV_INPUT_BUFFER_PADDING_SIZE]; ///< temp buffer to prevent overread - DECLARE_ALIGNED(32, SHORTFLOAT, output_buffer)[2 * AC3_MAX_CHANNELS][AC3_BLOCK_SIZE * 6]; ///< final output buffer + DECLARE_ALIGNED(32, SHORTFLOAT, output_buffer)[EAC3_MAX_CHANNELS][AC3_BLOCK_SIZE * 6]; ///< final output buffer ///@} } AC3DecodeContext; ___ 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/ff
Re: [FFmpeg-user] buffer underflow - processing VOB files
On 8/2/18, Bob DeCarlo wrote: > > > > I located the fix for the core dump issue and create a patch: > > $ git diff 91bb871376730a2394ed0ae1a3fd4295977002d3 > 0b86ea03d8415b5a3a6b07f3012a8097bca26ea5 >p.patch > Next, I applied this patch to commits and found this commit to be the one > that causes by buffer under-run issue: > > $ git checkout ae9297097696f3d06417a6e8a5368d5f38a6edb4$ git apply p.patch # > fixes core dump > ... configure and make... > ./ffmpeg -i ~/Videos/in.VOB -ss 50 -target ntsc-dvd -flags +cgop+ilme+ildct > -alternate_scan 1 -top 1 -g 15 -sc_threshold 10 -y out.VOB -v debug > The issue is reproduced and I believe > ae9297097696f3d06417a6e8a5368d5f38a6edb4 is where the issue was introduced, > just after e5819fa62930966e6fb905cef21c985b91631d87. I see from the code > that some changes were made in ac3. Please share patch and input files. ___ 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] buffer underflow - processing VOB files
I located the fix for the core dump issue and create a patch: $ git diff 91bb871376730a2394ed0ae1a3fd4295977002d3 0b86ea03d8415b5a3a6b07f3012a8097bca26ea5 >p.patch Next, I applied this patch to commits and found this commit to be the one that causes by buffer under-run issue: $ git checkout ae9297097696f3d06417a6e8a5368d5f38a6edb4$ git apply p.patch # fixes core dump ... configure and make... ./ffmpeg -i ~/Videos/in.VOB -ss 50 -target ntsc-dvd -flags +cgop+ilme+ildct -alternate_scan 1 -top 1 -g 15 -sc_threshold 10 -y out.VOB -v debug The issue is reproduced and I believe ae9297097696f3d06417a6e8a5368d5f38a6edb4 is where the issue was introduced, just after e5819fa62930966e6fb905cef21c985b91631d87. I see from the code that some changes were made in ac3. -Bob ___ 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] buffer underflow - processing VOB files
Thanks for the initial feedback I switched back to Linux where I can build various versions of the code checked out from git. The issue is reproduced at node: 0b86ea03d8415b5a3a6b07f3012a8097bca26ea5 This node seems OK ( the same sha as the OK zeranoe build) : e5819fa62930966e6fb905cef21c985b91631d87 Unfortunately, the commit nodes I tested between the two stated above resulted as core dumps (WIP perhaps?). Therefore it will be more difficult to isolate the problem to a specific commit. There are about 28 commits between the two. $ ./ffmpeg -i ~/Videos/in.VOB -ss 50 -target ntsc-dvd -flags +cgop+ilme+ildct -alternate_scan 1 -top 1 -g 15 -sc_threshold 10 -y out.VOB -v debug ffmpeg version N-90519-g91bb871376 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 7 (Ubuntu 7.3.0-16ubuntu3) configuration: --prefix=./ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I./ffmpeg_build/include --extra-ldflags=-L./ffmpeg_build/lib --extra-libs='-lpthread -lm' --bindir=./bin --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree libavutil 56. 12.100 / 56. 12.100 libavcodec 58. 16.100 / 58. 16.100 libavformat 58. 10.100 / 58. 10.100 libavdevice 58. 2.100 / 58. 2.100 libavfilter 7. 13.100 / 7. 13.100 libswscale 5. 0.102 / 5. 0.102 libswresample 3. 0.101 / 3. 0.101 libpostproc 55. 0.100 / 55. 0.100 Splitting the commandline. Reading option '-i' ... matched as input url with argument '/home/jti/Videos/in.VOB'. Reading option '-ss' ... matched as option 'ss' (set the start time offset) with argument '50'. Reading option '-target' ... matched as option 'target' (specify target file type ("vcd", "svcd", "dvd", "dv" or "dv50" with optional prefixes "pal-", "ntsc-" or "film-")) with argument 'ntsc-dvd'. Reading option '-flags' ... matched as AVOption 'flags' with argument '+cgop+ilme+ildct'. Reading option '-alternate_scan' ... matched as AVOption 'alternate_scan' with argument '1'. Reading option '-top' ... matched as option 'top' (top=1/bottom=0/auto=-1 field first) with argument '1'. Reading option '-g' ... matched as AVOption 'g' with argument '15'. Reading option '-sc_threshold' ... matched as AVOption 'sc_threshold' with argument '10'. Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'. Reading option 'out.VOB' ... matched as output url. Reading option '-v' ... matched as option 'v' (set logging level) with argument 'debug'. Finished splitting the commandline. Parsing a group of options: global . Applying option y (overwrite output files) with argument 1. Applying option v (set logging level) with argument debug. Successfully parsed a group of options. Parsing a group of options: input url /home/jti/Videos/in.VOB. Successfully parsed a group of options. Opening an input file: /home/jti/Videos/in.VOB. [NULL @ 0x562f8b323c80] Opening '/home/jti/Videos/in.VOB' for reading [file @ 0x562f8b3247c0] Setting default whitelist 'file,crypto' [mpeg @ 0x562f8b323c80] Format mpeg probed with size=2048 and score=26 [mpeg @ 0x562f8b323c80] Before avformat_find_stream_info() pos: 0 bytes read:32768 seeks:0 nb_streams:0 [mpeg @ 0x562f8b323c80] probing stream 1 pp:2500 [mpeg @ 0x562f8b323c80] Probe with size=2011, packets=1 detected mpegvideo with score=25 [mpeg @ 0x562f8b323c80] probed stream 1 [mpeg2video @ 0x562f8b327ac0] Format yuv420p chosen by get_format(). [mpeg @ 0x562f8b323c80] max_analyze_duration 500 reached at 5005000 microseconds st:1 [mpeg @ 0x562f8b323c80] start time for stream 0 is not set in estimate_timings_from_pts [mpeg @ 0x562f8b323c80] After avformat_find_stream_info() pos: 0 bytes read:3625104 seeks:2 frames:298 Input #0, mpeg, from '/home/jti/Videos/in.VOB': Duration: 00:02:53.86, start: 0.528033, bitrate: 6494 kb/s Stream #0:0[0x1bf], 0, 1/9: Data: dvd_nav_packet, 0/1 Stream #0:1[0x1e0], 152, 1/9: Video: mpeg2video (Main), 1 reference frame, yuv420p(tv, top first, left), 720x480 [SAR 32:27 DAR 16:9], 0/1, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc Stream #0:2[0x80], 146, 1/9: Audio: ac3, 48000 Hz, stereo, fltp, 448 kb/s Successfully opened the file. Parsing a group of options: output url out.VOB. Applying option ss (set the start time offset) with argument 50. Applying option target (specify target file type ("vcd", "svcd", "dvd", "dv" or "dv50" with optional prefixes "pal-", "ntsc-" or "film-")) with argument ntsc-dvd. Applying option top (top=1/bottom=0/auto=-1 field first) with argument 1. Successfully parsed a group of options. Opening an output file: out.VOB. [file @ 0x562f8b3fc840] Setting default whitelist 'file,crypto' Successfully opened the file. detected 8 logical cores Stream mapping: Stream #0:1 -> #0:0 (mpeg2video (native) -> mpeg2video (native)) Stream #0:2 -> #0:1 (
[FFmpeg-user] buffer underflow - processing VOB files
Hi, (plain text repost) This is my first post to ffmpeg, please advise if I misplaced this issue. I have been using ffmpeg for many years and now have an issue with the latest version: ffmpeg-20180731-481741e-win64-static When transcoding a VOB, ntsc-dvd, I get "buffer underflow" errors. This is especially true when using a delayed start time. I originally discovered the problem on my own Linux build and reproduced it using pre built executables from: //ffmpeg.zeranoe.com/builds/win64/static/ I managed to isolate the problem between two zeranoe builds: ffmpeg-20180329-e5819fa-win64-static - seems to work correctly ffmpeg-20180330-cdd6a52-win64-static - generates "buffer underflow" The resulting output file from the problematic builds also generate errors when processed by dvdauthor. Below is the console output from the error'ed case case followed by the good case between two versions produced with a day of each other. I will continue to study the problem and post more information as I collect it and upon request. Hopefully this can get resolved. Do I need to change some arguments, is this a new bug or is what I am trying to do no longer supported?? (Note: I have not yet discovered where to put my sample files, I will continue looking) Thanks a lot! This is the latest version: c:\Developer>cd ffmpeg-20180731-481741e-win64-static\bin c:\Developer\ffmpeg-20180731-481741e-win64-static\bin>ffmpeg.exe -i ../../20180726_150335-phasebtop1.vob -ss 10 -target ntsc-dvd -flags +cgop+ilme+ildct -alternate_scan 1 -top 1 -g 15 -sc_threshold 10 -y bob.VOB -v debug ffmpeg version N-91548-g481741ece0 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 7.3.1 (GCC) 20180722 configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enabl e-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable- libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-l ibtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --en able-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-l ibvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enabl e-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth libavutil 56. 18.102 / 56. 18.102 libavcodec 58. 22.100 / 58. 22.100 libavformat 58. 17.101 / 58. 17.101 libavdevice 58. 4.101 / 58. 4.101 libavfilter 7. 26.100 / 7. 26.100 libswscale 5. 2.100 / 5. 2.100 libswresample 3. 2.100 / 3. 2.100 libpostproc 55. 2.100 / 55. 2.100 Splitting the commandline. Reading option '-i' ... matched as input url with argument '../../20180726_150335-phasebtop1.vob'. Reading option '-ss' ... matched as option 'ss' (set the start time offset) with argument '10'. Reading option '-target' ... matched as option 'target' (specify target file type ("vcd", "svcd", "dvd", "dv" or "dv50" with optional prefixes "pal-", "ntsc-" or "film-")) with argument 'ntsc-dvd'. Reading option '-flags' ... matched as AVOption 'flags' with argument '+cgop+ilme+ildct'. Reading option '-alternate_scan' ... matched as AVOption 'alternate_scan' with argument '1'. Reading option '-top' ... matched as option 'top' (top=1/bottom=0/auto=-1 field first) with argument '1'. Reading option '-g' ... matched as AVOption 'g' with argument '15'. Reading option '-sc_threshold' ... matched as AVOption 'sc_threshold' with argument '10'. Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'. Reading option 'bob.VOB' ... matched as output url. Reading option '-v' ... matched as option 'v' (set logging level) with argument 'debug'. Finished splitting the commandline. Parsing a group of options: global . Applying option y (overwrite output files) with argument 1. Applying option v (set logging level) with argument debug. Successfully parsed a group of options. Parsing a group of options: input url ../../20180726_150335-phasebtop1.vob. Successfully parsed a group of options. Opening an input file: ../../20180726_150335-phasebtop1.vob. [NULL @ 00613ec0] Opening '../../20180726_150335-phasebtop1.vob' for reading [file @ 006145c0] Setting default whitelist 'file,crypto' [mpeg @ 00613ec0] Format mpeg probed with size=2048 and score=26 [mpeg @ 00613ec0] Before avformat_find_stream_info() pos: 0 bytes read:32768 seeks:0 nb_streams:0 [mpeg @ 00613ec0] probing stream 1 pp:2500 [mpeg @ 00613ec0] Probe with size=2011, packets=1 detected mpegvideo with score=25 [mpeg @ 00613ec0] probed stream 1 [mpeg2video @ 00614b80] Format yuv420p chosen by get_for
Re: [FFmpeg-user] buffer underflow - processing VOB files
On Thu, Aug 02, 2018 at 02:18:17 +, Bob DeCarlo wrote: > Hi,This is my first post to ffmpeg, please advise if I misplaced this issue. No, it's correct here. Thanks for providing full information, and even figuring out which version introduced your issue. But may I kindly ask you to resend the email with different formatting? It looks like this: http://ffmpeg.org/pipermail/ffmpeg-user/2018-August/040799.html for most people receiving it, and it's hard to make out the details. Thanks, Moritz ___ 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] buffer underflow - processing VOB files
Hi,This is my first post to ffmpeg, please advise if I misplaced this issue.I have been using ffmpeg for many years and now have an issue with the latest version:ffmpeg-20180731-481741e-win64-static When transcoding a VOB, ntsc-dvd, I get "buffer underflow" errors. This is especially true when using a delayed start time. I originally discovered the problem on my own Linux build and reproduced it using pre built executables from: //ffmpeg.zeranoe.com/builds/win64/static/ I managed to isolate the problem between two zeranoe builds:ffmpeg-20180329-e5819fa-win64-static - seems to work correctly ffmpeg-20180330-cdd6a52-win64-static - generates "buffer underflow" The resulting output file from the problematic builds also generate errors when processed by dvdauthor. Below is the console output from the error'ed case case followed by the good case between two versions produced with a day of each other. I will continue to study the problem and post more information as I collect it and upon request. Hopefully this can get resolved. Do I need to change some arguments, is this a new bug or is what I am trying to do no longer supported??(Note: I have not yet discovered where to put my sample files, I will continue looking)Thanks a lot! This is the latest version:c:\Developer>cd ffmpeg-20180731-481741e-win64-static\bin c:\Developer\ffmpeg-20180731-481741e-win64-static\bin>ffmpeg.exe -i ../../20180726_150335-phasebtop1.vob -ss 10 -target ntsc-dvd -flags +cgop+ilme+ildct -alternate_scan 1 -top 1 -g 15 -sc_threshold 10 -y bob.VOB -v debugffmpeg version N-91548-g481741ece0 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 7.3.1 (GCC) 20180722 configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth libavutil 56. 18.102 / 56. 18.102 libavcodec 58. 22.100 / 58. 22.100 libavformat 58. 17.101 / 58. 17.101 libavdevice 58. 4.101 / 58. 4.101 libavfilter 7. 26.100 / 7. 26.100 libswscale 5. 2.100 / 5. 2.100 libswresample 3. 2.100 / 3. 2.100 libpostproc 55. 2.100 / 55. 2.100Splitting the commandline.Reading option '-i' ... matched as input url with argument '../../20180726_150335-phasebtop1.vob'.Reading option '-ss' ... matched as option 'ss' (set the start time offset) with argument '10'.Reading option '-target' ... matched as option 'target' (specify target file type ("vcd", "svcd", "dvd", "dv" or "dv50"with optional prefixes "pal-", "ntsc-" or "film-")) with argument 'ntsc-dvd'.Reading option '-flags' ... matched as AVOption 'flags' with argument '+cgop+ilme+ildct'.Reading option '-alternate_scan' ... matched as AVOption 'alternate_scan' with argument '1'.Reading option '-top' ... matched as option 'top' (top=1/bottom=0/auto=-1 field first) with argument '1'.Reading option '-g' ... matched as AVOption 'g' with argument '15'.Reading option '-sc_threshold' ... matched as AVOption 'sc_threshold' with argument '10'.Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.Reading option 'bob.VOB' ... matched as output url.Reading option '-v' ... matched as option 'v' (set logging level) with argument 'debug'.Finished splitting the commandline.Parsing a group of options: global .Applying option y (overwrite output files) with argument 1.Applying option v (set logging level) with argument debug.Successfully parsed a group of options.Parsing a group of options: input url ../../20180726_150335-phasebtop1.vob.Successfully parsed a group of options.Opening an input file: ../../20180726_150335-phasebtop1.vob.[NULL @ 00613ec0] Opening '../../20180726_150335-phasebtop1.vob' for reading[file @ 006145c0] Setting default whitelist 'file,crypto'[mpeg @ 00613ec0] Format mpeg probed with size=2048 and score=26[mpeg @ 00613ec0] Before avformat_find_stream_info() pos: 0 bytes read:32768 seeks:0 nb_streams:0[mpeg @ 00613ec0] probing stream 1 pp:2500[mpeg @ 00613ec0] Probe with size=2011, packets=1 detected mpegvideo with score=25[mpeg @ 00613ec0] probed stream 1[mpeg2video @ 00614b80] Format yuv420p chosen by get_format().[mpeg @ 00613ec0] max_analyze_d
Re: [FFmpeg-user] Buffer Underflow in case of high resolution mpeg1video encoding
inge gmail.com> writes: > [mpeg0431c3c0] VBV buffer size not set, > using default size of 130KB Set -bufsize and -maxrate to (very) high values for high resolution / low quantiser mpegvideo. (I am not sure if the resulting file will conform to any specification but it will play with all open-source decoders.) Carl Eugen ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user
Re: [FFmpeg-user] Buffer Underflow in case of high resolution mpeg1video encoding
Sorry about that! Here is the whole output: ffmpeg version N-66352-g33c752b Copyright (c) 2000-2014 the FFmpeg developers built on Sep 19 2014 23:23:41 with gcc 4.9.1 (GCC) configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-decklink --enable-zlib libavutil 54. 7.100 / 54. 7.100 libavcodec 56. 1.101 / 56. 1.101 libavformat56. 4.102 / 56. 4.102 libavdevice56. 0.100 / 56. 0.100 libavfilter 5. 1.101 / 5. 1.101 libswscale 3. 0.100 / 3. 0.100 libswresample 1. 1.100 / 1. 1.100 libpostproc53. 0.100 / 53. 0.100 Input #0, rawvideo, from 'pipe:': Duration: N/A, start: 0.00, bitrate: N/A Stream #0:0: Video: rawvideo (RGBA / 0x41424752), rgba, 2560x1440, -1463812 kb/s, 24 tbr, 24 tbn, 24 tbc Please use -q:a or -q:v, -qscale is ambiguous [mpeg @ 0431c3c0] VBV buffer size not set, using default size of 130KB If you want the mpeg file to be compliant to some specification Like DVD, VCD or others, make sure you set the correct buffer size Output #0, mpeg, to 'filename.mpeg': Metadata: encoder : Lavf56.4.102 Stream #0:0: Video: mpeg1video, yuv420p, 2560x1440, q=2-31, 200 kb/s, 24 fps, 90k tbn, 24 tbc Metadata: encoder : Lavc56.1.101 mpeg1video Stream mapping: Stream #0:0 -> #0:0 (rawvideo (native) -> mpeg1video (native)) frame= 14 fps=0.0 q=4.0 size= 908kB time=00:00:00.50 bitrate=14876.7kbits/s frame= 26 fps= 25 q=4.0 size=1626kB time=00:00:01.00 bitrate=13320.2kbits/s frame= 38 fps= 24 q=4.0 size=2578kB time=00:00:01.50 bitrate=14079.3kbits/s frame= 50 fps= 24 q=4.0 size=3486kB time=00:00:02.00 bitrate=14278.7kbits/s frame= 62 fps= 24 q=4.0 size=4322kB time=00:00:02.50 bitrate=14162.3kbits/s frame= 72 fps= 23 q=4.0 size=4784kB time=00:00:02.91 bitrate=13436.8kbits/s frame= 82 fps= 22 q=4.0 size=5382kB time=00:00:03.33 bitrate=13226.8kbits/s frame= 91 fps= 22 q=4.0 size=5932kB time=00:00:03.70 bitrate=13104.3kbits/s frame= 101 fps= 21 q=4.0 size=6518kB time=00:00:04.12 bitrate=12944.4kbits/s frame= 111 fps= 21 q=4.0 size=7094kB time=00:00:04.54 bitrate=12795.8kbits/s frame= 121 fps= 21 q=4.0 size=7552kB time=00:00:04.95 bitrate=12477.2kbits/s frame= 131 fps= 21 q=4.0 size=8132kB time=00:00:05.37 bitrate=12393.9kbits/s frame= 140 fps= 20 q=4.0 size=8706kB time=00:00:05.75 bitrate=12403.4kbits/s frame= 150 fps= 20 q=4.0 size=9286kB time=00:00:06.16 bitrate=12335.8kbits/s frame= 159 fps= 20 q=4.0 size=9886kB time=00:00:06.54 bitrate=12380.0kbits/s frame= 168 fps= 20 q=4.0 size= 10376kB time=00:00:06.91 bitrate=12289.2kbits/s frame= 177 fps= 20 q=4.0 size= 11312kB time=00:00:07.29 bitrate=12708.7kbits/s frame= 186 fps= 20 q=4.0 size= 12242kB time=00:00:07.66 bitrate=13080.8kbits/s frame= 195 fps= 20 q=4.0 size= 13162kB time=00:00:08.04 bitrate=13408.1kbits/s frame= 205 fps= 19 q=4.0 size= 13720kB time=00:00:08.45 bitrate=13288.0kbits/s frame= 215 fps= 19 q=4.0 size= 14382kB time=00:00:08.87 bitrate=13275.2kbits/s frame= 225 fps= 19 q=4.0 size= 15142kB time=00:00:09.29 bitrate=13349.9kbits/s frame= 234 fps= 19 q=4.0 size= 16022kB time=00:00:09.66 bitrate=13577.8kbits/s frame= 244 fps= 19 q=4.0 size= 16980kB time=00:00:10.08 bitrate=13795.1kbits/s frame= 253 fps= 19 q=4.0 size= 17804kB time=00:00:10.45 bitrate=13945.9kbits/s frame= 262 fps= 19 q=4.0 size= 18866kB time=00:00:10.83 bitrate=14266.2kbits/s frame= 271 fps= 19 q=4.0 size= 19640kB time=00:00:11.20 bitrate=14354.6kbits/s frame= 281 fps= 19 q=4.0 size= 20408kB time=00:00:11.62 bitrate=14381.3kbits/s frame= 290 fps= 19 q=4.0 size= 21302kB time=00:00:12.00 bitrate=14542.2kbits/s frame= 302 fps= 19 q=4.0 size= 22318kB time=00:00:12.50 bitrate=14626.3kbits/s frame= 313 fps= 19 q=4.0 size= 23506kB time=00:00:12.95 bitrate=14860.0kbits/s frame= 324 fps= 19 q=4.0 size= 24808kB time=00:00:13.41 bitrate=15147.4kbits/s frame= 336 fps= 19 q=4.0 size= 26020kB time=00:00:13.91 bitrate=15316.6kbits/s frame= 348 fps= 19 q=4.0 size= 27140kB time=00:00:14.41 bitrate=15421.8kbits/s frame
Re: [FFmpeg-user] Buffer Underflow in case of high resolution mpeg1video encoding
inge gmail.com> writes: > ffmpeg -r 24 -pix_fmt rgba -s 2560x1440 -f rawvideo -y > -i - -c:v mpeg1video -qscale:v 4 -vf vflip filename.mpeg Please provide the complete, uncut console output whenever asking for support here. Carl Eugen ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user
[FFmpeg-user] Buffer Underflow in case of high resolution mpeg1video encoding
Hello, I've been using ffmpeg to encode raw data using the following command line argument: ffmpeg -r 24 -pix_fmt rgba -s 2560x1440 -f rawvideo -y -i - -c:v mpeg1video -qscale:v 4 -vf vflip filename.mpeg During encoding I get the following output: [mpeg @ 0434c3c0] buffer underflow st=0 bufi=234679 size=263328 [mpeg @ 0434c3c0] packet too large, ignoring buffer limits to mux it [mpeg @ 0434c3c0] buffer underflow st=0 bufi=234679 size=263328 [mpeg @ 0434c3c0] buffer underflow st=0 bufi=236708 size=263328 [mpeg @ 0434c3c0] packet too large, ignoring buffer limits to mux it [mpeg @ 0434c3c0] buffer underflow st=0 bufi=236708 size=263328 ... I noticed that using a lower resolution, for example 1920x1080, does not give me a buffer underflow. Also using a qscale of 5 instead of 4 prevents it. It's also interesting to note that the output seems to be fine, despite these messages. Can someone help me understand what exactly a buffer underflow means in this context? And/Or how to prevent it from happening? I've searched around for some time now and I'm still none the wiser. Much appreciated! Inge -- View this message in context: http://ffmpeg-users.933282.n4.nabble.com/Buffer-Underflow-in-case-of-high-resolution-mpeg1video-encoding-tp4667787.html Sent from the FFmpeg-users mailing list archive at Nabble.com. ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user