Commit Graph
100 Commits
Author SHA1 Message Date
Anton Khirnov 5dd35b43f1 Move timefilter code from lavf to lavd.
It's only used in the JACK device.

Fixes linking shared lavd with JACK enabled.
2011-10-21 20:29:05 +02:00
Anton Khirnov 65d3176aaf lavc: hide private symbols.
Overhead as reported by rbelf-size goes from 90860 to 20204.
2011-10-20 21:06:58 +02:00
Anton Khirnov 586657c20a lavc: deprecate img_get_alpha_info().
It's never been touched or used in any way since it was added in 2003
and only works for PIX_FMT_PAL8, which makes me conclude that nobody's
ever used it.
2011-10-20 21:06:58 +02:00
Anton Khirnov 0842d58998 lavc: use avpriv_ prefix for ff_toupper4.
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov 9f51c682ee lavc: use avpriv_ prefix for ff_copy_bits and align_put_bits.
They are used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov 6f89efeaa7 lavc: use avpriv_ prefix for ff_ac3_parse_header.
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov 9138a130cd lavc: use avpriv_ prefix for ff_frame_rate_tab.
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov 773375c3d0 lavc: rename ff_find_start_code to avpriv_mpv_find_start_code
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov 357db4c263 lavc: use avpriv_ prefix for ff_split_xiph_headers.
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov 2361e59b98 lavc: use avpriv_ prefix for ff_dirac_parse_sequence_header.
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov 242c73a0fd lavc: use avpriv_ prefix for some dv symbols used in lavf.
Specifically, ff_dv_frame_profile and ff_dv_codec_profile.
2011-10-20 21:06:58 +02:00
Anton Khirnov d9cca9fc6a lavc: use avpriv_ prefix for some flac symbols used in lavf.
Specifically, ff_flac_parse_streaminfo, ff_flac_is_extradata_valid and
ff_flac_parse_block_header
2011-10-20 21:06:58 +02:00
Anton Khirnov 59a9a23581 lavc: use avpriv_ prefix for some mpeg4audio symbols used in lavf.
Specifically, ff_mpeg4audio_sample_rates, ff_mpeg4audio_get_config and
ff_copy_pce_data
2011-10-20 21:06:57 +02:00
Anton Khirnov 82ab61f901 lavc: use avpriv_ prefix for some mpegaudio symbols used in lavf.
Specifically, ff_mpa_freq_tab, ff_mpa_bitrate_tab, ff_mpa_decode_header,
ff_mpegaudio_decode_header.
2011-10-20 21:06:57 +02:00
Anton Khirnov 73ae27e17b lavc: use avpriv_ prefix for ff_aac_parse_header().
It's used in lavf.
2011-10-20 21:06:57 +02:00
Anton Khirnov 8d74bf17c6 lavf: hide private symbols.
Overhead as reported by rbelf-size goes from 40147 to 20877.
2011-10-20 21:06:45 +02:00
Anton Khirnov ab88b25f99 lavf: use avpriv_ prefix for some dv functions.
They are used in libavdevice.
2011-10-20 20:57:23 +02:00
Anton Khirnov 1fa395e471 lavf: use avpriv_ prefix for ff_new_chapter().
It's used in libavdevice.
2011-10-20 20:57:23 +02:00
Anton Khirnov f0eeff708a lavc: make avcodec_get_context_defaults3 "officially" public
Deprecate avcodec_get_context_defaults/avcodec_get_context_defaults2
2011-10-19 17:02:11 +02:00
Anton Khirnov 84ad31ff18 lavf: replace av_new_stream->avformat_new_stream part II.
Manual replacements are done in this commit.

In many cases, the id is some constant made up number (e.g. 0 for video
and 1 for audio), which is then not used in the demuxer for anything.
Those ids are removed.
2011-10-19 17:02:11 +02:00
Anton Khirnov 3b3bbdd3e6 lavf,lavd: replace av_new_stream->avformat_new_stream part I.
Trivial replacements with sed are done in this commit:
sed 's/av_new_stream(\([^)]*\), 0)/avformat_new_stream(\1, NULL)/'
2011-10-19 17:02:11 +02:00
Anton Khirnov 569129a6dc lavf: add avformat_new_stream as a replacement for av_new_stream.
It takes a codec parameter, thus enabling codec-specific defaults.
2011-10-19 17:02:11 +02:00
Anton Khirnov df3ca34a56 Makefile: change presets extension to .avpreset
Fixes make install.
2011-10-19 07:50:12 +02:00
Anton Khirnov 4e64c4d51a AVOptions: add documentation. 2011-10-19 06:59:58 +02:00
Anton Khirnov 1279098d7b presets: update libx264 ffpresets
Use the native libx264 options and rename all the preset to use
the avpreset extension.
2011-10-19 06:59:58 +02:00
Anton Khirnov 075d6439f1 Add libvpx presets.
Based on a patch by James Zern jzern AT google DOT com
2011-10-18 11:40:19 +02:00
Anton Khirnov a5f05e52e4 doc/avtools: add forgotten part to stream specifiers description 2011-10-18 11:40:14 +02:00
Anton Khirnov 85afbb1d00 AVOptions: don't segfault on NULL parameter in av_set_options_string() 2011-10-17 10:42:21 +02:00
Anton Khirnov 5a9ee3152b mpegenc/mpegtsenc: add muxrate private options.
Deprecate AVFormatContext.mux_rate.
2011-10-17 08:39:53 +02:00
Anton Khirnov c10731e78b lavf: deprecate AVFormatContext.file_size
It's too unreliable to be useful. avio_size() should be called instead.
2011-10-17 08:25:38 +02:00
Anton Khirnov 492bd1a28f AVOptions: bump minor and add APIchanges entry. 2011-10-12 16:55:56 +02:00
Anton Khirnov 7a6cd9957d cmdutils/avtools: simplify show_help() by using av_opt_child_class_next() 2011-10-12 16:51:17 +02:00
Anton Khirnov 145f741e11 AVOptions: rename FF_OPT_TYPE_* => AV_OPT_TYPE_* 2011-10-12 16:51:16 +02:00
Anton Khirnov 3b3ea34655 Remove all uses of deprecated AVOptions API. 2011-10-12 16:51:16 +02:00
Anton Khirnov 8c5dcaad13 AVOptions: add av_opt_next, deprecate av_next_option.
Just for naming consistency, no functional changes.
2011-10-12 16:51:16 +02:00
Anton Khirnov dca055be3a AVOptions: add functions for evaluating option strings. 2011-10-12 16:51:16 +02:00
Anton Khirnov 059a037fbd AVOptions: split get_number().
Split actual writing to read_number() in the same way as write_number().
Allows set_string_number() to write to a caller-provided destination.
2011-10-12 16:51:16 +02:00
Anton Khirnov 41d9d51a72 AVOptions: add av_opt_get*, deprecate av_get*.
New functions can get values from child objects, properly report error
codes and have consistent naming and signatures.
2011-10-12 16:51:16 +02:00
Anton Khirnov dac66da63d AVOptions: add av_opt_set*().
Deprecate av_set_*

New functions support setting values on children, return error codes
instead of options and have consistent naming and signatures.
2011-10-12 16:51:16 +02:00
Anton Khirnov 641c7afe3c AVOptions: add new API for enumerating children.
This will allow the caller to enumerate child contexts in a generic way
and since the API is recursive, it also allows for deeper nesting (e.g.
AVFormatContext->AVIOContext->URLContext)

This will also allow the new setting/reading API to transparently apply
to children contexts.
2011-10-12 16:51:16 +02:00
Anton Khirnov 46c3c53bae libx264: support yuv422/444 output. 2011-10-12 08:27:36 +02:00
Anton Khirnov 04de1569cd sws: support yuv444p9/10 output. 2011-10-12 08:27:30 +02:00
Anton Khirnov c780b543e7 id3v2: fix NULL pointer dereference
Bug found by Laurent Aimar fenrir at videolan org
2011-10-11 14:56:41 +02:00
Anton Khirnov 7bb1807c2d AVOptions: refactor set_number/write_number
write_number() does the actual writing of the supplied
number to destination. Move finding the option and choosing destination
address out of it.
2011-10-10 20:27:31 +02:00
Anton Khirnov cf10095f0b AVOptions: cosmetics, rename static av_set_number2() to write_number(). 2011-10-10 20:27:31 +02:00
Anton Khirnov b003d0be5b AVOptions: cosmetics, move and rename static av_set_number(). 2011-10-10 20:27:31 +02:00
Anton Khirnov c8d787d2ef AVOptions: split av_set_string3 into opt type-specific functions
Also stop attempting to honor the alloc parameter, as things break
horribly in that case.
It will be removed in upcoming successor to av_set_string3.
2011-10-10 20:27:30 +02:00
Anton Khirnov f5646a325b avconv: always print stats with AV_LOG_INFO
It's now possible to disable printing stats during encoding with
-nostats, so there's no reason to print them differently depending on
whether it's last report or not.
2011-10-09 17:15:18 +02:00
Anton Khirnov 667d98182d doc/avconv: add forgotten output/per-stream info to -filter 2011-10-09 17:15:18 +02:00
Anton Khirnov 3460dd8acf avconv: add -stats option to enable/disable printing encoding progress 2011-10-09 17:15:18 +02:00
Anton Khirnov c6007065ed avconv: in output_packet() don't set decoded_data_size for video.
It's only used for audio.
2011-10-09 17:15:18 +02:00
Anton Khirnov 515901fad2 avconv: remove pointless always true condition 2011-10-09 17:15:18 +02:00
Anton Khirnov 11fdb7e197 avconv: factorize common code in transcode_init() 2011-10-09 17:15:18 +02:00
Anton Khirnov d97efd7f87 libx264: support 9- and 10-bit output. 2011-10-06 09:16:06 +02:00
Anton Khirnov a4ea00d021 lavc/lavf: use unique private classes.
This is needed by the new AVOptions API.
2011-10-05 07:52:30 +02:00
Anton Khirnov 0ba1e1978d lavc: use designated initializers for av_codec_context_class 2011-10-05 07:52:05 +02:00
Anton Khirnov 60df6b0048 id3v2: remove pointless casts 2011-10-03 13:06:51 +02:00
Anton Khirnov d2961e4ebf id3v2: read TXXX frames with two calls to decode_str() instead of one.
Read the key in the first, value in the second.

This allows to avoid pointless strdups and simplify decode_str() by
dropping two of its parameters.
2011-10-03 13:06:51 +02:00
Anton Khirnov 1e18d32d01 id3v2: don't discard the whole tag when encountering empty frames.
While they're technically invalid, it's better to skip them and try to
read the rest of the tag.
2011-10-03 13:06:41 +02:00
Anton Khirnov 24ec9ac475 libvpx: fix build with older libvpx versions.
VPX_ERROR_RESILIENT_DEFAULT and VPX_ERROR_RESILIENT_PARTITIONS weren't
defined before 4cb0ebe5b27d35ccc2a78c1d16f2622ddef21f74 (CommitDate: Tue
Jun 28 11:10:17 2011)
2011-10-03 13:06:24 +02:00
Anton Khirnov b036a7180c lavc: add video/audio/encoding flags to global_quality option 2011-10-01 07:16:56 +02:00
Anton Khirnov d3c1d37a90 avconv: use different variables for decoded and filtered frame.
Makes the code less obfuscated and fixes encoding one video stream to
several outputs.

Also use avcodec_alloc_frame() instead of allocating AVFrame on stack.

Breaks me_threshold in avconv, as motion vectors aren't passed through
lavfi. They could be copied manually, but I don't think this misfeature
is useful enough to justify ugly hacks.
2011-09-27 19:17:37 +02:00
Anton Khirnov 3ccd15803b avconv: add support for copying attachments. 2011-09-27 15:26:36 +02:00
Anton Khirnov c7a63a521b matroskaenc: write attachments. 2011-09-27 15:26:36 +02:00
Anton Khirnov 98cfe22b5c matroskadec: export mimetype of attachments as metadata. 2011-09-27 15:26:36 +02:00
Anton Khirnov becdce99eb avconv: factorize common code from new_*_stream() 2011-09-27 15:26:35 +02:00
Anton Khirnov d159060a87 doc/avconv: expand documentation for some options. 2011-09-27 15:26:35 +02:00
Anton Khirnov 5aa3fcec35 doc/avconv: document -timelimit. 2011-09-27 15:26:35 +02:00
Anton Khirnov e3245b2631 avconv: replace all fprintf() by av_log().
Deprecate -v option, now only -loglevel is enough.
2011-09-26 20:33:50 +02:00
Anton Khirnov f24facd3ec avconv: change av_log verbosity from ERROR to FATAL for fatal errors. 2011-09-26 20:33:50 +02:00
Anton Khirnov 1c5e9551bc cmdutils: replace fprintf() by av_log()
This way, all messages can be easily disabled with -loglevel.

Behavior change -- configuration is printed with AV_LOG_VERBOSE, so it's
not shown by default.
2011-09-26 20:33:50 +02:00
Anton Khirnov 182cbe433a avtools: parse loglevel before all the other options.
This way it can be applied to cmdutils too -- e.g. showing the banner
and printing startup messages.
2011-09-26 20:33:50 +02:00
Anton Khirnov 9b921a8272 avconv: use correct output stream index when checking max_frames 2011-09-25 08:28:14 +02:00
Anton Khirnov 240ae356e9 avconv: remove fake coded_frame on streamcopy hack
Back in 2002 when it was added, some muxers used information from
coded_frame. It's not true anymore, so this hack is useless and can be
removed.
2011-09-25 08:28:10 +02:00
Anton Khirnov dc3e76f3f2 avconv: actually set InputFile.rate_emu 2011-09-23 10:04:44 +02:00
Anton Khirnov 775af761a0 eval: test isnan(sqrt(-1)) instead of just sqrt(-1)
sqrt(-1) returns "some NaN", it's not specified which exactly.
2011-09-22 08:13:55 +02:00
Anton Khirnov 9aa1f87dfd Revert "ffmpeg: get rid of useless AVInputStream.nb_streams."
This reverts commit 2cf8355f98.
AVInputStream.nb_streams tracks number of streams found at the
beginning, new streams may appear that ffmpeg doesn't know about. Fixes
crash in this case.
2011-09-21 14:12:00 +02:00
Anton Khirnov 609a2fa1fa Remove some forgotten AVCodecContext.palctrl usage. 2011-09-21 13:51:53 +02:00
Anton Khirnov 9ecfbb3e57 lavc/utils: move avcodec_init() higher in the file.
Fixes build on next major bump.
2011-09-21 13:51:53 +02:00
Anton Khirnov e5b29c1f6b lavc: replace some deprecated FF_*_TYPE with AV_PICTURE_TYPE_* 2011-09-21 13:51:53 +02:00
Anton Khirnov feedc0754b ac3dec: actually use drc_scale private option 2011-09-21 13:51:53 +02:00
Anton Khirnov 63e4c8a653 lavc: undeprecate AVPALETTE_SIZE and AVPALETTE_COUNT macros
They are still being used and shouldn't be removed.
2011-09-21 13:51:53 +02:00
Anton Khirnov 4d77d57d20 alsa: add missing header
Fixes compile with next lavc major.
2011-09-21 13:51:53 +02:00
Anton Khirnov c92a2a4eb8 movenc: fix NULL reference in mov_write_tkhd_tag
st may be NULL when there are more mov streams than AVStreams, e.g. when
chapters are present.
2011-09-19 16:44:42 +02:00
Anton Khirnov 7f9b0ef9a8 doc/APIChanges: fill in missing hashes and dates. 2011-09-18 12:01:23 +02:00
Anton Khirnov 7574cacbd5 movenc: create an alternate group for each media type
Partially fixes bug 44.
2011-09-17 08:42:30 +02:00
Anton Khirnov e417d80d28 lavd: add libcdio-paranoia input device for audio CD grabbing 2011-09-17 06:45:26 +02:00
Anton Khirnov 85d982f1e2 rawdec: refactor private option for raw video demuxers
pixel_format/video_size only apply to 'rawvideo' (==uncompressed) demuxer
and make no sense for the other raw (== containerless) demuxers. Keep
only the framerate option for those.

Also use unique classes for all raw video demuxers
2011-09-17 06:43:09 +02:00
Anton Khirnov 34d2bf30a0 pcmdec: use unique classes for all pcm demuxers. 2011-09-17 06:42:32 +02:00
Anton Khirnov d906f49aa8 rawdec: g722 is always 1 channel/16kHz 2011-09-17 06:42:17 +02:00
Anton Khirnov 57650c70e2 doc/avconv: fix typo. 2011-09-12 15:53:26 +02:00
Anton Khirnov af1e247038 libxavs: add private options corresponding to deprecated global options
Code mostly copied from libx264 wrapper.
2011-09-12 08:45:55 +02:00
Anton Khirnov 4bb3ae1eaa avconv: use correct index when selecting metadata to write to. 2011-09-11 17:30:05 +02:00
Anton Khirnov f39ecc79aa avconv: fix inverted variable 2011-09-11 17:30:05 +02:00
Anton Khirnov 172efad7c7 doc/avconv: document option types (input/output/per-stream/...)
Also trim some redundant stream specifiers descriptions.
2011-09-11 17:30:05 +02:00
Anton Khirnov 99442bfe20 doc/avtools-common-opts: write a section about stream specifiers. 2011-09-11 17:30:05 +02:00
Anton Khirnov 3a37392efe doc/avconv: remove two pointless paragraphs.
They are misleading and carry no useful information.
2011-09-11 17:30:04 +02:00
Anton Khirnov eb05446367 doc/avconv: document that global options should be specified first. 2011-09-11 17:30:04 +02:00
Anton Khirnov d3d6a2582e doc/avconv: remove entries for nonexistent options 2011-09-11 17:30:04 +02:00
Anton Khirnov 1533c10286 doc/avconv: remove documentation for removed 'timestamp' option 2011-09-11 17:30:04 +02:00