wm4
47687a2f8a
avcodec: add metadata to identify wrappers and hardware decoders
...
Explicitly identify decoder/encoder wrappers with a common name. This
saves API users from guessing by the name suffix. For example, they
don't have to guess that "h264_qsv" is the h264 QSV implementation, and
instead they can just check the AVCodec .codec and .wrapper_name fields.
Explicitly mark AVCodec entries that are hardware decoders or most
likely hardware decoders with new AV_CODEC_CAPs. The purpose is allowing
API users listing hardware decoders in a more generic way. The proposed
AVCodecHWConfig does not provide this information fully, because it's
concerned with decoder configuration, not information about the fact
whether the hardware is used or not.
AV_CODEC_CAP_HYBRID exists specifically for QSV, which can have software
implementations in case the hardware is not capable.
Based on a patch by Philip Langdale <philipl@overt.org>.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2017-12-14 16:58:45 +01:00
Diego Biurrun
97cfe1d8bd
Convert all AVClass struct declarations to designated initializers.
2017-06-12 11:01:10 +02:00
Vittorio Giovara
059a934806
lavc: Consistently prefix input buffer defines
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-27 15:24:59 +01:00
Vittorio Giovara
def97856de
lavc: AV-prefix all codec capabilities
...
Express bitfields more simply.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-27 15:24:58 +01:00
Vittorio Giovara
7c6eb0a1b7
lavc: AV-prefix all codec flags
...
Convert doxygen to multiline and express bitfields more simply.
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-27 15:24:58 +01:00
Anton Khirnov
2f3fadfbe3
lavc,lavf: switch to the new vorbis parse API
2014-11-06 09:00:46 +01:00
Anton Khirnov
5e80fb7ff2
lavc: add a public API for parsing vorbis packets.
...
It is required by (at least) the ogg demuxer.
Mark the current semi-public apriv API for removal.
2014-11-06 08:51:25 +01:00
Anton Khirnov
6896f95b24
vorbis_parser: add an AV prefix to VorbisParseContext
...
This is done in preparation for making it public.
2014-11-06 08:47:54 +01:00
Anton Khirnov
2df0c32ea1
lavc: use a separate field for exporting audio encoder padding
...
Currently, the amount of padding inserted at the beginning by some audio
encoders, is exported through AVCodecContext.delay. However
- the term 'delay' is heavily overloaded and can have multiple different
meanings even in the case of audio encoding.
- this field has entirely different meanings, depending on whether the
codec context is used for encoding or decoding (and has yet another
different meaning for video), preventing generic handling of the codec
context.
Therefore, add a new field -- AVCodecContext.initial_padding. It could
conceivably be used for decoding as well at a later point.
2014-10-13 19:09:01 +00:00
Diego Biurrun
dc9e05e279
libvorbis: Give consistent names to all functions, structs, and defines
2014-02-21 11:08:09 +01:00
Diego Biurrun
984e339866
avcodec: Consistently name encoder init functions foo_encode_init
2014-02-20 04:16:15 -08:00
Diego Biurrun
b2bed9325d
cosmetics: Group .name and .long_name together in codec/format declarations
2013-10-03 23:32:01 +02:00
Anton Khirnov
f073b1500e
lavc: remove disabled FF_API_OLD_ENCODE_AUDIO cruft
2013-03-09 08:36:40 +01:00
Michael Niedermayer
1d7ffd06e4
lavc: Fix assignments in if() when calling ff_af_queue_add
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-01-14 13:12:44 +02:00
Justin Ruggles
cfc0a80a1d
libvorbis: use planar sample format
2012-10-06 12:25:32 -04:00
Anton Khirnov
36ef5369ee
Replace all CODEC_ID_* with AV_CODEC_ID_*
2012-08-07 16:00:24 +02:00
Justin Ruggles
e5aab2d7a4
libvorbis: use AVCodec.encode2()
2012-03-21 12:49:36 -04:00
Justin Ruggles
a45a1ea521
libvorbis: add/update error messages
...
also use AVERROR codes for some return values instead of -1
2012-02-29 14:54:25 -05:00
Justin Ruggles
592c4dbc7e
libvorbis: use AVFifoBuffer for output packet buffer
...
simplifies the code and does less memmove()
2012-02-29 14:54:24 -05:00
Justin Ruggles
1fe7c1be54
libvorbis: remove unneeded e_o_s check
...
vorbis_bitrate_flushpacket() does not return any packets that should not be
output in the bitstream.
2012-02-29 14:54:24 -05:00
Justin Ruggles
94025d8a99
libvorbis: check return values for functions that can return errors
2012-02-29 14:54:24 -05:00
Justin Ruggles
c5063e0348
libvorbis: use float input instead of s16
...
libvorbis takes float input, so we can just deinterleave/reorder the input
as-is instead of also converting.
2012-02-29 14:54:24 -05:00
Justin Ruggles
f15c4281dc
libvorbis: do not flush libvorbis analysis if dsp state was not initialized
...
Fixes a segfault if init() fails before initializing the dsp state
2012-02-29 14:54:23 -05:00
Justin Ruggles
147ff24a0e
libvorbis: use VBR by default, with default quality of 3
2012-02-29 14:54:20 -05:00
Justin Ruggles
182d4f1f38
libvorbis: fix use of minrate/maxrate AVOptions
...
- enable the options for audio encoding
- properly check for user-set maxrate
- use correct calling order in vorbis_encode_setup_managed()
2012-02-29 14:44:15 -05:00
Justin Ruggles
eb35ef2932
libvorbis: cosmetics: renaming/pretty-printing/comments/unused code
2012-02-29 14:44:15 -05:00
Justin Ruggles
6f600ab354
libvorbis: improve error checking in oggvorbis_encode_init()
2012-02-25 11:49:42 -05:00
Justin Ruggles
255ad8881d
audio encoders: do not set coded_frame->key_frame.
...
it is already set in avcodec_alloc_frame()
2012-02-25 11:49:41 -05:00
Justin Ruggles
91a28b0e8e
avcodec: add ff_samples_to_time_base() convenience function to internal.h
2012-02-20 15:20:17 -05:00
Diego Biurrun
d4b63054d9
cosmetics: Drop unnecessary parentheses around return values.
2011-12-30 22:18:07 +01:00
Diego Biurrun
ca5ab8cd21
libvorbis: K&R reformatting cosmetics
2011-12-29 23:30:20 +01:00
Anton Khirnov
145f741e11
AVOptions: rename FF_OPT_TYPE_* => AV_OPT_TYPE_*
2011-10-12 16:51:16 +02:00
Diego Biurrun
8671488799
Use explicit struct initializers for AVCodec declarations.
2011-09-24 12:11:19 +02:00
Robert Swain
954a653216
vorbis: vpxenc: Add missing include for av_rescale*
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-04 09:39:24 +01:00
Anton Khirnov
b66752790a
AVOptions: make default_val a union, as proposed in AVOption2.
...
This breaks API and ABI.
2011-05-10 20:22:06 +02:00
Mans Rullgard
2912e87a6c
Replace FFmpeg with Libav in licence headers
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Diego Elio Pettenò
d36beb3f69
Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.
...
None of these symbols should be accessed directly, so declare them as
hidden.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-26 16:08:45 +00:00
Justin Ruggles
78c8b4b758
Add audio flag to libvorbis AVOption.
...
Originally committed as revision 26165 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-30 04:22:41 +00:00
Stefano Sabatini
5d6e4c160a
Replace deprecated symbols SAMPLE_FMT_* with AV_SAMPLE_FMT_*, and enum
...
SampleFormat with AVSampleFormat.
Originally committed as revision 25730 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 11:04:40 +00:00
James Zern
da7548585e
Fix crash when using iblock option (when a warning is logged).
...
Patch by James Zern, jzern google
Originally committed as revision 25472 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-14 07:47:49 +00:00
Michael Niedermayer
77336a5e12
Allow setting the impulse block bias for libvorbis through a private codec parameter.
...
First example and test of private codec parameters.
Originally committed as revision 25258 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-29 15:09:38 +00:00
Pascal Massimino
fd7242ddbd
remove an unneeded av_realloc()
...
Originally committed as revision 24375 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-20 21:54:46 +00:00
Pascal Massimino
c426562cbf
add some buffer checks
...
Originally committed as revision 24184 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 06:59:21 +00:00
Pascal Massimino
42859ddb7b
use avccontext->frame_size where appropriate
...
Originally committed as revision 24183 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 06:40:05 +00:00
James Darnley
9577838f2f
Fix libvorbis encoding with more than 2 channels
...
Fixes issue 1325.
Patch by James Darnley, james dot darnley at gmail
Originally committed as revision 23818 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 09:25:05 +00:00
Martin Storsjö
d99659f0b3
libvorbis: Only drop 1-byte packets at end of stream
...
This fixes handling of totally silent packets during the encoding, that
also are 1 byte in size.
This fixes issue 2013
Originally committed as revision 23693 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-22 06:53:06 +00:00
Martin Storsjö
1204a13c48
libvorbis: Use memmove instead of memcpy for shifting data
...
Originally committed as revision 23631 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-16 19:03:54 +00:00
David Conrad
57ebbccf9c
libvorbis: Disable strict bitrate management when not requested
...
This is 3 times faster in a quick benchmark
Originally committed as revision 23471 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:40:40 +00:00
David Conrad
ed638b5c4b
libvorbis: OV_ECTL_RATEMANAGE_AVG is depreciated in favor of
...
OV_ECTL_RATEMANAGE2_SET
Originally committed as revision 23470 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:40:36 +00:00
David Conrad
e5a5ea9e89
libvorbis: Hook up min/max bitrate
...
Originally committed as revision 23469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-04 22:40:31 +00:00