Reimar Döffinger [Tue, 13 Oct 2009 08:08:10 +0000 (08:08 +0000)]
MXF: simply ignore tracks that are invalid due to not having a valid Sequence
part instead of failing completely.
This partly fixes issue 1470 (broken files created by BBC ingex recorder).
Originally committed as revision 20221 to svn://svn.ffmpeg.org/ffmpeg/trunk
Justin Ruggles [Mon, 12 Oct 2009 21:30:03 +0000 (21:30 +0000)]
Calculate correct packet durations when demuxing Ogg/Speex. This involves
determining if there is any delay in the first packet and/or any truncation in
the final packet.
Originally committed as revision 20216 to svn://svn.ffmpeg.org/ffmpeg/trunk
Sascha Sommer [Mon, 12 Oct 2009 19:50:31 +0000 (19:50 +0000)]
extend description of avcodec_decode_audio3:
- clarify when 0 is returned
- explain that decode_audio3 has to be called multiple times when there
are multiple frames in a single packet
Originally committed as revision 20215 to svn://svn.ffmpeg.org/ffmpeg/trunk
Reimar Döffinger [Mon, 12 Oct 2009 14:43:57 +0000 (14:43 +0000)]
Move dnxhdenc to execute2 multithreading API.
This allows for some simplifications like removing some outer loops
and gives much better performance for thread_count > number of idle CPUs.
Originally committed as revision 20211 to svn://svn.ffmpeg.org/ffmpeg/trunk
Reimar Döffinger [Mon, 12 Oct 2009 11:35:35 +0000 (11:35 +0000)]
Add an execute2 function that is more flexible and allows to use parallel
processing with jobs > threads without wasting too much memory.
It also avoids needing a separate int array when the only additional data
the jobs needs is a single int running from 0 to count-1.
Originally committed as revision 20210 to svn://svn.ffmpeg.org/ffmpeg/trunk
Måns Rullgård [Sun, 11 Oct 2009 10:15:45 +0000 (10:15 +0000)]
ARM: enable PIC for shared libs
Recent versions of gcc generate movw/movt pairs, and the linkers fail
to handle the associated relocations properly. Those responsible at
Codesourcery have refused to consider fixing this. Blame them for
making shared libraries slower than they need to be.
Originally committed as revision 20203 to svn://svn.ffmpeg.org/ffmpeg/trunk
Reimar Döffinger [Sat, 10 Oct 2009 14:43:31 +0000 (14:43 +0000)]
Hack: set the coded frame PTS to the incoming PTS.
This is not correct, but libtheora does not seem to provide a way
to get the correct value, and this is necessary to make encoding
produce sensible time stamps when encoded content is variable
FPS or the time base is simply different from FPS.
Somewhat fixes issue 1197.
Originally committed as revision 20199 to svn://svn.ffmpeg.org/ffmpeg/trunk
Robert Swain [Fri, 9 Oct 2009 15:38:44 +0000 (15:38 +0000)]
AAC: Fix regression introduced in r20067 where ADTS files would always be
signalled as having a channel configuration of 1 in output_configure().
Previously this didn't matter but it does now.
Originally committed as revision 20193 to svn://svn.ffmpeg.org/ffmpeg/trunk
Anton Khirnov [Mon, 5 Oct 2009 21:36:56 +0000 (21:36 +0000)]
Only read ID3v1 tag if ID3v2 isn't present or is empty.
This prevents the demuxer from exporting multiple semantically identical but
differently named tags.
Patch by Anton Khirnov, wyskas gmail
Originally committed as revision 20175 to svn://svn.ffmpeg.org/ffmpeg/trunk
Daniel Verkamp [Mon, 5 Oct 2009 09:19:42 +0000 (09:19 +0000)]
Fix pcm_read_seek () when the position it calculates is greater than 2 GB.
pcm_read_seek() puts the return value of url_fseek() in an int and then
compares < 0 to see if an error occurred; if the position is greater
than 2 GB, the 32-bit signed int result will be < 0.
Change the type of ret to int64_t to avoid the wraparound.
patch by Daniel Verkamp, daniel drv nu
Originally committed as revision 20169 to svn://svn.ffmpeg.org/ffmpeg/trunk
Prefer "loglevel" over "logging level number or string" as argname of
the loglevel command line option.
Make the loglevel option help message more clear, since the option
argument is shown as a single token, and make the whole message better
aligned with the other help messages.
Originally committed as revision 20149 to svn://svn.ffmpeg.org/ffmpeg/trunk
Return special EOF checking for aiff and au demuxers, the check was at
the wrong place, causing an empty packet to be read before EOF was
detected and the eof detection is already now handled by av_get_packet anyway.
Originally committed as revision 20138 to svn://svn.ffmpeg.org/ffmpeg/trunk
Return any error return values from av_get_packet, get_buffer etc. unchanged
in the raw demuxers.
Also remove special handling of 0-size reads, if they are due to an error/eof,
these are already converted to the appropriate error by get_buffer.
Originally committed as revision 20137 to svn://svn.ffmpeg.org/ffmpeg/trunk
Make seek regression tests fit after previous get_buffer change.
The au and aiff demuxers would always return an empty packet before
detecting EOF, this is now fixed with av_get_packet etc. returning EOF.
Originally committed as revision 20136 to svn://svn.ffmpeg.org/ffmpeg/trunk
Make get_buffer and get_partial_buffer return url_ferror or AVERROR_EOF as
appropriate if it couldn't read any data at all.
This should make handling of EOF and error simpler or make it work right without
extra code in a few place (e.g. raw demuxer).
Originally committed as revision 20135 to svn://svn.ffmpeg.org/ffmpeg/trunk
Make rawvideo_read_packet return partial frames.
This is consistent with other demuxers and also fixes a memleak (memory
allocated for partial frame data was leaked).
Originally committed as revision 20130 to svn://svn.ffmpeg.org/ffmpeg/trunk
Make avcodec_open set codec_id and codec_type if they haven't been set.
This fixes the API breakage introduced by the check that avctx codec id and type
match the opened codec and should make (almost?) all applications work again.
Originally committed as revision 20125 to svn://svn.ffmpeg.org/ffmpeg/trunk
put_bits can only reliably write up to 31 bit bits, above it relies on
undefined shift behaviour.
Document this, fix the assert and add a put_bits32 to handle writing 32
bits and use that where necessary.
Originally committed as revision 20124 to svn://svn.ffmpeg.org/ffmpeg/trunk