Michael Niedermayer <[email protected]> added the comment: On Tue, Aug 25, 2009 at 10:09:19PM +0000, Baptiste Coudurier wrote: > > Baptiste Coudurier <[email protected]> added the comment: > > On 08/25/2009 02:27 PM, Reimar Döffinger wrote: > > Reimar Döffinger<[email protected]> added the comment: > > > > On Tue, Aug 25, 2009 at 01:53:00PM -0700, Baptiste Coudurier wrote: > >> On 08/25/2009 02:12 PM, Reimar Döffinger wrote: > >>> Reimar Döffinger<[email protected]> added the comment: > >>> On Tue, Aug 25, 2009 at 08:34:56PM +0000, Ronald S. Bultje wrote: > >>>> Ronald S. Bultje<[email protected]> added the comment: > >>>> > >>>> Passing stsd isn't going to make it remuxable to other codecs... > >>> I would, though it might be a non-standard format (if there exists > >>> a standard format for other containers, in that case IMO > >>> it would be the mov demuxer's (or whichever's format is in the > >>> minority) responsibility to do the conversion. > >>> Apart from that, providing the whole atom would "fix" it in so > >>> far as at least the information is available. > >>> Detecting which format is actually used and converting between > >>> them would still have to be implemented in MPlayer. > >>> How hard this is depends on whether the mov demuxer guarantees > >>> e.g. that the atoms in the extradata are in a certain order, if > >>> a specific one will always be the first one etc. > >> I was thinking that a "container_data" field in AVCodecContext or a > >> "codec_data" field in AVStream could be introduced, used to store the > >> full stsd atom, or the full bmpheader or waveformat header from avi/wav, > >> or any structure used by the container to describe the codec. > > > > Sounds to me like extradata just with the "advantage" of making remuxing > > impossible. IOW I'd consider it the opposite of what FFmpeg supposed to be > > there for ("normalizing" container data onto a common format). >
> I believe "normalizing" container data onto a common format is _impossible_. i disagree > > Again, remuxing is _not_ the purpose of this field, and extradata will > be kept as is. Decoders can use this structure if wanted. > > What you will do in applications is reconstructing the structure > manually to pass it to the binary decoder, which is useless IMHO and > will not include all the information most of the time. > > This solution is simple, clean and easy to implement. > > Now if you have a better solution, I'd like to hear about it. i dont mind if you add a char *stsd to AVStream and use that to export the whole stsd but this does not solve any palete issue, a palette that is in stsd should/must be exported through extradata [...] _____________________________________________________ FFmpeg issue tracker <[email protected]> <https://roundup.ffmpeg.org/roundup/ffmpeg/issue1322> _____________________________________________________
