Commit Graph

43 Commits

Author SHA1 Message Date
Reimar Döffinger
94dfea71ed oggdec: Fix incorrect assumption about header/data interleaving
Currently (since the data_offset fix) the ogg demuxer assumes that
after the first non-header packets in any stream no more header packets
will follow.
This is not guaranteed, so change the code back again to wait until it
has finished the headers for all streams before returning from ogg_get_headers.

This fixes issue 2428.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 6bd69e6ada)
2011-02-09 03:33:55 +01:00
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)
2011-01-28 03:15:34 +01:00
Aaron Colwell
365d8e471d Ensure that data_offset is set correctly when there are partial
data packets before the first complete one.
Patch by Aaron Colwell [acolwell chromium org].

Originally committed as revision 25846 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-29 19:02:28 +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
Eli Friedman
461628c6a8 Fix printf format warnings
patch by Eli Friedman <eli dot friedman at gmail dot com>

Originally committed as revision 23547 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-09 08:59:41 +00:00
Reimar Döffinger
f1a0518524 Enable AVFMT_GENERIC_INDEX for Ogg demuxer. This avoids the many
seeks needed for binary search when seeking to a previously seen
location.

Originally committed as revision 23279 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-23 23:33:38 +00:00
David Conrad
adc725b558 oggdec: Move warning about missing granule to the correct place
Originally committed as revision 22891 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-16 12:21:38 +00:00
David Conrad
44a088eab7 oggdec: Fix duration calculation if the last page in a file has no granule
Originally committed as revision 22890 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-16 12:21:35 +00:00
David Conrad
49c2d29089 oggdec: Remove write-only variable
Originally committed as revision 22889 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-16 12:21:29 +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
66061a1220 Add VorbisComment writing to FLAC files.
Patch by James Darnley <james darnley at gmail>.

Originally committed as revision 22605 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-20 13:36:43 +00:00
David Conrad
81b743eb10 oggdec: Pass packets to header() until the stream is done with them
This fixes some old ogm files that had the 3rd vorbis header after a data
packet in another stream. This is invalid in ogg, but this change shouldn't
affect the behaviour of any valid file.

Originally committed as revision 22478 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-12 05:17:01 +00:00
David Conrad
d8b91fae1d oggdec: Seek to keyframes
Originally committed as revision 22463 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:18:00 +00:00
David Conrad
873d117e4b oggdec: Determine pts and filepos on a packet basis in read_timestamp
This takes into account whether the granule defines the start or end times
of packets, and sets the correct file offset of the associated page.

Originally committed as revision 22462 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:56 +00:00
David Conrad
6abaa27211 oggdec: Move PTS/DTS calculation to a function
Originally committed as revision 22461 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:53 +00:00
David Conrad
77560b0ef1 oggdec: Fix duration calculation for streams with non-zero start
Originally committed as revision 22458 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:43 +00:00
David Conrad
32ad869284 oggdec: Parse skeleton to determine the start time of each stream
Originally committed as revision 22457 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:40 +00:00
David Conrad
dfaed51f04 oggdec: Move ogg_find_stream and ogg_gptopts to oggdec.h
(skeleton will need them)

Originally committed as revision 22455 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:33 +00:00
David Conrad
50a9d32310 oggdec: Set data_offset to the right value
Otherwise it gets set automatically to a page midstream and prevents seeking
to the first page.

Originally committed as revision 22454 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:29 +00:00
David Conrad
73823cb941 oggdec: Save offset of the page needed to reconstruct the current packet
Originally committed as revision 22453 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-11 07:17:24 +00:00
Reimar Döffinger
be4a113264 Make sure the header value used to avoid repeating headers on seeking to the
start and to avoid initializing codecs with missing headers is set for all streams.
Fixes issue 1723.

Originally committed as revision 21693 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-08 20:25:36 +00:00
David Conrad
ecc0027bc6 Fix playback with invalid files that don't set the continuation flag for
pages that continue packets started in prior pages.
Fixes issue1248

Originally committed as revision 21688 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-08 10:13:03 +00:00
David Conrad
2d4970d88d oggdec: Set dts when known
Originally committed as revision 21134 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 05:51:09 +00:00
David Conrad
24ca518bd1 Add support for dirac in ogg
Originally committed as revision 21128 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 00:31:52 +00:00
David Conrad
5e15c7d95b Fix PTS for OGM codecs.
Fixes issue251

Originally committed as revision 20815 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-12 20:18:43 +00:00
Justin Ruggles
15299b3821 Calculate correct packet durations when demuxing Ogg/Speex. This involves
determining if there is any delay in the first packet and/or any truncation in
the final packet.

Originally committed as revision 20216 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-12 21:30:03 +00:00
Reimar Döffinger
c9da676de4 Disable parsing for ogg streams where no ogg header was found,
if no header was found the parser was not initialized and thus will
crash when trying to use it.

Originally committed as revision 20093 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-30 09:46:48 +00:00
Justin Ruggles
d7bb185f99 Add a VorbisComment metadata conversion table and use it in the FLAC and
Ogg demuxers.

Originally committed as revision 19186 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-13 22:45:58 +00:00
David Conrad
ddd94932fb Ensure that there's pages to read for duration calculation in the ogg demuxer
Originally committed as revision 18523 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 06:41:08 +00:00
Peter Ross
bad4a6bbb7 Use consistent indent style in oggdec.
Originally committed as revision 17227 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-14 13:44:21 +00:00
Måns Rullgård
77be08eeb1 OGG: untypedef demuxer structs
Originally committed as revision 15784 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-06 01:50:56 +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
Reimar Döffinger
547ea47d4f Add ff_ prefix to ogg_codec_t structs
Originally committed as revision 14951 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-24 17:37:43 +00:00
Reimar Döffinger
cd34bc7617 Make ogg_codec_t descriptions const
Originally committed as revision 14948 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-24 17:09:15 +00:00
Michael Niedermayer
dd7a68b6da Remove start_time guessing code.
Originally committed as revision 13988 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-26 13:42:26 +00:00
Stefano Sabatini
bde15e74de Make long_names in lavf/lavdev optional depending on CONFIG_SMALL.
patch by Stefano Sabatini, stefano.sabatini-lala poste.it
along with some spelling/consistency fixes for the long names by me

Originally committed as revision 13649 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-03 16:20:54 +00:00
Reimar Döffinger
cb4ddf7765 Add support for speex in ogg
Originally committed as revision 11878 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-06 12:37:37 +00:00
Reimar Döffinger
2331e31c23 Add support for ogg text subtitles.
Originally committed as revision 11698 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-31 22:30:55 +00:00
Aurelien Jacobs
ceeacce68b use proper url_is_streamed() API
instead of messing with ByteIOContext internal is_streamed field

Originally committed as revision 11276 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-19 23:26:18 +00:00
Björn Axelsson
899681cd1d Use dynamically allocated ByteIOContext in AVFormatContext
patch by: Björn Axelsson, bjorn d axelsson a intinor d se
thread: [PATCH] Remove static ByteIOContexts, 06 nov 2007

Originally committed as revision 11071 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-21 07:41:00 +00:00
Måns Rullgård
e1a794b272 set PKT_FLAG_KEY for Theora and OGM streams
Originally committed as revision 11002 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-11 21:56:18 +00:00
Diego Biurrun
a0ddef24ce Rename ogg2.[ch] to oggdec.[ch].
Originally committed as revision 10943 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-07 20:22:32 +00:00