ffmpeg.git
7 years agolavf/oggdec: rework allocations in ogg_new_streams().
Clément Bœsch [Fri, 14 Sep 2012 21:51:30 +0000 (23:51 +0200)]
lavf/oggdec: rework allocations in ogg_new_streams().

7 years agolavf/oggdec: simplify destroying streams with chained audio streams.
Clément Bœsch [Tue, 21 Aug 2012 18:39:14 +0000 (20:39 +0200)]
lavf/oggdec: simplify destroying streams with chained audio streams.

nstreams is assumed to be 1 at that point, so the loop is pointless.

7 years agolavf/oggdec: rename str to sid.
Clément Bœsch [Fri, 14 Sep 2012 21:10:38 +0000 (23:10 +0200)]
lavf/oggdec: rename str to sid.

"str" is misleading here (it's often used for string). "sid" makes more
sense to identify a stream id.

7 years agolavf/oggdec: remove a comment not matching anything.
Clément Bœsch [Fri, 14 Sep 2012 21:07:23 +0000 (23:07 +0200)]
lavf/oggdec: remove a comment not matching anything.

7 years agolavf/oggdec: inline ogg_get_headers().
Clément Bœsch [Fri, 14 Sep 2012 21:05:57 +0000 (23:05 +0200)]
lavf/oggdec: inline ogg_get_headers().

There is no point in a distant definition of a small function like this
used only once.

Additional spacing to distinguish better the block.

7 years agovda_h264.c: Change header inclusion order.
Carl Eugen Hoyos [Sun, 16 Sep 2012 14:43:27 +0000 (16:43 +0200)]
vda_h264.c: Change header inclusion order.

Fixes compilation with XCode 3.2.6.
Fixes ticket #1736.

7 years agoMentioning 8bps once in the FFmpeg documentation is sufficient.
Carl Eugen Hoyos [Sun, 16 Sep 2012 14:31:33 +0000 (16:31 +0200)]
Mentioning 8bps once in the FFmpeg documentation is sufficient.

7 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Sun, 16 Sep 2012 12:48:45 +0000 (14:48 +0200)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  mpegvideo: drop unnecessary arguments to hpel_motion()
  mpegvideo: drop 'inline' from some functions
  nellymoserdec: drop support for s16 output.
  bmpdec: only initialize palette for pal8.
  build: Properly remove object files while cleaning
  flacdsp: arm optimised lpc filter
  compat/vsnprintf: return number of bytes required on truncation.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
7 years agomp3enc: merge mp2/mp3_write_trailer
Michael Niedermayer [Sun, 16 Sep 2012 12:37:50 +0000 (14:37 +0200)]
mp3enc: merge mp2/mp3_write_trailer

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agomp3enc: move mp3_update_xing() down
Michael Niedermayer [Sun, 16 Sep 2012 12:31:58 +0000 (14:31 +0200)]
mp3enc: move mp3_update_xing() down

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoMerge commit '3f7fd59d151a2773f0e2e93e56b6b13ec6e5334b'
Michael Niedermayer [Sun, 16 Sep 2012 12:14:47 +0000 (14:14 +0200)]
Merge commit '3f7fd59d151a2773f0e2e93e56b6b13ec6e5334b'

* commit '3f7fd59d151a2773f0e2e93e56b6b13ec6e5334b':
  avformat: fix typo in avformat_close_input
  mp3enc: write Xing TOC
  mp3enc: support MPEG-2 and MPEG-2.5 in Xing header.
  mp3enc: downgrade some errors in writing Xing frame to warnings
  lavf: flush the output AVIOContext in av_write_trailer().
  lavf: cosmetics, reformat av_write_trailer().
  avio: flush the internal buffer in avio_close()
  Enhance doc on asyncts audiofilter
  cmdutils: avoid setting data pointers to invalid values in alloc_buffer()
  libavcodec: remove av_destruct_packet_nofree()

Conflicts:
libavcodec/avpacket.c
libavformat/mp3enc.c
libavformat/nutenc.c
libavformat/utils.c
libavformat/version.h
tests/ref/lavf/voc
tests/ref/lavf/voc_s16

Merged-by: Michael Niedermayer <michaelni@gmx.at>
7 years agompegvideo: drop unnecessary arguments to hpel_motion()
Mans Rullgard [Sat, 4 Aug 2012 01:51:27 +0000 (02:51 +0100)]
mpegvideo: drop unnecessary arguments to hpel_motion()

These arguments are either constants or copies of MpegEncContext
fields just as easily accessed within the function.

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agompegvideo: drop 'inline' from some functions
Mans Rullgard [Sat, 4 Aug 2012 01:22:43 +0000 (02:22 +0100)]
mpegvideo: drop 'inline' from some functions

These functions do not benefit from being inlined.  They are large,
and there are no opportunities for constant propagation.

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agonellymoserdec: drop support for s16 output.
Anton Khirnov [Sun, 22 Jul 2012 09:19:01 +0000 (11:19 +0200)]
nellymoserdec: drop support for s16 output.

It internally decodes as float and then converts to s16 by a call to
float_to_int16(). The caller can do this just as well by using lavr.

7 years agobmpdec: only initialize palette for pal8.
Anton Khirnov [Sun, 16 Sep 2012 06:33:09 +0000 (08:33 +0200)]
bmpdec: only initialize palette for pal8.

Gray8 is not considered to be paletted, so this would cause an invalid
write.

Fixes bug 367.

CC: libav-stable@libav.org
7 years agolavc/ass_split: add ff_ prefix to ass_style_get().
Clément Bœsch [Sun, 16 Sep 2012 01:05:01 +0000 (03:05 +0200)]
lavc/ass_split: add ff_ prefix to ass_style_get().

7 years agolavfi/ass: mark ass_libavfilter_log_level_map as static const.
Clément Bœsch [Sun, 16 Sep 2012 00:59:43 +0000 (02:59 +0200)]
lavfi/ass: mark ass_libavfilter_log_level_map as static const.

7 years agolavf/mkv: prefix video stereo arrays with ff_.
Clément Bœsch [Sun, 16 Sep 2012 00:58:40 +0000 (02:58 +0200)]
lavf/mkv: prefix video stereo arrays with ff_.

7 years agolavu/error: make error_entries static const.
Clément Bœsch [Sun, 16 Sep 2012 00:53:32 +0000 (02:53 +0200)]
lavu/error: make error_entries static const.

7 years agoaf_pan: Fix sscanf formats to work with buggy sscanf implementations
Hendrik Leppkes [Fri, 14 Sep 2012 16:45:34 +0000 (12:45 -0400)]
af_pan: Fix sscanf formats to work with buggy sscanf implementations

Some implementations of sscanf do not handle a space before a trailing %n
properly.

As an example, MSVC's does this for the second insatnce in this patch, for
an input of "0x3:c0=c1:c1=c0":
    1) Match the final "c0" or "c1".
    2) Realize it's at the end of the string.
    3) Check for %n.
    4) There is no %n, but a space instead.
    5) Leave 'len' unitilialized.

So, move it out of the sscanf format strings, and call skip_spaces instead.

This bug does not affect skip_spaces since %n is the first and only formatting
string.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
7 years agobprint: Remove custom vsnprintf
Derek Buitenhuis [Fri, 7 Sep 2012 13:05:28 +0000 (09:05 -0400)]
bprint: Remove custom vsnprintf

A proper implementation was introduced in
ba537202801d71711f1ef9306a6248dd2d426fa0 for MSVC, and
MinGW already has vsnprintf.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
7 years agocompat/vsnprintf: return number of bytes required on truncation.
Ronald S. Bultje [Fri, 14 Sep 2012 20:03:25 +0000 (16:03 -0400)]
compat/vsnprintf: return number of bytes required on truncation.

This conforms to C99, but requires Windows >= XP.

7 years agomsvc: Add a va_copy compatability macro for msvc
Derek Buitenhuis [Fri, 14 Sep 2012 19:08:19 +0000 (15:08 -0400)]
msvc: Add a va_copy compatability macro for msvc

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
7 years agomsvc: Disable stripping
Derek Buitenhuis [Sat, 15 Sep 2012 20:04:41 +0000 (16:04 -0400)]
msvc: Disable stripping

MSVC-built binaries should not be stripped.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
7 years agobuild: Properly remove object files while cleaning
Mans Rullgard [Sat, 15 Sep 2012 18:33:56 +0000 (18:33 +0000)]
build: Properly remove object files while cleaning

Previously, object files in, for example, compat/ were left
after a clean or distclean was run.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
7 years agoflacdsp: arm optimised lpc filter
Mans Rullgard [Thu, 5 Jul 2012 21:47:41 +0000 (22:47 +0100)]
flacdsp: arm optimised lpc filter

7 years agolavf/segment: Use distinct IDs for list type ext & csv
Alexander Strasser [Fri, 14 Sep 2012 21:31:47 +0000 (23:31 +0200)]
lavf/segment: Use distinct IDs for list type ext & csv

Remove a bogus warning when using segment_list_type csv.

The LIST_TYPE_EXT constant is only used internally, so it can
be removed when the feature (segment_list_type ext) gets removed.

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
7 years agolavf/segment: Rename variable in print_csv_escaped_str()
Alexander Strasser [Fri, 14 Sep 2012 16:26:50 +0000 (18:26 +0200)]
lavf/segment: Rename variable in print_csv_escaped_str()

Rename a local variable to make the code more self-explanatory.

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
7 years agolavf/segment: Simplify CSV field quoting code
Alexander Strasser [Sun, 9 Sep 2012 19:27:13 +0000 (21:27 +0200)]
lavf/segment: Simplify CSV field quoting code

Should also be faster (though I doubt that hardly ever matters
for the usage here).

Also remove the pointer copy. Since we do not need to reset the
pointer to the start of the string, it is not needed anymore.

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
7 years agoudp: pick params from AVOptions also
Andrey Utkin [Thu, 13 Sep 2012 11:10:26 +0000 (14:10 +0300)]
udp: pick params from AVOptions also

This updated version does not deviate from previous behavior on default value of 'buffer_size'

I skipped porting 'sources', 'block' options for now as they're parsed seriously. So i added TODO remarks.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agopngdec: av_log() zlib errors
Michael Niedermayer [Sat, 15 Sep 2012 19:30:57 +0000 (21:30 +0200)]
pngdec: av_log() zlib errors

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoRemove mt-work directory
Derek Buitenhuis [Tue, 11 Sep 2012 15:50:23 +0000 (11:50 -0400)]
Remove mt-work directory

It is all dead and rotting code.

Also, move yuvcmp.c to tools. Its license is non-existent, however,
and should be clarified.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
7 years agocompat/vsnprintf: return number of bytes required on truncation.
Ronald S. Bultje [Fri, 14 Sep 2012 18:56:46 +0000 (18:56 +0000)]
compat/vsnprintf: return number of bytes required on truncation.

This conforms to C99, but requires Windows >= XP.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
7 years agolavc/vp56: Re-indent functions affected by threading refactor
Ben Jackson [Sat, 15 Sep 2012 17:32:44 +0000 (10:32 -0700)]
lavc/vp56: Re-indent functions affected by threading refactor

All whitespace plus a curly brace.

Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agolavc/vp6: Implement "slice" threading for VP6A decode
Ben Jackson [Sat, 15 Sep 2012 17:32:43 +0000 (10:32 -0700)]
lavc/vp6: Implement "slice" threading for VP6A decode

The YUV channels of VP6 are encoded in a highly linear fashion which does
not have any slice-like concept to thread.  The alpha channel of VP6A is
fairly independent of the YUV and comprises 40% of the work.  This patch
uses the THREAD_SLICE capability to split the YUV and A decodes into
separate threads.

Two bugs are fixed by splitting YUV and alpha state:
- qscale_table from VP6A decode was for alpha channel instead of YUV
- alpha channel filtering settings were overwritten by YUV header parse

Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agolavc/vp56: Simplify get/release_buffer code
Ben Jackson [Sat, 15 Sep 2012 17:32:42 +0000 (10:32 -0700)]
lavc/vp56: Simplify get/release_buffer code

Rather than cleverly managing frame pointers with swaps to avoid
re-using "golden" frames, just do brute-force management of the
4 AVFrames.  New strategy is probably no more costly and is easier
to adapt to threaded usage.

Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agolavc/vp56: Move golden_frame into VP56Context
Ben Jackson [Sat, 15 Sep 2012 17:32:41 +0000 (10:32 -0700)]
lavc/vp56: Move golden_frame into VP56Context

Makes golden_frame more like other frame data, paves way for threading
alpha channel decode.

Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agolavc/vp6: Refactor vp6_decode_init into vp6_decode_init/vp6_decode_init_context
Ben Jackson [Sat, 15 Sep 2012 17:32:40 +0000 (10:32 -0700)]
lavc/vp6: Refactor vp6_decode_init into vp6_decode_init/vp6_decode_init_context

Pave the way for per-thread context initialization.

Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agolavc/vp56: Refactor ff_vp56_init into ff_vp56_init/ff_vp56_init_context
Ben Jackson [Sat, 15 Sep 2012 17:32:39 +0000 (10:32 -0700)]
lavc/vp56: Refactor ff_vp56_init into ff_vp56_init/ff_vp56_init_context

Pave the way for per-thread context initialization.

Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoavformat: fix typo in avformat_close_input
Luca Barbato [Sat, 15 Sep 2012 18:16:32 +0000 (20:16 +0200)]
avformat: fix typo in avformat_close_input

The condition should not be &&.

7 years agomp3enc: write Xing TOC
Anton Khirnov [Mon, 10 Sep 2012 12:44:32 +0000 (14:44 +0200)]
mp3enc: write Xing TOC

Based on the code by:
Peter Belkner <pbelkner@snafu.de>,
Michael Niedermayer <michaelni@gmx.at>,
Clément Bœsch <clement.boesch@smartjog.com>,
Reimar Döffinger <Reimar.Doeffinger@gmx.de>, and
Tobias Rapp <t.rapp@noa-audio.com>
Alex Converse <alex.converse@gmail.com>

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agomp3enc: support MPEG-2 and MPEG-2.5 in Xing header.
Clément Bœsch [Wed, 9 May 2012 20:39:40 +0000 (22:39 +0200)]
mp3enc: support MPEG-2 and MPEG-2.5 in Xing header.

7 years agomp3enc: downgrade some errors in writing Xing frame to warnings
Reimar Döffinger [Sun, 9 Sep 2012 18:39:40 +0000 (20:39 +0200)]
mp3enc: downgrade some errors in writing Xing frame to warnings

Also clarify the meaning of the log message.

7 years agolavf: flush the output AVIOContext in av_write_trailer().
Anton Khirnov [Sun, 9 Sep 2012 19:35:23 +0000 (21:35 +0200)]
lavf: flush the output AVIOContext in av_write_trailer().

This is consistent with stdio and is what we want to do in all cases.

Fixes a bug in the voc muxer which didn't flush in write_trailer()
previously. This is the cause of the change in the test results.

7 years agolavf: cosmetics, reformat av_write_trailer().
Anton Khirnov [Sun, 9 Sep 2012 18:47:38 +0000 (20:47 +0200)]
lavf: cosmetics, reformat av_write_trailer().

7 years agoavio: flush the internal buffer in avio_close()
Stefano Sabatini [Wed, 15 Aug 2012 23:25:05 +0000 (01:25 +0200)]
avio: flush the internal buffer in avio_close()

This is consistent with stdio, and thus what people would naturally
expect.

7 years agox86/v210: fix xmm clobbers
Michael Niedermayer [Sat, 15 Sep 2012 14:22:59 +0000 (16:22 +0200)]
x86/v210: fix xmm clobbers

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoDocument tcp proto 'timeout' parameter behavior
Andrey Utkin [Thu, 13 Sep 2012 00:43:29 +0000 (03:43 +0300)]
Document tcp proto 'timeout' parameter behavior

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoffmpeg: use PTS from the AVSubtitle structure for sub2video.
Nicolas George [Sun, 9 Sep 2012 14:37:45 +0000 (16:37 +0200)]
ffmpeg: use PTS from the AVSubtitle structure for sub2video.

7 years agoffplay: use PTS from the AVSubtitle structure.
Nicolas George [Sun, 9 Sep 2012 14:28:51 +0000 (16:28 +0200)]
ffplay: use PTS from the AVSubtitle structure.

7 years agoffmpeg: use PTS from the AVSubtitle structure.
Nicolas George [Sun, 9 Sep 2012 14:28:30 +0000 (16:28 +0200)]
ffmpeg: use PTS from the AVSubtitle structure.

7 years agolavc/pgssubdec: use the PTS from the presentation segment.
Nicolas George [Sun, 9 Sep 2012 14:08:39 +0000 (16:08 +0200)]
lavc/pgssubdec: use the PTS from the presentation segment.

According to the sample for trac ticket #1722, PGS subtitles
are decoded from several packets at the same DTS and varying PTS.
The PTS from the presentation segment seem to be the valid one;
in particular, clear subtitles are too early with the other PTS.

7 years agolavc: set AVSubtitle.pts if possible.
Nicolas George [Sun, 9 Sep 2012 14:00:06 +0000 (16:00 +0200)]
lavc: set AVSubtitle.pts if possible.

If the packet has a PTS and the corresponding time base is known,
set the pts field of the decoded subtitle structure before the
call to the decoder. The decoder is still allowed to change the
PTS if necessary.

7 years agoffmpeg: call sub2video_update for end packets.
Nicolas George [Sun, 9 Sep 2012 13:53:21 +0000 (15:53 +0200)]
ffmpeg: call sub2video_update for end packets.

Without that change, all subtitles will stay until the next one.

7 years agoEnhance doc on asyncts audiofilter
Andrey Utkin [Fri, 14 Sep 2012 08:27:19 +0000 (11:27 +0300)]
Enhance doc on asyncts audiofilter

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agocmdutils: avoid setting data pointers to invalid values in alloc_buffer()
Anton Khirnov [Tue, 11 Sep 2012 09:03:52 +0000 (11:03 +0200)]
cmdutils: avoid setting data pointers to invalid values in alloc_buffer()

Fixes bug 352.

7 years agolibavcodec: remove av_destruct_packet_nofree()
Mans Rullgard [Sat, 25 Aug 2012 10:51:57 +0000 (11:51 +0100)]
libavcodec: remove av_destruct_packet_nofree()

This function was deprecated two major versions ago (2009).

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Sat, 15 Sep 2012 08:09:55 +0000 (10:09 +0200)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  riff: Add SVQ3 fourcc
  fate: ac3: add 4.0 and downmix tests
  configure: x86: improve ebp availability check
  vorbisdec: ensure FASTDIV denominator is never 1
  avformat: refactor avformat_close_input
  avformat: simplify avformat_close_input

Conflicts:
configure
libavcodec/vorbisdec.c
libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
7 years agobintext: mark hscroll() as unused
Michael Niedermayer [Sun, 9 Sep 2012 01:03:49 +0000 (03:03 +0200)]
bintext: mark hscroll() as unused

This fixes a warning about a unused function
Alternatively the function could be removed

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoaacdec: add support for dual mono in Japanese DTV
Akihiro Tsukada [Sat, 25 Aug 2012 11:30:54 +0000 (20:30 +0900)]
aacdec: add support for dual mono in Japanese DTV

Japanese DTV uses some non standard extensions in AAC audio.
One example is 'dual mono', which combines two independent
audio into one stereo stream, storing them in left and right channels
respectively.  Historically, dual mono audio has been used for
multi-lingual audio, one for local/native language, and another for english,
and usually the "main" (local language) channel should be output without
any user interactions.

The frames of those dual mono audio are allowed to set
ADTS channel_config field to 0, and just contain two SCE's *WITHOUT* PCE,
which is a non standard extension by Japanese DTV standard.
(ref. ARIB STD-B32 PartII 5.2.3)

This patch adds an AVPacket side data, AV_PKT_DATA_JP_DUALMONO,
which indicates that the AVPacket is likely to contain an audio frame
with the above dual mono extension, and has the parameter to specify
the desired channel selection in that case.
It also makes aacdec to detect dual mono and output just the desired
channel when this side data is attached.

Signed-off-by: Akihiro Tsukada <atsukada@users.sourceforge.net>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agolavfi/hue: add dynamic expression evaluation support
Jérémy Tran [Fri, 14 Sep 2012 17:31:13 +0000 (19:31 +0200)]
lavfi/hue: add dynamic expression evaluation support

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
7 years agotools: move raw-test program to tools, with the name fourcc2pixfmt
Stefano Sabatini [Fri, 14 Sep 2012 12:06:55 +0000 (14:06 +0200)]
tools: move raw-test program to tools, with the name fourcc2pixfmt

7 years agoriff: Add SVQ3 fourcc
Derek Buitenhuis [Fri, 14 Sep 2012 14:10:50 +0000 (14:10 +0000)]
riff: Add SVQ3 fourcc

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
7 years agoriff: Add SVQ3 fourcc
Derek Buitenhuis [Fri, 14 Sep 2012 15:12:58 +0000 (11:12 -0400)]
riff: Add SVQ3 fourcc

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agolavf/compute_pkt_fields: only run pts by duration correction if reference ts is available
Michael Niedermayer [Fri, 14 Sep 2012 17:46:44 +0000 (19:46 +0200)]
lavf/compute_pkt_fields: only run pts by duration correction if reference ts is available

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agofate: ac3: add 4.0 and downmix tests
Mans Rullgard [Wed, 12 Sep 2012 22:24:50 +0000 (23:24 +0100)]
fate: ac3: add 4.0 and downmix tests

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agoconfigure: x86: improve ebp availability check
Mans Rullgard [Thu, 13 Sep 2012 19:17:54 +0000 (20:17 +0100)]
configure: x86: improve ebp availability check

Some compilers are extra strict about register usage in main(),
disallowing ebp in inline asm there while allowing it elsewhere.
This change makes the test better reflect actual usage.

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agovorbisdec: ensure FASTDIV denominator is never 1
Luca Barbato [Thu, 13 Sep 2012 17:45:21 +0000 (19:45 +0200)]
vorbisdec: ensure FASTDIV denominator is never 1

In both usages of FASTDIV the denominator might be 1.

Using a branch could make the function slower than using a normal
division.

Both denominator and numerator can be multiplied by 2 safely and
using shifts is faster than using a branch.

7 years agoavformat: refactor avformat_close_input
Luca Barbato [Tue, 4 Sep 2012 14:05:28 +0000 (16:05 +0200)]
avformat: refactor avformat_close_input

Do not crash if the input format is not allocated yet.

7 years agoavformat: simplify avformat_close_input
Luca Barbato [Mon, 10 Sep 2012 05:07:56 +0000 (07:07 +0200)]
avformat: simplify avformat_close_input

avio_close checks by itself for NULL condition.

7 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Fri, 14 Sep 2012 12:07:21 +0000 (14:07 +0200)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  x86: dsputil: Move Xvid IDCT put/add functions to a more suitable place
  trasher: Include all the necessary headers
  x86: Remove some leftover declarations for non-existent functions
  ARM: libavresample: NEON optimised generic fltp to s16 conversion
  ARM: libavresample: NEON optimised stereo fltp to s16 conversion
  ARM: libavresample: NEON optimised flat float to s16 conversion

Conflicts:
libavcodec/x86/dsputil_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
7 years agotools/graphdot: unbreak syntax
Stefano Sabatini [Fri, 14 Sep 2012 09:27:23 +0000 (11:27 +0200)]
tools/graphdot: unbreak syntax

Fix regression introduced in f054dbee6cc5195ba8f37823a494dab2d26e7cca.
+10.23l.

7 years agolavfi/avcodec: apply cosmetics style fixes
Stefano Sabatini [Thu, 13 Sep 2012 08:56:54 +0000 (10:56 +0200)]
lavfi/avcodec: apply cosmetics style fixes

7 years agoffprobe: kill initializers with nested union field definition
Stefano Sabatini [Wed, 12 Sep 2012 22:59:49 +0000 (00:59 +0200)]
ffprobe: kill initializers with nested union field definition

The c99-to-c89 converter (for MSVC support) doesn't currently handle
designated initializers or compound literals with nested unions or
structs.

This is apparently the only place where this construct is used in the
FFmpeg codebase.

7 years agoffprobe: avoid potentially lossy long long int -> double cast in value_string()
Stefano Sabatini [Wed, 12 Sep 2012 22:44:04 +0000 (00:44 +0200)]
ffprobe: avoid potentially lossy long long int -> double cast in value_string()

Previously the cast long long int -> double was always performed (and
then the double was converted back to long long int) even when it was
avoidable.

7 years agopthread: Avoid crashes/odd behavior caused by spurious wakeups
Ben Jackson [Fri, 14 Sep 2012 04:26:43 +0000 (21:26 -0700)]
pthread: Avoid crashes/odd behavior caused by spurious wakeups

pthread_wait_cond can wake up for no reason (Wikipedia: Spurious_wakeup).
The FF_THREAD_SLICE thread mechanism could spontaneously execute jobs or
allow the caller of avctx->execute to return before all jobs were complete.
This adds tests to both cases to ensure the wakeup is real.

Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agompegaudio_parser: reset state to prevent it to be random
Michael Niedermayer [Fri, 14 Sep 2012 03:55:11 +0000 (05:55 +0200)]
mpegaudio_parser: reset state to prevent it to be random

Fixes Ticket1718

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoaacpsy: psy_3gpp_analyze_channel() handle energy == 0
Michael Niedermayer [Fri, 14 Sep 2012 01:27:25 +0000 (03:27 +0200)]
aacpsy: psy_3gpp_analyze_channel() handle energy == 0

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoaacpsy: calc_reduction_3gpp() handle active_lines = 0
Michael Niedermayer [Fri, 14 Sep 2012 01:26:19 +0000 (03:26 +0200)]
aacpsy: calc_reduction_3gpp() handle active_lines = 0

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agocompute_pkt_fields2: dont interpret max_b_frames of <0 as there being b frames.
Michael Niedermayer [Fri, 14 Sep 2012 00:30:00 +0000 (02:30 +0200)]
compute_pkt_fields2: dont interpret max_b_frames of <0 as there being b frames.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agox86: dsputil: Move Xvid IDCT put/add functions to a more suitable place
Diego Biurrun [Thu, 13 Sep 2012 22:59:03 +0000 (00:59 +0200)]
x86: dsputil: Move Xvid IDCT put/add functions to a more suitable place

7 years agompegaudioenc: replace pow(2,.. by exp2(
Michael Niedermayer [Thu, 13 Sep 2012 20:08:00 +0000 (22:08 +0200)]
mpegaudioenc: replace pow(2,.. by exp2(

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoexamples/decoding_encoding: clarify operations in the usage message
Stefano Sabatini [Thu, 13 Sep 2012 08:16:38 +0000 (10:16 +0200)]
examples/decoding_encoding: clarify operations in the usage message

7 years agotrasher: Include all the necessary headers
Martin Storsjö [Thu, 13 Sep 2012 09:55:44 +0000 (12:55 +0300)]
trasher: Include all the necessary headers

The missing headers are required for errno and for strerror.
This fixes building of this tool on mingw32ce.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agox86: Remove some leftover declarations for non-existent functions
Diego Biurrun [Thu, 13 Sep 2012 10:45:33 +0000 (12:45 +0200)]
x86: Remove some leftover declarations for non-existent functions

7 years agoexamples/decoding_encoding: replace "picture" with "frame" in encode_example()
Stefano Sabatini [Thu, 13 Sep 2012 08:09:44 +0000 (10:09 +0200)]
examples/decoding_encoding: replace "picture" with "frame" in encode_example()

The use of "picture" in place of "frame" is confusing.

7 years agoexamples/decoding_encoding: apply various message log fixes
Stefano Sabatini [Thu, 13 Sep 2012 08:06:36 +0000 (10:06 +0200)]
examples/decoding_encoding: apply various message log fixes

7 years agoARM: libavresample: NEON optimised generic fltp to s16 conversion
Mans Rullgard [Mon, 10 Sep 2012 14:47:00 +0000 (15:47 +0100)]
ARM: libavresample: NEON optimised generic fltp to s16 conversion

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agoARM: libavresample: NEON optimised stereo fltp to s16 conversion
Mans Rullgard [Mon, 10 Sep 2012 14:47:00 +0000 (15:47 +0100)]
ARM: libavresample: NEON optimised stereo fltp to s16 conversion

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agoARM: libavresample: NEON optimised flat float to s16 conversion
Mans Rullgard [Sun, 9 Sep 2012 18:25:43 +0000 (19:25 +0100)]
ARM: libavresample: NEON optimised flat float to s16 conversion

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agolavfi: check that buffer and link properties match.
Nicolas George [Wed, 12 Sep 2012 19:00:34 +0000 (21:00 +0200)]
lavfi: check that buffer and link properties match.

7 years agolavfi: set sample_rate in the default allocator.
Nicolas George [Thu, 13 Sep 2012 15:13:10 +0000 (17:13 +0200)]
lavfi: set sample_rate in the default allocator.

7 years agoswr/resample: mark mm_flags as potentially unused
Michael Niedermayer [Thu, 13 Sep 2012 16:03:13 +0000 (18:03 +0200)]
swr/resample: mark mm_flags as potentially unused

They are unused when asm is disabled

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agox86_cpu.h: newline at the end to shutup some warnings in opencc
Michael Niedermayer [Thu, 13 Sep 2012 15:56:09 +0000 (17:56 +0200)]
x86_cpu.h: newline at the end to shutup some warnings in opencc

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoRevert "lavc/libx264: remap X264_LOG_INFO loglevel from AV_LOG_INFO to VERBOSE"
Derek Buitenhuis [Wed, 12 Sep 2012 22:01:22 +0000 (18:01 -0400)]
Revert "lavc/libx264: remap X264_LOG_INFO loglevel from AV_LOG_INFO to VERBOSE"

You should not need to enable verbose logging and all the output that comes
with it in order to get things like the obtained bitrate from a first
pass encode. Many things parse this output.

Also, since it is marked as info in libx264, it should be marked as
info in libavcodec as well.

This reverts commit 911519caec2346fc7728bca9840ffc000e866161.

7 years agompegvideo: skip ff_print_debug_info() for VDPAU
Michael Niedermayer [Wed, 12 Sep 2012 16:01:36 +0000 (18:01 +0200)]
mpegvideo: skip ff_print_debug_info() for VDPAU

Based on code by: MEANX / gruntster (Avidemux Rev 7990 — 2012-05-30 13:02:27)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agolibavformat.v: export ffurl_protocol_next
Michael Niedermayer [Wed, 12 Sep 2012 15:45:33 +0000 (17:45 +0200)]
libavformat.v: export ffurl_protocol_next

This is used by avidemux, and is likely usefull to others too.

Patch by: gruntster (Avidemux Rev 7990 — 2012-05-30 13:02:27)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agosws: revert: "swscale: Remove two bogus asserts"
Michael Niedermayer [Thu, 13 Sep 2012 13:53:05 +0000 (15:53 +0200)]
sws: revert: "swscale: Remove two bogus asserts"

Also change them to av_assert

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Thu, 13 Sep 2012 13:35:50 +0000 (15:35 +0200)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  os_support: Choose between direct.h and io.h using a configure check
  os_support: Include io.h instead of direct.h on mingw32ce
  x86: ac3dsp: Only refer to the ac3_downmix_sse symbol if it has been declared
  swscale: Remove two bogus asserts
  ac3: move ac3_downmix() from dsputil to ac3dsp
  lavr/audio_mix_matrix: acknowledge the existence of LFE2.
  mlp_parser: avoid mapping multiple disctinct TrueHD channels to the same Libav channel.
  lavu/audioconvert: add a second low frequency channel.

Conflicts:
doc/APIchanges
libavcodec/ac3dsp.c
libavcodec/ac3dsp.h
libavcodec/mlp_parser.c
libavutil/audioconvert.c
libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoMerge commit '07584eaf4a95db3f11d3bc411f9786932829e82b'
Michael Niedermayer [Thu, 13 Sep 2012 13:21:26 +0000 (15:21 +0200)]
Merge commit '07584eaf4a95db3f11d3bc411f9786932829e82b'

* commit '07584eaf4a95db3f11d3bc411f9786932829e82b':
  mpegts: check substreams before discarding
  Add a smooth streaming segmenter muxer
  file: Add an avoption for disabling truncating existing files on open
  img2dec: always close AVIOContexts
  rtpdec_jpeg: Error out on other unsupported type values as well
  rtpdec_jpeg: Disallow using the reserved q values
  rtpdec_jpeg: Fold the default qtables case into an existing if statement
  rtpdec_jpeg: Store and reuse old qtables for q values 128-254
  rtpdec_jpeg: Simplify the calculation of the number of qtables
  rtpdec_jpeg: Add more comments about the fields in the SOF0 section
  rtpdec_jpeg: Clarify where the subsampling magic numbers come from
  rtpdec_jpeg: Don't use a bitstream writer for the EOI marker
  rtpdec_jpeg: Don't needlessly use a bitstream writer for the header
  rtpdec_jpeg: Simplify writing of the jpeg header
  rtpdec_jpeg: Merge two if statements
  rtpdec_jpeg: Write the DHT section properly

Conflicts:
libavformat/Makefile
libavformat/allformats.c
libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>