Commit Graph

59 Commits

Author SHA1 Message Date
Reimar Döffinger 10b1c060f9 oggenc: fix condition when not to flush due to keyframe granule.
The previous condition of 0 page size was wrong,
that would disable the mechanism for all frames at
a start of a page, thus some keyframes still would not
get their own granule.
The real problem is that header packets must not be flushed,
but they have (and must have) 0 granule and thus would
be detected as keyframes.
Add a separate parameter to mark header packets.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-03-30 16:32:16 -04:00
Andres Gonzalez ed3e1b485a oggenc: add pagesize option to set preferred page size
When set, if an Ogg stream buffer has enough data, a page is made
instead of filling maximum-size pages. Using smaller pages results
smaller seek intervals at the expense of higher container overhead.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-03-30 16:32:03 -04:00
Justin Ruggles 9677247b0a oggenc: free comment header for all codecs
fixes a memleak for Vorbis and Theora, where the comment header from
avpriv_split_xiph_headers() is replaced by a buffer that must be freed
separately.
2012-02-24 13:15:41 -05:00
Anton Khirnov c3f9ebf743 lavf: make av_set_pts_info private.
It's supposed to be called only from (de)muxers.
2011-11-30 20:34:45 +01:00
Diego Biurrun c6cd0e17f3 Replace vendor string in Ogg and FLAC muxers. 2011-11-02 10:43:39 +01: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 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 dfc2c4d900 lavf: use designated initialisers for all (de)muxers.
It's more readable and less prone to breakage.
2011-07-17 06:58:37 +02:00
Mans Rullgard 0ebcdf5cda Do not include mathematics.h in avutil.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-03 21:42:06 +01:00
Anton Khirnov d2d67e424f Remove all uses of now deprecated metadata functions. 2011-06-08 07:43:45 +02:00
Anton Khirnov 6dc7d80de7 avio: avio_ prefix for url_close_dyn_buf 2011-04-03 22:47:05 +02:00
Anton Khirnov b92c545282 avio: avio_ prefix for url_open_dyn_buf 2011-04-03 22:46:56 +02:00
Anton Khirnov b64030f26d avio: make get_checksum() internal. 2011-03-30 07:48:55 +02:00
Anton Khirnov 4c4427a75d avio: make init_checksum() internal. 2011-03-30 07:47:08 +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
Anton Khirnov b7f2fdde74 avio: rename put_flush_packet -> avio_flush
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-16 22:59:39 -04:00
Anton Khirnov a2704c9712 avio: add avio_tell macro as a replacement for url_ftell
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-04 11:26:57 -05:00
Anton Khirnov 6b4aa5dac8 avio: avio_ prefix for url_fseek
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-01 12:12:33 -05:00
Anton Khirnov 0abdb29317 lavf: use a new ffio_wfourcc macro instead of put_tag() where possible
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-25 14:38:22 -05:00
Anton Khirnov 77eb5504d3 avio: avio: avio_ prefixes for put_* functions
In the name of consistency:
put_byte           -> avio_w8
put_<type>         -> avio_w<type>
put_buffer         -> avio_write

put_nbyte will be made private
put_tag will be merged with avio_put_str

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-21 14:25:15 -05:00
Anton Khirnov ae628ec1fd avio: rename ByteIOContext to AVIOContext.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-20 08:37:15 -05:00
Diego Elio Pettenò c6610a216e Prefix all _demuxer, _muxer, _protocol from libavformat and libavdevice.
This also lists the objects from those two libraries as internal (by adding
the ff_ prefix) so that they can then be hidden via linker scripts.
2011-01-26 22:10:09 +00:00
Baptiste Coudurier ab04337464 In ogg muxer, correctly mux VFR streams, fix issue #2398
Originally committed as revision 26229 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-05 19:32:45 +00:00
Anton Khirnov 042ca05f0f vorbiscomment: convert metadata before computing the header's length
Originally committed as revision 25586 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-27 05:02:29 +00:00
Anton Khirnov 03700d399b Export metadata in the generic format. Deprecate old conversion API.
patch by Anton Khirnov  anton _at_ khirnov _dot_ net

Originally committed as revision 25493 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-15 19:04:25 +00:00
Anton Khirnov 81e5ff7ae2 vorbiscomment: change ff_vorbiscomment_write to take an AVMetadata**
patch by Anton Khirnov  anton _at_ khirnov _dot_ net

Originally committed as revision 25473 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-14 19:08:31 +00:00
Alex Converse d256d21e3f oggenc: Don't use char* to point to a string constant.
Originally committed as revision 25440 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-10 21:15:21 +00:00
James Darnley 521d434fd5 Vorbis metadata writing. Patch by James Darnley <james.darnley gmail com>.
Fixes issue 555.

Originally committed as revision 25034 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-03 19:30:27 +00:00
Baptiste Coudurier 5c32755570 In ogg muxer, free dyn allocated buffer, fix memleak
Originally committed as revision 24276 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 22:36:01 +00:00
Baptiste Coudurier 22fe18c1c0 In ogg muxer, use dyn buffer to compute crc of the page, fix muxing with pipe
when page buffer is bigger than default buffer size. Max page is 65k.

Originally committed as revision 24242 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-14 23:21:18 +00:00
Baptiste Coudurier ce2a9bc3c8 In ogg muxer, use random serial number of each ogg streams
Originally committed as revision 23302 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-24 23:37:33 +00:00
Baptiste Coudurier ff85f58605 remove unused field
Originally committed as revision 23232 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-21 21:41:38 +00:00
Baptiste Coudurier 95ca3b1e20 In ogg muxer, pack multiple frames into one page, much lower overhead
Originally committed as revision 23231 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-21 21:38:54 +00:00
Stefano Sabatini 2874c81cc8 Replace all remaining occurrences of AVERROR_NOMEM with
AVERROR(ENOMEM).

AVERROR_NOMEM is deprecated and will be dropped at the next libavutil
major bump.

Originally committed as revision 22791 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-03 14:15:00 +00:00
Jean-Daniel Dupas cc947f04cc Replace all occurences of PKT_FLAG_KEY with AV_PKT_FLAG_KEY.
Patch by Jean-Daniel Dupas, devlists shadowlab org

Originally committed as revision 22744 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-31 12:29:58 +00:00
Stefano Sabatini 72415b2adb Define AVMediaType enum, and use it instead of enum CodecType, which
is deprecated and will be dropped at the next major bump.

Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 23:30:55 +00:00
James Darnley aeef3ec6f0 Add VorbisComment writing to Ogg/FLAC and Ogg/Speex files.
Patch by James Darnley <james darnley at gmail>

Originally committed as revision 22606 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-20 13:39:22 +00:00
Greg Maxwell fbe8c56dfe Correctly write last 0 lacing value when packet size is multiple of 255, patch by Greg Maxwell, gmaxwell at gmail dot com
Originally committed as revision 22559 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-15 23:04:09 +00:00
Baptiste Coudurier 012dc2c426 Remove MAX_STREAMS usage in ogg and mxf muxers
Originally committed as revision 21526 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-29 06:38:00 +00:00
Justin Ruggles 8746296818 Add Speex support to the Ogg muxer.
Originally committed as revision 20220 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-13 01:46:19 +00:00
Michael Niedermayer e07b882b4d Improve amortized worst case speed of the muxers packet interleaving code
from O(packets_in_the_file) to O(num_of_streams).

Originally committed as revision 19887 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-16 20:04:04 +00:00
Justin Ruggles 87b4dd3b96 oggenc: Change error log text. An error here does not necessarily mean
corrupted data.

Originally committed as revision 19248 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-21 20:18:29 +00:00
Justin Ruggles 3f2eadf4fe oggenc: return error value from ogg_build_flac_headers()
Originally committed as revision 19247 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-21 20:16:48 +00:00
Justin Ruggles 4315aa8b05 cosmetics: spacing and comments
Originally committed as revision 19246 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-21 20:14:58 +00:00
Justin Ruggles e9a32230c3 oggenc: check for failed av_mallocz()
Originally committed as revision 19245 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-21 20:13:54 +00:00
Justin Ruggles 59c6178a54 Use a shared function to validate FLAC extradata.
Originally committed as revision 17602 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-26 02:29:24 +00:00
Baptiste Coudurier 1cc65cecb2 Move declaration of ff_interleave_add_packet to internal.h.
It is an internal function and should not be in an installed header.

Originally committed as revision 17070 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-08 21:14:46 +00:00
Baptiste Coudurier 34c65ac668 function is static
Originally committed as revision 16886 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-31 06:09:31 +00:00
Baptiste Coudurier fd5583bc2d use new ff_interleave_add_packet
Originally committed as revision 16885 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-31 06:08:42 +00:00
Diego Biurrun bc5c918ea8 Remove offset_t typedef and use int64_t directly instead.
The name offset_t is easily confused with the standard off_t type and
*_t is POSIX reserved namespace if any POSIX header is included.

Originally committed as revision 15533 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-03 10:16:29 +00:00