Commit Graph

42879 Commits

Author SHA1 Message Date
Michael Niedermayer
3005122485 hls: call avformat_find_stream_info()
This is needed to correctly demux h264 in ts

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 17:40:33 +02:00
Michael Niedermayer
da62b4326b av_find_stream_info: skip flushing codecs and estimating timings if probe_size==0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 17:39:25 +02:00
Michael Niedermayer
703f294934 fate: update avui test due to
commit 20e88d8618

    Fix avui stream-copy.

    The native decoder and MPlayer's binary decoder only need the
    APRG atom, QuickTime at least requires also the ARES atom and
    four additional 0 bytes padding at the end of stsd.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 14:29:39 +02:00
Stefano Sabatini
10b44f4932 ffprobe: use av_guess_sample_aspect_ratio() for guessing the aspect ratio
This is consistent with what av_dump_format() does.

In particular, fix trac ticket #1568.
2012-07-25 10:05:02 +02:00
Stefano Sabatini
9b42d6ed1f lavf/avformat.h: fix verb person for av_guess_sample_aspect_ratio()
Prefer impersonal form over third person, consistent with the rest of
docs.
2012-07-25 10:04:57 +02:00
Stefano Sabatini
e564de26b3 lavfi/avfilter.h: add doxy for AVFilterLink.out_buf 2012-07-25 10:03:34 +02:00
Stefano Sabatini
b73be80d48 lavfi/avfilter.h: add doxy for AVFilterLink.cur_buf 2012-07-25 10:01:29 +02:00
Carl Eugen Hoyos
20e88d8618 Fix avui stream-copy.
The native decoder and MPlayer's binary decoder only need the
APRG atom, QuickTime at least requires also the ARES atom and
four additional 0 bytes padding at the end of stsd.
2012-07-25 09:26:17 +02:00
Michael Niedermayer
1c2beff04a lavf: Set pos for all packets of AVSTREAM_PARSE_FULL_RAW files.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 01:57:25 +02:00
Michael Niedermayer
72743aef03 imgconvert: Implement avcodec_find_best_pix_fmt_of_list()
The old avcodec_find_best_pix_fmt() was insufficient due to 64 pix_fmt limit.
In ffmpeg this problem has been solved long ago through avcodec_find_best_pix_fmt2()
Today libav has added a incompatible modified version of avcodec_find_best_pix_fmt2()
under the same name, thus again breaking ABI/API ...

The avcodec_find_best_pix_fmt_of_list() added in this commit here makes the libav
API available to ffmpeg users too.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 01:25:28 +02:00
Piotr Bandurski
23bb85b069 riff: make the G723.1 in wav output compatible with WMP/msacm codec
Attached patch (together with demuxing patch) allows WMP/msacm G723.1 codec decode files encoded by FFmpeg.

Tested with both 6400 and 5333 mode

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 00:50:40 +02:00
Michael Niedermayer
e2fd18d40d lavf: factor AVStream st out
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 00:45:17 +02:00
Michael Niedermayer
6b38101df5 parse_packet: reset pkt->pos after it has been used
This should have no effect as it was not used in this case

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 00:42:50 +02:00
Michael Bradshaw
043c75a989 libopenjpegenc: set numresolution max to INT_MAX
OpenJPEG doesn't have a max lowres limit, so don't enforce an arbitrary one.

Signed-off-by: Michael Bradshaw <mbradshaw@sorensonmedia.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 00:29:34 +02:00
Michael Niedermayer
93342de1d8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtmp: Add credit/copyright to librtmp authors for parts of the RTMPE code
  rtmp: Move the CONFIG_ condition into the if conditions
  aac: Mention abbreviation as well in long_name
  build: Skip compiling rtmpdh.h if ffrtmpcrypt protocol is not enabled
  doc: Add Git configuration section
  configure: Add a dependency on https for rtmpts
  rtp: Only choose static payload types if the sample rate and channels are right

Conflicts:
	doc/git-howto.texi
	libavformat/rtmpproto.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 21:15:57 +02:00
Nicolas George
3ccf22c64a ffmpeg: keep packet/frame availability in global structures.
This replaces the use of the no_packet and no_frame arrays.
2012-07-24 19:14:10 +02:00
Piotr Bandurski
b9c129be0f riff: fix remuxing of G723_1 in wav
Attached patch fixes remuxing of G723.1 in wav, so the output is playable by WMP.
(It's still not enough for encoding - probably some extradata should be added to the output file
to make it playable by WMP/win codec)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 18:53:53 +02:00
Martin Storsjö
6a433fdba8 rtmp: Add credit/copyright to librtmp authors for parts of the RTMPE code
Our implementation of RTMPE is heavily based on librtmp.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-24 18:13:26 +03:00
Michael Niedermayer
01272e7662 Revert "lavf: count skipped samples for initial timestamps."
This reverts commit 885fc05865.
This commit caused timestamps in case of generic seeking to become
inconsistent.
2012-07-24 17:10:38 +02:00
Samuel Pitoiset
f7bfb126cd rtmp: Move the CONFIG_ condition into the if conditions
This makes sure these calls are removed by dead code elimination
even if optimization is disabled. This fixes building without
crypto libraries without optimization.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-24 15:54:10 +03:00
Michael Niedermayer
0e1925ddc4 iffdec: Fix integer overflow.
Found-by: durandal_1707
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 05:17:36 +02:00
Michael Niedermayer
22ce78a95e vc1dec: dont apply the loop filter on fields
Fixes read of uninitialized memory

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 04:55:13 +02:00
Michael Niedermayer
697edcc12a vc1dec: dont attempt error concealment on field pictures.
This is not implemented and doesnt work.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 04:12:18 +02:00
Michael Niedermayer
2e346bdaba ec: print picture type with concealment error message.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 04:12:18 +02:00
Diego Biurrun
65d94f63ca aac: Mention abbreviation as well in long_name
Most people know the codec as "AAC" and not "Advanced Audio Coding".
2012-07-24 02:37:49 +02:00
Alexander Strasser
3f22fcce3a tools/bisect-create: Support "bisect run"
Make it possible to use the run bisect sub command. As with all
other ffbisect commands, revisions that do not contain the needed
tools are skipped.

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
2012-07-24 01:24:23 +02:00
yang
6a2bad2c4f dsputil_mmx: fix incorrect assembly code
In file libavcodec/x86/dsputil_mmx.c, function ff_put_pixels_clamped_mmx(), there are two assembly code blocks. In the first block (in the unrolled loop), the instructions "movq 8%3, %%mm1 \n\t" etc have problem.
For above instruction, it is clear what the programmer wants: a load from p + 8. But this assembly code doesn’t guarantee that. It only works if the compiler puts p in a register to produce an instruction like this: “movq 8(%edi), %mm1”. During compiler optimization, it is possible that the compiler will be able to constant propagate into p. Suppose p = &x[10000]. Then operand 3 can become 10000(%edi), where %edi holds &x. And the instruction becomes “movq 810000(%edx)”. That is, it will stride by 810000 instead of 8.
This will cause the segmentation fault.
This error was fixed in the second block of the assembly code, but not in the unrolled loop.

How to reproduce:
This error is exposed when we build the ffmpeg using Intel C++ Compiler, IPO+PGO optimization. The ffmpeg was crashed when decoding a mjpeg video.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 00:55:05 +02:00
Diego Biurrun
6b80142144 build: Skip compiling rtmpdh.h if ffrtmpcrypt protocol is not enabled
The ffrtmpcrypt protocol depends on external libraries, which are
also required to compile the header file.
2012-07-24 00:21:39 +02:00
Michael Niedermayer
dc31b84cbf rtmpproto: fix compilation without optimizations
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 00:11:14 +02:00
Martin Storsjö
c66495c6d7 configure: Add a dependency on https for rtmpts
The rtmpts protocol uses https implicitly, via the ffrtmphttp
protocol, but the ffrtmphttp protocol is also useable for plain
rtmpt without https, so the dependency needs to be added here instead.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-24 00:06:07 +02:00
Diego Biurrun
816ff352a3 doc: Add Git configuration section 2012-07-23 23:56:22 +02:00
Michael Niedermayer
5a9fa84585 cavsdec: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 23:54:13 +02:00
Michael Niedermayer
bb1e0e80b0 libavcodec/bitstream: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 23:54:13 +02:00
Paul B Mahol
3933782735 cosmetics: iff: split very long line
Also while here sort chunk ids.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-23 21:46:28 +00:00
Carl Eugen Hoyos
d147aedb6b Fix typo in v410 decoder. 2012-07-23 23:44:13 +02:00
Martin Storsjö
6c1ed45483 configure: Add a dependency on https for rtmpts
The rtmpts protocol uses https implicitly, via the ffrtmphttp
protocol, but the ffrtmphttp protocol is also useable for plain
rtmpt without https, so the dependency needs to be added here instead.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-24 00:43:27 +03:00
Adriano Pallavicino
999c63e4ca rtp: Only choose static payload types if the sample rate and channels are right
If using a different sample rate or number of channels, use a dynamic
payload type instead, where the parameters are passed in the SDP.

G722 is a special case where the normal rules don't apply.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-24 00:42:58 +03:00
Paul B Mahol
c9a96ec3c7 cosmetics: iff: fix typo
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-23 21:00:17 +00:00
Nicolas George
ddcb99bb51 vf_deshake: set cur_buf to NULL.
Fix a segfault.
2012-07-23 22:44:25 +02:00
Michael Niedermayer
6d4c97bb85 fate: enable fate-vc1_sa10143
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 22:12:12 +02:00
Paul B Mahol
ebe846fa73 vf_colormatrix: add missing semicolon
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-23 19:58:13 +00:00
Michael Niedermayer
2cb4d51654 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  v410dec: Implement explode mode support
  zerocodec: fix direct rendering.
  wav: init st to NULL to avoid a false-positive warning.
  wavpack: set bits_per_raw_sample for S32 samples to properly identify 24-bit
  h264: refactor NAL decode loop
  RTMPTE protocol support
  RTMPE protocol support
  rtmp: Add ff_rtmp_calc_digest_pos()
  rtmp: Rename rtmp_calc_digest to ff_rtmp_calc_digest and make it global
  swscale: add missing HAVE_INLINE_ASM check.
  lavfi: place x86 inline assembly under HAVE_INLINE_ASM.
  vc1: Add a test for interlaced field pictures
  swscale: Mark all init functions as av_cold
  swscale: x86: Drop pointless _mmx suffix from filenames
  lavf: use conditional notation for default codec in muxer declarations.
  swscale: place inline assembly bilinear scaler under HAVE_INLINE_ASM.
  dsputil: ppc: cosmetics: pretty-print
  dsputil: x86: add SHUFFLE_MASK_W macro
  configure: respect CC_O setting in check_cc

Conflicts:
	Changelog
	configure
	libavcodec/v410dec.c
	libavcodec/zerocodec.c
	libavformat/asfenc.c
	libavformat/version.h
	libswscale/utils.c
	libswscale/x86/swscale.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 21:25:09 +02:00
Justin Ruggles
7e15df7551 swr: resampling: add filter type and Kaiser window beta to AVOptions 2012-07-23 19:23:39 +02:00
Derek Buitenhuis
d04c5293ce v410dec: Implement explode mode support
Try and decode broken files, but still fail if explode
mode is enabled.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-23 11:36:48 -04:00
Reimar Döffinger
6c8fdfc5e5 zerocodec: fix direct rendering.
Set picture type before calling get_buffer.
This allows the DR application to make better decisions.
It also fixes a resource leak in case of missing reference frames
since it would call get_buffer but never release_buffer.
Also use FFSWAP to ensure that the AVFrame is properly initialized
in the next get_buffer (in particular that data[0] is NULL).

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-23 11:35:21 -04:00
Clément Bœsch
61884b9d1b wav: init st to NULL to avoid a false-positive warning.
If st is NULL, it means no 'fmt ' tag is found, but 'data' tag (which
needs a previous 'fmt ' tag to be parsed correctly and st initialized)
check will make sure st is never dereferenced in that case.

Fixes warning:
    libavformat/wav.c: In function ‘wav_read_header’:
    libavformat/wav.c:499:44: warning: ‘st’ may be used uninitialized in this function [-Wmaybe-uninitialized]

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-23 11:34:08 -04:00
Hendrik Leppkes
37c6ad2345 wavpack: set bits_per_raw_sample for S32 samples to properly identify 24-bit
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-23 11:33:58 -04:00
Nicolas George
a7ac05ce2f src_movie: implement multiple outputs.
The audio and video code paths were too different,
most of the decoding has been rewritten.
2012-07-23 17:14:59 +02:00
Nicolas George
05776119c1 buffersrc: use avfilter_get_buffer_ref_from_frame. 2012-07-23 17:14:59 +02:00
Nicolas George
5c5f75b92b lavfi: add avfilter_get_buffer_ref_from_frame. 2012-07-23 17:14:59 +02:00