platform/upstream/libav.git
10 years agomatroskaenc: Allow VP9 and Opus in webm
Tudor Suciu [Sun, 2 Jun 2013 15:49:24 +0000 (17:49 +0200)]
matroskaenc: Allow VP9 and Opus in webm

Bug-Id: 695

Signed-off-by: Anton Khirnov <anton@khirnov.net>
10 years agortpenc_chain: Don't copy the time base to the source stream by default
Martin Storsjö [Fri, 30 May 2014 22:09:58 +0000 (01:09 +0300)]
rtpenc_chain: Don't copy the time base to the source stream by default

Only copy it manually in the muxers where it makes sense (rtspenc,
sapenc). Don't touch the original AVStream in movenchint, where
the original AVStream should be kept untouched.

This fixes the normal tracks in RTP hinted files after
abb810db - the hint tracks were ok while the normal media tracks
were broken, noticed by Michael Niedermayer.

This reverts abb810db but achieves the same effect for the other
muxers.

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agoppc: Fix compilation for ppc64le (ELFv2)
Thierry Fauck [Thu, 29 May 2014 12:22:27 +0000 (15:22 +0300)]
ppc: Fix compilation for ppc64le (ELFv2)

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agoRevert "rtpenc_chain: Don't copy the time_base back to the caller"
Martin Storsjö [Thu, 29 May 2014 09:22:26 +0000 (12:22 +0300)]
Revert "rtpenc_chain: Don't copy the time_base back to the caller"

While it strictly isn't necessary to copy the time base (since
any use of it is scaled in ff_write_chained), it still is better
to signal the actual time base to the caller, avoiding one
unnecessary rescaling. This also lets the caller know what the
actual internal time base is, in case that is useful info
for some caller.

This reverts commit 397ffde115f4e0482a007b672f40457596cebfc4.

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agodsputil: Split off quarterpel bits into their own context
Diego Biurrun [Wed, 8 Jan 2014 13:00:10 +0000 (14:00 +0100)]
dsputil: Split off quarterpel bits into their own context

10 years agodsputil: Move Bink-specific add_pixels8 to binkdsp
Diego Biurrun [Sun, 29 Dec 2013 10:53:00 +0000 (11:53 +0100)]
dsputil: Move Bink-specific add_pixels8 to binkdsp

10 years agodsputil: Move APE-specific bits into apedsp
Diego Biurrun [Sun, 29 Dec 2013 01:32:16 +0000 (02:32 +0100)]
dsputil: Move APE-specific bits into apedsp

10 years agodsputil: Move mspel_pixels_tab to the only place it is used
Diego Biurrun [Fri, 27 Dec 2013 09:29:14 +0000 (10:29 +0100)]
dsputil: Move mspel_pixels_tab to the only place it is used

10 years agodsputil: Move ff_alternate_*_scan tables to mpegvideo
Diego Biurrun [Fri, 27 Dec 2013 00:12:23 +0000 (01:12 +0100)]
dsputil: Move ff_alternate_*_scan tables to mpegvideo

10 years agodsputil: Move SVQ1 encoding specific bits into svq1enc
Diego Biurrun [Mon, 23 Dec 2013 18:48:43 +0000 (19:48 +0100)]
dsputil: Move SVQ1 encoding specific bits into svq1enc

10 years agosvq1enc: Rename SVQ1Context to SVQ1EncContext
Diego Biurrun [Mon, 23 Dec 2013 18:18:16 +0000 (19:18 +0100)]
svq1enc: Rename SVQ1Context to SVQ1EncContext

This allows making it visible without name clashes.

10 years agoaarch64: Use the correct syntax for relocations
Martin Storsjö [Thu, 29 May 2014 11:37:31 +0000 (14:37 +0300)]
aarch64: Use the correct syntax for relocations

This fixes building in PIC mode with gas. The examples in the gas
manual showed using a # here even though gas itself actually didn't
support that syntax (and the gas test suite only tests it without
the extra hash sign).

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agomatroskaenc: set the stream timebase earlier
Anton Khirnov [Tue, 27 May 2014 08:28:24 +0000 (10:28 +0200)]
matroskaenc: set the stream timebase earlier

Fixes calculating the ts offset for audio codecs with delay.

10 years agoflvenc: only write the framerate tag based on avg_frame_rate
Anton Khirnov [Tue, 27 May 2014 07:49:29 +0000 (09:49 +0200)]
flvenc: only write the framerate tag based on avg_frame_rate

Do not fall back on the codec timebase, since that can be anything for
VFR video.

10 years agomovenc: write avg_frame_rate as the framerate, not the codec timebase
Anton Khirnov [Sun, 18 May 2014 11:49:46 +0000 (13:49 +0200)]
movenc: write avg_frame_rate as the framerate, not the codec timebase

10 years agomatroskaenc: base DefaultDuration on the framerate, not the codec timebase
Anton Khirnov [Sun, 18 May 2014 11:49:46 +0000 (13:49 +0200)]
matroskaenc: base DefaultDuration on the framerate, not the codec timebase

This results in DefaultDuration not being written when the framerate is
not known, but as this field is purely informative, this should not
break any sane demuxers.

10 years agoframe: fix the error path in av_frame_copy_props()
Roman Savchenko [Wed, 28 May 2014 20:16:56 +0000 (22:16 +0200)]
frame: fix the error path in av_frame_copy_props()

First free metadata, then the side data it is contained in.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
10 years agoaf_resample: Use avresample_get_out_samples
Luca Barbato [Mon, 26 May 2014 19:30:30 +0000 (21:30 +0200)]
af_resample: Use avresample_get_out_samples

10 years agoavresample: Add avresample_get_out_samples
Luca Barbato [Wed, 30 Apr 2014 17:56:05 +0000 (19:56 +0200)]
avresample: Add avresample_get_out_samples

Utility function to get the upper bound on the number of samples the
resampler would output.

10 years agonut: Support experimental NUT 4 features
Luca Barbato [Thu, 6 Mar 2014 16:58:34 +0000 (17:58 +0100)]
nut: Support experimental NUT 4 features

Add the low overhead pipe mode and the extended broadcast mode.
Export the options as 'syncponts' since it impacts only that.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
10 years agoavformat: Provide a standard compliance flag
Luca Barbato [Thu, 6 Mar 2014 16:58:33 +0000 (17:58 +0100)]
avformat: Provide a standard compliance flag

Provide f_strict for avconv usage.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
10 years agooggenc: Fix the EOS flag
Michael Niedermayer [Wed, 28 May 2014 17:27:40 +0000 (10:27 -0700)]
oggenc: Fix the EOS flag

This corrects the bug that caused the checksums to change in
9767d7c092c890ecc5953452e8a951fd902dd67b.

It caused the EOS flag to be set incorrectly; the ogg spec does not
allow it to be set in the middle of a logical bitstream.

Signed-off-by: Andrew Kelley <superjoe30@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agoppc: Move vec_unaligned_load macro to util_altivec
Diego Biurrun [Wed, 28 May 2014 10:29:33 +0000 (03:29 -0700)]
ppc: Move vec_unaligned_load macro to util_altivec

This allows reusing it from multiple files.

10 years agoppc: util_altivec: Drop unused macros
Diego Biurrun [Wed, 28 May 2014 10:11:24 +0000 (03:11 -0700)]
ppc: util_altivec: Drop unused macros

10 years agomatroskaenc: write the channel mask for FLAC
Anton Khirnov [Mon, 26 May 2014 11:53:13 +0000 (13:53 +0200)]
matroskaenc: write the channel mask for FLAC

10 years agovorbiscomment: simplify API by using av_dict_count()
Anton Khirnov [Mon, 26 May 2014 11:30:10 +0000 (13:30 +0200)]
vorbiscomment: simplify API by using av_dict_count()

10 years agomatroskadec: parse the channel layout mask for FLAC
Anton Khirnov [Mon, 26 May 2014 10:48:56 +0000 (12:48 +0200)]
matroskadec: parse the channel layout mask for FLAC

It is commonly stored in a vorbiscomment block in codec private data.

10 years agomatroskadec: export just the STREAMINFO block as FLAC extradata
Anton Khirnov [Sun, 25 May 2014 12:05:51 +0000 (14:05 +0200)]
matroskadec: export just the STREAMINFO block as FLAC extradata

It contains all information that is used by the decoder and the other
FLAC-capable demuxers (flacdec, ogg) export only STREAMINFO as well.

10 years agomatroskadec: split parsing tracks into a separate function
Anton Khirnov [Sun, 25 May 2014 07:07:32 +0000 (09:07 +0200)]
matroskadec: split parsing tracks into a separate function

10 years agoflac: make avpriv_flac_parse_block_header() inline
Anton Khirnov [Mon, 26 May 2014 07:43:50 +0000 (09:43 +0200)]
flac: make avpriv_flac_parse_block_header() inline

This avoids all the ABI troubles associated with avpriv_.
Since this function is very small and does not depend on any tables,
making it inline should have no adverse effects.

10 years agoflac muxer: write WAVEFORMATEXTENSIBLE_CHANNEL_MASK tag for multichannel files
Anton Khirnov [Sun, 25 May 2014 09:34:32 +0000 (11:34 +0200)]
flac muxer: write WAVEFORMATEXTENSIBLE_CHANNEL_MASK tag for multichannel files

10 years agoflac demuxer: parse the WAVEFORMATEXTENSIBLE_CHANNEL_MASK tag
Anton Khirnov [Sun, 25 May 2014 09:14:14 +0000 (11:14 +0200)]
flac demuxer: parse the WAVEFORMATEXTENSIBLE_CHANNEL_MASK tag

It is used to store the channel mask for non-standard layouts.

10 years agoflacdec: do not overwrite a channel layout set by the caller
Anton Khirnov [Sun, 25 May 2014 09:12:33 +0000 (11:12 +0200)]
flacdec: do not overwrite a channel layout set by the caller

The channel layout mask for non-standard layouts is typically stored at
the container level (as a vorbiscomment tag) for FLAC.

10 years agooggenc: Flush after writing headers
Andrew Kelley [Mon, 26 May 2014 04:04:19 +0000 (21:04 -0700)]
oggenc: Flush after writing headers

Before, header information for ogg format files was sent with the
first encoded packet.

This patch makes it so that it is possible for API users to
differentiate between headers and encoded audio. This is useful, for
example, when creating an audio stream where you want to send one set
of headers for every client that connects and then the encoded stream
of audio.

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agooggenc: Move ogg_write_pages up above ogg_write_header
Andrew Kelley [Mon, 26 May 2014 04:04:19 +0000 (21:04 -0700)]
oggenc: Move ogg_write_pages up above ogg_write_header

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agodsputil: Split off HuffYUV encoding bits into their own context
Diego Biurrun [Mon, 23 Dec 2013 17:42:11 +0000 (18:42 +0100)]
dsputil: Split off HuffYUV encoding bits into their own context

Also shorten HuffYUV context member names to avoid clutter.

10 years agodsputil: Split off HuffYUV decoding bits into their own context
Diego Biurrun [Tue, 7 Jan 2014 11:23:13 +0000 (12:23 +0100)]
dsputil: Split off HuffYUV decoding bits into their own context

Also shorten HuffYUV context member names to avoid clutter.

10 years agoh264_picture: Remove pointless dsputil.h #include
Diego Biurrun [Fri, 23 May 2014 14:20:58 +0000 (07:20 -0700)]
h264_picture: Remove pointless dsputil.h #include

10 years agoon2avc: Remove pointless dsputil.h #include
Diego Biurrun [Fri, 23 May 2014 14:20:24 +0000 (07:20 -0700)]
on2avc: Remove pointless dsputil.h #include

10 years agolavfi/formats: avoid using AV_{PIX,SAMPLE}_FMT_NB
Anton Khirnov [Sat, 24 May 2014 09:15:15 +0000 (11:15 +0200)]
lavfi/formats: avoid using AV_{PIX,SAMPLE}_FMT_NB

Thatt hardcodes the number of formats into lavfi and will break when a
shared lavu is updated, adding new formats.

10 years agobuffersrc: avoid using AV_PIX_FMT_NB
Anton Khirnov [Sat, 24 May 2014 09:15:15 +0000 (11:15 +0200)]
buffersrc: avoid using AV_PIX_FMT_NB

That hardcodes the number of pixel formats into lavfi and will break
when a shared lavu is updated, adding new pixel formats.

10 years agovf_fieldorder: avoid using AV_PIX_FMT_NB
Anton Khirnov [Sat, 24 May 2014 09:15:15 +0000 (11:15 +0200)]
vf_fieldorder: avoid using AV_PIX_FMT_NB

That hardcodes the number of pixel formats into lavfi and will break
when a shared lavu is updated, adding new pixel formats.

10 years agovf_scale: use the pixfmt descriptor API
Anton Khirnov [Sat, 24 May 2014 09:15:15 +0000 (11:15 +0200)]
vf_scale: use the pixfmt descriptor API

Avoid using AV_PIX_FMT_NB, since that hardcodes the number of pixel
formats into lavfi and will break when a shared lavu is updated, adding
new pixel formats.

10 years agovf_format: rework format list parsing
Anton Khirnov [Sat, 24 May 2014 09:15:15 +0000 (11:15 +0200)]
vf_format: rework format list parsing

Avoid using AV_PIX_FMT_NB, since that hardcodes the number of pixel
formats into lavfi and will break when a shared lavu is updated, adding
new pixel formats.

10 years agoimgutils: make systematic palette opaque.
Carl Eugen Hoyos [Fri, 23 Dec 2011 10:43:29 +0000 (11:43 +0100)]
imgutils: make systematic palette opaque.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
10 years agosmoothstream: check malloc calls
Nidhi Makhijani [Thu, 22 May 2014 10:50:05 +0000 (16:20 +0530)]
smoothstream: check malloc calls

Signed-off-by: Anton Khirnov <anton@khirnov.net>
10 years agordt: check malloc calls
Nidhi Makhijani [Fri, 23 May 2014 13:42:02 +0000 (19:12 +0530)]
rdt: check malloc calls

Signed-off-by: Anton Khirnov <anton@khirnov.net>
10 years agoavcodec: bump version after rotation api
Vittorio Giovara [Tue, 20 May 2014 15:13:12 +0000 (11:13 -0400)]
avcodec: bump version after rotation api

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
10 years agodca: Convert dca_dmixtable to integers
Niels Möller [Tue, 6 May 2014 07:41:05 +0000 (09:41 +0200)]
dca: Convert dca_dmixtable to integers

Also include zero in the table, eliminating a special case in the
decoder.

Signed-off-by: Niels Möller <nisse@southpole.se>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
10 years agolavf: add av_stream_get_side_data
Janne Grunau [Mon, 19 May 2014 14:29:30 +0000 (16:29 +0200)]
lavf: add av_stream_get_side_data

10 years agobuild: export library dependencies in ${name}_FFLIBS
Janne Grunau [Thu, 15 May 2014 16:11:19 +0000 (18:11 +0200)]
build: export library dependencies in ${name}_FFLIBS

Removes an ugly $(if) to avoid conflicts with $(FFLIBS-) in the
top-level MAkefile.

10 years agocheck: add libavcodec/vda_internal.h to SKIPHEADERS-$(CONFIG_VDA)
Janne Grunau [Thu, 15 May 2014 15:57:16 +0000 (17:57 +0200)]
check: add libavcodec/vda_internal.h to SKIPHEADERS-$(CONFIG_VDA)

10 years agodisplay: Include mathematics.h for fallback definition of NAN
Martin Storsjö [Mon, 19 May 2014 14:41:05 +0000 (17:41 +0300)]
display: Include mathematics.h for fallback definition of NAN

This fixes compilation with MSVC.

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agomov: store display matrix in a stream side data
Vittorio Giovara [Fri, 16 May 2014 02:06:50 +0000 (22:06 -0400)]
mov: store display matrix in a stream side data

Signed-off-by: Anton Khirnov <anton@khirnov.net>
10 years agoAdd transformation matrix API.
Vittorio Giovara [Fri, 16 May 2014 02:06:49 +0000 (22:06 -0400)]
Add transformation matrix API.

Add AV_PKT_DATA_DISPLAYMATRIX and AV_FRAME_DATA_DISPLAYMATRIX as stream and
frame side data (respectively) to describe a display transformation matrix
for linear transformation operations on the decoded video.

Add functions to easily extract a rotation angle from a matrix and
conversely to setup a matrix for a given rotation angle.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
10 years agopthread_frame: simplify the code by using new AVPacket API
Anton Khirnov [Sun, 18 May 2014 19:20:25 +0000 (21:20 +0200)]
pthread_frame: simplify the code by using new AVPacket API

This also handles side data properly.

10 years agoavpacket: fix copying side data in av_packet_copy_props()
Anton Khirnov [Sun, 18 May 2014 19:16:47 +0000 (21:16 +0200)]
avpacket: fix copying side data in av_packet_copy_props()

Side data count is incremented by by calling av_packet_new_side_data()
in the following loop, setting it explicitly results in the resulting
value being twice what it should be.

CC: libav-stable@libav.org
10 years agolavf: deprecate now unused AVStream.pts
Anton Khirnov [Sun, 18 May 2014 10:36:00 +0000 (12:36 +0200)]
lavf: deprecate now unused AVStream.pts

10 years agomux: drop one of the hacks comprising compute_pkt_fields2()
Anton Khirnov [Sun, 18 May 2014 10:25:29 +0000 (12:25 +0200)]
mux: drop one of the hacks comprising compute_pkt_fields2()

All encoders should output proper timestamps now.

10 years agoavconv: do not use poorly defined and undocumented AVStream.pts
Anton Khirnov [Sun, 18 May 2014 10:21:32 +0000 (12:21 +0200)]
avconv: do not use poorly defined and undocumented AVStream.pts

Use OutputStream.last_mux_dts as an approximation of 'current' output
time instead.

10 years agohevc/intra_pred: simplify neighboring sample derivation
Anton Khirnov [Sat, 17 May 2014 20:30:42 +0000 (22:30 +0200)]
hevc/intra_pred: simplify neighboring sample derivation

10 years agohevc/intra_pred: drop unnecessary conditions in loops
Mickaël Raulet [Sat, 17 May 2014 19:59:08 +0000 (21:59 +0200)]
hevc/intra_pred: drop unnecessary conditions in loops

Signed-off-by: Anton Khirnov <anton@khirnov.net>
10 years agohevc/intra_pred: optimize EXTEND_()*
Mickaël Raulet [Sat, 17 May 2014 19:59:08 +0000 (21:59 +0200)]
hevc/intra_pred: optimize EXTEND_()*

Process 4 pixels at once.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
10 years agohevc: templatize intra_pred
Anton Khirnov [Sat, 17 May 2014 18:41:22 +0000 (20:41 +0200)]
hevc: templatize intra_pred

10 years agohevc: templatize pred_planar
Mickaël Raulet [Sat, 17 May 2014 18:32:05 +0000 (20:32 +0200)]
hevc: templatize pred_planar

Signed-off-by: Anton Khirnov <anton@khirnov.net>
10 years agomovenc: use the "encoder" metadata tag to write stsd Compressorname
Anton Khirnov [Tue, 29 Apr 2014 15:40:57 +0000 (17:40 +0200)]
movenc: use the "encoder" metadata tag to write stsd Compressorname

This mirrors the demuxer behaviour and avoids accessing
AVCodecContext.codec, which should not be done in muxers.

10 years agoavconv: set the "encoder" tag when transcoding
Anton Khirnov [Tue, 29 Apr 2014 15:23:49 +0000 (17:23 +0200)]
avconv: set the "encoder" tag when transcoding

10 years agowavenc: use codec descriptors to get the codec name
Anton Khirnov [Tue, 29 Apr 2014 15:01:17 +0000 (17:01 +0200)]
wavenc: use codec descriptors to get the codec name

Also, return a proper error code.

10 years agodoc/APIchanges: mark the release 10 branch point
Anton Khirnov [Sun, 18 May 2014 08:53:00 +0000 (10:53 +0200)]
doc/APIchanges: mark the release 10 branch point

10 years agodoc/APIchanges: fill in missing hashes and dates
Anton Khirnov [Sun, 18 May 2014 08:52:41 +0000 (10:52 +0200)]
doc/APIchanges: fill in missing hashes and dates

10 years agodv: do not set codec timebase
Anton Khirnov [Sun, 17 Nov 2013 17:42:02 +0000 (18:42 +0100)]
dv: do not set codec timebase

It is not supposed to be set from outside of libavcodec.
Set average framerate instead.

10 years agoavconv: set output avg_frame_rate when known
Anton Khirnov [Sun, 11 May 2014 16:00:48 +0000 (18:00 +0200)]
avconv: set output avg_frame_rate when known

10 years agolavf: extend avg_frame_rate documentation.
Anton Khirnov [Sun, 11 May 2014 15:58:05 +0000 (17:58 +0200)]
lavf: extend avg_frame_rate documentation.

10 years agoavienc: sanitize variable naming in write_header()
Anton Khirnov [Sun, 11 May 2014 08:07:35 +0000 (10:07 +0200)]
avienc: sanitize variable naming in write_header()

Do not call an AVCodecContext 'stream', that is highly confusing.
Also, add a local variable for the current AVStream in the loop over all
streams.

10 years agoyop: only set extradata size after it has been successfully allocated
Anton Khirnov [Sat, 3 May 2014 08:48:03 +0000 (10:48 +0200)]
yop: only set extradata size after it has been successfully allocated

Do not leave a non-zero extradata_size set on failure

10 years agoyuv4mpegdec: do not set coded_frame properties
Anton Khirnov [Sat, 3 May 2014 09:08:25 +0000 (11:08 +0200)]
yuv4mpegdec: do not set coded_frame properties

coded_frame is not meant to be changed from outside of lavc, and is not
used for decoding.
Set AVCodecContext.field_order instead.

10 years agoyuv4mpeg: split the demuxer and muxer into separate files
Anton Khirnov [Sat, 3 May 2014 09:04:50 +0000 (11:04 +0200)]
yuv4mpeg: split the demuxer and muxer into separate files

10 years agoa64: check that extradata exists before reading from it
Anton Khirnov [Sat, 3 May 2014 08:44:17 +0000 (10:44 +0200)]
a64: check that extradata exists before reading from it

10 years agoa64: remove unneeded struct qualifier
Anton Khirnov [Sat, 3 May 2014 08:43:27 +0000 (10:43 +0200)]
a64: remove unneeded struct qualifier

10 years ago4xm: allocate extradata properly.
Anton Khirnov [Sat, 3 May 2014 06:50:41 +0000 (08:50 +0200)]
4xm: allocate extradata properly.

Pad it with the required amount of zeros, check for malloc failure.

10 years agolavc: add avcodec_free_context().
Anton Khirnov [Sat, 5 Apr 2014 06:36:00 +0000 (08:36 +0200)]
lavc: add avcodec_free_context().

Right now, the caller has to manually manage some allocated
AVCodecContext fields, like extradata or subtitle_header. This is
fragile and prone to leaks, especially if we want to add more such
fields in the future.

The only reason for this behaviour is so that the AVStream codec context
can be reused for decoding. Such reuse is discouraged anyway, so this
commit is the first step to deprecating it.

10 years agolavc: remove the locking code in avcodec_close()
Anton Khirnov [Sat, 5 Apr 2014 05:09:44 +0000 (07:09 +0200)]
lavc: remove the locking code in avcodec_close()

This function should not modify any global state, so there should be no
reason for any locking.

10 years agoriff: Pass block_align to estimate frame duration
nu774 [Fri, 16 May 2014 11:25:46 +0000 (20:25 +0900)]
riff: Pass block_align to estimate frame duration

Fix incorrect wSamplesPerBlock(=0) written for ADPCM_IMA_WAV

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
10 years agohlsenc: Set the default codecs to AAC and H264
Martin Storsjö [Thu, 15 May 2014 18:43:46 +0000 (21:43 +0300)]
hlsenc: Set the default codecs to AAC and H264

Most HLS implementation only support these codecs.

Signed-off-by: Martin Storsjö <martin@martin.st>
10 years agobuild: Support building using clang-usan and disable-optimization
Katerina Barone-Adesi [Fri, 16 May 2014 16:07:34 +0000 (18:07 +0200)]
build: Support building using clang-usan and disable-optimization

Clang Undefined Behaviour Sanitizer seems to make non-constant constant
expressions, making the compilation fail when they are used within
inline assembly if no optimization is requested.

Add -O1 to the cflags to hide the misbehaviour.

Bug-Id: 683

10 years agoavisynth: set duration of audio streams
Hendrik Leppkes [Thu, 8 May 2014 13:51:15 +0000 (09:51 -0400)]
avisynth: set duration of audio streams

Signed-off-by: Anton Khirnov <anton@khirnov.net>
10 years agoFATE/opus: increase fuzz for the celt tests
Anton Khirnov [Thu, 15 May 2014 06:02:59 +0000 (08:02 +0200)]
FATE/opus: increase fuzz for the celt tests

This seems to be needed on some 32bit arches.

10 years agoaarch64: opus NEON iMDCT and FFT
Janne Grunau [Mon, 28 Apr 2014 15:56:43 +0000 (17:56 +0200)]
aarch64: opus NEON iMDCT and FFT

Opus celt decoding 11% faster and the iMDCT over 2.5 times faster on
Apple's A7.

10 years agoconfigure: fix enable-libopus help string
Tristan Matthews [Wed, 14 May 2014 16:13:49 +0000 (16:13 +0000)]
configure: fix enable-libopus help string

10 years agobuild: add avresample after avcodec to FFLIBS
Janne Grunau [Thu, 15 May 2014 12:53:30 +0000 (14:53 +0200)]
build: add avresample after avcodec to FFLIBS

avcodec might depend on avresample and with --as-needed required symbols
might be get removed if avresample is linked before avcodec.
Fixes link failures of avprobe and avplay on aarch64 with
--enable-neon-clobber-test.

10 years agolavc: properly handle subtitle_header in avcodec_copy_context()
Anton Khirnov [Sat, 5 Apr 2014 05:40:49 +0000 (07:40 +0200)]
lavc: properly handle subtitle_header in avcodec_copy_context()

10 years agolavc: preserve the original private data in avcodec_copy_context()
Anton Khirnov [Sat, 5 Apr 2014 05:38:16 +0000 (07:38 +0200)]
lavc: preserve the original private data in avcodec_copy_context()

If a non-NULL codec was passed to avcodec_alloc_context3(), private data
will be already allocated in dest.

10 years agolavf: drop the zero-sized packets hack
Anton Khirnov [Thu, 1 May 2014 11:11:57 +0000 (13:11 +0200)]
lavf: drop the zero-sized packets hack

There should not be any valid reason anymore for passing completely
empty packets to lavf.
OTOH side data-only packets can be useful.

10 years agolavf: add AVFMT_FLAG_BITEXACT.
Anton Khirnov [Thu, 1 May 2014 08:43:10 +0000 (10:43 +0200)]
lavf: add AVFMT_FLAG_BITEXACT.

Use it instead of checking CODEC_FLAG_BITEXACT in the first stream's
codec context.

Using codec options inside lavf is fragile and can easily break when the
muxing codec context is not the encoding context.

10 years agolavc: add a native Opus decoder.
Anton Khirnov [Thu, 17 Apr 2014 10:51:03 +0000 (12:51 +0200)]
lavc: add a native Opus decoder.

Initial implementation by Andrew D'Addesio <modchipv12@gmail.com> during
GSoC 2012.

Completion by Anton Khirnov <anton@khirnov.net>, sponsored by the
Mozilla Corporation.

Further contributions by:
Christophe Gisquet <christophe.gisquet@gmail.com>
Janne Grunau <janne-libav@jannau.net>
Luca Barbato <lu_zero@gentoo.org>

10 years agobuild: do not append $(FFLIBS-) to $(FFLIBS) if $(NAME) is not defined
Janne Grunau [Tue, 13 May 2014 22:05:27 +0000 (00:05 +0200)]
build: do not append $(FFLIBS-) to $(FFLIBS) if $(NAME) is not defined

Avoids including disabled library Makefiles.

10 years agolavf: properly document the distinction between flags and ctx_flags
Anton Khirnov [Thu, 1 May 2014 08:03:54 +0000 (10:03 +0200)]
lavf: properly document the distinction between flags and ctx_flags

10 years agobuild: handle library dependencies in configure
Janne Grunau [Thu, 1 May 2014 11:18:57 +0000 (13:18 +0200)]
build: handle library dependencies in configure

Instead of setting FFLIBS in each library Makefile configure
exports FFLIBS-$library in config.mak.

10 years agoaarch64: assembler in clang-3.4 ignores the division by two
Janne Grunau [Tue, 13 May 2014 13:47:51 +0000 (15:47 +0200)]
aarch64: assembler in clang-3.4 ignores the division by two

Values are positive powers of two, so just replace it with right shift.

10 years agoavconv: Support VDA hwaccel
Anton Khirnov [Mon, 24 Mar 2014 01:02:33 +0000 (02:02 +0100)]
avconv: Support VDA hwaccel

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>