Vittorio Giovara
853cc025d6
mov: store display matrix in a stream side data
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
11 years ago
Vittorio Giovara
bddd8cbf68
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>
11 years ago
Anton Khirnov
9929b3564c
pthread_frame: simplify the code by using new AVPacket API
...
This also handles side data properly.
11 years ago
Anton Khirnov
cdf58f0599
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
11 years ago
Anton Khirnov
a312f71090
lavf: deprecate now unused AVStream.pts
11 years ago
Anton Khirnov
ed7922faac
mux: drop one of the hacks comprising compute_pkt_fields2()
...
All encoders should output proper timestamps now.
11 years ago
Anton Khirnov
dc40d88625
avconv: do not use poorly defined and undocumented AVStream.pts
...
Use OutputStream.last_mux_dts as an approximation of 'current' output
time instead.
11 years ago
Anton Khirnov
c9f8809ee4
hevc/intra_pred: simplify neighboring sample derivation
11 years ago
Mickaël Raulet
25bb7eaf9e
hevc/intra_pred: drop unnecessary conditions in loops
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
11 years ago
Mickaël Raulet
4c390b1ba9
hevc/intra_pred: optimize EXTEND_()*
...
Process 4 pixels at once.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
11 years ago
Anton Khirnov
a1c2b48018
hevc: templatize intra_pred
11 years ago
Mickaël Raulet
04db5794cd
hevc: templatize pred_planar
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
11 years ago
Anton Khirnov
0ba5299a80
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.
11 years ago
Anton Khirnov
6656370b85
avconv: set the "encoder" tag when transcoding
11 years ago
Anton Khirnov
d246231e47
wavenc: use codec descriptors to get the codec name
...
Also, return a proper error code.
11 years ago
Anton Khirnov
968a62a9d9
doc/APIchanges: mark the release 10 branch point
11 years ago
Anton Khirnov
33082af756
doc/APIchanges: fill in missing hashes and dates
11 years ago
Anton Khirnov
79f2c426fd
dv: do not set codec timebase
...
It is not supposed to be set from outside of libavcodec.
Set average framerate instead.
11 years ago
Anton Khirnov
93afb6c98d
avconv: set output avg_frame_rate when known
11 years ago
Anton Khirnov
7a5f4f6853
lavf: extend avg_frame_rate documentation.
11 years ago
Anton Khirnov
c3311d472a
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.
11 years ago
Anton Khirnov
ab3fdaa713
yop: only set extradata size after it has been successfully allocated
...
Do not leave a non-zero extradata_size set on failure
11 years ago
Anton Khirnov
b513bf6f69
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.
11 years ago
Anton Khirnov
e4dc1000d7
yuv4mpeg: split the demuxer and muxer into separate files
11 years ago
Anton Khirnov
3ef6c5264b
a64: check that extradata exists before reading from it
11 years ago
Anton Khirnov
b136564909
a64: remove unneeded struct qualifier
11 years ago
Anton Khirnov
d256ed78ff
4xm: allocate extradata properly.
...
Pad it with the required amount of zeros, check for malloc failure.
11 years ago
Anton Khirnov
fd056029f4
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.
11 years ago
Anton Khirnov
e1b66778b6
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.
11 years ago
nu774
584f884090
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>
11 years ago
Martin Storsjö
34e2ce5dde
hlsenc: Set the default codecs to AAC and H264
...
Most HLS implementation only support these codecs.
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
Katerina Barone-Adesi
4d25c2bc76
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
11 years ago
Hendrik Leppkes
7c377f0e74
avisynth: set duration of audio streams
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
11 years ago
Anton Khirnov
4735784f1c
FATE/opus: increase fuzz for the celt tests
...
This seems to be needed on some 32bit arches.
11 years ago
Janne Grunau
d3f5b94762
aarch64: opus NEON iMDCT and FFT
...
Opus celt decoding 11% faster and the iMDCT over 2.5 times faster on
Apple's A7.
11 years ago
Tristan Matthews
7c5ca546a0
configure: fix enable-libopus help string
11 years ago
Janne Grunau
5e2ba41d4b
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.
11 years ago
Anton Khirnov
3b2fbe67bd
lavc: properly handle subtitle_header in avcodec_copy_context()
11 years ago
Anton Khirnov
efc7df6c1f
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.
11 years ago
Anton Khirnov
c9281a01b7
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.
11 years ago
Anton Khirnov
0c1959b056
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.
11 years ago
Anton Khirnov
b70d7a4ac7
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>
11 years ago
Janne Grunau
7e90133f64
build: do not append $(FFLIBS-) to $(FFLIBS) if $(NAME) is not defined
...
Avoids including disabled library Makefiles.
11 years ago
Anton Khirnov
a738540366
lavf: properly document the distinction between flags and ctx_flags
11 years ago
Janne Grunau
449511740f
build: handle library dependencies in configure
...
Instead of setting FFLIBS in each library Makefile configure
exports FFLIBS-$library in config.mak.
11 years ago
Janne Grunau
9aa4592076
aarch64: assembler in clang-3.4 ignores the division by two
...
Values are positive powers of two, so just replace it with right shift.
11 years ago
Anton Khirnov
1839fafa95
avconv: Support VDA hwaccel
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years ago
Anton Khirnov
67afcefb35
lavc: Add new VDA hwaccel
...
It leverages the new hwaccel 1.2 features:
- get_buffer2 is never called
- the internal context is automatically initialized/deinitialized
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years ago
Anton Khirnov
31a46750c7
vda: use hwaccel private data for internal bitstream buffer
11 years ago
Anton Khirnov
66e6c8a7b4
lavu: Add a pixel format for new VDA hwaccel
...
The current hwaccel is broken and cannot be fixed in a compatible
way. It will be deprecated and replaced with a new one.
11 years ago