aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat
Commit message (Collapse)AuthorAgeFilesLines
...
| * cosmetics: reindentJustin Ruggles2012-03-051-5/+5
| |
| * avformat: do not require a pixel/sample format if there is no decoderJustin Ruggles2012-03-052-13/+30
| | | | | | | | | | | | | | | | 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-051-14/+33
| | | | | | | | 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-051-19/+14
| | | | | | | | | | | | | | | | | | | | 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-051-3/+5
| | | | | | | | | | 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-051-2/+0
| | | | | | | | it is not necessary.
| * aiffdec: do not set AVCodecContext.frame_sizeJustin Ruggles2012-03-051-12/+18
| | | | | | | | | | | | | | | | | | 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-051-13/+0
| | | | | | | | It is not necessary.
| * ape: do not set AVCodecContext.frame_size.Justin Ruggles2012-03-051-1/+0
| | | | | | | | prevents lavf from setting incorrect packet durations.
| * rdt: remove workaround for infinite loop with aacJustin Ruggles2012-03-051-3/+0
| | | | | | | | 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-051-3/+0
| | | | | | | | | | 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-051-3/+0
| | | | | | | | | | 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-051-1/+0
| | | | | | | | 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-051-5/+1
| | | | | | | | | | 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-051-2/+9
| | | | | | | | | | It is more reliable than AVCodecContext.frame_size for codecs with constant packet duration.
| * riffenc: use av_get_audio_frame_duration()Justin Ruggles2012-03-051-5/+23
| | | | | | | | | | | | 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-054-170/+178
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-051-12/+20
| | | | | | | | | | | | | | | | 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-051-17/+13
| |
| * dv: Do not redundantly initialize struct members to zero.Diego Biurrun2012-03-051-7/+1
| |
* | libutvideo: Add Ut Video encoder wrapperDerek Buitenhuis2012-03-051-0/+1
| | | | | | | | | | | | | | | | | | 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-052-1/+24
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf: Do not compute the packet duration based on the bitrate if the ↵Michael Niedermayer2012-03-041-1/+1
| | | | | | | | | | | | | | | | | | 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-041-6/+12
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-0412-38/+62
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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-031-1/+1
| |
| * tiertexseq: set audio stream start time to 0Justin Ruggles2012-03-031-0/+1
| | | | | | | | | | 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-031-4/+12
| | | | | | | | | | 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-031-4/+7
| |
| * ea: fix audio ptsJustin Ruggles2012-03-031-12/+13
| | | | | | | | | | | | | | 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-031-1/+4
| | | | | | | | Each packet has 18 sectors with 224/channels samples in each sector.
| * vqf: set packet durationJustin Ruggles2012-03-031-1/+2
| | | | | | | | | | | | 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-031-4/+12
| |
| * thp: set audio packet durationsJustin Ruggles2012-03-031-0/+3
| |
| * avcodec: add a Vorbis parser to get packet durationJustin Ruggles2012-03-033-5/+5
| | | | | | | | This also allows for removing some of the Vorbis-related hacks.
| * mpegts: Pad the packet buffer in handle_packet().Alex Converse2012-03-021-1/+2
| | | | | | | | | | | | | | 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-021-1/+1
| | | | | | | | | | 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-031-1/+1
| | | | | | | | | | 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-031-0/+3
| | | | | | | | | | 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-031-0/+6
| | | | | | | | | | Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | bluray protocolPetri Hintukainen2012-03-033-0/+237
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-03-037-34/+67
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (29 commits) amrwb: remove duplicate arguments from extrapolate_isf(). amrwb: error out early if mode is invalid. h264: change underread for 10bit QPEL to overread. matroska: check buffer size for RM-style byte reordering. vp8: disable mmx functions with sse/sse2 counterparts on x86-64. vp8: change int stride to ptrdiff_t stride. wma: fix invalid buffer size assumptions causing random overreads. Windows Media Audio Lossless decoder rv10/20: Fix slice overflow with checked bitstream reader. h263dec: Disallow width/height changing with frame threads. rv10/20: Fix a buffer overread caused by losing track of the remaining buffer size. rmdec: Honor .RMF tag size rather than assuming 18. g722: Fix the QMF scaling r3d: don't set codec timebase. electronicarts: set timebase for tgv video. electronicarts: parse the framerate for cmv video. ogg: don't set codec timebase electronicarts: don't set codec timebase avs: don't set codec timebase wavpack: Fix an integer overflow ... Conflicts: libavcodec/arm/vp8dsp_init_arm.c libavcodec/fraps.c libavcodec/h264.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo.c libavcodec/msmpeg4.c libavcodec/pnmdec.c libavcodec/qpeg.c libavcodec/rawenc.c libavcodec/ulti.c libavcodec/vcr1.c libavcodec/version.h libavcodec/wmalosslessdec.c libavformat/electronicarts.c libswscale/ppc/yuv2rgb_altivec.c tests/ref/acodec/g722 tests/ref/fate/ea-cmv Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * matroska: check buffer size for RM-style byte reordering.Ronald S. Bultje2012-03-021-3/+19
| | | | | | | | | | Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
| * rmdec: Honor .RMF tag size rather than assuming 18.Alex Converse2012-03-021-4/+2
| |
| * r3d: don't set codec timebase.Anton Khirnov2012-03-021-11/+16
| | | | | | | | | | | | It's not supposed to be set by demuxers. Set avg_frame_rate and r_frame_rate instead.
| * electronicarts: set timebase for tgv video.Anton Khirnov2012-03-021-1/+1
| | | | | | | | | | | | | | | | The container has no timestamps and the framerate isn't stored in the data either. The decoder sets codec timebase to experimentally found value 1/15. Do the same for the demuxer too, it should at least be better than the default 1/90000.
| * electronicarts: parse the framerate for cmv video.Anton Khirnov2012-03-021-2/+15
| |
| * ogg: don't set codec timebaseAnton Khirnov2012-03-022-11/+9
| | | | | | | | Demuxers are not supposed to set it.
| * electronicarts: don't set codec timebaseAnton Khirnov2012-03-021-1/+3
| | | | | | | | | | | | Demuxers are not supposed to set it. Set stream timebase and framerates instead (this is a cfr container with no timestamps).
| * avs: don't set codec timebaseAnton Khirnov2012-03-021-2/+2
| | | | | | | | | | Demuxers are not supposed to set it. Set r_frame_rate and avg_frame_rate instead.