Hello,
it has brought to my attention that reviewing 200 patches is not
desirable, and following the reviewers' suggestions, I squashed the
more mundane replacement patches across the codebase, and left the
more important or complex ones separate to simplify review.
Some of the single patches at the beginning have already been published
and reviewed, added for completeness.
Cheers,
Vittorio
Anton Khirnov (5):
Add a new channel layout API
lavu: support AVChannelLayout AVOptions
lavc: deprecate channel count/layout changing side data
avframe: switch to the new channel layout API
lavr: switch to the new channel layout API
Vittorio Giovara (20):
avtools: Use the new channel layout API in AVFrame
lavfi, buffersrc: switch to the new channel layout API
libavfilter changes for the new channel layout API
lavfi: Port filter negotiation to use the new channel layout API
avcodecpar: switch to the new channel layout API
libavformat changes for the new channel layout API
lavc: switch to the new channel layout API
aac: convert to new channel layout API
ac3: convert to new channel layout API
libavcodec changes for the the new channel layout API
tools, examples changes for the new channel layout API
channel_layout: Add Ambisonic components and channel order
lavr: Only let pass-through ambisonic channel layouts
opus: Implement mapping type 2 for Ambisonic support
lavf: Add non diegetic stream disposition flag
mov: Implement spatial audio support
aac: Allow pass-through transcoding of ambisonic audio
avprobe: Print the channel layout string
fate: Add ambisonic tests
Bump library versions, update Changelog and APIchanges
Changelog | 1 +
avtools/avconv.c | 30 +--
avtools/avconv.h | 8 +-
avtools/avconv_filter.c | 44 +++-
avtools/avconv_opt.c | 52 ++--
avtools/avplay.c | 52 ++--
avtools/avprobe.c | 6 +-
avtools/cmdutils.c | 17 +-
avtools/cmdutils.h | 8 -
doc/APIchanges | 22 ++
doc/examples/decode_audio.c | 2 +-
doc/examples/encode_audio.c | 36 +--
doc/examples/filter_audio.c | 11 +-
doc/examples/output.c | 30 ++-
doc/examples/transcode_aac.c | 29 ++-
libavcodec/8svx.c | 15 +-
libavcodec/aac.h | 7 +-
libavcodec/aac_ac3_parser.c | 9 +-
libavcodec/aaccoder.c | 2 +-
libavcodec/aacdec.c | 79 +++++-
libavcodec/aacdectab.h | 16 ++
libavcodec/aacenc.c | 2 +-
libavcodec/aacpsy.c | 10 +-
libavcodec/ac3dec.c | 49 +++-
libavcodec/ac3dec.h | 2 +
libavcodec/ac3enc.c | 83 +++++--
libavcodec/ac3enc.h | 4 +-
libavcodec/ac3enc_fixed.c | 5 +
libavcodec/ac3enc_float.c | 5 +
libavcodec/adpcm.c | 57 ++---
libavcodec/adpcmenc.c | 92 +++----
libavcodec/adx.c | 16 +-
libavcodec/adxdec.c | 6 +-
libavcodec/adxenc.c | 11 +-
libavcodec/alac.c | 18 +-
libavcodec/alac_data.c | 12 +
libavcodec/alac_data.h | 6 +
libavcodec/alacenc.c | 20 +-
libavcodec/alsdec.c | 65 ++---
libavcodec/amrnbdec.c | 6 +-
libavcodec/amrwbdec.c | 6 +-
libavcodec/apedec.c | 9 +-
libavcodec/atrac1.c | 10 +-
libavcodec/atrac3.c | 26 +-
libavcodec/atrac3plusdec.c | 25 +-
libavcodec/avcodec.h | 47 ++++
libavcodec/binkaudio.c | 17 +-
libavcodec/bmvaudio.c | 4 +-
libavcodec/cngdec.c | 3 +-
libavcodec/cngenc.c | 6 +-
libavcodec/cook.c | 22 +-
libavcodec/cook_parser.c | 4 +-
libavcodec/dca.h | 2 +
libavcodec/dca_xll.c | 6 +-
libavcodec/dcadec.c | 54 +++--
libavcodec/decode.c | 88 +++++--
libavcodec/dpcm.c | 14 +-
libavcodec/dsicinaudio.c | 4 +-
libavcodec/dss_sp.c | 4 +-
libavcodec/eac3enc.c | 5 +
libavcodec/encode.c | 18 +-
libavcodec/flac.c | 37 +--
libavcodec/flac.h | 2 +-
libavcodec/flac_parser.c | 7 +-
libavcodec/flacdec.c | 10 +-
libavcodec/flacenc.c | 2 +-
libavcodec/g722dec.c | 4 +-
libavcodec/g722enc.c | 8 +-
libavcodec/g723_1dec.c | 4 +-
libavcodec/g723_1enc.c | 8 +-
libavcodec/g726.c | 6 +-
libavcodec/gsmdec.c | 4 +-
libavcodec/imc.c | 22 +-
libavcodec/internal.h | 2 +
libavcodec/libdcadec.c | 6 +-
libavcodec/libfdk-aacdec.c | 34 ++-
libavcodec/libfdk-aacenc.c | 36 ++-
libavcodec/libgsmdec.c | 4 +-
libavcodec/libgsmenc.c | 4 +-
libavcodec/libilbc.c | 4 +-
libavcodec/libopencore-amr.c | 8 +-
libavcodec/libopusdec.c | 42 ++--
libavcodec/libopusenc.c | 32 ++-
libavcodec/libspeexdec.c | 18 +-
libavcodec/mace.c | 11 +-
libavcodec/metasound.c | 31 +--
libavcodec/mlp_parser.c | 34 +--
libavcodec/mlp_parser.h | 4 +-
libavcodec/mlpdec.c | 96 ++++----
libavcodec/mpc7.c | 7 +-
libavcodec/mpc8.c | 5 +-
libavcodec/mpegaudio_parser.c | 2 +-
libavcodec/mpegaudiodec_template.c | 37 +--
libavcodec/mpegaudioenc.c | 11 +-
libavcodec/nellymoserdec.c | 4 +-
libavcodec/nellymoserenc.c | 6 +-
libavcodec/on2avc.c | 19 +-
libavcodec/options_table.h | 5 +
libavcodec/opus.c | 42 +++-
libavcodec/opusdec.c | 13 +-
libavcodec/pafaudio.c | 5 +-
libavcodec/pcm-bluray.c | 36 ++-
libavcodec/pcm-dvd.c | 24 +-
libavcodec/pcm.c | 23 +-
libavcodec/psymodel.c | 8 +-
libavcodec/qcelpdec.c | 4 +-
libavcodec/qdm2.c | 6 +-
libavcodec/ra144dec.c | 4 +-
libavcodec/ra144enc.c | 6 +-
libavcodec/ra288.c | 4 +-
libavcodec/ralf.c | 16 +-
libavcodec/roqaudioenc.c | 20 +-
libavcodec/s302m.c | 15 +-
libavcodec/shorten.c | 6 +-
libavcodec/sipr.c | 4 +-
libavcodec/smacker.c | 11 +-
libavcodec/takdec.c | 40 ++--
libavcodec/truespeech.c | 7 +-
libavcodec/tta.c | 15 +-
libavcodec/twinvq.c | 20 +-
libavcodec/twinvqdec.c | 18 +-
libavcodec/utils.c | 173 +++++++++++---
libavcodec/vima.c | 5 +-
libavcodec/vmdaudio.c | 22 +-
libavcodec/vorbis.h | 5 +
libavcodec/vorbis_data.c | 18 ++
libavcodec/vorbisdec.c | 18 +-
libavcodec/vorbisenc.c | 4 +-
libavcodec/wavpack.c | 19 +-
libavcodec/wma.c | 13 +-
libavcodec/wmadec.c | 25 +-
libavcodec/wmaenc.c | 27 ++-
libavcodec/wmalosslessdec.c | 36 ++-
libavcodec/wmaprodec.c | 66 +++--
libavcodec/wmavoice.c | 4 +-
libavcodec/ws-snd1.c | 4 +-
libavdevice/alsa.c | 10 +-
libavfilter/af_aformat.c | 30 ++-
libavfilter/af_amix.c | 11 +-
libavfilter/af_ashowinfo.c | 12 +-
libavfilter/af_asyncts.c | 6 +-
libavfilter/af_channelmap.c | 92 +++----
libavfilter/af_channelsplit.c | 40 ++--
libavfilter/af_compand.c | 8 +-
libavfilter/af_hdcd.c | 2 +-
libavfilter/af_join.c | 84 +++----
libavfilter/af_resample.c | 33 +--
libavfilter/af_volume.c | 2 +-
libavfilter/audio.c | 17 +-
libavfilter/avfilter.c | 9 +-
libavfilter/avfilter.h | 13 +-
libavfilter/avfiltergraph.c | 116 +++++++--
libavfilter/buffersink.c | 2 +-
libavfilter/buffersrc.c | 53 +++--
libavfilter/buffersrc.h | 12 +-
libavfilter/fifo.c | 7 +-
libavfilter/formats.c | 45 +++-
libavfilter/formats.h | 4 +-
libavfilter/trim.c | 3 +-
libavformat/4xm.c | 7 +-
libavformat/adxdec.c | 11 +-
libavformat/aea.c | 11 +-
libavformat/aiffdec.c | 13 +-
libavformat/aiffenc.c | 4 +-
libavformat/amr.c | 3 +-
libavformat/apc.c | 12 +-
libavformat/ape.c | 3 +-
libavformat/au.c | 5 +-
libavformat/audiointerleave.c | 2 +-
libavformat/avformat.h | 6 +
libavformat/bethsoftvid.c | 3 +-
libavformat/bfi.c | 3 +-
libavformat/bink.c | 12 +-
libavformat/bmv.c | 3 +-
libavformat/cafdec.c | 3 +-
libavformat/cdxl.c | 9 +-
libavformat/dashenc.c | 2 +-
libavformat/dauddec.c | 3 +-
libavformat/daudenc.c | 2 +-
libavformat/dsicin.c | 7 +-
libavformat/dss.c | 3 +-
libavformat/dump.c | 11 +-
libavformat/dv.c | 3 +-
libavformat/dvenc.c | 2 +-
libavformat/eacdata.c | 3 +-
libavformat/electronicarts.c | 7 +-
libavformat/flacdec.c | 2 +-
libavformat/flacenc.c | 13 +-
libavformat/flic.c | 3 +-
libavformat/flvdec.c | 21 +-
libavformat/flvenc.c | 6 +-
libavformat/g722.c | 2 +-
libavformat/g723_1.c | 3 +-
libavformat/g729dec.c | 2 +-
libavformat/gsmdec.c | 3 +-
libavformat/gxf.c | 9 +-
libavformat/gxfenc.c | 2 +-
libavformat/idcin.c | 4 +-
libavformat/idroqdec.c | 12 +-
libavformat/iff.c | 16 +-
libavformat/ilbc.c | 2 +-
libavformat/ipmovie.c | 8 +-
libavformat/isom.c | 5 +-
libavformat/iss.c | 17 +-
libavformat/jvdec.c | 3 +-
libavformat/lxfdec.c | 3 +-
libavformat/matroskadec.c | 4 +-
libavformat/matroskaenc.c | 15 +-
libavformat/mm.c | 3 +-
libavformat/mmf.c | 3 +-
libavformat/mov.c | 158 ++++++++++--
libavformat/mov_chan.c | 26 +-
libavformat/mov_chan.h | 4 +-
libavformat/movenc.c | 8 +-
libavformat/mp3enc.c | 2 +-
libavformat/mpc.c | 3 +-
libavformat/mpc8.c | 5 +-
libavformat/mpegenc.c | 6 +-
libavformat/mux.c | 2 +-
libavformat/mvdec.c | 10 +-
libavformat/mvi.c | 3 +-
libavformat/mxfdec.c | 13 +-
libavformat/mxfenc.c | 6 +-
libavformat/mxg.c | 3 +-
libavformat/nsvdec.c | 2 +-
libavformat/nutdec.c | 2 +-
libavformat/nutenc.c | 2 +-
libavformat/nuv.c | 7 +-
libavformat/oggparsecelt.c | 3 +-
libavformat/oggparseogm.c | 6 +-
libavformat/oggparseopus.c | 3 +-
libavformat/oggparsespeex.c | 8 +-
libavformat/oggparsevorbis.c | 3 +-
libavformat/oma.c | 19 +-
libavformat/oma.h | 5 +-
libavformat/omadec.c | 10 +-
libavformat/omaenc.c | 4 +-
libavformat/paf.c | 3 +-
libavformat/pcm.c | 2 +-
libavformat/pcmdec.c | 7 +-
libavformat/pmpdec.c | 3 +-
libavformat/psxstr.c | 10 +-
libavformat/qcp.c | 3 +-
libavformat/r3d.c | 3 +-
libavformat/riffdec.c | 13 +-
libavformat/riffenc.c | 11 +-
libavformat/rl2.c | 7 +-
libavformat/rmdec.c | 6 +-
libavformat/rmenc.c | 2 +-
libavformat/rpl.c | 8 +-
libavformat/rsodec.c | 3 +-
libavformat/rsoenc.c | 2 +-
libavformat/rtp.c | 10 +-
libavformat/rtpdec_amr.c | 3 +-
libavformat/rtpenc.c | 12 +-
libavformat/rtsp.c | 6 +-
libavformat/rtsp.h | 1 -
libavformat/sdp.c | 34 +--
libavformat/segafilm.c | 9 +-
libavformat/sierravmd.c | 12 +-
libavformat/siff.c | 3 +-
libavformat/smacker.c | 12 +-
libavformat/smjpegdec.c | 3 +-
libavformat/smjpegenc.c | 2 +-
libavformat/smoothstreamingenc.c | 2 +-
libavformat/smush.c | 4 +-
libavformat/sol.c | 4 +-
libavformat/soxdec.c | 14 +-
libavformat/soxenc.c | 4 +-
libavformat/swfdec.c | 8 +-
libavformat/swfenc.c | 2 +-
libavformat/takdec.c | 7 +-
libavformat/tests/movenc.c | 2 +-
libavformat/thp.c | 3 +-
libavformat/tiertexseq.c | 7 +-
libavformat/tmv.c | 10 +-
libavformat/tta.c | 3 +-
libavformat/utils.c | 35 ++-
libavformat/voc_packet.c | 7 +-
libavformat/vocenc.c | 8 +-
libavformat/vqf.c | 11 +-
libavformat/wavdec.c | 4 +-
libavformat/wc3movie.c | 8 +-
libavformat/westwood_aud.c | 6 +-
libavformat/westwood_vqa.c | 2 +-
libavformat/wtv.c | 6 +-
libavformat/wvdec.c | 3 +-
libavformat/xa.c | 7 +-
libavformat/xmv.c | 3 +-
libavformat/xwma.c | 8 +-
libavformat/yop.c | 3 +-
libavresample/audio_mix.c | 148 +++++++-----
libavresample/audio_mix_matrix.c | 477 +++++++++++++++++++++----------------
libavresample/avresample.h | 42 +++-
libavresample/internal.h | 10 +-
libavresample/options.c | 8 +
libavresample/tests/avresample.c | 26 +-
libavresample/utils.c | 135 ++++++++---
libavutil/channel_layout.c | 467 +++++++++++++++++++++++++++++++-----
libavutil/channel_layout.h | 395 ++++++++++++++++++++++++++++--
libavutil/frame.c | 88 ++++++-
libavutil/frame.h | 12 +-
libavutil/opt.c | 47 ++++
libavutil/opt.h | 10 +
libavutil/version.h | 3 +
tests/fate/ac3.mak | 12 +-
tests/fate/lossless-audio.mak | 2 +-
tests/fate/mov.mak | 3 +
tests/fate/opus.mak | 5 +
tests/ref/fate/mov-ambisonic | 1 +
tests/ref/fate/opus-ambisonic | 1 +
tools/graph2dot.c | 7 +-
tools/ismindex.c | 2 +-
tools/sidxindex.c | 2 +-
314 files changed, 4084 insertions(+), 2119 deletions(-)
create mode 100644 tests/ref/fate/mov-ambisonic
create mode 100644 tests/ref/fate/opus-ambisonic
--
2.13.1
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel