summaryrefslogtreecommitdiff
path: root/libavformat
Commit message (Collapse)AuthorAge
* Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-08
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (29 commits) sbrdsp.asm: convert all instructions to float/SSE ones. dv: cosmetics. dv: check buffer size before reading profile. Revert "AAC SBR: group some writes." udp: Print an error message if bind fails cook: extend channel uncoupling tables so the full bit range is covered. roqvideo: cosmetics. roqvideo: convert to bytestream2 API. dca: don't use av_clip_uintp2(). wmall: fix build with -DDEBUG enabled. smc: port to bytestream2 API. AAC SBR: group some writes. dsputil: remove shift parameter from scalarproduct_int16 SBR DSP: unroll sum_square rv34: remove dead code in intra availability check rv34: clean a bit availability checks. v4l2: update documentation tgq: convert to bytestream2 API. parser: remove forward declaration of MpegEncContext dca: prevent accessing static arrays with invalid indexes. ... Conflicts: doc/indevs.texi libavcodec/Makefile libavcodec/dca.c libavcodec/dvdata.c libavcodec/eatgq.c libavcodec/mmvideo.c libavcodec/roqvideodec.c libavcodec/smc.c libswscale/output.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * udp: Print an error message if bind failsMartin Storsjö2012-03-07
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
| * smacker: error out if palette copy-with-offset overruns palette size.Ronald S. Bultje2012-03-07
| | | | | | | | | | Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
| * mov: Allow last chunk to have an arbitrary number of samples.Carl Eugen Hoyos2012-03-06
| | | | | | | | | | | | | | Fixes ticket #673. (cherry picked from commit 8dcd2a41ecff8cc1e9b20cc267df54c59878ab3b) Signed-off-by: Alex Converse <alex.converse@gmail.com>
* | avformat_new_stream: fix initial last_dts valueMichael Niedermayer2012-03-08
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | mxfdec: Add intra_only flag to MXFTrackTomas Härdin2012-03-08
| | | | | | | | | | | | This allows future assumptions to be made without affecting non-intra files. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | mxfdec: Fix Avid AirSpeed files being misinterpreted as OP1aTomas Härdin2012-03-08
| | | | | | | | | | | | | | | | The "ECs != 1 -> OP1a" assumption was wrong. Luckily, the file that triggered that behavior had two ECs, not zero. Hence distinguishing between them is simple in this case. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | mxfdec: Truncate packets that extend past the next edit unitTomas Härdin2012-03-08
| | | | | | | | | | | | | | This fixes rare cases where OPAtom may be treated as OP1a, causing all essence to be read into RAM. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-06
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (31 commits) cdxl demux: do not create packets with uninitialized data at EOF. Replace computations of remaining bits with calls to get_bits_left(). amrnb/amrwb: Remove get_bits usage. cosmetics: reindent avformat: do not require a pixel/sample format if there is no decoder avformat: do not fill-in audio packet duration in compute_pkt_fields() lavf: Use av_get_audio_frame_duration() in get_audio_frame_size() dca_parser: parse the sample rate and frame durations libspeexdec: do not set AVCodecContext.frame_size libopencore-amr: do not set AVCodecContext.frame_size alsdec: do not set AVCodecContext.frame_size siff: do not set AVCodecContext.frame_size amr demuxer: do not set AVCodecContext.frame_size. aiffdec: do not set AVCodecContext.frame_size mov: do not set AVCodecContext.frame_size ape: do not set AVCodecContext.frame_size. rdt: remove workaround for infinite loop with aac avformat: do not require frame_size in avformat_find_stream_info() for CELT avformat: do not require frame_size in avformat_find_stream_info() for MP1/2/3 avformat: do not require frame_size in avformat_find_stream_info() for AAC ... Conflicts: doc/APIchanges libavcodec/Makefile libavcodec/avcodec.h libavcodec/h264.c libavcodec/h264_ps.c libavcodec/utils.c libavcodec/version.h libavcodec/x86/dsputil_mmx.c libavformat/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * cdxl demux: do not create packets with uninitialized data at EOF.Reimar Döffinger2012-03-05
| | | | | | | | | | | | Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de> Signed-off-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
| * cosmetics: reindentJustin Ruggles2012-03-05
| |
| * avformat: do not require a pixel/sample format if there is no decoderJustin Ruggles2012-03-05
| | | | | | | | | | | | | | | | Also, do not keep trying to find and open a decoder in try_decode_frame() if we already tried and failed once. Fixes always searching until max_analyze_duration in avformat_find_stream_info() when demuxing codecs without a decoder.
| * avformat: do not fill-in audio packet duration in compute_pkt_fields()Justin Ruggles2012-03-05
| | | | | | | | Use the estimated duration only to calculate missing timestamps if needed.
| * lavf: Use av_get_audio_frame_duration() in get_audio_frame_size()Justin Ruggles2012-03-05
| | | | | | | | | | | | | | | | | | | | Also, do not give AVCodecContext.frame_size priority for muxing. Updated 2 FATE references: dxa-feeble - adds 1 audio frame that is still within 2 seconds as specified by -t 2 in the FATE test wmv8-drm-nodec - durations are not needed. previously they were estimated using the packet size and average bit rate.
| * siff: do not set AVCodecContext.frame_sizeJustin Ruggles2012-03-05
| | | | | | | | | | also, properly set AVCodecContext.bits_per_coded_sample, AVStreasm.start_time, and AVPacket.duration.
| * amr demuxer: do not set AVCodecContext.frame_size.Justin Ruggles2012-03-05
| | | | | | | | it is not necessary.
| * aiffdec: do not set AVCodecContext.frame_sizeJustin Ruggles2012-03-05
| | | | | | | | | | | | | | | | | | It is unnecessary. Also, for some codecs we're reading more than 1 frame per packet. Instead we use a private context variable to calculate the bit rate, stream duration, and packet durations. Updated FATE seek test, which has slightly different timestamps due to a more accurate bit rate calculation.
| * mov: do not set AVCodecContext.frame_sizeJustin Ruggles2012-03-05
| | | | | | | | It is not necessary.
| * ape: do not set AVCodecContext.frame_size.Justin Ruggles2012-03-05
| | | | | | | | prevents lavf from setting incorrect packet durations.
| * rdt: remove workaround for infinite loop with aacJustin Ruggles2012-03-05
| | | | | | | | avformat_find_stream_info() no longer hangs while waiting for AAC frame_size
| * avformat: do not require frame_size in avformat_find_stream_info() for CELTJustin Ruggles2012-03-05
| | | | | | | | | | In Ogg/CELT, frame_size is found in the same place as the sample_rate and channels, so we do not need to force the frame_size to be parsed.
| * avformat: do not require frame_size in avformat_find_stream_info() for MP1/2/3Justin Ruggles2012-03-05
| | | | | | | | | | It was only needed to avoid a bad time base (and thus non-monotone timestamps) for stream copy to avi.
| * avformat: do not require frame_size in avformat_find_stream_info() for AACJustin Ruggles2012-03-05
| | | | | | | | We already will get the needed info because of CODEC_CAP_CHANNEL_CONF
| * swfenc: use av_get_audio_frame_duration() instead of AVCodecContext.frame_sizeJustin Ruggles2012-03-05
| | | | | | | | | | This way we can do stream copy without having the demuxer wait until frame_size has been set.
| * rtpenc: use av_get_audio_frame_duration() for max_frames_per_packetJustin Ruggles2012-03-05
| | | | | | | | | | It is more reliable than AVCodecContext.frame_size for codecs with constant packet duration.
| * riffenc: use av_get_audio_frame_duration()Justin Ruggles2012-03-05
| | | | | | | | | | | | For encoding, frame_size is not a reliable indicator of packet duration. Also, we don't want to have to force the demuxer to find frame_size for stream copy to work.
| * lavf: deobfuscate read_frame_internal().Anton Khirnov2012-03-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Split off packet parsing into a separate function. Parse full packets at once and store them in a queue, eliminating the need for tracking parsing state in AVStream. The horrible unreadable loop in read_frame_internal() now isn't weirdly ordered and doesn't contain evil gotos, so it should be much easier to understand. compute_pkt_fields() now invents slightly different timestamps for two raw vc1 tests, due to has_b_frames being set a bit later. They shouldn't be more wrong (or right) than previous ones.
| * lavf: make read_from_packet_buffer() more flexible.Anton Khirnov2012-03-05
| | | | | | | | | | | | | | | | Make packet buffer a parameter, don't hardcode it to be AVFormatContext.packet_buffer. Also move the function higher in the file, since it will be called from read_frame_internal().
| * lavf: factorize freeing a packet buffer.Anton Khirnov2012-03-05
| |
| * dv: Do not redundantly initialize struct members to zero.Diego Biurrun2012-03-05
| |
* | libutvideo: Add Ut Video encoder wrapperDerek Buitenhuis2012-03-05
| | | | | | | | | | | | | | | | | | All colorspaces are supported. Renamed libutvideo.cpp to libutvideodec.cpp. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | matroska : Add support for reading/writing creation_time metadata.Aaron Colwell2012-03-05
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf: Do not compute the packet duration based on the bitrate if the ↵Michael Niedermayer2012-03-04
| | | | | | | | | | | | | | | | | | frame_size can be determined. This fixes issues when the bitrate is variable or inaccurate but the frame size has not been determined yet. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf: factor out determinable_frame_size()Michael Niedermayer2012-03-04
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-04
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: tiertexseq: set correct block_align for audio tiertexseq: set audio stream start time to 0 voc/avs: Do not change the sample rate mid-stream. segafilm: use the sample rate as the time base for audio streams ea: fix audio pts psx-str: fix audio pts vqf: set packet duration tta demuxer: set packet duration mpegaudio_parser: do not ignore information from the first parsed frame mpegaudio_parser: be less picky about the start position thp: set audio packet durations avcodec: add a Vorbis parser to get packet duration vorbisdec: read the previous window flag for long windows lavc: free the output packet when encoding failed or produced no output. lavc: preserve avpkt->destruct in ff_alloc_packet(). lavc: clarify the meaning of AVCodecContext.frame_number. mpegts: Pad the packet buffer in handle_packet(). mpegts: Do not call read_sl_header() when no bytes remain in the buffer. Conflicts: libavcodec/mpegaudio_parser.c libavcodec/version.h libavformat/mpegts.c tests/ref/fate/pva-demux Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * tiertexseq: set correct block_align for audioJustin Ruggles2012-03-03
| |
| * tiertexseq: set audio stream start time to 0Justin Ruggles2012-03-03
| | | | | | | | | | Update FATE test to reflect delayed video due to the file having audio-only frames prior to the first frame with video.
| * voc/avs: Do not change the sample rate mid-stream.Justin Ruggles2012-03-03
| | | | | | | | | | Also, set the time base based on the sample rate. lavf-voc seek test updated to reflect slightly different seek points.
| * segafilm: use the sample rate as the time base for audio streamsJustin Ruggles2012-03-03
| |
| * ea: fix audio ptsJustin Ruggles2012-03-03
| | | | | | | | | | | | | | The time base is 1 / sample_rate, not 90000. Several more codecs encode the sample count in the first 4 bytes of the chunk, so we set the durations accordingly. Also, we can set start_time and packet duration instead of keeping track of the sample count in the demuxer.
| * psx-str: fix audio ptsJustin Ruggles2012-03-03
| | | | | | | | Each packet has 18 sectors with 224/channels samples in each sector.
| * vqf: set packet durationJustin Ruggles2012-03-03
| | | | | | | | | | | | Fixes timestamp calculation. The FATE reference is updated because timestamp calculations are now more accurate. Previous timestamps were based on average bit rate.
| * tta demuxer: set packet durationJustin Ruggles2012-03-03
| |
| * thp: set audio packet durationsJustin Ruggles2012-03-03
| |
| * avcodec: add a Vorbis parser to get packet durationJustin Ruggles2012-03-03
| | | | | | | | This also allows for removing some of the Vorbis-related hacks.
| * mpegts: Pad the packet buffer in handle_packet().Alex Converse2012-03-02
| | | | | | | | | | | | | | This allows it to be used with get_bits without the thread of overreads. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
| * mpegts: Do not call read_sl_header() when no bytes remain in the buffer.Alex Converse2012-03-02
| | | | | | | | | | Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* | mpegts: fix stack array overread in read_sl_header()Michael Niedermayer2012-03-03
| | | | | | | | | | Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | mpegts: prevent get_bits64() from reading nonsense at the end.Michael Niedermayer2012-03-03
| | | | | | | | | | Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | mpeg-ts: fix handling of size=0 SL headers.Michael Niedermayer2012-03-03
| | | | | | | | | | Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>