Wim Taymans
da1c863711
Merge branch 'master' into 0.11
...
Conflicts:
gst-libs/gst/tag/gstvorbistag.c
2011-04-04 11:31:33 +02:00
Josep Torra
cd425d3787
oggmux: fix warning building in mac os x
2011-04-01 15:47:18 +02:00
Sebastian Dröge
1c475f10e1
oggmux: Store the segment directly inside the pad
...
Also initialize it always in TIME format. We require TIME segments
in oggmux anyway and drop newsegment events in other formats and
assume an open-ended segment starting at 0.
2011-04-01 11:00:38 +02:00
Sebastian Dröge
fc56c76773
oggmux: Reset the segment on flush-stop events and when going back to READY
2011-04-01 10:58:09 +02:00
Thiago Santos
d1c74779f9
oggmux: Use running time instead of timestamps
...
Theora and vorbis use running time (which is correct) for calculating
the granulepos for their ogg packets. Oggmux, however, used
timestamps to order the received buffers.
This patch makes it use the running time to compare buffer times
and also to timestamp pushed buffers.
Some bits of the code still use timestamps, but they are only
used to calculate durations, so it should be fine.
https://bugzilla.gnome.org/show_bug.cgi?id=643775
2011-04-01 10:56:16 +02:00
Thiago Santos
c3aae3dc17
oggmux: Keep track of pad's segments
...
https://bugzilla.gnome.org/show_bug.cgi?id=643775
2011-04-01 10:56:15 +02:00
Wim Taymans
248ab2d064
Fix for latest API changes
2011-03-30 16:50:45 +02:00
Wim Taymans
3712ca2da4
oggparse: fix for _make_writable
2011-03-28 20:19:24 +02:00
Wim Taymans
e1869fa267
Merge branch 'master' into 0.11-fdo
2011-03-28 20:13:59 +02:00
Wim Taymans
f379a5dacb
plugins: more porting to new memory API
2011-03-27 18:30:24 +02:00
Tim-Philipp Müller
5aa02968c9
oggparse: fix list iteration code
...
Not that it really matters, but let's fix it before someone
notices and makes fun of us.
2011-03-26 19:38:17 +00:00
Tim-Philipp Müller
a7a305a18f
oggparse: make sure buffer metadata is writable before setting caps on buffers
2011-03-26 11:59:54 +00:00
Wim Taymans
95f7fd8edf
Merge branch 'master' into 0.11-fdo
2011-03-15 11:11:56 +01:00
Sebastian Dröge
a38fd9f9ec
oggmux: Increase the seen header packets count when seeing a header packet
...
This fixes muxing of Speex content and possibly other formats where the
header detection works by counting the packets.
Fixes bug #644745 .
2011-03-14 19:44:41 +01:00
Wim Taymans
c6dd11981d
Merge branch 'master' into 0.11
...
Conflicts:
configure.ac
gst-libs/gst/pbutils/Makefile.am
2011-02-28 11:47:44 +01:00
Sebastian Dröge
461d9f2f2c
oggmux: Don't handle GstCollectData as GstObject, use the pad instead
2011-02-24 16:22:53 +01:00
Edward Hervey
3fe2777b54
Revert "oggmux,adder: Check if collectpads has been freed"
...
This reverts commit 6d150873e8
.
Depends on a core commit that was reverted.
2011-02-21 12:04:09 +01:00
David Schleef
6d150873e8
oggmux,adder: Check if collectpads has been freed
...
Core now calls release_pad in finalize, which is usually after
the collectpads has been unreffed.
2011-02-20 23:49:54 -08:00
David Schleef
15e23414d3
oggparse: better detection of delta unit flag
2011-02-17 18:29:56 -08:00
Vincent Penquerc'h
96a1a9dec6
oggmux: ensure serialnos are unique
...
We do that by checking a newly generated one is not already used in
an existing stream, and doing it again if it is.
https://bugzilla.gnome.org/show_bug.cgi?id=640211
2011-02-03 09:29:28 +00:00
Tim-Philipp Müller
54c19ba6de
oggmux: free stream map caps when done
2011-02-02 17:34:42 +00:00
Tim-Philipp Müller
2eac43bd73
oggmux: keep IN_CAPS flag check for header buffers as fallback
...
In case the ogg mapper doesn't handle all the accepted input formats
(although it really should). Saves us error handling for that case
though. Also log caps properly.
https://bugzilla.gnome.org/show_bug.cgi?id=629196
2011-02-02 17:34:41 +00:00
Vincent Penquerc'h
440002a137
oggmux: use oggstream for less brittleness in recognizing headers
...
Using the IN_CAPS flag for this is brittle, and will fail if either
vorbisparse or vorbistag (which is itself based on vorbisparse) is
inserted between oggdemux and oggmux. Possibly other elements too
(eg, theoraparse, etc).
Using oggstream ensures we Get It Right More Often Than Not.
https://bugzilla.gnome.org/show_bug.cgi?id=629196
2011-02-02 17:34:41 +00:00
Vincent Penquerc'h
b7664eae71
oggmux: do not skip a pageno at start
...
Discontinuities are automatically signalled by oggdemux at the start
of a new stream. When oggmux is yet to output actual data pages,
do not signal these discontinuities in the ogg stream.
This patch may miss some actual discontinuities at the very start of
a stream, but avoids the spurious missing pages when encoding happens
normally.
A better fix might involve finding a way to distinguish between actual
data discontinuities and discontinuities merely marking the start of
a new stream.
Fixes an issue with ogg page numbering (would skip a number for no
reason, which then looks like a packet was lost somewhere) when
re-muxing an ogg stream, e.g. when re-tagging in rhythmbox.
https://bugzilla.gnome.org/show_bug.cgi?id=629196
2011-02-01 17:25:43 +00:00
Vincent Penquerc'h
d144f7a3a5
oggmux: cleanup
...
Remove a pointless string concatentation, and fix an off-by-one in
packetno in a log.
https://bugzilla.gnome.org/show_bug.cgi?id=640189
2011-01-24 20:01:24 +01:00
Sreerenj Balachandran
7cfa18545c
oggdemux: Remove dead code
2011-01-24 19:40:00 +01:00
Yang Xichuan
cb9607632f
oggparse: Make gst_ogg_parse_submit_buffer() safe
...
By not passing zero-sized buffers to ogg_sync_buffer()
and checking the return values of libogg functions.
Fixes bug #639136 .
2011-01-24 19:39:59 +01:00
Yang Xichuan
43553b4dcb
oggdemux: remove outdated comment
...
https://bugzilla.gnome.org/show_bug.cgi?id=639121
2011-01-10 12:34:54 +00:00
David Schleef
3c4466b816
oggdemux: ignore header pages when looking for keyframe
...
This was causing keyframe_granule to be set to 0 for all streams
when seeking to the beginning of the stream, i.e., at the
beginning of playback. Fixes #619778 .
2011-01-06 12:34:32 -08:00
Vincent Penquerc'h
b03b223fb1
oggstream: when the last keyframe position is not known, do not use -1
...
Instead, use either 0 or 1, depending on bitstream version, which give
the correct result for streams which aren't cut off at start.
This allows that function to not return negative granpos.
https://bugzilla.gnome.org/show_bug.cgi?id=638276
2011-01-06 12:34:32 -08:00
Tim-Philipp Müller
542256fd55
ogg: fix typo in comment
2010-12-29 11:51:42 +00:00
Vincent Penquerc'h
a5533c21d9
oggstream: fix interpretation of Theora granule position
...
The offset part of the granpos is not a sign of the newer encoding.
Use the version number instead.
This fixes the criticals thrown by theoraparse, and (at last) the
remaining part of #553244 .
2010-12-29 12:40:25 +01:00
Wim Taymans
68e64770a0
oggdemux: handle pads that are not added yet
...
Don't try to stream data on pads that are not added yet. This happens while we
discover the different streams.
2010-12-28 19:39:18 +01:00
Vincent Penquerc'h
85cafac6af
oggstream: implement tag extraction for Kate streams
...
This will mainly allow Totem to know the language of those streams,
so the subtitle selection menu gets properly filled out.
https://bugzilla.gnome.org/show_bug.cgi?id=638005
2010-12-27 10:53:24 +00:00
Vincent Penquerc'h
dd135119d9
oggdemux: set headers on caps
...
This will allow switching from one stream to another without having to send
the headers for the new stream again.
https://bugzilla.gnome.org/show_bug.cgi?id=637927
2010-12-25 16:55:15 +01:00
David Schleef
0c4820914c
oggstream: Fix parsing of theora size
2010-12-22 15:30:36 -08:00
Vincent Penquerc'h
e443ae6000
oggdemux: Don't use gst_pad_alloc_buffer()
...
allocate buffers using gst_buffer_new_and_alloc() instead of
gst_pad_alloc_buffer_and_set_caps(), as the first one will
cause the pad to block, and we don't want that since that will
prevent subsequent pads from being fed if a block occurs at
start, when all pads must be fed for playback to start.
This fixes autoplugging of the tiger element and other things.
https://bugzilla.gnome.org/show_bug.cgi?id=637822
2010-12-22 20:19:15 +01:00
Vincent Penquerc'h
22aa87e98f
ogg: implement packet duration query for kate streams
...
https://bugzilla.gnome.org/show_bug.cgi?id=637519
2010-12-18 20:33:09 +01:00
Wim Taymans
f22687bacc
use _object_ref_sink() when we can
2010-12-07 11:31:30 +01:00
Mark Nauwelaerts
524b7c60f2
oggstream: additional tag extraction
...
... supporting theora, flac, speex, celt.
Fixes #629349 .
2010-12-03 13:54:08 +01:00
Mark Nauwelaerts
d5055a9f23
oggstream: use separate tag extraction vfunction
2010-12-03 13:54:06 +01:00
Mark Nauwelaerts
cc3dfd31d0
oggstream: refactor vorbis comment tag extraction
2010-12-03 13:54:04 +01:00
Mark Nauwelaerts
a4aacb9d2c
oggdemux: plug some oggstream leaks
2010-12-03 13:54:01 +01:00
Mark Nauwelaerts
515f33bd3b
oggstream: streamline tag extraction and prevent some leaks
2010-12-03 13:53:59 +01:00
Mark Nauwelaerts
63ba9eafb1
oggdemux: send stream tags after newsegment and global tags
2010-12-03 13:53:56 +01:00
Sreerenj Balachandran
2319c85f46
oggdemux: perform more (vorbis comment header) tag extractions
...
In particular, move comment header parsing to gstoggstrem.c.
Thanks to Felipe Contreras.
Fixes #629349 (partially).
2010-12-03 13:53:54 +01:00
David Schleef
d421ccb440
oggstream: fix incorrect warning on skeleton headers
2010-12-02 17:36:33 -08:00
David Schleef
2b91bd1bad
oggparse: Set DELTA_UNIT on buffers
2010-12-02 17:36:26 -08:00
Wim Taymans
e0d683f3ed
oggdemux: fix wrong flowreturn handling
...
Oggdemux will currently try to pad alloc a buffer from the peer when it is
reading the header files. This is a relic from the time where we had an internal
parser and needs to be removed at some point in time.
The problem is that when there is no peer pad yet (which is normal when
collecting headers) we should still continue to parse all the packets of a
page instead of erroring out on NOT_LINKED.
Fixes #632167
2010-10-29 11:48:18 +01:00
Wim Taymans
6c14f6c970
ogg: add some more debug statements
2010-10-29 11:47:53 +01:00
Wim Taymans
fea50233bb
oggdemux: only keep last valid granulepos
...
Only keep the last valid granulepos we see when scanning the last
pages. It is possible that the last page that we inspect has a -1 granulepos, in
which case we want to keep the previous valid time instead.
Fixes #631703
2010-10-12 16:06:57 +02:00
David Schleef
9dc59cff15
oggdemux: Fix check for last page
2010-10-12 16:06:57 +02:00
David Schleef
64dfad46f2
oggdemux: change checks from is_skeleton to is_sparse
2010-10-12 16:06:57 +02:00
David Schleef
5ae2f04856
oggdemux: move is_sparse into stream map
2010-10-12 16:06:56 +02:00
Guillaume Emont
b41cd04289
oggdemux: fix seeking with negative rate with skeleton
...
Files with a skeleton, or other files with a stream that ends before the end of
the chain would start playing from the end of the chain when trying to seek with
a negative rate at a position between the end of any stream and the end of the
chain.
This is due to the loop in _do_seek() assuming that pages will be encountered
for all streams shortly after the place where we want to seek, as found by
do_binary_search().
In the first iteration of the loop, stream ends are now checked against the
time of the current page.
2010-10-10 18:26:13 +02:00
Sebastian Dröge
6357bdef63
oggdemux: Don't reset the pad when pushing resulted in NOT_LINKED
...
The pad might be linked later and after resetting it it will
only work after resetting all of oggdemux.
2010-08-30 15:50:26 +02:00
Sebastian Dröge
b899bca94d
oggdemux: Don't use GST_FLOW_IS_FATAL()
...
And while we're at it, handle WRONG_STATE as error too
in oggdemux and WRONG_STATE and NOT_LINKED in oggaviparse.
2010-08-27 17:23:46 +02:00
Sebastian Dröge
5fd9fc13d5
oggstream: static forward declarations are forbidden by the C standard
...
...and actually cause compiler errors on VC++. Change it to an extern
forward declaration and non-static definition.
2010-08-08 17:42:04 +02:00
Fredrik Söderquist
3c06cabb0b
oggdemux: Handle errors from _get_next_page in _do_seek.
...
If the source element failed here, oggdemux would crash.
Fixes #623218 .
2010-06-30 17:20:55 +01:00
Sebastian Dröge
9a971980b7
oggdemux: activate_chain must not be called with a NULL chain
...
It will crash later and shouldn't really happen anyway unless
something is really wrong.
2010-06-14 11:11:56 +02:00
Tim-Philipp Müller
0f3ea721e4
ogg: fix debug message printf format some more
...
Just cast the pointer diff, so it works everywhere without
warnings. Can't use %tu, because that modifier is C99. Warning
was: "format '%li' expects type 'long int', but argument 8 has
type 'int'".
2010-06-14 00:33:04 +01:00
Philippe Normand
c25bf9777a
oggdemux: Fix format string compiler warning on OS X
2010-06-12 13:04:43 +02:00
Sebastian Dröge
4caee01a06
oggdemux: Handle SEEKING query in push mode too
2010-06-09 17:02:59 +02:00
Sebastian Dröge
bb7773b40a
oggdemux: Update the total time from the Skeleton 4 indexes
...
Fixes bug #620939 , see bug #607945 .
2010-06-09 16:38:34 +02:00
Sebastian Dröge
7bade30f5e
oggstream: Implement latest version of the Skeleton 4.0 spec
...
Fixes bug #620939 .
2010-06-09 16:34:05 +02:00
Sebastian Dröge
3f3691085a
oggdemux: Implement correct parsing of Skeleton 4.0 index packets
2010-06-08 13:11:05 +02:00
Sebastian Dröge
cba98e05cf
oggdemux: Add parsing of Skeleton 4.0 indexes
2010-06-08 12:01:15 +02:00
Sebastian Dröge
f213c8ebe3
oggdemux: Parse segment length and content offset from fishead
...
And print them for debugging purposes. Not sure if we can do anything useful
with this information.
2010-06-08 11:40:32 +02:00
Sebastian Dröge
aa8daa862e
oggdemux: Parse Skeleton stream major/minor version
2010-06-08 11:31:35 +02:00
Sebastian Dröge
7eea3c25c9
oggdemux: Use binary search for searching in the index
2010-06-08 11:26:26 +02:00
Sebastian Dröge
981af36b71
oggmux: Start a new page for every CMML buffer
2010-06-08 07:34:53 +02:00
Sebastian Dröge
8a678da1fe
oggdemux: Fix sizes again, this time for real
2010-05-20 14:21:19 +02:00
Sebastian Dröge
bf9d573cd1
oggdemux: Fix size checks
2010-05-20 13:58:14 +02:00
Sebastian Dröge
8fd69f2cb7
oggdemux: Drop all other Ogg VP8 header packets and make VP8 mapping check a bit more strict
2010-05-20 10:19:29 +02:00
Sebastian Dröge
563a96ef1a
ogg: Some more minor adjustments for the VP8 Ogg mapping
2010-05-20 08:52:49 +02:00
Sebastian Dröge
838c96fe8f
ogg: Update to the latest VP8 mapping
2010-05-19 21:35:19 +02:00
Sebastian Dröge
ac2d0170a8
oggdemux: Fix granulepos->key granule calculation for Dirac
2010-05-19 19:23:07 +02:00
Sebastian Dröge
d6b6d0cdad
oggdemux: Add support for mapping specific granulepos to key granule mapping
2010-05-19 19:23:07 +02:00
Sebastian Dröge
5fc1309703
ogg: Implement Ogg VP8 mapping
2010-05-19 19:23:07 +02:00
Wim Taymans
02a78f528c
oggdemux: don't seek when no current chain
...
Avoid a crash when we try to seek when there is no current chain.
2010-05-06 13:10:54 +02:00
Wim Taymans
e33425e4d0
oggdemux: ignore the skeleton start time
...
Ignore the skeleton start time as it is usually wrong for live streams
and we have the needed logic to calculate it anyway.
2010-05-06 12:21:38 +02:00
Wim Taymans
27de725038
oggdemux: wait for headers before exposing chains
...
Wait until we have all the stream headers before we start exposing the streams
of a chain.
2010-05-06 12:06:09 +02:00
Wim Taymans
549bc3c80e
oggdemux: use index to estimate bitrate
...
When we have an index, use it to much more accurately estimate the total stream
bitrate.
2010-05-06 10:58:01 +02:00
Tim-Philipp Müller
f22b115804
oggdemux: printf format fixes
2010-05-05 13:25:02 +01:00
Wim Taymans
7b3f9aa504
oggdemux: handle corrupt indexes
...
Make sure we handle and receover from corrupt indexes.
2010-05-04 17:38:50 +02:00
Wim Taymans
e84b3c838c
oggdemux: fix EOS check
2010-05-04 15:47:29 +02:00
Wim Taymans
50e556cc84
oggstream: avoild division by 0
2010-05-04 13:51:07 +02:00
Wim Taymans
12929944a7
oggdemux: cleanup unused defines
2010-05-04 13:50:46 +02:00
Wim Taymans
a57b461af8
oggdemux: use the index in push mode when we can
...
When seeking in push mode, try to use the index first before we use the bitrate
estimation.
2010-05-04 13:36:58 +02:00
Wim Taymans
03c3aa6377
oggdemux: use skeleton duration when possible
2010-05-04 13:06:24 +02:00
Wim Taymans
5c770a17db
oggstream: parse duration from 3.3 skeleton
2010-05-04 13:02:19 +02:00
Wim Taymans
ff4479f00a
oggdemux: more index parsing work
2010-05-04 12:11:18 +02:00
Wim Taymans
97319a6276
oggdemux: clean up fishead/fisbone parsing
...
Remove some redundant code for parsing fishead streams. Actually use the data we
parsed (mostly start_time).
2010-05-04 12:05:15 +02:00
Wim Taymans
f96caa17b3
oggdemux: implement seek in push mode
...
Refactor start time collection code.
When we receive a flush_stop, resync to the new start time and push out a new
segment event.
2010-05-04 11:26:14 +02:00
Wim Taymans
9be4e53001
oggdemux: make event handling better
...
Explicitly handle FLUSH events and resync on FLUSH_STOP.
Make send_event return a boolean.
Use more performant send_event function to forward events.
2010-05-04 11:26:14 +02:00
Wim Taymans
c4ec1c4c62
oggdemux: implement seeking in pushmode
...
Convert seek requests to bytes using the bitrate and forward them upstream. Does
not quite work because the flushing and resyncing is not implemented yet.
2010-05-04 11:26:14 +02:00
Wim Taymans
d9b7003926
oggdemux: refactor for seeking in pushmode
...
refactor the code a little to prepare for seeking in push mode
2010-05-04 11:26:14 +02:00
Wim Taymans
f9ca4f6097
oggdemux: use bitrate to estimate length in pushmode
...
Parse the bitrate from the various streams.
Use the bitrate and the upstream length in bytes to estimate the total stream
duration in push mode.
2010-04-30 17:43:06 +02:00
Mark Nauwelaerts
e23d6bbda7
oggdemux: only EOS when all streams are EOS
2010-04-30 12:51:54 +02:00
Mark Nauwelaerts
e8ae2adef1
oggdemux: fix debug message
2010-04-30 12:51:51 +02:00
Stefan Kost
efe59faa93
docs: fix typo in link name
2010-04-16 15:53:27 +03:00
Tim-Philipp Müller
62b1764552
playback, ogg: dist new gstplayback.h and gstogg.h
2010-04-09 09:26:08 +01:00
Sebastian Dröge
482dd1e56a
oggdemux: Provide packet duration function for old FLAC mapping too
...
Fixes bug #613809 .
2010-03-26 15:57:39 +01:00
Tim-Philipp Müller
58a92964c6
build: Makefile.am fixes
...
Mostly just add missing $(GST_BASE_CFLAGS), but also fix up order
of flags (see docs/random/moving-plugins).
2010-03-19 01:00:36 +00:00
Benjamin Otte
420d7b111d
More ENABLE_NLS fixes
2010-03-16 18:31:15 +01:00
Benjamin Otte
5e21fa5e0e
gst_element_class_set_details => gst_element_class_set_details_simple
...
Also change my email from the old university one to the current one.
2010-03-16 17:41:50 +01:00
David Schleef
460c649b5f
oggdemux: Don't drop zero-sized packets
...
Zero-sized packets have relevence to Theora.
2010-03-14 13:15:13 -07:00
Benjamin Otte
3a7d632a59
Add -Wredundant-decls to warning flags
...
... and fix all the warnings that flag throws.
2010-03-11 15:38:18 +01:00
Benjamin Otte
43b1683421
Add -Wmissing-declarations -Wmissing-prototypes to warning flags
...
Includes all the fixes necessary to make stuff compile again.
2010-03-11 13:50:31 +01:00
David Schleef
1701c706ec
oggmux: Don't flush after every frame for theora
2010-03-09 15:40:18 -08:00
David Schleef
38e6f0c7ed
oggdemux: fix dirac header parsing
...
Fixes #611900 .
2010-03-08 17:07:57 +00:00
Wim Taymans
6eef04c1cb
oggstream: mark skeleton streams correctly
...
Mark skeleton streams because we need to ignore them for calculating the
duration of the stream.
Fixes #611227
2010-03-01 12:17:40 +01:00
Wim Taymans
63593f5f1e
oggdemux: use the chain begin_time instead of our counter
...
We update the passed begintime argument to narrow our search region in the
binary search. This means that it does not always contain the chain begin time
after a couple of bisects. Use the real chain->begin_time to bring the
granuletime to the time in the chain instead.
Fixes #610005
2010-02-23 12:26:15 +01:00
Sebastian Dröge
59dc89b3ee
oggparse: Fix another format string compiler warning
2010-02-15 09:04:17 +01:00
Sebastian Dröge
e9f101ffc5
oggdemux: Fix format string compiler warnings
2010-02-15 08:56:25 +01:00
Tim-Philipp Müller
466894d2f4
ogg: theora PAR of 0:N, N:0 or 0:0 is allowed and maps to 1:1
...
See #609252 .
2010-02-15 00:14:03 +00:00
Vincent Penquerc'h
6b8175d96a
oggdemux: use the default granpos functions for kate streams
...
Set timestamps on kate packets. See bug #600929 .
2010-02-07 10:16:28 +01:00
Sebastian Dröge
4914aeda2f
oggdemux: Don't leak allocated buffers
...
This can happen if the combined flow return is not OK although the
allocation succeeded or if the packet in question is a BOS and we're
not going to push headers.
Fixes bug #608699 .
2010-02-02 10:33:07 +01:00
Vincent Penquerc'h
ed2e09133e
oggdemux: sparse streams aren't timed by end time, and their duration isn't implicit
...
Fixes timestamps and durations on Kate subtitle streams.
See http://www.xiph.org/ogg/doc/ogg-multiplex.html section 'start-time and
end-time positioning' for some more details, and bug #600929 .
2010-01-25 23:50:09 +00:00
Vincent Penquerc'h
25873a050f
oggdemux: properly set up the media type for kate streams
...
See #600929 .
2010-01-25 23:49:53 +00:00
Wim Taymans
e4b68a3658
oggdemux: use right type for the serialno
...
Use a consistent type for the serialno to avoid problems when comparing between
signed and unsigned variants.
Fixes #607926
2010-01-25 15:14:56 +01:00
Wim Taymans
95511c8821
oggdemux: don't push headers twice
...
Don't push the stream headers twice but only in the activation of a chain.
Fixes #607929
2010-01-25 14:00:52 +01:00
Wim Taymans
62f8c3c672
oggdemux: rename a variable
...
Rename the 'seekable' variable to 'pullmode'. We might be able to seek in push
mode too eventually.
2010-01-25 12:31:24 +01:00
Tim-Philipp Müller
e1c319949d
oggdemux: fix crash when freeing headers
...
Use _ogg_packet_free() instead of gst_mini_object_unref in one more
place now that the header list contains ogg packets and not buffers.
file: Stephen_Fry-Happy_Birthday_GNU-nq_600px_425kbit.ogv
2010-01-24 13:32:20 +00:00
Sebastian Dröge
1652005f26
oggdemux: Strip trailing \0 for subtitle OGM streams
...
Fixes bug #607870 .
2010-01-24 08:57:13 +01:00
Sebastian Dröge
a66ce94adc
oggdemux: Correctly set DELTA_UNIT flag for OGM streams
2010-01-23 22:10:09 +01:00
Sebastian Dröge
b38dcf5277
oggdemux: Don't strip all 0-bytes from the end of OGM packets
...
This fixes broken packets pushed downstream by oggdemux for
MPEG4 streams for example.
2010-01-23 22:10:09 +01:00
Sebastian Dröge
592bc87dc9
oggdemux: Extract tags from OGM text streams and don't push them downstream
2010-01-23 22:10:08 +01:00
Sebastian Dröge
541da50c53
oggdemux: Store header/queued packets as ogg_packet and use normal peer chaining functions to pass them downstream
2010-01-23 22:10:08 +01:00
Sebastian Dröge
d78cffb2e8
oggdemux: ...and set caps on queued packet buffers too
2010-01-23 13:20:46 +01:00
Sebastian Dröge
b63a582bf9
oggdemux: Set caps on header buffers
2010-01-23 13:19:44 +01:00
Wim Taymans
4b9666aedb
oggdemux: keep track of added pads
...
Keep track of the pads we added and removed.
Remove some unused fields.
Don't add pads for which we don't have caps.
2010-01-21 17:39:52 +01:00
Wim Taymans
06e2d2791b
oggstream: don't call NULL setup functions
...
If we find a known mapper but it doesn't have a setup function, simply skip it
instead of crashing.
2010-01-21 17:39:51 +01:00
Wim Taymans
4ed58b5882
oggstream: avoid division by 0 on bad annodex streams
2010-01-21 17:39:51 +01:00
Thiago Santos
4b771bff7a
oggdemux: No need to subtract begin time
...
Last stop is already based on the chain start and there is no need
to subtract the chain start as it may lead to a negative overflow.
This was causing seeking issues when the target chain was not
the first one (that has chain start = 0)
Fixes #606382
2010-01-19 08:39:14 -03:00
Thiago Santos
125f7dfdb0
oggdemux: granulepos is relative to its chain
...
When performing seeks, the granulepos should be offset by
its chain start time to avoid using wrong values to
update segment's last_stop. A sample file is indicated on
bug #606382
2010-01-18 15:39:55 -03:00
Edward Hervey
7d2c90423a
oggdemux: Fix unitialized variable.
...
If the package isn't handled, gracefully return GST_FLOW_OK.
2010-01-12 16:35:50 +01:00
Wim Taymans
0201326db1
oggdemux: push headers when activating chains
...
Keep a list of headers for each stream of a chain. When a chain is activated,
push the headers before pushing the data so that decoders can sync.
Fix seeking in chains, take the chain start time into account when comparing
timestamps.
See #606382
2010-01-08 16:57:40 +01:00
Mark Nauwelaerts
3f4820d6c2
oggdemux: decide flac header packet by content rather than count
2010-01-06 14:03:44 +01:00
Mark Nauwelaerts
66545eb7a2
oggdemux: reset header packet count at bos page
2010-01-06 14:03:41 +01:00
Mark Nauwelaerts
8fb183c7c9
oggdemux: enhance flac packet duration calculation
2010-01-05 16:44:58 +01:00
Wim Taymans
e897373a0a
ogg: ogm video has constant packet duration
2009-12-11 12:20:13 +01:00
David Schleef
118b62a764
oggdemux: implement old fLaC mapping
2009-12-10 22:48:23 -08:00
Wim Taymans
d18118418e
oggdemux: remove redundant fields
2009-12-10 16:09:09 +01:00
Wim Taymans
1ad0e4342e
oggdemux: improve keyframe seeking
...
Improve keyframe seeking.
Fix reverse playback.
2009-12-07 18:49:43 +01:00
Wim Taymans
c53cd385e3
oggdemux: implement keyframe seeking
...
Implement keyframe seeking in oggdemux by doing the double seek trick. First
seek to the required position, then read pages for all streams to grab the
granulepos (to know the timing of the keyframe) of each stream, then seek back
to the first keyframe.
2009-12-07 15:42:05 +01:00
Wim Taymans
56d3856620
oggdemux: fix timestamps after seek
...
After a seek, discard all packets before the packet with the granulepos on it so
that the output buffers contain valid timestamps.
Reorder some code so that we check the timestamps before allocating and pushing
an output buffer.
Do more checks on valid packets in ogm mode.
2009-12-04 16:35:09 +01:00
Wim Taymans
eb4fc976e5
oggdemux: add comment
2009-12-04 15:39:59 +01:00
Wim Taymans
9e222a385c
oggdemux: don't do math with invalid granulepos
...
When the current granulepos is unknown and set to -1, don't try to add durations
to it.
2009-12-04 14:01:11 +01:00
Wim Taymans
96e1c4dbe6
oggdemux: guard against wrong granulepos
...
Clamp the initial granulepos to 0 instead of going negative for some badly muxed
ogg files.
2009-12-04 13:14:57 +01:00
David Schleef
8bbe0d126a
oggdemux: reimplement OGM support
...
OGM demuxing no longer requires helper elements. It's done internally
in oggdemux. Vorbis comments are still not handled because I don't
have anything to test with.
2009-12-03 20:05:29 -08:00
David Schleef
4378851102
oggdemux: fix for I-frame-only theora
2009-12-03 17:02:11 -08:00
Tim-Philipp Müller
fb07615baa
ogg: log when ogg mapper doesn't accept the setup header packet
2009-12-03 23:43:29 +00:00
Tim-Philipp Müller
8195c26a08
ogg: extract width, height and PAR from theora header and add to caps
2009-12-03 23:43:29 +00:00
Tim-Philipp Müller
295b6c0326
ogg: extract number of channels from FLAC, speex and vorbis headers
...
Because we can.
2009-12-03 23:43:09 +00:00
Tim-Philipp Müller
2752ae841e
ogg: more print fixes
...
gstoggstream.c:419: error: format ‘%lld’ expects type ‘long long int’, but argument 8 has type ‘gint64’
gstoggdemux.c:2253: error: format ‘%lld’ expects type ‘long long int’, but argument 8 has type ‘GstClockTime’
gstoggdemux.c:2333: error: format ‘%lld’ expects type ‘long long int’, but argument 8 has type ‘GstClockTime’
2009-12-03 21:08:42 +00:00
Thiago Santos
098e416ebc
ogg: Fixing some printf format strings
...
Fixes some printf format strings to make it build on mac.
2009-12-03 16:57:48 -03:00
David Schleef
d2c9d7fc1c
oggdemux: handle theora streams with 0 keyoffset
2009-11-26 14:16:28 -08:00
David Schleef
a8e99f80df
oggdemux: Handle unknown streams
2009-11-26 14:16:28 -08:00
David Schleef
9339cec787
oggdemux: Reset last_granule during seeking
...
Fix case where we would reconstruct the wrong granulepos for
outgoing streams immediately after a seek.
2009-11-25 00:46:55 -08:00
David Schleef
8c202593c6
oggdemux: Fix timestamp generation for theora
...
Timestamp generation was broken by the last commit for formats
with a non-zero granule shift. Also keep track of the last keyframe
so that we can regenerate granulepos for theora.
2009-11-24 22:08:09 -08:00
David Schleef
78aad52cbf
oggdemux: Fix vorbis parsing
...
Add a granule to granulepos conversion function. Fix the duration
function for vorbis. Handle timestamps on header packets differently
and be more careful about calculating OFFSET and OFFSET_END. After
this change, timestamps for vorbis don't exactly match up with the
timestamps that vorbisparse outputs, but it's unclear if vorbisparse
is actually correct and it would add a lot more code to make oggdemux
match vorbisparse. Fixes #602790 .
2009-11-24 21:22:03 -08:00
David Schleef
ab0d802781
ogg: Fix generation of timestamps and durations
...
After changing some internal functions, I forgot to update
the code that puts the values on the buffers.
2009-11-21 22:05:34 +01:00
David Schleef
72edd1467b
ogg: Add ogg stream parsing
...
Adds code that parses headers of various formats encapsulated in
Ogg in order to calculate timestamps and durations of each buffer.
Removes the creation of helper decoder elements to do this calculation
via conversion queries.
Fixes : #344013 , #568014 .
2009-11-21 19:40:42 +01:00
David Schleef
3019ebb107
oggmux: don't overwrite object properties
2009-11-21 19:40:42 +01:00
Josep Torra
26fcc7843a
ogg: fixes warnings on macosx snow leopard
2009-10-09 16:57:14 +02:00
Josep Torra
8579028dc0
oggdemux: fix a warning in macosx
2009-10-09 16:57:13 +02:00
Stefan Kost
ccf5d6551a
build: sprintf, sscanf need stdio.h
2009-10-07 11:56:35 +03:00
David Schleef
f126617dbd
oggdemux: Fix duration calculation for truncated files
...
If the last page of a stream has a granulepos of -1, that is,
it doesn't complete a packet, we need to continue to search
for the last granulepos.
2009-09-13 10:58:12 -07:00
Sebastian Dröge
ce51263142
oggdemux: Handle kate and cmml as sparse streams too
2009-09-10 10:16:56 +02:00
Tim-Philipp Müller
3a38a0958e
oggdemux: Better handling of sparse streams by sending segment updates
...
Fixes bug #397419 .
2009-09-10 10:16:56 +02:00
David Schleef
0e9bc5125a
Remove Ronald Bultje from Authors field
...
Replaced with "GStreamer maintainers
<gstreamer-devel@lists.sourceforge.net>" or just removed,
depending on the number of other authors.
2009-08-24 11:37:01 -07:00
Tim-Philipp Müller
099989ff0f
oggmux: don't drop the streamheader field from the output caps
...
Revert previous 'fix' for bug #588717 and fix it properly, whilst
maintaining the streamheader field on the output caps. Also make
sure we don't leak header buffers we couldn't push when downstream
is unlinked. Add unit test for the presence of the streamheader
field on the output caps and for the issue from bug #588717 .
2009-08-20 13:14:19 +01:00
Edward Hervey
76044dce6d
ext: Remove dead assignments and resulting unused variables.
2009-08-08 15:54:41 +02:00
Tim-Philipp Müller
16cad126f0
oggmux: fix warning when we're not linked downstream and error out properly
...
Fix caps warning when there's no element linked downstream, and pass
not-linked flow return value correctly up the chain, so we error out
correctly. Fixes #588717 .
2009-08-07 00:58:36 +01:00
Vincent Penquerc'h
0a5d5206f3
oggmux: add Kate caps to the list of accepted types
...
See #525743 .
2009-07-13 22:59:11 +01:00
Tim-Philipp Müller
12134979a2
oggdemux: post/send tags with the container-format tag
...
For this to work properly, theoradec and vorbisdec need to put
tag events received from upstream into the pending_events list
so they get pushed out after any newsegment event, not before.
2009-06-14 22:13:41 +01:00
Wim Taymans
acdb88ec6f
oggdemux: do reverse seeks more accurate
...
For reverse seeking with the accurate flag set, try to be more precise by
seeking a little bit after the requested position.
2009-06-12 13:44:26 +02:00
Tim-Philipp Müller
9ca2bf36de
subparse, ogmparse: post tags with GST_TAG_SUBTITLE_CODEC
...
Make subtitle parsers post a taglist with codec tags, so the application
knows what kind of subtitle a subtitle stream is. Fixes #576552 .
2009-06-11 22:32:28 +01:00
Wim Taymans
f0bb7874a7
oggdemux: fix boundary case for seeking.
...
When we have exactly 0 bytes left to search, make sure we stop instead of going
into an infinite loop.
2009-05-26 13:14:07 +02:00
Wim Taymans
ed36eafaba
oggdemux: don't loop when at EOS
...
When we try to read the last page, don't try to read past the upper boundary, as
this might cause endless loops.
See #582942
2009-05-19 12:45:59 +02:00
Sebastian Dröge
2ea16837e7
oggmux: Implement Preset interface
2009-05-15 16:27:40 +02:00
Christian Schaller
705e7750c5
Add ranks to the Oggmuxer, Vorbis encoder and Theora encoder
2009-05-12 12:17:55 +01:00
Wim Taymans
6cee823237
oggmux: small debug statement in DISCONT
2009-05-12 10:46:35 +02:00
Wim Taymans
7e43c10754
oggdemux: fix abuse of ogg API, handle broken oggs
...
When we feed the ogg sync layer, we need to feed it contiguous data even if the
sync layer did not consume all of it yet. This makes sure that it always finds
the next page even for more corrupted files. Use a different read_offset for
this purpose. since we now keep track of the sync layer, we don't have to reset
after finding a start of a page.
Add some more debug info for the error paths.
Only reset the sync layer when we perform a seek operation.
Avoid failure when the next chain has no bos pages but instead simply ignore it.
when we receive unknown page serial numbers mid stream, don't fail but post a
warning and hope that we get back on track later.
Fixes #579642
2009-05-12 10:44:17 +02:00
Wim Taymans
4e11b596cb
oggdemux: report -1 for duration in push mode
...
In push mode we must return TRUE from the duration query with a value of -1
meaning that we know that we don't know the duration.
2009-03-17 19:53:44 +01:00
Wim Taymans
51b5f33c3c
oggdemux: add some debug info
...
Add some debug info to log when the seek worked.
2009-03-13 15:26:40 +01:00
Wim Taymans
1ab0f8da50
ext/ogg/gstoggdemux.c: Use G_DEFINE_TYPE for the OggPad to get some threadsafe type init from glib.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_class_init),
(gst_ogg_pad_dispose), (gst_ogg_pad_finalize):
Use G_DEFINE_TYPE for the OggPad to get some threadsafe type
init from glib.
2008-12-10 14:55:10 +00:00
Wim Taymans
bae0d688dd
ext/ogg/gstoggdemux.c: If no stream was found before receiving EOS, post an error message.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_sink_event):
If no stream was found before receiving EOS, post an error message.
Fixes #561924 .
2008-11-25 15:28:36 +00:00
David Schleef
3d894ebe84
ext/ogg/gstoggmux.*: If we're muxing a dirac stream, flush the page after every picture.
...
Original commit message from CVS:
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggmux.h:
If we're muxing a dirac stream, flush the page after every picture.
2008-11-24 19:18:59 +00:00
Wim Taymans
7f347c61c0
ext/ogg/gstoggdemux.*: Copy seqnums around to track playback segments and messages.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet),
(gst_ogg_demux_deactivate_current_chain),
(gst_ogg_demux_perform_seek), (gst_ogg_demux_handle_page),
(gst_ogg_demux_loop):
* ext/ogg/gstoggdemux.h:
Copy seqnums around to track playback segments and messages.
2008-11-04 17:24:35 +00:00
Stefan Kost
2cd4c7e2b9
Don't install static libs for plugins. Fixes #550851 for base.
...
Original commit message from CVS:
* ext/alsa/Makefile.am:
* ext/cdparanoia/Makefile.am:
* ext/gio/Makefile.am:
* ext/gnomevfs/Makefile.am:
* ext/libvisual/Makefile.am:
* ext/ogg/Makefile.am:
* ext/pango/Makefile.am:
* ext/theora/Makefile.am:
* ext/vorbis/Makefile.am:
* gst/adder/Makefile.am:
* gst/audioconvert/Makefile.am:
* gst/audiorate/Makefile.am:
* gst/audioresample/Makefile.am:
* gst/audiotestsrc/Makefile.am:
* gst/ffmpegcolorspace/Makefile.am:
* gst/gdp/Makefile.am:
* gst/playback/Makefile.am:
* gst/subparse/Makefile.am:
* gst/tcp/Makefile.am:
* gst/typefind/Makefile.am:
* gst/videorate/Makefile.am:
* gst/videoscale/Makefile.am:
* gst/videotestsrc/Makefile.am:
* gst/volume/Makefile.am:
* sys/v4l/Makefile.am:
* sys/ximage/Makefile.am:
* sys/xvimage/Makefile.am:
Don't install static libs for plugins. Fixes #550851 for base.
2008-10-16 15:07:00 +00:00
Daniel Drake
43e1dcbd18
ext/ogg/gstoggmux.c: Unref all buffers when clearing collectpads. Fixes bug #546955 .
...
Original commit message from CVS:
Patch by: Daniel Drake <dsd at laptop dot org>
* ext/ogg/gstoggmux.c: (gst_ogg_mux_clear_collectpads):
Unref all buffers when clearing collectpads. Fixes bug #546955 .
2008-10-08 12:12:01 +00:00
Alessandro Dessina
4f9bfa6a03
ext/ogg/gstoggdemux.c: Don't add pads and activate them for skeleton streams. These are already handled inside oggdem...
...
Original commit message from CVS:
Patch by: Alessandro Dessina <alessandro nnva org>
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_deactivate_current_chain),
(gst_ogg_demux_activate_chain):
Don't add pads and activate them for skeleton streams. These are already
handled inside oggdemux. Fixes bug #537599 .
2008-08-23 15:19:59 +00:00
Sebastian Dröge
b0e3d44956
ext/ogg/gstoggmux.*: Don't pretend to support NEWSEGMENT events, instead override the
...
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (gst_ogg_mux_sink_event),
(gst_ogg_mux_request_new_pad):
* ext/ogg/gstoggmux.h:
Don't pretend to support NEWSEGMENT events, instead override the
GstCollectPads event function to return FALSE on NEWSEGMENT events
and do the normal work for other events.
This prevents elements like flacenc to seek to the start and rewrite
some data which then results in a broken Ogg packet.
2008-08-07 16:11:14 +00:00
Frederic Crozat
89be246154
Make sure gettext returns translations in UTF-8 encoding rather than in the current locale encoding ( #546822 ).
...
Original commit message from CVS:
Patch by: Frederic Crozat <fcrozat@mandriva.org>
* ext/alsa/gstalsaplugin.c: (plugin_init):
* ext/cdparanoia/gstcdparanoiasrc.c: (plugin_init):
* ext/gnomevfs/gstgnomevfs.c: (plugin_init):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_plugin_init):
* gst-libs/gst/audio/gstbaseaudiosrc.c: (_do_init):
* gst-libs/gst/pbutils/pbutils.c: (gst_pb_utils_init):
* gst-libs/gst/tag/tags.c: (gst_tag_register_tags_internal):
* gst/playback/gstdecodebin.c: (plugin_init):
* gst/playback/gstdecodebin2.c: (gst_decode_bin_plugin_init):
* gst/playback/gstplayback.c: (plugin_init):
* gst/playback/gstqueue2.c: (plugin_init):
* gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_plugin_init):
* sys/v4l/gstv4l.c: (plugin_init):
Make sure gettext returns translations in UTF-8 encoding rather
than in the current locale encoding (#546822 ).
2008-08-07 15:58:58 +00:00
Sebastian Dröge
f9749dea39
ext/ogg/gstoggdemux.c: Don't use GST_CLOCK_TIME_NONE as start of NEWSEGMENT events.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_peer),
(gst_ogg_demux_perform_seek), (gst_ogg_demux_handle_page):
Don't use GST_CLOCK_TIME_NONE as start of NEWSEGMENT events.
This fixes a critical warning.
2008-07-28 15:34:13 +00:00
Sebastian Dröge
6bccd1fcfe
ext/ogg/gstoggmux.c: Allow muxing of CELT into Ogg streams.
...
Original commit message from CVS:
* ext/ogg/gstoggmux.c:
Allow muxing of CELT into Ogg streams.
2008-07-28 13:12:51 +00:00
Jan Gerber
cd3fef0f39
ext/ogg/gstoggdemux.c: Fix calculation of the start time from skeleton streams.
...
Original commit message from CVS:
Patch by: Jan Gerber <j at oil21 dot org>
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_parse_skeleton_fisbone):
Fix calculation of the start time from skeleton streams.
Fixes bug #530068 .
2008-07-27 11:12:41 +00:00
Stefan Kost
2b33c755b6
Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipe...
...
Original commit message from CVS:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/gst-plugins-base-plugins.signals:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
* ext/alsa/gstalsamixer.c:
* ext/alsa/gstalsasink.c:
* ext/alsa/gstalsasrc.c:
* ext/gio/gstgiosink.c:
* ext/gio/gstgiosrc.c:
* ext/gio/gstgiostreamsink.c:
* ext/gio/gstgiostreamsrc.c:
* ext/gnomevfs/gstgnomevfssink.c:
* ext/gnomevfs/gstgnomevfssrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
* ext/pango/gstclockoverlay.c:
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/pango/gsttimeoverlay.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/theora/theoraparse.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* ext/vorbis/vorbisparse.c:
* ext/vorbis/vorbistag.c:
* gst/adder/gstadder.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/audioresample/gstaudioresample.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/gdp/gstgdpdepay.c:
* gst/gdp/gstgdppay.c:
* gst/playback/gstdecodebin2.c:
* gst/playback/gstplaybin.c:
* gst/playback/gstplaybin2.c:
* gst/playback/gstqueue2.c:
* gst/playback/gsturidecodebin.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gsttcpserversink.c:
* gst/videorate/gstvideorate.c:
* gst/videoscale/gstvideoscale.c:
* gst/videotestsrc/gstvideotestsrc.c:
* gst/volume/gstvolume.c:
* sys/ximage/ximagesink.c:
* sys/xvimage/xvimagesink.c:
Cleanup Plugin docs. Link to signals and properties. Fix sub-section
titles. Drop mentining that all our example pipelines are "simple"
pipelines.
2008-07-10 21:06:06 +00:00
Jan Schmidt
d58def621b
Add some documentation comments, and some new headers to be scanned.
...
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gio.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
* ext/cdparanoia/gstcdparanoiasrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggdemux.h:
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggmux.h:
* gst/audioconvert/audioconvert.c:
* gst/audioconvert/audioconvert.h:
* gst/audioconvert/gstaudioconvert.h:
* gst/gdp/gstgdpdepay.h:
* gst/gdp/gstgdppay.h:
* gst/playback/gstdecodebin.c:
* gst/playback/gstdecodebin2.c:
* gst/playback/gstplaybin.c:
* gst/playback/gstplaybin2.c:
* gst/playback/gsturidecodebin.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gstmultifdsink.h:
* gst/tcp/gsttcp.h:
Add some documentation comments, and some new headers to be scanned.
Rename some internal enum declarations (audioconvert's DitherType and
NoiseShapingType, GstUnitType from the TCP elements) to match the
documented GObject type names so that the docs pick them up.
Name the playbin2 docs markups properly so they get picked up. They'll
need renaming back when/if playbin2 becomes playbin.
100% symbol coverage for the plugin docs, booya.
2008-05-22 22:09:16 +00:00
Wim Taymans
c6b54c3d02
Don't use bad gst_element_get_pad().
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_typefind):
* gst/playback/decodetest.c: (new_decoded_pad_cb):
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(try_to_link_1), (elem_is_dynamic), (close_link), (type_found),
(cleanup_decodebin):
* gst/playback/gstdecodebin2.c: (gst_decode_bin_init),
(connect_element), (gst_decode_group_control_demuxer_pad):
* gst/playback/gstplaybasebin.c: (queue_remove_probe),
(queue_out_of_data), (gen_preroll_element), (preroll_unlinked),
(mute_group_type):
* gst/playback/gstplaybin.c: (gst_play_bin_vis_blocked),
(gst_play_bin_set_property), (handoff), (gen_video_element),
(gen_text_element), (gen_audio_element), (gen_vis_element),
(remove_sinks), (add_sink), (setup_sinks):
* gst/playback/gstplaybin2.c: (pad_added_cb), (no_more_pads_cb):
* gst/playback/gstplaysink.c: (gst_play_sink_get_video_sink),
(gst_play_sink_get_audio_sink), (gst_play_sink_vis_unblocked),
(gst_play_sink_vis_blocked), (gst_play_sink_set_vis_plugin),
(gst_play_sink_get_vis_plugin), (gst_play_sink_set_mute),
(gen_video_chain), (gen_text_chain), (gen_audio_chain),
(gen_vis_chain), (gst_play_sink_reconfigure),
(gst_play_sink_set_font_desc), (gst_play_sink_get_font_desc),
(gst_play_sink_request_pad):
* gst/playback/gsturidecodebin.c: (type_found), (setup_source):
* gst/playback/test.c: (gen_video_element), (gen_audio_element),
(cb_newpad):
* gst/playback/test6.c: (new_decoded_pad_cb):
* tests/check/elements/audioconvert.c: (GST_START_TEST):
* tests/check/elements/audiorate.c: (test_injector_chain),
(do_perfect_stream_test):
* tests/check/elements/ffmpegcolorspace.c: (GST_START_TEST):
* tests/check/elements/gdpdepay.c: (GST_START_TEST):
* tests/check/elements/gnomevfssink.c:
* tests/check/elements/textoverlay.c:
(notgst_check_setup_src_pad2), (notgst_check_teardown_src_pad2):
* tests/check/elements/videotestsrc.c: (GST_START_TEST):
* tests/check/libs/cddabasesrc.c: (GST_START_TEST):
* tests/check/pipelines/oggmux.c: (test_pipeline):
* tests/check/pipelines/streamheader.c: (GST_START_TEST):
* tests/check/pipelines/theoraenc.c: (GST_START_TEST):
* tests/check/pipelines/vorbisenc.c: (GST_START_TEST):
* tests/examples/seek/scrubby.c: (make_wav_pipeline):
* tests/examples/seek/seek.c: (make_mod_pipeline),
(make_dv_pipeline), (make_wav_pipeline), (make_flac_pipeline),
(make_sid_pipeline), (make_parse_pipeline), (make_vorbis_pipeline),
(make_theora_pipeline), (make_vorbis_theora_pipeline),
(make_avi_msmpeg4v3_mp3_pipeline), (make_mp3_pipeline),
(make_avi_pipeline), (make_mpeg_pipeline), (make_mpegnt_pipeline),
(update_fill), (msg_buffering):
Don't use bad gst_element_get_pad().
2008-05-21 16:36:50 +00:00
j^
1a154e1d3d
ext/ogg/gstoggdemux.*: Parse presentation time from skeleton streams and use it as offset for the timestamps. Fixes b...
...
Original commit message from CVS:
Patch by: j^ <j at oil21 dot org>
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_parse_skeleton_fishead),
(gst_ogg_pad_parse_skeleton_fisbone):
* ext/ogg/gstoggdemux.h:
Parse presentation time from skeleton streams and use it as offset
for the timestamps. Fixes bug #530068 .
2008-05-13 07:28:21 +00:00
Stefan Kost
e133a5f587
ext/ogg/gstoggdemux.c: Revert the event part, that should not go in.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c:
Revert the event part, that should not go in.
2008-04-23 13:50:34 +00:00
Stefan Kost
6706362116
ext/ogg/gstoggdemux.c: Don't leak GstPluginFeatures when filtering.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c:
Don't leak GstPluginFeatures when filtering.
2008-04-23 13:45:29 +00:00
David Schleef
809f8542cf
ext/ogg/gstoggmux.c: Update Ogg/Dirac muxing. Removes the weird "KW-DIRAC" bos packet. Should conform to what we cu...
...
Original commit message from CVS:
* ext/ogg/gstoggmux.c:
Update Ogg/Dirac muxing. Removes the weird "KW-DIRAC" bos
packet. Should conform to what we currently think is the
final Ogg/Dirac muxing spec.
2008-04-22 06:18:04 +00:00
Sebastian Dröge
9587e5e1c0
ext/ogg/gstogmparse.c: GST_TYPE_FRACTION contains gints so correctly cast gint64 arguments to vaargs functions to gin...
...
Original commit message from CVS:
* ext/ogg/gstogmparse.c: (gst_ogm_parse_stream_header):
GST_TYPE_FRACTION contains gints so correctly cast gint64 arguments to
vaargs functions to gint. Otherwise the fractions will get 0 set
instead of the correct value on big endian systems. Fixes bug #529018 .
2008-04-20 11:42:37 +00:00
Tim-Philipp Müller
cbab1f4114
ext/ogg/gstoggmux.c: Fix sample pipeline description.
...
Original commit message from CVS:
* ext/ogg/gstoggmux.c:
Fix sample pipeline description.
2008-04-03 15:58:37 +00:00
Stefan Kost
b04f8ef354
docs/plugins/: Add playbin, playbin2, decodebin, decodebin2, uridecodebin and oggmux
...
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
Add playbin, playbin2, decodebin, decodebin2, uridecodebin and oggmux
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
Update introspection data.
* ext/ogg/gstoggmux.c:
Document oggmux.
* gst/playback/gstdecodebin2.c:
Don't use gtk-doc style comment start for private stuff, but make it
formatted like this for consistency.
2008-04-03 14:58:06 +00:00
Wim Taymans
ac5bff82c5
ext/ogg/gstoggdemux.c: Add small debug line.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_reset),
(gst_ogg_demux_chain_elem_pad):
Add small debug line.
Pass return code from the internal decoder instead of the too generic
GST_FLOW_ERROR.
2008-04-03 10:19:43 +00:00
Wim Taymans
996128f268
ext/ogg/gstoggdemux.c: Refix oggdemux, we only have a problem if we failed to find a chain and we are not EOF.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_activate_chain),
(gst_ogg_demux_read_chain):
Refix oggdemux, we only have a problem if we failed to find a chain and
we are not EOF.
2008-04-02 15:41:50 +00:00
Victor STINNER
38d188e468
ext/ogg/gstoggdemux.c: When we fail to find a BOS page and we and up with no chain, error out properly instead of seg...
...
Original commit message from CVS:
Patch by: Victor STINNER <victor dot stinner at haypocalc dot com>
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_activate_chain),
(gst_ogg_demux_read_chain):
When we fail to find a BOS page and we and up with no chain, error out
properly instead of segfaulting. Fixes #525665 .
2008-04-02 15:07:01 +00:00
Wim Taymans
9d4543ed67
ext/ogg/gstoggdemux.c: The new-pad-group sequence is add-pads, no-more-pads, add-pads, no-more-pads...
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_activate_chain),
(gst_ogg_demux_read_chain), (gst_ogg_demux_handle_page):
The new-pad-group sequence is add-pads, no-more-pads, add-pads,
no-more-pads...
2008-04-02 14:58:05 +00:00
Sebastian Dröge
49deb0c05d
Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use static strings (i.e. all). This gives us less memory u...
...
Original commit message from CVS:
* configure.ac:
* ext/alsa/gstalsamixerelement.c:
(gst_alsa_mixer_element_class_init):
* ext/alsa/gstalsasink.c: (gst_alsasink_class_init):
* ext/alsa/gstalsasrc.c: (gst_alsasrc_class_init):
* ext/cdparanoia/gstcdparanoiasrc.c:
(gst_cd_paranoia_src_class_init):
* ext/gio/gstgiosink.c: (gst_gio_sink_class_init):
* ext/gio/gstgiosrc.c: (gst_gio_src_class_init):
* ext/gio/gstgiostreamsink.c: (gst_gio_stream_sink_class_init):
* ext/gio/gstgiostreamsrc.c: (gst_gio_stream_src_class_init):
* ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_class_init):
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_class_init):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init):
* ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init):
* ext/pango/gsttextrender.c: (gst_text_render_class_init):
* ext/theora/theoradec.c: (gst_theora_dec_class_init):
* ext/theora/theoraenc.c: (gst_theora_enc_class_init):
* ext/theora/theoraparse.c: (gst_theora_parse_class_init):
* ext/vorbis/vorbisenc.c: (gst_vorbis_enc_class_init):
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
(gst_audio_filter_template_class_init):
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init):
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_class_init):
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_class_init):
* gst-libs/gst/interfaces/mixertrack.c:
(gst_mixer_track_class_init):
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_class_init):
* gst-libs/gst/rtp/gstbasertppayload.c:
(gst_basertppayload_class_init):
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_class_init):
* gst/audiorate/gstaudiorate.c: (gst_audio_rate_class_init):
* gst/audioresample/gstaudioresample.c:
(gst_audioresample_class_init):
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audio_test_src_class_init):
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init):
* gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(preroll_unlinked):
* gst/playback/gstplaybin.c: (gst_play_bin_class_init):
* gst/playback/gstplaybin2.c: (gst_play_bin_class_init):
* gst/playback/gstplaysink.c: (gst_play_sink_class_init):
* gst/playback/gstqueue2.c: (gst_queue_class_init):
* gst/playback/gststreaminfo.c: (gst_stream_info_class_init):
* gst/playback/gststreamselector.c: (gst_selector_pad_class_init),
(gst_stream_selector_class_init):
* gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init):
* gst/subparse/gstsubparse.c: (gst_sub_parse_class_init):
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init):
* gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init):
* gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_class_init):
* gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_class_init):
* gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_class_init):
* gst/videorate/gstvideorate.c: (gst_video_rate_class_init):
* gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_video_test_src_class_init):
* gst/volume/gstvolume.c: (gst_volume_class_init):
* sys/v4l/gstv4lelement.c: (gst_v4lelement_class_init):
* sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_class_init):
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_class_init):
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_class_init):
* sys/ximage/ximagesink.c: (gst_ximagesink_class_init):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_class_init):
Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use
static strings (i.e. all). This gives us less memory usage,
fewer allocations and thus less memory defragmentation. Depend
on core CVS for this. Fixes bug #523806 .
2008-03-22 15:00:53 +00:00
Sebastian Dröge
ec7afb6f84
Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static...
...
Original commit message from CVS:
* ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_get_type):
* ext/alsa/gstalsasink.c: (set_hwparams):
* ext/alsa/gstalsasrc.c: (set_hwparams):
* ext/gio/gstgio.c: (gst_gio_uri_handler_get_uri):
* ext/ogg/gstoggmux.h:
* ext/ogg/gstogmparse.c:
* gst-libs/gst/audio/audio.c:
* gst-libs/gst/fft/kiss_fft_f64.c: (kiss_fft_f64_alloc):
* gst-libs/gst/pbutils/missing-plugins.c:
(gst_missing_uri_sink_message_new),
(gst_missing_element_message_new),
(gst_missing_decoder_message_new),
(gst_missing_encoder_message_new):
* gst-libs/gst/rtp/gstbasertppayload.c:
* gst-libs/gst/rtp/gstrtcpbuffer.c:
(gst_rtcp_packet_bye_get_reason):
* gst/audioconvert/gstaudioconvert.c:
* gst/audioresample/gstaudioresample.c:
* gst/ffmpegcolorspace/imgconvert.c:
* gst/playback/test.c: (gen_video_element), (gen_audio_element):
* gst/typefind/gsttypefindfunctions.c:
* gst/videoscale/vs_4tap.c:
* gst/videoscale/vs_4tap.h:
* sys/v4l/gstv4lelement.c:
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_get_any_caps):
* sys/v4l/v4l_calls.c:
* sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_capture_init),
(gst_v4lsrc_try_capture):
* sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls),
(gst_ximagesink_ximage_new):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls),
(gst_xvimagesink_xvimage_new):
* tests/check/elements/audioconvert.c:
* tests/check/elements/audioresample.c:
(fail_unless_perfect_stream):
* tests/check/elements/audiotestsrc.c: (setup_audiotestsrc):
* tests/check/elements/decodebin.c:
* tests/check/elements/gdpdepay.c: (setup_gdpdepay),
(setup_gdpdepay_streamheader):
* tests/check/elements/gdppay.c: (setup_gdppay), (GST_START_TEST),
(setup_gdppay_streamheader):
* tests/check/elements/gnomevfssink.c: (setup_gnomevfssink):
* tests/check/elements/multifdsink.c: (setup_multifdsink):
* tests/check/elements/textoverlay.c:
* tests/check/elements/videorate.c: (setup_videorate):
* tests/check/elements/videotestsrc.c: (setup_videotestsrc):
* tests/check/elements/volume.c: (setup_volume):
* tests/check/elements/vorbisdec.c: (setup_vorbisdec):
* tests/check/elements/vorbistag.c:
* tests/check/generic/clock-selection.c:
* tests/check/generic/states.c: (setup), (teardown):
* tests/check/libs/cddabasesrc.c:
* tests/check/libs/video.c:
* tests/check/pipelines/gio.c:
* tests/check/pipelines/oggmux.c:
* tests/check/pipelines/simple-launch-lines.c:
(simple_launch_lines_suite):
* tests/check/pipelines/streamheader.c:
* tests/check/pipelines/theoraenc.c:
* tests/check/pipelines/vorbisdec.c:
* tests/check/pipelines/vorbisenc.c:
* tests/examples/seek/scrubby.c:
* tests/examples/seek/seek.c: (query_positions_elems),
(query_positions_pads):
* tests/icles/stress-xoverlay.c: (myclock):
Correct all relevant warnings found by the sparse semantic code
analyzer. This include marking several symbols static, using
NULL instead of 0 for pointers and using "foo (void)" instead
of "foo ()" for declarations.
* win32/common/libgstrtp.def:
Add gst_rtp_buffer_set_extension_data to the symbol definition file.
2008-03-03 06:04:31 +00:00
Stefan Kost
f37ad5da3e
docs/plugins/: First round of plugin docs cleansups.
...
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
First round of plugin docs cleansups.
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
Regenerate.
* ext/ogg/Makefile.am:
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggmux.h:
Add header for oggmux. the c-file needs a doc blob still.
2008-02-01 12:56:59 +00:00
Wim Taymans
3ec4196769
ext/ogg/gstoggdemux.c: If we find a new serial number but it does not contain a BOS page, make sure we initialize the...
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_bisect_forward_serialno),
(gst_ogg_demux_read_chain):
If we find a new serial number but it does not contain a BOS page, make
sure we initialize the chain to NULL because else we will try to scan it
and crash. Fixes #500763
2007-12-03 10:58:14 +00:00
Wim Taymans
9a32184a05
ext/ogg/gstoggdemux.c: Also submit the eos page when trying to find the first timestamp.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_read_chain),
(gst_ogg_demux_collect_chain_info):
Also submit the eos page when trying to find the first timestamp.
See #466717 .
2007-08-21 11:42:39 +00:00
Stefan Kost
87d96c656a
ext/ogg/gstoggmux.c: Do not leak oggmux instance.
...
Original commit message from CVS:
* ext/ogg/gstoggmux.c:
Do not leak oggmux instance.
* ext/vorbis/vorbisenc.c:
Also log values.
2007-08-09 11:37:28 +00:00
Edward Hervey
fa877be84c
ext/ogg/gstoggdemux.c: The chain should be freed if we error out here, else it will leak.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_find_chains):
The chain should be freed if we error out here, else it will leak.
* gst/playback/gstdecodebin.c: (disconnect_unlinked_signals),
(cleanup_decodebin):
Don't forget to *properly* remove the signals, else it will leak.
2007-06-23 14:44:07 +00:00
Michael Smith
e1cc846edc
tests/check/pipelines/oggmux.c: Add a test that ensures we set DELTA_UNIT on all non-header, non-video buffers, if we...
...
Original commit message from CVS:
* tests/check/pipelines/oggmux.c: (validate_ogg_page), (is_video),
(eos_buffer_probe):
Add a test that ensures we set DELTA_UNIT on all non-header,
non-video buffers, if we have a video stream.
* ext/ogg/gstoggmux.c: (gst_ogg_mux_queue_pads),
(gst_ogg_mux_process_best_pad):
Move setting delta_pad to earlier, where we inspect all pads, so
that leading audio pages don't get DELTA_UNIT unset if they come
before the first DELTA_UNIT from video pages. Fixes the newly-added
test. Fixes #385527 .
2007-06-15 11:15:28 +00:00
Wim Taymans
34dd1db5f3
ext/ogg/gstoggdemux.c: Fix compilation on mingw. Fixes #446972 .
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet),
(gst_ogg_demux_perform_seek), (gst_ogg_demux_read_chain):
Fix compilation on mingw. Fixes #446972 .
2007-06-13 09:01:32 +00:00
Tim-Philipp Müller
6f25fde218
ext/ogg/gstoggmux.c: The BOS page of the first Dirac video stream needs to come before the BOS page of any Vorbis str...
...
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (gst_ogg_mux_send_headers):
The BOS page of the first Dirac video stream needs to come before
the BOS page of any Vorbis streams or other audio streams, just like
it is with Theora.
2007-06-07 14:25:32 +00:00
Wim Taymans
c6ecd5bec8
ext/ogg/gstoggdemux.c: consideratly speedup ogg chain detection by not trying to find a base timestamp for skeleton s...
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_parse_skeleton_fisbone),
(gst_ogg_pad_submit_packet), (gst_ogg_demux_perform_seek),
(gst_ogg_demux_read_chain), (gst_ogg_demux_collect_chain_info):
consideratly speedup ogg chain detection by not trying to find a base
timestamp for skeleton streams.
2007-06-05 16:02:57 +00:00
Wim Taymans
f8f9935d74
ext/ogg/gstoggdemux.c: Some more chained streaming ogg timestamp fixes.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet),
(gst_ogg_demux_perform_seek), (gst_ogg_demux_handle_page):
Some more chained streaming ogg timestamp fixes.
2007-05-15 17:11:09 +00:00
Wim Taymans
8b90454ed7
ext/ogg/gstoggdemux.c: Add some FIXMEs.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet),
(gst_ogg_demux_activate_chain), (gst_ogg_demux_perform_seek),
(gst_ogg_demux_handle_page):
Add some FIXMEs.
Fix chain start/stop segment handling based on patch by
<ahalda at cs dot mcgill dot ca> see #320984 .
2007-05-15 16:46:10 +00:00
Wim Taymans
8532e91e7e
ext/ogg/gstoggdemux.c: If there is a stream in a chain without any data packets, ignore the stream in the total lengt...
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_packet),
(gst_ogg_demux_collect_chain_info):
If there is a stream in a chain without any data packets, ignore the
stream in the total length calculations. Might be related to #436820 .
2007-05-12 16:16:22 +00:00
Thomas Vander Stichele
9b7fcfdcae
debug changes
...
Original commit message from CVS:
debug changes
2007-04-13 21:09:04 +00:00
Wim Taymans
a1c380650c
ext/ogg/gstoggdemux.c: Fix confusing debug message.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_read_chain):
Fix confusing debug message.
2007-03-07 17:15:57 +00:00
Wim Taymans
ce47c4d2d8
ext/ogg/gstoggdemux.c: Improve debugging.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_sink_activate):
Improve debugging.
2007-02-28 15:10:06 +00:00
Stefan Kost
b2f9c0f289
More docs coverage and some ChangeLog surgery (add missing names)
...
Original commit message from CVS:
* ext/cdparanoia/gstcdparanoiasrc.h:
* ext/ogg/gstoggdemux.h:
* gst-libs/gst/audio/audio.c: (gst_audio_frame_byte_size),
(gst_audio_frame_length), (gst_audio_duration_from_pad_buffer),
(gst_audio_is_buffer_framed), (gst_audio_structure_set_int):
* gst-libs/gst/audio/audio.h:
* gst-libs/gst/audio/gstaudiofilter.h:
* gst-libs/gst/interfaces/videoorientation.h:
* gst/adder/gstadder.h:
More docs coverage and some ChangeLog surgery (add missing names)
2007-02-15 15:17:23 +00:00
Sebastian Dröge
d1778e3f6d
ext/ogg/gstoggmux.c: Use newly added GstCollectPads API to free the allocated resources in the GstOggPad structures (...
...
Original commit message from CVS:
reviewed by: Wim Taymans <wim@fluendo.com>
* ext/ogg/gstoggmux.c: (gst_ogg_mux_ogg_pad_destroy_notify),
(gst_ogg_mux_request_new_pad), (gst_ogg_mux_release_pad):
Use newly added GstCollectPads API to free the allocated resources in
the GstOggPad structures (#402393 ).
2007-02-01 17:52:39 +00:00
Wim Taymans
fde9b0096c
ext/ogg/gstoggdemux.*: Properly propagate streaming errors when we are scanning the file for chains so that we don't ...
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_submit_buffer),
(gst_ogg_demux_get_data), (gst_ogg_demux_get_next_page),
(gst_ogg_demux_get_prev_page), (gst_ogg_demux_do_seek),
(gst_ogg_demux_perform_seek),
(gst_ogg_demux_bisect_forward_serialno),
(gst_ogg_demux_read_chain), (gst_ogg_demux_read_end_chain),
(gst_ogg_demux_find_chains), (gst_ogg_demux_handle_page),
(gst_ogg_demux_chain), (gst_ogg_demux_combine_flows),
(gst_ogg_demux_loop_reverse), (gst_ogg_demux_loop):
* ext/ogg/gstoggdemux.h:
Properly propagate streaming errors when we are scanning the file for
chains so that we don't crash when shut down. Might fix some crashers
when quickly switching oggs in RB such as #332503 and #378436 .
2007-01-27 13:32:24 +00:00
Tim-Philipp Müller
c135f896e5
ext/ogg/gstoggdemux.c: Error out properly if we get an error from libogg while reading the
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_read_chain):
Error out properly if we get an error from libogg while reading the
BOS page(s). Fixes crash parsing 'fuzzed' ogg file (#399340 ).
2007-01-23 18:39:45 +00:00
Edward Hervey
0fcb92f2dd
ext/ogg/gstoggmux.c: Fix the cases where oggmux doesn't properly figure out that all sinkpads have gone EOS, and ther...
...
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (all_pads_eos), (gst_ogg_mux_collected):
Fix the cases where oggmux doesn't properly figure out that all
sinkpads have gone EOS, and therefore doesn't push out the remaining
buffers and the final EOS event.
Fixes #363379
2007-01-23 14:30:28 +00:00
Tim-Philipp Müller
056723b97c
ext/ogg/Makefile.am: Dist gstoggdemux.h to fix 'make distcheck'.
...
Original commit message from CVS:
* ext/ogg/Makefile.am:
Dist gstoggdemux.h to fix 'make distcheck'.
* sys/v4l/Makefile.am:
Fix 'make distcheck' even more.
2007-01-09 13:35:08 +00:00
Wim Taymans
80d666f353
Added docs.
...
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* ext/ogg/gstoggdemux.c: (gst_ogg_page_copy), (gst_ogg_page_free),
(gst_ogg_pad_query_types), (gst_ogg_pad_submit_page),
(gst_ogg_chain_reset), (gst_ogg_chain_new_stream),
(gst_ogg_demux_perform_seek):
* ext/ogg/gstoggdemux.h:
Added docs.
Add some more comments.
Small cleanups.
2007-01-09 12:30:46 +00:00
Tim-Philipp Müller
4e3fc9611f
Printf format and missing argument fixes.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_stream_out):
* ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet):
* gst/playback/gstdecodebin2.c:
(gst_decode_group_check_if_blocked):
Printf format and missing argument fixes.
2007-01-05 19:43:55 +00:00
Jan Schmidt
fca23cea51
ext/ogg/gstogmparse.c: Activate pads before adding them to the element.
...
Original commit message from CVS:
* ext/ogg/gstogmparse.c: (gst_ogm_parse_stream_header),
(gst_ogm_parse_change_state):
Activate pads before adding them to the element.
2007-01-05 18:57:53 +00:00
Thomas Vander Stichele
95ada43982
configure.ac: split out GST_CFLAGS into GST_PLUGINS_BASE_CFLAGS and GST_CFLAGS so that GST_BASE_CFLAGS can go inbetwe...
...
Original commit message from CVS:
* configure.ac:
split out GST_CFLAGS into GST_PLUGINS_BASE_CFLAGS and GST_CFLAGS
so that GST_BASE_CFLAGS can go inbetween them, making sure
we use uninstalled gst-libs headers
* docs/libs/Makefile.am:
* ext/alsa/Makefile.am:
* ext/cdparanoia/Makefile.am:
* ext/gnomevfs/Makefile.am:
* ext/libvisual/Makefile.am:
* ext/ogg/Makefile.am:
* ext/theora/Makefile.am:
* ext/vorbis/Makefile.am:
* gst-libs/gst/audio/Makefile.am:
* gst-libs/gst/cdda/Makefile.am:
* gst-libs/gst/interfaces/Makefile.am:
* gst-libs/gst/riff/Makefile.am:
* gst-libs/gst/rtp/Makefile.am:
* gst-libs/gst/tag/Makefile.am:
* gst/adder/Makefile.am:
* gst/audioconvert/Makefile.am:
* gst/audiorate/Makefile.am:
* gst/audioresample/Makefile.am:
* gst/playback/Makefile.am:
* gst/tcp/Makefile.am:
* gst/videoscale/Makefile.am:
* gst/volume/Makefile.am:
* sys/ximage/Makefile.am:
* sys/xvimage/Makefile.am:
* tests/icles/Makefile.am:
adapt
2007-01-04 12:49:48 +00:00
Wim Taymans
b8583561da
ext/ogg/gstoggdemux.c: Some cleanups.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_page_copy), (gst_ogg_page_free),
(gst_ogg_pad_init), (gst_ogg_pad_dispose), (gst_ogg_pad_reset),
(gst_ogg_pad_stream_out), (gst_ogg_pad_submit_page),
(gst_ogg_chain_reset), (gst_ogg_demux_perform_seek):
Some cleanups.
Handle continued pages in reverse mode.
2006-11-24 15:40:58 +00:00
Wim Taymans
9404478d21
ext/ogg/gstoggdemux.c: Don't just ignore return values from _pad_push().
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_page),
(gst_ogg_demux_chain):
Don't just ignore return values from _pad_push().
Small debug improvements.
2006-11-23 11:07:23 +00:00
Michael Smith
e58d5a5515
ext/ogg/gstoggmux.c: If our incoming buffer is marked as DISCONT, then increment the page number (so that the discont...
...
Original commit message from CVS:
* ext/ogg/gstoggmux.c: (gst_ogg_mux_process_best_pad):
If our incoming buffer is marked as DISCONT, then increment the page
number (so that the discontinuity is marked in the final ogg
bitstream) and flush the previous page.
2006-11-23 11:02:11 +00:00
Michael Smith
410bb3fef1
ext/ogg/gstoggdemux.c: Improve a debug line slightly.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_page):
Improve a debug line slightly.
* ext/ogg/gstogmparse.c: (gst_ogm_parse_plugin_init):
Call gst_riff_init() in plugin_init, to avoid getting errors from
the debug system (unrelated changes to another plugin made this turn
up; not sure why).
2006-11-13 15:31:01 +00:00
Christian Schaller
099f2f0ef7
ext/ogg/gstoggdemux.c: Implement first stab at reverse playback.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_submit_page),
(gst_ogg_demux_get_prev_page), (gst_ogg_demux_perform_seek),
(gst_ogg_demux_handle_page), (gst_ogg_demux_chain),
(gst_ogg_demux_loop_forward), (gst_ogg_demux_loop_reverse),
(gst_ogg_demux_loop):
Implement first stab at reverse playback.
2006-11-09 00:50:00 +00:00
David Schleef
e10b075e5d
ext/ogg/: Add/remove KW-DIRAC header here, since it is ogg-specific.
...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
Add/remove KW-DIRAC header here, since it is ogg-specific.
2006-11-04 07:25:58 +00:00
Tim-Philipp Müller
b13a0d142f
ext/ogg/gstogg.c: Remove unused variable.
...
Original commit message from CVS:
* ext/ogg/gstogg.c:
Remove unused variable.
* ext/ogg/gstoggdemux.c:
Fix Wim's surname in plugin description.
2006-11-01 14:08:31 +00:00
Mark Nauwelaerts
a6f0314867
ext/ogg/gstoggmux.c: Remove the pad from the element in release_pad.
...
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw at skynet dot be>
* ext/ogg/gstoggmux.c: (gst_ogg_mux_release_pad):
Remove the pad from the element in release_pad.
2006-10-27 16:45:30 +00:00
Michael Smith
107c7bf894
ext/ogg/gstoggparse.c: Set caps on pushed buffers; fix up refcounting of caps objects.
...
Original commit message from CVS:
* ext/ogg/gstoggparse.c: (gst_ogg_parse_dispose),
(gst_ogg_parse_append_header), (gst_ogg_parse_chain):
Set caps on pushed buffers; fix up refcounting of caps objects.
2006-10-20 12:31:02 +00:00
Tim-Philipp Müller
9e107d670a
Printf format fixes.
...
Original commit message from CVS:
* ext/alsa/gstalsadeviceprobe.c:
(gst_alsa_device_property_probe_get_values):
* ext/alsa/gstalsasink.c: (set_hwparams):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_elem_pad),
(gst_ogg_chain_new_stream), (gst_ogg_demux_read_chain):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_send_headers),
(gst_ogg_mux_process_best_pad):
* ext/ogg/gstoggparse.c: (gst_ogg_parse_new_stream),
(gst_ogg_parse_chain):
* ext/ogg/gstogmparse.c: (gst_ogm_parse_stream_header):
* ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet):
* ext/vorbis/vorbisenc.c: (gst_vorbis_enc_setup),
(gst_vorbis_enc_buffer_check_discontinuous):
* ext/vorbis/vorbisparse.c: (vorbis_parse_src_query):
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_render):
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_handle_track_seek):
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_push_full):
* gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_push):
* gst/audioresample/resample.c: (resample_input_pushthrough):
* gst/playback/gstplaybasebin.c: (queue_out_of_data):
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_handle_clients):
* gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset),
(wavpack_type_find):
* gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_create):
* sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy),
(gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new):
* tests/check/elements/volume.c: (GST_START_TEST):
Printf format fixes.
2006-10-05 15:55:21 +00:00