Культурный офтопик
 help / color / mirror / Atom feed
* [room] well at first i was like... but then i lol'd.
@ 2008-04-29  0:07 Pavlov Konstantin
  0 siblings, 0 replies; only message in thread
From: Pavlov Konstantin @ 2008-04-29  0:07 UTC (permalink / raw)
  To: smoke-room

[-- Attachment #1: Type: text/plain, Size: 4068 bytes --]

----- Forwarded message from Måns Rullgård <mans.mansr.com> -----

Date: Tue, 29 Apr 2008 00:57:56 +0100
From: Måns Rullgård <mans.mansr.com>
To: FFmpeg development discussions and patches <ffmpeg-devel.mplayerhq.hu>
Subject: Re: [FFmpeg-devel] [PATCH] fix issue434
User-Agent: Gnus/5.1008 (Gnus v5.10.8) XEmacs/21.4.21 (Educational Television,
	linux)

Michael Niedermayer <michaelni.gmx.at> writes:

> On Mon, Apr 28, 2008 at 11:28:23PM +0100, Måns Rullgård wrote:
>> Michael Niedermayer <michaelni.gmx.at> writes:
>> 
>> > On Mon, Apr 21, 2008 at 02:04:08AM +0200, Michael Niedermayer wrote:
>> >> On Mon, Apr 21, 2008 at 12:21:07AM +0100, Måns Rullgård wrote:
>> >> > Michael Niedermayer <michaelni.gmx.at> writes:
>> >> > 
>> >> > > Hi
>> >> > >
>> >> > > The patch below fixes issue434, i will commit it in 24h unless
>> >> > > mans objects
>> >> > >
>> >> > > Index: libavformat/mpeg.c
>> >> > > ===================================================================
>> >> > > --- libavformat/mpeg.c	(revision 12867)
>> >> > > +++ libavformat/mpeg.c	(working copy)
>> >> > > @@ -341,12 +341,13 @@
>> >> > >          if (flags & 0x01) { /* PES extension */
>> >> > >              pes_ext = get_byte(s->pb);
>> >> > >              header_len--;
>> >> > > -            if (pes_ext & 0x40) { /* pack header - should be zero in PS */
>> >> > > -                goto error_redo;
>> >> > > -            }
>> >> > >              /* Skip PES private data, program packet sequence counter and P-STD buffer */
>> >> > >              skip = (pes_ext >> 4) & 0xb;
>> >> > >              skip += skip & 0x9;
>> >> > > +            if (pes_ext & 0x40 || skip > header_len){
>> >> > > +                av_log(s, AV_LOG_WARNING, "pes_ext %X is invalid\n", pes_ext);
>> >> > > +                pes_ext=skip=0;
>> >> > > +            }
>> >> > >              url_fskip(s->pb, skip);
>> >> > >              header_len -= skip;
>> >> > 
>> >> > Workarounds for out-of-spec streams are only acceptable if explicitly
>> >> > requested.  Does lavf have something equivalent to lavc's
>> >> > AVCodecContext.strict_std_compliance?
>> >> 
>> >> No, also strict_std_compliance is a pure encoder side thing. Used for
>> >> preventing users to shoot themselfs in their foot (encoding expermental
>> >> codecs like snow, storing non jpeg YUV in jpeg, ...).
>> >> 
>> >> The variable with a matching purpose is error_resilience (bad name, yes ...)
>> >> It does select between how much spec non compliance should be ignored and
>> >> how much should be considered an error. Thus its a tradeoff between early
>> >> detection of errors in damaged streams vs. supporting streams which dont
>> >> conform to the specs.
>> >> 
>> >> We certainly could add such a variable to AVFormatContext as well.
>> >
>> > ping
>> > What shall be done about this issue?
>> > * This does not affect valid files
>> > * It does print a big and nasty "blah is invalid"
>> > * Its ffmpegs "policy" to support broken files by default
>> >
>> > I can add a error_resilience variable to AVFormatContext if you want, but
>> > its default would be what has the highest chance to result in correct
>> > playaback.
>> 
>> You may apply this if you give me the head of a vdr author on a silver
>> plate first.  There is no excuse for knowingly creating invalid files.
>
> No problem
>
>              _||||||_
>             / VDR DEV\
>            |  X    X  |
>           O|    |     |O
>            |   /_     |
>          ---\ -===-  /----
>      ----    |   U  |      ----
>  -==         |______|          ==-
>      ----   SILVER PLATE   ----
>          ------------------

What can I say?  Go ahead and commit.

-- 
Måns Rullgård
mans.mansr.com
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@mplayerhq.hu
https://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-devel

----- End forwarded message -----

-- 
Do your part to help preserve life on Earth -- by trying to preserve your own.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2008-04-29  0:07 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-04-29  0:07 [room] well at first i was like... but then i lol'd Pavlov Konstantin

Культурный офтопик

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/smoke-room/0 smoke-room/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 smoke-room smoke-room/ http://lore.altlinux.org/smoke-room \
		smoke-room@lists.altlinux.org smoke-room@lists.altlinux.ru smoke-room@lists.altlinux.com smoke-room@altlinux.ru smoke-room@altlinux.org smoke-room@altlinux.com
	public-inbox-index smoke-room

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.smoke-room


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git