This implements reading the tag in the demuxer and adds support for writing it
in the muxer. Some example channel layout tables for muxing are included for
ac3, aac, and alac, but they are not utilized yet.
Use Sound Sample Description Version 2 for all MOV files.
Updated FATE references accordingly.
Note that ADPCM is treated as compressed audio in version 2.
* qatar/master:
cljr: K&R cosmetics
cljr: return a more sensible value when encountering invalid headers
cljr: drop unnecessary emms_c() calls without MMX code
cljr: remove useless casts
cljr: group encode/decode parts under single ifdefs
cljr: remove stray semicolon
cljr: add missing return statement in decode_end()
doc: add pulseaudio to the input list
avconv: remove unsubstantiated comment
shorten: avoid abort() on unknown audio types
cljr: add encoder
build: merge lists of HTML documentation targets
tests/examples: Mark some variables only used within their files as static.
tests/tools/examples: Replace direct exit() calls by return.
x86 cpuid: set vendor union members separately
cljr: release picture at end of decoding
rv40: NEON optimised rv40 qpel motion compensation
Conflicts:
doc/examples/muxing.c
libavcodec/cljr.c
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
* tjoppen/opatom_demuxing_and_seeking:
mxfdec: Index table driven demuxing and seeking
mxfdec: Compute packet offsets properly
mxfdec: Use MaterialPackage - Track - TrackID instead of the system_item hack
mxfdec: Parse more values in PartitionPack
mxfdec: Parse TemporalOffsets
mxfdec: av_dlog():ify 'no corresponding source package found'
mxfdec: Compute essence container offsets and lengths into mxf->partitions
mxfdec: Make mxf->partitions sorted by offset
mxfdec: Parse ThisPartition
mxfdec: Speed up metadata and index parsing
mxfdec: Make sure DataDefinition is consistent between material track and source track
mxfdec: Add EssenceContainer UL found in 0001GL00.MXF.A1.mxf_opatom.mxf
Merged-by: Michael Niedermayer <michaelni@gmx.at>
This fixes the case that the buffer sinks fifo contains frames which
would not show up on the poll from its input
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
These values include KAGSize, HeaderByteCount and IndexByteCount.
The length of the pack itself is also stored, and KAGSize is sanity checked.
The FATE sample has KAGSize == 0, which is adjusted to 512.
Other bad KAGSizes are set to 1.
Thus we can check for 4 being available.
If the next block is skiped we need 4 bits to encode the skip. If the
next block is not skiped then we need 1 bit for the skip code and
at least 3 bits for the block.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This groups the encode/decode parts under single ifdefs and
eliminates the encode_init() function as it merely calls
common_init(). Also fix whitespace in moved code.
Signed-off-by: Mans Rullgard <mans@mansr.com>