On Mon, Sep 19, 2016 at 04:25:42PM +0300, Erkki Seppälä wrote: > Added support for passing complex channel layout configuration as side > packet data (AV_PKT_DATA_AUDIO_TRACK_CHANNEL_LAYOUT) to ISO media files > as specified by ISO/IEC 14496-12. AVAudioTrackChannelLayout has the > fields to setting both predefined audio layouts, completely configuring > the azimuth and elevation of each speaker as well as describing the > number of audio objects in the scene. > > This information isn't integrated into the existing channel layout > system though, which is much more restricted compared to what the > standard permits. However, the side packet data is structured so that it > does not require too much ISO base media file format knowledge in client > code. In addition, it should be possible to extend the enumeration and > the record to allow for using the same side data for a more native > solution. > > The names of the channels and layouts are available in > channel_layout_isoiec23001_8.h with slightly obtuse names such as > AV_SPEAKER_POSITION_ISOIEC230081_8_L and > AV_CH_LAYOUT_ISOIEC230081_8_1_0_0 to encourage path forward to a more > native solution for FFmpeg. > > This channel layout information ends up to a chnl box in the written > file in an isom track. > > Signed-off-by: Erkki Seppälä <erkki.seppala....@nokia.com> > Signed-off-by: OZOPlayer <oz...@nokia.com> > ---
> libavcodec/avcodec.h | 71 +++++++++++++++++++++++ > libavformat/movenc.c | 87 +++++++++++++++++++++++++++- > libavutil/channel_layout_isoiec23001_8.h | 97 > ++++++++++++++++++++++++++++++++ > 3 files changed, 254 insertions(+), 1 deletion(-) > create mode 100644 libavutil/channel_layout_isoiec23001_8.h (non cosmetic) patches should not span across libs > > diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h > index 0079d22..7b52975 100644 > --- a/libavcodec/avcodec.h > +++ b/libavcodec/avcodec.h > @@ -39,6 +39,7 @@ > #include "libavutil/log.h" > #include "libavutil/pixfmt.h" > #include "libavutil/rational.h" > +#include "libavutil/channel_layout_isoiec23001_8.h" including a private header from a public one is not possible (it is private in this patch even if subsequently that changes) [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB The worst form of inequality is to try to make unequal things equal. -- Aristotle
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel