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>
13 years ago
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>
13 years ago
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.
13 years ago
Reimar Döffinger
76cc0992d8
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>
13 years ago
Reimar Döffinger
ff92549195
Fix Theora-in-ogg keyframe handling.
...
To make seeking work correctly, we must write a new granule for
each keyframe.
Unfortunately we currently have no regression tests due to no
included Theora encoder.
A test based on -vcodec copy from a Theora FATE sample should
probably be added.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
13 years ago
Anton Khirnov
c3f9ebf743
lavf: make av_set_pts_info private.
...
It's supposed to be called only from (de)muxers.
13 years ago
Diego Biurrun
c6cd0e17f3
Replace vendor string in Ogg and FLAC muxers.
13 years ago
Anton Khirnov
357db4c263
lavc: use avpriv_ prefix for ff_split_xiph_headers.
...
It's used in lavf.
13 years ago
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
13 years ago
Clément Bœsch
539399d4d1
AVOptions: rename remaining FF_OPT_TYPE_* to AV_OPT_TYPE_*.
13 years ago
Michael Niedermayer
3b6c0ba382
oggenc: favor av_freep()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Maksym Veremeyenko
dacf076614
fix memory leak in oggenc
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Clément Bœsch
9acffed9e0
oggenc: add missing initializer braces to shut up gcc warning.
...
This fixes the warning:
libavformat/oggenc.c:75:7: warning: missing braces around initializer [-Wmissing-braces]
14 years ago
Anton Khirnov
dfc2c4d900
lavf: use designated initialisers for all (de)muxers.
...
It's more readable and less prone to breakage.
14 years ago
Mans Rullgard
0ebcdf5cda
Do not include mathematics.h in avutil.h
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Anton Khirnov
d2d67e424f
Remove all uses of now deprecated metadata functions.
14 years ago
Andres Gonzalez
dc05b6af3d
Added oggpagesize option for Ogg encoding. Allows setting a preferred page size. When set, if an Ogg stream buffer has enough data, a page is made, instead of filling maximum-size pages.
14 years ago
Anton Khirnov
6dc7d80de7
avio: avio_ prefix for url_close_dyn_buf
14 years ago
Anton Khirnov
b92c545282
avio: avio_ prefix for url_open_dyn_buf
14 years ago
Anton Khirnov
b64030f26d
avio: make get_checksum() internal.
14 years ago
Anton Khirnov
4c4427a75d
avio: make init_checksum() internal.
14 years ago
Mans Rullgard
2912e87a6c
Replace FFmpeg with Libav in licence headers
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Anton Khirnov
b7f2fdde74
avio: rename put_flush_packet -> avio_flush
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Anton Khirnov
384c9c2fa7
avio: add avio_tell macro as a replacement for url_ftell
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit a2704c9712
)
14 years ago
Anton Khirnov
a2704c9712
avio: add avio_tell macro as a replacement for url_ftell
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Anton Khirnov
f59d8ff8cd
avio: avio_ prefix for url_fseek
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 6b4aa5dac8
)
14 years ago
Anton Khirnov
6b4aa5dac8
avio: avio_ prefix for url_fseek
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Anton Khirnov
324429309e
lavf: use a new ffio_wfourcc macro instead of put_tag() where possible
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 0abdb29317
)
14 years ago
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>
14 years ago
Anton Khirnov
e9eb8d0bce
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>
(cherry picked from commit 77eb5504d3
)
14 years ago
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>
14 years ago
Anton Khirnov
471fe57e1a
avio: rename ByteIOContext to AVIOContext.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit ae628ec1fd
)
14 years ago
Anton Khirnov
ae628ec1fd
avio: rename ByteIOContext to AVIOContext.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Diego Elio Pettenò
66355be3c3
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.
(cherry picked from commit c6610a216e
)
14 years ago
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.
14 years ago
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
14 years ago
Anton Khirnov
042ca05f0f
vorbiscomment: convert metadata before computing the header's length
...
Originally committed as revision 25586 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
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
14 years ago
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
14 years ago
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
14 years ago
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
15 years ago
Baptiste Coudurier
5c32755570
In ogg muxer, free dyn allocated buffer, fix memleak
...
Originally committed as revision 24276 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
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
15 years ago
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
15 years ago
Baptiste Coudurier
ff85f58605
remove unused field
...
Originally committed as revision 23232 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
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
15 years ago
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
15 years ago
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
15 years ago
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
15 years ago
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
15 years ago