ffmpeg.git
6 years agoppc: fix Altivec build with old compilers
Mans Rullgard [Mon, 8 Oct 2012 22:01:02 +0000 (23:01 +0100)]
ppc: fix Altivec build with old compilers

The vec_splat() intrinsic requires a constant argument for the
element number, and the code relies on the compiler unrolling
the loop to provide this.  Manually unrolling the loop avoids
this reliance and works with all compilers.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agobuild: add LTO support for PGI compiler
Mans Rullgard [Fri, 5 Oct 2012 02:42:12 +0000 (03:42 +0100)]
build: add LTO support for PGI compiler

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agobuild: add -Mdse to PGI optimisation flags
Mans Rullgard [Fri, 5 Oct 2012 00:30:28 +0000 (01:30 +0100)]
build: add -Mdse to PGI optimisation flags

Enable dead store elimination.  The last few releases work no worse
with this flag than without.  Older versions failed to build some
source files when using this flag.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agortpenc_vp8: Update the packetizer to the latest spec version
Martin Storsjö [Mon, 8 Oct 2012 20:18:38 +0000 (23:18 +0300)]
rtpenc_vp8: Update the packetizer to the latest spec version

Tested to work with the gstreamer depacketizer.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agortpdec_vp8: Make the depacketizer implement the latest spec draft
Martin Storsjö [Mon, 8 Oct 2012 19:25:55 +0000 (22:25 +0300)]
rtpdec_vp8: Make the depacketizer implement the latest spec draft

Not all details are implemented, but it's enough for proper
playback as long as there is no packet loss.

Tested to work with the packetizer in gstreamer (which although
uses a different codec name, to clarify that it is still a spec
draft).

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agodoc: allow building with old texi2html versions
Mans Rullgard [Mon, 8 Oct 2012 10:13:35 +0000 (11:13 +0100)]
doc: allow building with old texi2html versions

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoavutil: skip old_pix_fmts.h since it is just a list
Janne Grunau [Mon, 8 Oct 2012 10:09:16 +0000 (12:09 +0200)]
avutil: skip old_pix_fmts.h since it is just a list

6 years agox86: vc1: call ff_vc1dsp_init_x86() under if (ARCH_X86)
Janne Grunau [Sun, 7 Oct 2012 15:41:10 +0000 (17:41 +0200)]
x86: vc1: call ff_vc1dsp_init_x86() under if (ARCH_X86)

6 years agox86: cavs: call ff_cavsdsp_init_x86() under if (ARCH_X86)
Janne Grunau [Sun, 7 Oct 2012 15:23:54 +0000 (17:23 +0200)]
x86: cavs: call ff_cavsdsp_init_x86() under if (ARCH_X86)

6 years agox86: call most of the x86 dsp init functions under if (ARCH_X86)
Janne Grunau [Fri, 5 Oct 2012 17:54:10 +0000 (19:54 +0200)]
x86: call most of the x86 dsp init functions under if (ARCH_X86)

Rename the called dsp init functions to *_init_x86.

6 years agodoc: support the new website layout
Luca Barbato [Sun, 30 Sep 2012 04:02:34 +0000 (06:02 +0200)]
doc: support the new website layout

6 years agodoc: remove a warning from filters.texi
Luca Barbato [Sun, 7 Oct 2012 22:52:38 +0000 (00:52 +0200)]
doc: remove a warning from filters.texi

The tag @table expects @item to mark entries.

6 years agodoc: initial nut documentation
Luca Barbato [Tue, 13 Dec 2011 22:50:20 +0000 (23:50 +0100)]
doc: initial nut documentation

6 years agosegment: drop global headers setting
Luca Barbato [Fri, 5 Oct 2012 03:07:18 +0000 (05:07 +0200)]
segment: drop global headers setting

avconv provides an option to set it externally and there isn't a way for
the outer demuxer to report the inner demuxer flag.

Solves a bad interaction between mpegts and x264, but requires
additional setting for the user.

6 years agolavu: fix typo in Makefile
Anton Khirnov [Mon, 8 Oct 2012 06:10:23 +0000 (08:10 +0200)]
lavu: fix typo in Makefile

6 years agoReplace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat
Anton Khirnov [Sat, 6 Oct 2012 10:10:34 +0000 (12:10 +0200)]
Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat

6 years agopixfmt: add AV_ prefixes to PIX_FMT_*
Anton Khirnov [Sat, 6 Oct 2012 09:18:06 +0000 (11:18 +0200)]
pixfmt: add AV_ prefixes to PIX_FMT_*

6 years agoaf_resample: avoid conversion of identical sample formats for 1 channel
Justin Ruggles [Thu, 20 Sep 2012 17:28:34 +0000 (13:28 -0400)]
af_resample: avoid conversion of identical sample formats for 1 channel

When there is only 1 channel, the planar and interleaved formats of the same
data type should be treated as identical.

6 years agoavcodec: allow either planar or interleaved sample format when encoding mono
Justin Ruggles [Thu, 20 Sep 2012 05:04:15 +0000 (01:04 -0400)]
avcodec: allow either planar or interleaved sample format when encoding mono

When there is only 1 channel, the planar and interleaved formats of the same
data type should be treated as identical.

6 years agoadpcmenc: ensure calls to adpcm_ima_compress_sample() are in the right order
Justin Ruggles [Sun, 7 Oct 2012 03:58:03 +0000 (23:58 -0400)]
adpcmenc: ensure calls to adpcm_ima_compress_sample() are in the right order

Should fix fate-acodec-adpcm-ima_wav with several compilers.

6 years agotimefilter: De-doxygenize normal code comments and drop silly ones
Diego Biurrun [Fri, 5 Oct 2012 17:29:18 +0000 (19:29 +0200)]
timefilter: De-doxygenize normal code comments and drop silly ones

6 years agogxf: Include the right header for the avpriv_frame_rate_tab declaration
Martin Storsjö [Sun, 7 Oct 2012 09:42:54 +0000 (12:42 +0300)]
gxf: Include the right header for the avpriv_frame_rate_tab declaration

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agowmaenc: use float planar sample format
Justin Ruggles [Sat, 25 Aug 2012 17:44:30 +0000 (13:44 -0400)]
wmaenc: use float planar sample format

6 years ago(e)ac3enc: use planar sample format
Justin Ruggles [Sat, 25 Aug 2012 17:11:10 +0000 (13:11 -0400)]
(e)ac3enc: use planar sample format

6 years agoaacenc: use planar sample format
Justin Ruggles [Sat, 25 Aug 2012 17:04:33 +0000 (13:04 -0400)]
aacenc: use planar sample format

6 years agoadpcmenc: use planar sample format for adpcm_ima_wav and adpcm_ima_qt
Justin Ruggles [Sat, 25 Aug 2012 13:13:50 +0000 (09:13 -0400)]
adpcmenc: use planar sample format for adpcm_ima_wav and adpcm_ima_qt

6 years agoadpcmenc: move 'ch' variable to higher scope
Justin Ruggles [Sat, 25 Aug 2012 13:00:50 +0000 (09:00 -0400)]
adpcmenc: move 'ch' variable to higher scope

It is used for multiple codecs.

6 years agoadpcmenc: fix 3 instances of variable shadowing
Justin Ruggles [Sat, 25 Aug 2012 04:40:37 +0000 (00:40 -0400)]
adpcmenc: fix 3 instances of variable shadowing

6 years agoadpcm_ima_wav: simplify encoding
Justin Ruggles [Sat, 25 Aug 2012 04:39:17 +0000 (00:39 -0400)]
adpcm_ima_wav: simplify encoding

6 years agolibvorbis: use planar sample format
Justin Ruggles [Thu, 23 Aug 2012 17:47:09 +0000 (13:47 -0400)]
libvorbis: use planar sample format

6 years agolibmp3lame: use planar sample formats
Justin Ruggles [Wed, 22 Aug 2012 16:23:21 +0000 (12:23 -0400)]
libmp3lame: use planar sample formats

6 years agovorbisenc: use float planar sample format
Justin Ruggles [Mon, 20 Aug 2012 17:25:27 +0000 (13:25 -0400)]
vorbisenc: use float planar sample format

6 years agoffm: do not write or read the audio sample format
Justin Ruggles [Mon, 1 Oct 2012 05:24:57 +0000 (01:24 -0400)]
ffm: do not write or read the audio sample format

6 years agoparseutils: fix parsing of invalid alpha values
Mans Rullgard [Sat, 6 Oct 2012 09:21:22 +0000 (10:21 +0100)]
parseutils: fix parsing of invalid alpha values

An alpha specifier outside the valid range results in a conversion from
double to long with undefined result.  Range-checking the double and
only converting it after it passes avoids this.

Fixes fate-parseutils errors on some systems.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agodoc/RELEASE_NOTES: update for the 9 release.
Anton Khirnov [Fri, 5 Oct 2012 05:27:33 +0000 (07:27 +0200)]
doc/RELEASE_NOTES: update for the 9 release.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
6 years agosmoothstreamingenc: Add a more verbose error message
Martin Storsjö [Fri, 5 Oct 2012 23:39:21 +0000 (02:39 +0300)]
smoothstreamingenc: Add a more verbose error message

This helps tracking down the cause if this happens to be an issue.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosmoothstreamingenc: Ignore the return value from mkdir
Martin Storsjö [Fri, 5 Oct 2012 23:33:32 +0000 (02:33 +0300)]
smoothstreamingenc: Ignore the return value from mkdir

We don't need to return an error if the directory already existed.
We make sure that the directory actually is properly writeable later
within ism_write_header by writing a manifest anyway.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosmoothstreamingenc: Try writing a manifest when opening the muxer
Martin Storsjö [Fri, 5 Oct 2012 23:30:18 +0000 (02:30 +0300)]
smoothstreamingenc: Try writing a manifest when opening the muxer

This allows failing cleaner and earlier if unable to write to
the output directory.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosmoothstreamingenc: Move the output_chunk_list and write_manifest functions up
Martin Storsjö [Fri, 5 Oct 2012 23:27:49 +0000 (02:27 +0300)]
smoothstreamingenc: Move the output_chunk_list and write_manifest functions up

This allows calling write_manifest from ism_write_header without
a forward declaration.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosmoothstreamingenc: Properly return errors from ism_flush to the caller
Martin Storsjö [Fri, 5 Oct 2012 23:33:06 +0000 (02:33 +0300)]
smoothstreamingenc: Properly return errors from ism_flush to the caller

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosmoothstreamingenc: Check the output UrlContext before accessing it
Martin Storsjö [Fri, 5 Oct 2012 23:24:07 +0000 (02:24 +0300)]
smoothstreamingenc: Check the output UrlContext before accessing it

This code can be called with a NULL UrlContext if writing of the
trailer involves seeking.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoyuv4mpeg: return proper error codes.
Anton Khirnov [Fri, 5 Oct 2012 13:53:32 +0000 (15:53 +0200)]
yuv4mpeg: return proper error codes.

Fixes Bug 373.

CC:libav-stable@libav.org

6 years agoGive all anonymously typedeffed structs in headers a name
Diego Biurrun [Thu, 27 Sep 2012 08:19:53 +0000 (10:19 +0200)]
Give all anonymously typedeffed structs in headers a name

Anonymous structs cannot be forward declared and have no benefit.

6 years agofate: Add parseutils test
Diego Biurrun [Fri, 5 Oct 2012 21:34:52 +0000 (23:34 +0200)]
fate: Add parseutils test

6 years agoparseutils-test: Drop random colors from parsing test
Diego Biurrun [Fri, 5 Oct 2012 21:33:02 +0000 (23:33 +0200)]
parseutils-test: Drop random colors from parsing test

This guarantees stable output for comparing test results.

6 years agovf_pad/scale: use double precision for aspect ratios.
Anton Khirnov [Fri, 5 Oct 2012 12:45:30 +0000 (14:45 +0200)]
vf_pad/scale: use double precision for aspect ratios.

Fixes Bug 203.

CC:libav-stable@libav.org

6 years agobuild: error on variable-length arrays
Mans Rullgard [Wed, 3 Oct 2012 22:00:44 +0000 (23:00 +0100)]
build: error on variable-length arrays

With all the VLAs gone, make sure they never come back.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoppc: swscale: rework yuv2planeX_altivec()
Mans Rullgard [Thu, 4 Oct 2012 16:30:34 +0000 (17:30 +0100)]
ppc: swscale: rework yuv2planeX_altivec()

This gets rid of the variable-length scratch buffer by filtering 16
pixels at a time and writing directly to the destination.  The extra
loads this requires to load the source values are compensated by not
doing a round-trip to memory before shifting.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoppc: fmtconvert: kill VLA in float_to_int16_interleave_altivec()
Mans Rullgard [Thu, 4 Oct 2012 00:26:50 +0000 (01:26 +0100)]
ppc: fmtconvert: kill VLA in float_to_int16_interleave_altivec()

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agox86: dsputil: kill VLA in gmc_mmx()
Mans Rullgard [Wed, 3 Oct 2012 21:53:00 +0000 (22:53 +0100)]
x86: dsputil: kill VLA in gmc_mmx()

Instead of using an evil VLA, fall back to C version when edge
emulation is needed.  MPEG4 GMC is a rarely used fringe feature
so the speed loss is an acceptable cost for safer code.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agolibspeexenc: Updated commentary to reflect recent changes
Dmitry Samonenko [Thu, 4 Oct 2012 20:42:31 +0000 (00:42 +0400)]
libspeexenc: Updated commentary to reflect recent changes

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agolibspeexenc: Add an option for enabling DTX
Dmitry Samonenko [Thu, 4 Oct 2012 20:36:16 +0000 (00:36 +0400)]
libspeexenc: Add an option for enabling DTX

Discontinuous transmission is an addition to VAD/VBR operation, that
allows to greatly reduce bitrate for silent chunks or stationary
noises.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agodoc/APIchanges: fill in missing dates and hashes.
Anton Khirnov [Fri, 5 Oct 2012 12:01:39 +0000 (14:01 +0200)]
doc/APIchanges: fill in missing dates and hashes.

6 years agolavr: bump major to 1 and declare it stable.
Anton Khirnov [Fri, 5 Oct 2012 04:59:22 +0000 (06:59 +0200)]
lavr: bump major to 1 and declare it stable.

6 years agolavr: change the type of the data buffers to uint8_t**.
Anton Khirnov [Fri, 5 Oct 2012 04:56:00 +0000 (06:56 +0200)]
lavr: change the type of the data buffers to uint8_t**.

This is more consistent with what the rest of Libav does.

This breaks API.

6 years agolavc: deprecate the audio resampling API.
Anton Khirnov [Fri, 5 Oct 2012 05:25:56 +0000 (07:25 +0200)]
lavc: deprecate the audio resampling API.

It has been superseded by lavr.

6 years agoh264: don't touch H264Context->ref_count[] during MB decoding
Ronald S. Bultje [Wed, 3 Oct 2012 23:25:14 +0000 (16:25 -0700)]
h264: don't touch H264Context->ref_count[] during MB decoding

The variable is copied to subsequent threads at the same time, so this
may cause wrong ref_count[] values to be copied to subsequent threads.

This bug was found using TSAN.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agox86: get_cpu_flags: add necessary ifdefs around function body
Diego Biurrun [Wed, 5 Sep 2012 18:49:28 +0000 (20:49 +0200)]
x86: get_cpu_flags: add necessary ifdefs around function body

ff_get_cpu_flags_x86() requires cpuid(), which is conditionally defined
elsewhere in the file.  Surrounding the function body with ifdefs allows
building even when cpuid is not defined.  An empty cpuflags mask is
returned in this case.

6 years agox86: Drop CPU detection intrinsics
Diego Biurrun [Wed, 3 Oct 2012 15:57:53 +0000 (17:57 +0200)]
x86: Drop CPU detection intrinsics

Now that there is CPU detection in YASM, there will always be one of
inline or external assembly enabled, which obviates the need to fall
back on CPU detection through compiler intrinsics.

6 years agox86: Add YASM implementations of cpuid and xgetbv from x264
Diego Biurrun [Wed, 3 Oct 2012 14:46:17 +0000 (16:46 +0200)]
x86: Add YASM implementations of cpuid and xgetbv from x264

This allows detecting CPU features with builds that have neither
gcc inline assembly nor the right compiler intrinsics enabled.

6 years agoconfigure: add --enable-lto option
Mans Rullgard [Thu, 20 Sep 2012 14:50:14 +0000 (15:50 +0100)]
configure: add --enable-lto option

This works with gcc.  Other compilers might need to have a flag
mapping added.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agox86: cpu: Break out test for cpuid capabilities into separate function
Diego Biurrun [Thu, 4 Oct 2012 12:01:26 +0000 (14:01 +0200)]
x86: cpu: Break out test for cpuid capabilities into separate function

6 years agox86: ff_get_cpu_flags_x86(): Avoid a pointless variable indirection
Diego Biurrun [Wed, 3 Oct 2012 22:40:05 +0000 (00:40 +0200)]
x86: ff_get_cpu_flags_x86(): Avoid a pointless variable indirection

6 years agobuild: Factor out mpegaudio dependencies to CONFIG_MPEGAUDIO
Diego Biurrun [Tue, 14 Aug 2012 00:09:15 +0000 (02:09 +0200)]
build: Factor out mpegaudio dependencies to CONFIG_MPEGAUDIO

A new hidden config variable is added for the codecs that depend on the
mpegaudio parts.

6 years agosegment: Add comments about calls that only are relevant for some muxers
Martin Storsjö [Thu, 4 Oct 2012 12:28:30 +0000 (15:28 +0300)]
segment: Add comments about calls that only are relevant for some muxers

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosegment: Add an option for omitting the first header and final trailer
Martin Storsjö [Tue, 2 Oct 2012 21:59:35 +0000 (23:59 +0200)]
segment: Add an option for omitting the first header and final trailer

This allows writing totally bare segments, without any header/trailer
included anywhere.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosegment: Flush buffered data before finishing a segment
Martin Storsjö [Tue, 2 Oct 2012 21:56:40 +0000 (23:56 +0200)]
segment: Flush buffered data before finishing a segment

This makes sure any buffered data is written to the segment, for
muxers that buffer up data internally (e.g. fragmented mp4).

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosegment: Set the resend_headers flag for each segment
Martin Storsjö [Tue, 2 Oct 2012 21:51:46 +0000 (23:51 +0200)]
segment: Set the resend_headers flag for each segment

This makes sure new inline headers are emitted when the next
packet is written. This allows segmenting mpegts without calling
write_header/write_trailer (nor freeing/reiniting the muxer)
for each segment.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosegment: Add an option for disabling writing of a header/trailer to each segment
Martin Storsjö [Tue, 2 Oct 2012 21:49:46 +0000 (23:49 +0200)]
segment: Add an option for disabling writing of a header/trailer to each segment

Some segmented formats (such as fragmented mp4) are "bare", as in,
the segment files do not have the same headers/trailers as full normal
files of that format have.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosegment: Free and reinit the muxer before calling avformat_write_header
Martin Storsjö [Wed, 3 Oct 2012 21:15:35 +0000 (00:15 +0300)]
segment: Free and reinit the muxer before calling avformat_write_header

This makes sure the muxers are set up in the way they expect
with no data left around from the previous run (which could
cause various issues including memory leaks, depending on the chaine
muxer).

This fixes memory leaks with the mpegts and flv muxers. It also
makes the usage of chained muxers correct.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosegment: Use the public av_write_header/av_write_trailer functions
Martin Storsjö [Sat, 25 Feb 2012 23:31:14 +0000 (01:31 +0200)]
segment: Use the public av_write_header/av_write_trailer functions

With this change, the segmenter muxer doesn't rely on anything
not available/supported to libavformat external users, making
the segmenter muxer do things just like a normal segmenter
application using libavformat would do.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosegment: Properly create new AVStreams for the chained muxer
Martin Storsjö [Sat, 25 Feb 2012 23:39:32 +0000 (01:39 +0200)]
segment: Properly create new AVStreams for the chained muxer

Before, the chained muxer reused the AVStreams array from
the outer muxer, which made it impossible to use the proper
public functions (such as av_write_frame) when calling the
chained muxer.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosegment: Add a missing space
Martin Storsjö [Wed, 3 Oct 2012 21:03:45 +0000 (00:03 +0300)]
segment: Add a missing space

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agovf_overlay: properly sync inputs.
Anton Khirnov [Wed, 3 Oct 2012 20:34:50 +0000 (22:34 +0200)]
vf_overlay: properly sync inputs.

Right now it incorrectly assumes that the frames are sent in the proper
order, which worked with old ffmpeg and avconv versions by accident.

6 years agovf_overlay: get rid of pointless messing with timebase.
Anton Khirnov [Sun, 30 Sep 2012 07:49:53 +0000 (09:49 +0200)]
vf_overlay: get rid of pointless messing with timebase.

Output frames correspond 1:1 to input frames on the main input.
So use the main input timebase for output.

6 years agosamplefmt: make av_samples_alloc() initialize the data to silence.
Anton Khirnov [Wed, 3 Oct 2012 05:54:45 +0000 (07:54 +0200)]
samplefmt: make av_samples_alloc() initialize the data to silence.

Right now the buffer is zeroed, which does not represent silence for U8(P).

6 years agolibspeexdec: handle NULL return value from speex_packet_to_header()
Justin Ruggles [Wed, 3 Oct 2012 21:26:16 +0000 (17:26 -0400)]
libspeexdec: handle NULL return value from speex_packet_to_header()

This will happen when the extradata is not a valid Speex header.

6 years agoh264probe: Don't error out on bits that no longer are reserved
Michael Niedermayer [Mon, 9 May 2011 14:05:29 +0000 (16:05 +0200)]
h264probe: Don't error out on bits that no longer are reserved

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agompegvideo: set extended_data in ff_update_duplicate_context()
Janne Grunau [Wed, 3 Oct 2012 19:41:52 +0000 (21:41 +0200)]
mpegvideo: set extended_data in ff_update_duplicate_context()

AVFrame.extended_data has to reset to the AVFrame.data of the current
thread context after copying the frame contents.
Fixes crashes with frame-threading after 2bc0de38584.

6 years agolibspeexdec: properly handle DTX for multiple frames-per-packet
Justin Ruggles [Mon, 1 Oct 2012 03:11:43 +0000 (23:11 -0400)]
libspeexdec: properly handle DTX for multiple frames-per-packet

6 years agolibspeexdec: move the SpeexHeader from LibSpeexContext to where it is used
Justin Ruggles [Mon, 1 Oct 2012 03:09:19 +0000 (23:09 -0400)]
libspeexdec: move the SpeexHeader from LibSpeexContext to where it is used

6 years agolibspeexdec: simplify setting of frame_size
Justin Ruggles [Mon, 1 Oct 2012 02:45:55 +0000 (22:45 -0400)]
libspeexdec: simplify setting of frame_size

6 years agolibspeexdec: set channel_layout
Justin Ruggles [Mon, 1 Oct 2012 02:14:10 +0000 (22:14 -0400)]
libspeexdec: set channel_layout

6 years agolibspeexdec: If the channel count is not valid, decode as stereo.
Justin Ruggles [Mon, 1 Oct 2012 01:59:03 +0000 (21:59 -0400)]
libspeexdec: If the channel count is not valid, decode as stereo.

When initialized as stereo, libspeex can decode either mono or stereo packets
and will output stereo.

6 years agolibspeexdec: improve setting of Speex mode and sample rate
Justin Ruggles [Mon, 1 Oct 2012 01:45:24 +0000 (21:45 -0400)]
libspeexdec: improve setting of Speex mode and sample rate

If there is no extradata and the sample rate given by the user is not valid,
decode as ultra-wideband.

6 years agolibspeex: Add a private option for enabling VAD
Dmitry Samonenko [Sat, 29 Sep 2012 11:47:28 +0000 (15:47 +0400)]
libspeex: Add a private option for enabling VAD

Speex detects non-speech periods and encodes them with just enough bits
to reproduce the background noise, aka ``comfort noise generation''.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoxtea: Test inplace decryption
Michael Niedermayer [Sun, 30 Sep 2012 15:36:01 +0000 (17:36 +0200)]
xtea: Test inplace decryption

Based on test code by: Giorgio Vazzana <mywing81@gmail.com>

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoxtea: Fix CBC decryption when src==dst
Michael Niedermayer [Sun, 30 Sep 2012 15:46:37 +0000 (17:46 +0200)]
xtea: Fix CBC decryption when src==dst

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoxtea: Factorize testing into a separate function
Martin Storsjö [Wed, 3 Oct 2012 16:19:37 +0000 (19:19 +0300)]
xtea: Factorize testing into a separate function

Based on a patch by Michael Niedermayer.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoconfigure: Refactor HAVE_ options available on the command line
Diego Biurrun [Wed, 5 Sep 2012 09:35:13 +0000 (11:35 +0200)]
configure: Refactor HAVE_ options available on the command line

6 years agoavconv/avprobe: Add missing 'void' to exit_program() definition
Diego Biurrun [Wed, 3 Oct 2012 14:20:41 +0000 (16:20 +0200)]
avconv/avprobe: Add missing 'void' to exit_program() definition

6 years agoAllow use of strncpy()
Mans Rullgard [Sun, 9 Sep 2012 13:07:20 +0000 (14:07 +0100)]
Allow use of strncpy()

There are cases where strncpy() does exactly what is required.
A blanket ban forces more convoluted solutions to be used in those
cases and has been a cause of bugs.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoblowfish: Add more tests
Martin Storsjö [Mon, 1 Oct 2012 20:49:17 +0000 (23:49 +0300)]
blowfish: Add more tests

Test inplace ECB, normal CBC and inplace CBC encryption/decryption.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoblowfish: Fix CBC decryption with dst==src
Martin Storsjö [Mon, 1 Oct 2012 21:04:38 +0000 (00:04 +0300)]
blowfish: Fix CBC decryption with dst==src

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoblowfish: Factorize testing into a separate function
Martin Storsjö [Mon, 1 Oct 2012 20:38:50 +0000 (23:38 +0300)]
blowfish: Factorize testing into a separate function

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoARM: use numeric ID for Tag_ABI_align_preserved
Mans Rullgard [Tue, 2 Oct 2012 23:42:57 +0000 (00:42 +0100)]
ARM: use numeric ID for Tag_ABI_align_preserved

Some old assemblers still in use do not support named tags.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agosegment: Pass the interrupt callback on to the chained AVFormatContext, too
Martin Storsjö [Sat, 25 Feb 2012 23:35:13 +0000 (01:35 +0200)]
segment: Pass the interrupt callback on to the chained AVFormatContext, too

This might not be needed at the moment, but it's good practice to
pass it to all chained AVFormatContexts, if it would happen to be
used there at a later point.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoARM: bswap: drop armcc version of av_bswap16()
Mans Rullgard [Tue, 2 Oct 2012 15:34:34 +0000 (16:34 +0100)]
ARM: bswap: drop armcc version of av_bswap16()

This function causes several versions of armcc to miscompile code,
and the performance impact is small.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoARM: set Tag_ABI_align_preserved in all asm files
Mans Rullgard [Tue, 2 Oct 2012 15:00:48 +0000 (16:00 +0100)]
ARM: set Tag_ABI_align_preserved in all asm files

All our ARM asm preserves alignment so setting this attribute
in a common location is simpler.  This removes numerous warnings
when linking with armcc.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoARM: fix Thumb PIC on Apple
Mans Rullgard [Mon, 1 Oct 2012 23:32:24 +0000 (00:32 +0100)]
ARM: fix Thumb PIC on Apple

LDR with register offset and PC as base register is not available in
the Thumb instruction set so the addition must be done separately.

Signed-off-by: Mans Rullgard <mans@mansr.com>