Sebastian Dröge
76ca3c77d7
mxfdemux: Add function to get the essence track wrapping
2012-12-06 10:09:21 +01:00
Sebastian Dröge
28c11b2762
mxf: Add support for parsing filler structural components
...
This does not add support for actually producing filler data
if there's a filler component in a timeline.
2012-12-05 12:24:30 +01:00
Sebastian Dröge
a83b798312
mxf: Improve debug output during metadata resolval
2012-12-05 12:10:44 +01:00
Tim-Philipp Müller
caa9014bce
resindvd, frei0r: link to libgmodule-2.0 in plugins that use g_module_* API
...
Probably needed for other plugins as well.
2012-11-30 20:01:16 +00:00
Sebastian Dröge
84e5418cfc
mxf: Add more support for RP2008 (AVC in the MPEG mapping)
...
Conflicts:
gst/mxf/mxfmpeg.c
2012-11-30 15:19:35 +01:00
Krzysztof Konopko
13910f5154
mpegtsmux: crashes when trying to re-use the element
...
A crash occured after pushing buffers and changing mpegtsmux state to
NULL/READ and then back to PLAYING/PAUSED.
The crash was caused by holding a dangling pointer in the MpegTsMux
program table.
Additionally stream headers were leaked when resetting the element:
mux->streamheader set to NULL in mpegtsmux_reset() before it's released
later in the same function.
Added a unit test: test_multiple_state_change
https://bugzilla.gnome.org/show_bug.cgi?id=689107
2012-11-27 19:00:25 +00:00
Krzysztof Konopko
76b8e8be51
mpegtsmux: propagate flow returns
...
And add a unit test.
https://bugzilla.gnome.org/show_bug.cgi?id=688870
2012-11-23 00:14:53 +00:00
Tim-Philipp Müller
c6343ae5b5
hlssink: add doc chunk with example command line
2012-11-20 23:20:38 +00:00
Thibault Saunier
d53a447731
mpeg4videoparse: Fix nitpick
2012-11-15 11:40:05 -03:00
Thibault Saunier
daed78039e
mpeg4videoparse: Make sure pad template caps are not fixed from the begging
...
Right now decodebin will concider the pad template caps as fixed and if a decoder
has restriction on for example height/width it won't be autoplugged because
gst_caps_is_subset fails as those fields are missing from the pad template caps.
We fix the issue here making sure that the pad caps are fixed using data from
the stream.
2012-11-15 10:45:53 -03:00
Josep Torra
3d012665f0
tsdemux: forward upstream time segments after flushes
...
Also reset segment info and drop the segment event when demuxer is
flushed.
Restore demuxer segment with the info stored in base when demuxer is
going to push data again if needed.
Drop code to recover the segment info from base in the initial program
becauses it's superseded by the new code.
2012-11-14 22:51:35 +01:00
Tim-Philipp Müller
9f7e7d305d
gst_adapter_prev_timestamp -> gst_adapter_prev_pts
2012-11-14 12:41:27 +00:00
Tim-Philipp Müller
3abce95e61
hls: dist all header files needed to build
2012-11-14 11:35:23 +00:00
Tim-Philipp Müller
acd20a7960
accurip: fix linker flags
...
Spotted by Rico Tzschichholz.
2012-11-14 10:46:55 +00:00
Josep Torra
0b3e0ed080
tsdemux: reset the stream some more in the flushes
...
Now that we handle flushing in the FLUSH_STOP event we need to make
the streams ready if they were flushing.
2012-11-12 22:57:19 +01:00
Josep Torra
150376efe4
mpegtspacketizer: flush observations too
...
Flush the previous observations when the packetizer is flushed.
Also don't leak them in the dispose.
2012-11-12 22:57:19 +01:00
Josep Torra
1fc5fffe08
mpegtsbase: fix double unref of seek event
2012-11-12 22:57:19 +01:00
Josep Torra
cc40d49bed
mpegtsbase: flush in FLUSH_STOP to avoid race conditions
...
Ensure the chain is not running before reset the state to avoid race
conditions and random corruptions downstream.
Also fixes segfaults in the packetizer due wrong available values that
causes gst_adapter_map to return a NULL pointer.
2012-11-12 22:57:19 +01:00
Josep Torra
996da425a9
Revert "tspacketizer: ensure that a null pointer isn't accessed"
...
This reverts commit 6efd611b8c
.
Also this extra check won't be needed if it's fixed the race by moving
flush actions to FLUSH_STOP.
2012-11-10 19:52:46 +01:00
Josep Torra
80dd130fb0
Revert "tsbase: add a guard with an atomic boolean when flushing"
...
This reverts commit e14e310f71
.
Would be better move the packetizer flushing to FLUSH_STOP and avoid
the race that way. Without introducing a memory barrier that could
have impact in the performance.
2012-11-10 19:46:40 +01:00
Alessandro Decina
51c4f255be
hlssink: remove vim .swp files that I just committed accidentally...
2012-11-10 14:43:17 +01:00
Alessandro Decina
48431d76e6
hlssink: port to 1.0
2012-11-10 14:40:50 +01:00
Alessandro Decina
8cc1400488
hlssink: cut segments using the running-time
2012-11-10 14:40:50 +01:00
Alessandro Decina
b9018b2870
hlssink: don't unref ->multifilesink.
...
We gst_bin_add it to ourself so no need to unref in _dispose.
2012-11-10 14:40:50 +01:00
Alessandro Decina
b46886643b
hlssink: rework _reset a bit
2012-11-10 14:40:38 +01:00
Josep Torra
e14e310f71
tsbase: add a guard with an atomic boolean when flushing
2012-11-10 00:08:35 +01:00
Josep Torra
6efd611b8c
tspacketizer: ensure that a null pointer isn't accessed
...
Mitigates segfault due race condition in FLUSH_START handling and
mpegts_base_chain.
2012-11-09 22:17:11 +01:00
Edward Hervey
651203de07
mpegts: Only use timestamp-based PCR/PTS estimation when needed
...
When dealing with non-time based push-mode streams, we need to revert
to using the offset-based PCR/PTS estimation logic of packetizer.
This solves uses cases such as:
pushfile:// ! tsdemux
src ! queue ! tsdemux
https://bugzilla.gnome.org/show_bug.cgi?id=687178
2012-11-09 12:15:24 +01:00
Kevin Thornberry
c2d4c0da5e
mpegtsmux: fix DTS value being used for PTS
...
https://bugzilla.gnome.org/show_bug.cgi?id=687806
2012-11-07 20:34:38 +00:00
Thibault Saunier
b3abd51656
h264parse: don't rewind to the NAL length size in bytewriter if the format is bytestream
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=687548
Signed-off-by: Kevin Thornberry
2012-11-06 12:44:29 -03:00
Thibault Saunier
72933e3929
h264parse: Actually add PPS data to the output buffer
2012-11-06 11:54:39 -03:00
Will Thompson
b4bf05b32e
hlssink: add a playlist-length property
...
Probably not particularly useful in general, but handy
to cut down the latency on a stream.
https://bugzilla.gnome.org/show_bug.cgi?id=687133
2012-11-05 12:50:11 +00:00
Luciana Fujii Pontello
40325be3a4
hlssink: reset when going to NULL state
...
https://bugzilla.gnome.org/show_bug.cgi?id=687133
2012-11-05 12:50:07 +00:00
Luciana Fujii Pontello
dda3106650
hlssink: Fix segment names on playlist
...
When the playlist-root is not set, the segment name must not be
appended by the path.
https://bugzilla.gnome.org/show_bug.cgi?id=687133
2012-11-05 12:50:04 +00:00
Tim-Philipp Müller
9e1b75fda3
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:09:59 +00:00
Sebastian Dröge
6fbf96d3e4
scaletempo: Use a better plugin filename
2012-11-02 13:44:02 +01:00
Tim-Philipp Müller
854626c908
rtpvp8: remove and move to -good
...
https://bugzilla.gnome.org/show_bug.cgi?id=687263
2012-11-01 20:50:56 +00:00
Jan Schmidt
119c27c9b9
tsmux: Slightly reflow collected buffer handler for clarity.
2012-10-30 10:00:08 +11:00
Sebastian Pölsterl
43938bbf54
tsdemux: Fix name of CAT GstStructure
...
The structure previously was assigned the name "pat".
https://bugzilla.gnome.org/show_bug.cgi?id=686948
2012-10-29 13:16:46 +01:00
Tim-Philipp Müller
72353aeb71
docs: add new accurip element to docs
...
https://bugzilla.gnome.org/show_bug.cgi?id=685163
2012-10-28 16:54:07 +00:00
Christophe Fergeau
8c81e39de0
accuraterip: new element for AccurateRip calculation
...
https://bugzilla.gnome.org/show_bug.cgi?id=685163
2012-10-28 16:36:01 +00:00
Michael Smith
0c8a7fa46f
mxf: Port mxfdemux to 1.0
...
Also ports mxfmux to 1.0 to the extent that it compiles, but is 100% untested,
so remains disabled.
Conflicts:
gst/mxf/mxfdemux.c
gst/mxf/mxfmux.c
2012-10-26 13:48:06 -07:00
Mark Nauwelaerts
0d1c7f6ea2
videoparsers: use parsed or upstream fps to set some baseparse parameters
2012-10-25 18:02:38 +02:00
Mark Nauwelaerts
58441bf262
h264parse: extract structure from correct caps
...
... which are known != NULL.
2012-10-25 18:02:38 +02:00
Mark Nauwelaerts
821c8519e0
videoparsers: preserve upstream fps and par
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=660866
2012-10-25 17:07:18 +02:00
Sebastian Dröge
36680b1190
vc1parse: Give vc1parse a rank of NONE for now
2012-10-25 14:05:48 +02:00
Sebastian Dröge
6d5fc5a771
vc1parse: Port to 1.0
2012-10-25 14:05:48 +02:00
Alessandro Decina
00abb674ca
vc1parse: disable BDU parsing until it's more mature
...
Parsing and splitting BDUs seems to trigger a few bugs in
downstream decoders so disable it for now.
2012-10-25 14:05:48 +02:00
Alessandro Decina
d03f5499bd
vc1parse: set duration on output buffers
...
This has the nice side effect of avoiding hanging at EOS with truncated asf
clips.
Conflicts:
gst/videoparsers/gstvc1parse.c
2012-10-25 14:05:48 +02:00
Alessandro Decina
f287dec1a2
vc1parse: workaround for simple/main codec_data being 5 bytes long
...
Sometimes the codec_data buffer for simple/main pushed by asfdemux is 5 bytes
instead of 4. When that happens, codec_data is still valid but it seems to have
one 0x00 trailing byte. Might be a bug in the demuxer, needs more investigation.
2012-10-25 14:05:48 +02:00
Alessandro Decina
8aec23ac05
vc1parse: remove stub stream conversion code
2012-10-25 14:05:48 +02:00
Alessandro Decina
cbecbbe23e
vc1parse: add some more debugging to _renegotiate
2012-10-25 14:05:48 +02:00
Sebastian Dröge
5af8f82ecd
vc1parse: Add VC1 parser plugin
2012-10-25 14:05:48 +02:00
Thijs Vermeir
1d710ad13a
mpegdemux: check base_time before calculating new_start
...
https://bugzilla.gnome.org/show_bug.cgi?id=623387
2012-10-24 12:01:46 +02:00
Sebastian Dröge
df12aae15b
scaletempo: Fix event leak
2012-10-23 14:33:21 +02:00
Sebastian Dröge
7c136f1166
scaletempo: Fix timestamp tracking
2012-10-23 14:32:24 +02:00
Sebastian Dröge
bb0c2d40c4
scaletempo: Implement LATENCY query
2012-10-23 14:20:12 +02:00
Sebastian Dröge
9319b48d24
scaletempo: Store instance private data in the instance struct
...
Getting it over and over again via G_TYPE_INSTANCE_GET_PRIVATE()
is really slow.
2012-10-23 13:39:17 +02:00
Sebastian Dröge
1bafd6191a
hls: Link to $(LIBM) for isfinite()
2012-10-23 10:07:31 +02:00
Tim-Philipp Müller
2c02e25640
subenc: port to 1.0
2012-10-22 11:00:38 +01:00
Jan Schmidt
5888c60570
mpegtsmux: Don't make the same buffer writable twice.
...
Fixes Bug 686327 - mpegtsmux: fix refcount issue with input buffers
2012-10-22 01:41:41 +11:00
Mark Nauwelaerts
88f407bb5b
mpegdemux: forward non-processed dvd events
...
... such as notably dvd-spu-clut-change.
2012-10-19 16:17:45 +02:00
Mark Nauwelaerts
a2b6f46f00
mpegdemux: segment event should be sent before gap event
2012-10-19 16:17:45 +02:00
Tim-Philipp Müller
465374f3c8
tsdemux: fix program packet sequence counter parsing in PES header
2012-10-19 01:05:44 +01:00
Tim-Philipp Müller
10c881b107
tsdemux: fix some inconsequential PES header parsing issues
...
additional_copy_info: need to get rid of the highest
bit, not the lowest one
program_packet_sequence_counter: also need to get rid
of the highest bit instead of multiplying with a random
value
original_stuff_length: want to AND 0x3f to extract the
lowest 6 bits, not multiply by it.
None of these fields are actually used though, so these
should not have caused any issues.
2012-10-19 01:05:34 +01:00
Raimo Järvi
9640669689
tsdemux: Fix parsing P-STD_buffer in PES header
...
https://bugzilla.gnome.org/show_bug.cgi?id=686294
2012-10-19 00:29:40 +01:00
Andoni Morales Alastruey
f768dfd925
tsdemux: fix potential crash dereferencing NULL program pointer
...
https://bugzilla.gnome.org/show_bug.cgi?id=686358
2012-10-18 17:54:41 +01:00
Tim-Philipp Müller
32ba17cd0f
Use gst_element_class_set_static_metadata()
...
where possible. Avoids some string copies. Also re-indent
some stuff. Also some indent fixes here and there.
2012-10-17 17:46:34 +01:00
Sebastian Dröge
5e6783f5af
mpegdemux: Fix unitialized variable compiler warning
2012-10-16 11:38:08 +02:00
Sebastian Dröge
932c7175d3
hlsdemux: And fix another deadlock caused by the update thread not correctly shutting down
...
Conflicts:
gst/hls/gsthlsdemux.c
2012-10-15 11:46:45 +02:00
Sebastian Dröge
477b04a282
hlsdemux: Also hold the mutex before signalling the condition variable
...
Conflicts:
gst/hls/gsturidownloader.c
2012-10-15 11:04:06 +02:00
Sebastian Dröge
113ccb1a53
hlsdemux: Also cancel the downloader before stopping the playlist update task
2012-10-15 10:55:12 +02:00
Sebastian Dröge
b335f5a68e
hlsdemux: Only lock the mutex when it's not locked already
...
Conflicts:
gst/hls/gsthlsdemux.c
2012-10-15 10:39:52 +02:00
Sebastian Dröge
443703a08e
hlsdemux: Fix another race condition by holding the mutex that the condition variable uses
...
Conflicts:
gst/hls/gsthlsdemux.c
2012-10-15 10:38:36 +02:00
Sebastian Dröge
e3f00d6252
hlsdemux: Port some things from the last commits
2012-10-15 09:47:35 +02:00
Sebastian Dröge
4df3fad9e4
hlsdemux: Never ever stop a task from the task function
...
This will deadlock. Also make sure to always post an error message
if required before pausing tasks from the task function.
Should fix another bunch of deadlocks.
Conflicts:
gst/hls/gsthlsdemux.c
2012-10-15 09:45:14 +02:00
Sebastian Dröge
ca57dd81e4
hlsdemux: Fix lots of deadlocks caused by race conditions in the task state handling
2012-10-15 09:44:09 +02:00
Mark Nauwelaerts
953e94ac78
mpegdemux: advance stream time when sending GAP event
2012-10-12 22:35:05 +02:00
Mark Nauwelaerts
c24eb1db9b
mpegdemux: send language info downstream if available
...
... as extracted from dvd event.
2012-10-12 22:35:05 +02:00
Mark Nauwelaerts
f708ab8de9
mpegdemux: remove obsolete struct field
2012-10-12 22:34:56 +02:00
Michael Smith
e3a1e489d2
audioparse: Set framesize and properties correctly when taking format
...
from caps.
2012-10-12 12:29:59 -07:00
Mark Nauwelaerts
ba47769823
mpegdemux: tweak flow return aggregation
2012-10-12 17:51:51 +02:00
Mark Nauwelaerts
a9c0609ae8
mpegdemux: handle upstream TIME segments
2012-10-12 17:03:38 +02:00
Mark Nauwelaerts
69cfbcbd0b
mpegdemux: handle and combine downstream flow return
2012-10-12 17:03:38 +02:00
Mark Nauwelaerts
acc0530f33
mpegdemux: handle new style dvd event
2012-10-12 17:03:38 +02:00
Mark Nauwelaerts
61849aad61
mpegdemux: do not add pad after no-more-pads
2012-10-12 17:03:38 +02:00
Mark Nauwelaerts
44583eae90
mpegdemux: clean up segment sending
...
... to use the src_segment as a basis for the sent segment,
thereby properly conveying accumulated base_time etc.
Also ensure src_segment is only adjusted once, so that
all downstream segments are identical to avoid stream
misalignment.
2012-10-12 17:03:38 +02:00
Mark Nauwelaerts
b8312df0a3
mpegdemux: send GAP event rather than segment updates
2012-10-12 17:03:38 +02:00
Mark Nauwelaerts
20cd96f5c3
mpegdemux: refactor segment sending
2012-10-12 17:03:37 +02:00
Mark Nauwelaerts
aca6237b3e
mpegdemux: refactor init and reset
2012-10-12 17:03:37 +02:00
Mark Nauwelaerts
08d2fff2fd
mpegdemux: no more segment closing in 1.0
2012-10-12 16:48:54 +02:00
Mark Nauwelaerts
ab337317fa
mpegdemux: clean up some debug statements
2012-10-12 16:48:54 +02:00
Sebastian Dröge
e5eceaaa73
mpegtsdemux: First push EOS, then destroy all programs
...
And also properly remove the program from the subclass
2012-10-12 15:38:44 +02:00
Sebastian Dröge
80a3a014f5
hlsdemux: Fix invalid read
2012-10-12 15:09:07 +02:00
Sreerenj Balachandran
0b5fde7ed8
mpegvideoparse: signal interlacing properly in video caps
...
The field is called "interlace-mode" mode now and is a string.
https://bugzilla.gnome.org/show_bug.cgi?id=685895
2012-10-10 16:56:38 +01:00
Wim Taymans
380b23af90
replace some playbin2 -> playbin
2012-10-10 14:14:43 +02:00
Mark Nauwelaerts
a17b1f4c91
mpeg4videoparse: reset frame parser after parsing caps codec data
...
... so as to arrange for a proper fresh state upon first frame.
2012-10-10 09:59:46 +02:00
Michael Smith
080677beef
audioparse: add a mode where the caps are taken from the sink pad, and thus audioparse
...
is only performing timestamping.
2012-10-09 23:00:14 -07:00
Michael Smith
2a18cf41a8
mpegvideoparse: reset frame parser after parsing codec_data buffer in caps, to
...
avoid not correctly parsing the full first frame.
2012-10-09 21:19:15 -07:00
Mark Nauwelaerts
8596e8d5da
mpeg4videoparse: properly mark config data presence
...
... which we allow to start at VisualObjectSequence or
at VideoObject.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=685709
2012-10-09 13:59:38 +02:00
Sebastian Dröge
12add5d529
fieldanalysis: Fix unitiailized variable compiler warning
...
And also use the pad's default event function instead
of just pushing to the peerpad. This makes sure any
default handling of events is called.
2012-10-08 12:38:20 +02:00
Sebastian Dröge
4570e8bec8
rtpvp8: Also commit remaining uncommitted changes...
2012-10-03 17:23:01 +02:00
Andoni Morales Alastruey
a423788940
rtpvp8: redifine vp8_norm to avoid duplicated symbols in static links with libvpx
2012-10-03 12:08:15 +02:00
Andoni Morales Alastruey
4d13feda83
videoparsers: fix duplicated symbols for static links with libschroedinger
2012-10-03 12:07:08 +02:00
Rob Clark
4dc648d343
dvdspu: add YV12 and NV12 support
...
https://bugzilla.gnome.org/show_bug.cgi?id=667220
Conflicts:
gst/dvdspu/gstdvdspu.c
gst/dvdspu/gstdvdspu.h
gst/dvdspu/gstspu-pgs.c
gst/dvdspu/gstspu-vobsub-render.c
2012-10-03 03:35:51 +10:00
Tim-Philipp Müller
f1f7171aa9
frei0r: fix plugin loading for frei0r elements that have no info.explanation
...
We don't allow empty descriptions for elements any more.
2012-09-29 13:22:34 +01:00
Nicolas Dufresne
9a2735a063
frei0r: Port to 1.0
...
https://bugzilla.gnome.org/show_bug.cgi?id=681678
2012-09-28 15:24:45 -04:00
Thiago Santos
8c8d1a0b6b
wrappercamerabinsrc: change video-source if the user requested
...
When going from null to ready, check if the user requested to
use a new source and replace the current one.
Fixes #681562
2012-09-28 00:13:32 -03:00
Thiago Santos
c6fd3b070b
wrappercamerabinsrc: pad probe ids are gulong
...
Change variable to the correct type
2012-09-27 23:22:37 -03:00
Thiago Santos
efd14946fd
camerabin: use correct element name when replacing the video filter
...
The name was updated on the 0.10 -> 1.0 transition, but the
gst_bin_remove was still using the old name, causing an assertion
when replacing video-source-filter
https://bugzilla.gnome.org/show_bug.cgi?id=681564
2012-09-27 19:42:02 -03:00
Robert Swain
a5e92acee9
fieldanalysis: Port to 1.0
...
I was also vaguely forced to overhaul some bits and pieces and mess with
the data structures. This was mostly due to caps not being part of
buffers and so I had to switch to using GstVideoFrame and GstVideoInfo.
2012-09-25 11:07:09 +02:00
Olivier Crête
fbdf5eb6dc
rtpdtmfdepay: Use 1.0-style caps negotiation and audio/x-raw
2012-09-22 15:00:27 -04:00
Tim-Philipp Müller
aeafab4bf0
intersubsrc: disable timestamping code that doesn't make sense
...
and which breaks the states check because we end up trying to
divide by 0.
2012-09-20 00:08:56 +01:00
Mark Nauwelaerts
7cf43c7b93
y4mdec: init videoinfo
2012-09-18 13:19:37 +02:00
Tim-Philipp Müller
591f6355e5
freeze: remove freeze element, was replaced by imagefreeze in -good years ago
2012-09-17 17:15:46 +01:00
Mark Nauwelaerts
5fad6e86d7
use gst_element_factory_get_metadata to replace obsolete API
2012-09-15 19:13:47 +02:00
Mark Nauwelaerts
5431286b2a
replace _get_caps_reffed with _get_caps
2012-09-14 17:55:05 +02:00
Mark Nauwelaerts
578861abea
replace gst_element_class_set_details_simple with gst_element_class_set_metadata
2012-09-14 17:27:49 +02:00
Mark Nauwelaerts
f2191d403c
h264parse: init pps and sps structures before parsing
...
... which arranges for a valid fallback id, and allows to continue best effort
processing even when sps/pps parsing fails.
2012-09-14 17:27:49 +02:00
Peter Seiderer
a0d88d5ff5
gsth264parse: add comment where return should be checked.
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683264
2012-09-14 17:27:49 +02:00
Wim Taymans
147654a2b8
rename some caps
2012-09-14 16:49:24 +02:00
Wim Taymans
b8f913555d
ffmpegcolorspace is no more
2012-09-14 16:45:34 +02:00
Wim Taymans
0d8f8a5134
rename some caps and elements in examples
2012-09-14 16:29:23 +02:00
Arnaud Vrac
744bd3d3f2
mpeg4videoparse: use previously parsed visual object when parsing VOL
...
https://bugzilla.gnome.org/show_bug.cgi?id=683254
2012-09-14 09:14:27 +02:00
Arnaud Vrac
207a76daea
mpeg4videoparse: do not skip user data
...
User data was skipped until now, so the user data was included when
parsing the previous packet and in the config buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=683254
2012-09-14 09:14:23 +02:00
Olivier Crête
aa23ea6fca
interaudiosrc: Make caps writable in fixate
2012-09-13 15:51:02 -04:00
Olivier Crête
b1fcf14da5
inter: Port to 1.0 API
...
Also remove a lot of empty, non-implemented methods
2012-09-13 15:32:50 -04:00
Jan Schmidt
b7d63d3fb1
videoparsers: Disable PTS interpolation in the base parse class
...
All these formats have re-ordered PTS which the base class gets
wrong. It's better to leave them blank and let the decoder sort it
out. Better yet would be to track and interpolate the timestamps
in the subclasses (FIXME)
2012-09-12 23:05:47 -07:00
Jan Schmidt
8d5c1be312
dvdspu: Advance video stream with gap events.
...
Handle Gap events the way we used to handle segment updates
and advance/fill in the video stream accordingly. Fixes
'still' menus which aren't DVD still frames, but are just a
single frame with accompanying audio.
2012-09-12 23:05:47 -07:00
Jan Schmidt
c5c44628fc
mpegvideoparse: Handle Sequence Display Extension
...
Change the way the pixel-aspect-ratio is computed by
interpreting the sequence header aspect ratio info
as MPEG-1 values until a sequence extension or
sequence display extension is seen, and then updating
the sequence header struct accordingly.
Fixes incorrect anamorphic display on some MPEG-2 (DVD)
sequences.
2012-09-12 23:05:47 -07:00
Tim-Philipp Müller
b5581cd0a4
segmentclip: fix wrong pad template unref
...
Blows up when trying to instantiate a second clip element
of the same type, like in the generic/states unit test.
2012-09-13 01:26:28 +01:00
Tim-Philipp Müller
871f7e0450
siren: init debug category before logging anything
2012-09-13 00:59:33 +01:00
Olivier Crête
6a66ebf784
pnm: Port to 1.0 API
2012-09-12 18:35:04 -04:00
Olivier Crête
bfb56f8380
freeze: Use a GPtrArray instead of a GQueue
...
This way, the most common function (changing buffers) becomes O(1) instead
of O(n)
2012-09-12 17:34:03 -04:00
Olivier Crête
e23e3d6b64
freeze: Port to 1.0 API
2012-09-12 17:24:26 -04:00
Olivier Crête
ab24971a81
speed: Various 1.0 style additions
...
Use GstAudioInfo everywhere, etc
2012-09-12 16:26:19 -04:00
Sreerenj Balachandran
98ffddb0f8
speed: port to 0.11
...
https://bugzilla.gnome.org/show_bug.cgi?id=683727
2012-09-12 16:06:44 -04:00
Olivier Crête
5111a6ed20
liveadder: port to 1.0 API
2012-09-12 16:03:13 -04:00
Stefan Sauer
27cd08ad95
collectpads: remove gst_collect_pads_add_pad_full
...
Rename gst_collect_pads_add_pad_full() to gst_collect_pads_add_pad() and fix all
invocations.
2012-09-12 21:13:35 +02:00
Olivier Crête
f207edfc44
siren: Port to 1.0 API
2012-09-12 12:14:53 -04:00
Edward Hervey
56ef4054ee
dvbsuboverlay: Use default query handlers where needed
...
And fixup getcaps handler while I'm at it
2012-09-12 15:17:56 +02:00
Thiago Santos
8a8baa6a70
camerabin: port tagsetter mode setting code
...
Check directly with GST_IS_TAG_SETTER instead of using the
deprecated GstImplementsInterface
Fixes the image tag setting unit test
2012-09-12 09:48:32 -03:00
Gwenole Beauchesne
2c3eaf527b
codecparsers: h264parse: don't use anonymous unions.
...
Anonymous union is an ISO C (2011) feature that is not exposed in
compilers strictly conforming to the previous standard.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2012-09-12 10:39:32 +01:00
Peter Korsgaard
b04e61d8a4
opus + jpegformat: unbreak non-debug build
...
opus + jpegformat plugin builds fail when gstreamer is configured with
--disable-gst-debug as they are checking the GST_DISABLE_DEBUG symbol
instead of GST_DISABLE_GST_DEBUG.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
https://bugzilla.gnome.org/show_bug.cgi?id=683850
2012-09-12 09:13:30 +01:00
Tim-Philipp Müller
3bb23a5e98
jpegformat: don't link to libgstinterfaces which doesn't exist any longer
2012-09-12 01:37:06 +01:00
Olivier Crête
77d4a59969
audiovisualizer: Don't try to sync controller values to invalid timestamp
2012-09-11 19:41:31 -04:00
Olivier Crête
1826c126bf
jpegparse: Finish port to 1.0 API
2012-09-11 19:36:24 -04:00
Olivier Crête
977f84d272
autoconvert: Look at all possibilities for accept-caps even if there is a selected subelement
...
If the accept-caps succeeds with a different subelement, then the subsequent
caps event will change the current subelement.
2012-09-11 18:53:43 -04:00
Mark Nauwelaerts
b807753453
ext, gst: only activate in pull mode if upstream is seekable
2012-09-11 17:47:33 +02:00
Tim-Philipp Müller
3f0a844f9d
festival: timed text is text/x-raw now
2012-09-11 15:08:49 +01:00
Tim-Philipp Müller
2c5138dd76
gdp: dump bytes into debug log using GST_MEMDUMP
...
Instead of home-grown solution.
2012-09-11 01:54:46 +01:00
Wim Taymans
ed451b1cd7
update for new variable names
2012-09-11 01:54:46 +01:00
Mark Nauwelaerts
712c63af44
gdppay: plug buffer leak
2012-09-11 01:54:46 +01:00
Tim-Philipp Müller
b928640b5e
Use new gst_element_class_set_static_metadata()
2012-09-11 01:54:45 +01:00
Sebastian Dröge
ca7c2af1c4
gst: Update for GST_PLUGIN_DEFINE() API change
2012-09-11 01:54:45 +01:00
Wim Taymans
946dbd38d8
Improve buffer allocation of wrapped memory
2012-09-11 01:54:45 +01:00
Wim Taymans
f12af88f4a
update for buffer api change
2012-09-11 01:54:45 +01:00
Wim Taymans
e817295aef
update for buffer changes
2012-09-11 01:54:44 +01:00
Wim Taymans
38abb4a497
update for memory api changes
2012-09-11 01:54:44 +01:00
Wim Taymans
4ae0b5eb48
update for new memory api
2012-09-11 01:54:44 +01:00
Wim Taymans
30b45304e4
gdppay: fixup for changed caps
...
Try to send the streamheader after the first buffer.
2012-09-11 01:54:44 +01:00
Wim Taymans
66fb9166a4
dataprotocol: don't define default Category
...
Since we now include this into the unit tests directly, don't define the default
category macro because it conflicts with check.
2012-09-11 01:54:44 +01:00
Wim Taymans
f6cab316cc
update for HEADER flag changes
2012-09-11 01:54:44 +01:00
Wim Taymans
33344dc2b9
port to new map API
2012-09-11 01:54:44 +01:00
Tim-Philipp Müller
2d7150414b
gdp: move dataprotocol library into gdp plugin and make private
...
We have removed things like protocol=gdp in the tcp elements
in favour of explicit gdppay/depay elements, so there's no need
to keep a public API and library for now. We can still add it
back later. Someone needs to think hard about 0.11 and gdp
anyway one of these days.
2012-09-11 01:54:43 +01:00
Wim Taymans
d67bdd8375
gdp: fix header files
...
Ensure correct indentation and retab
Make sure all structure have padding
2012-09-11 01:54:41 +01:00
Wim Taymans
3bd55502a1
gdp: rename buffer PREROLL -> LIVE flag
...
Rename the GST_BUFFER_FLAG_PREROLL to GST_BUFFER_FLAG_LIVE and give the new flag
a meaning. The old PREROLL flag never had a clear meaning.
2012-09-11 01:54:41 +01:00
Wim Taymans
615063ba5e
gdp: make new _buffer_allocate method
...
Make a new method to allocate a buffer + memory that takes the allocator and the
alignment as parameters. Provide a macro for the old method but prefer to use
the new method to encourage plugins to negotiate the allocator properly.
2012-09-11 01:54:41 +01:00
Wim Taymans
1136224e91
gdp: Rework GstSegment handling
...
Improve GstSegment, rename some fields. The idea is to have the GstSegment
structure represent the timing structure of the buffers as they are generated by
the source or demuxer element.
gst_segment_set_seek() -> gst_segment_do_seek()
Rename the NEWSEGMENT event to SEGMENT.
Make parsing of the SEGMENT event into a GstSegment structure.
Pass a GstSegment structure when making a new SEGMENT event. This allows us to
pass the timing info directly to the next element. No accumulation is needed in
the receiving element, all the info is inside the element.
Remove gst_segment_set_newsegment(): This function as used to accumulate
segments received from upstream, which is now not needed anymore because the
segment event contains the complete timing information.
2012-09-11 01:54:41 +01:00
Wim Taymans
b4305c56f5
gdp: Hide the GstStructure in GstEvent
...
Hide the GstStructure of the event in the implementation specific part so that
we can change it.
Add methods to check and make the event writable.
Add a new method to get a writable GstStructure of the element.
Avoid directly accising the event structure.
2012-09-11 01:54:41 +01:00
Stefan Kost
536f51cf98
gdp: add docs for GstDPPacketizer
2012-09-11 01:54:41 +01:00
Wim Taymans
7ec4633cef
gdp: port code to new buffer data API
2012-09-11 01:54:41 +01:00
Wim Taymans
c25051cb01
gdp: remove deprecated code
2012-09-11 01:54:41 +01:00
Tim-Philipp Müller
2c9ac5a4c9
gdp: make public enum _get_type() functions thread-safe
...
Not that it is likely to matter in practice, but since these are public
API they should probably be thread-safe.
2012-09-11 01:54:40 +01:00
Tim-Philipp Müller
dbbbe59577
gdp: dataprotocol, lfocontrolsource: fix enum value name in enums that are public API
...
So run-time bindings can introspect the names correctly (we abuse this
field as description field only in elements, not for public API
(where the description belongs into the gtk-doc chunk).
https://bugzilla.gnome.org/show_bug.cgi?id=629946
2012-09-11 01:54:40 +01:00
Benjamin Otte
a7078b74fb
gdp: Fixes for -Wmissing-declarations -Wmissing-prototypes
...
Also adds those flags to the configure warning flags
https://bugzilla.gnome.org/show_bug.cgi?id=611692
2012-09-11 01:54:39 +01:00
Benjamin Otte
b2314491b1
gdp: Make code safe for -Wredundant-decls
...
Adds that warning to configure.ac
Includes a tiny change of the GST_BOILERPLATE_FULL() macro:
The get_type() function is no longer declared before being defined.
https://bugzilla.gnome.org/show_bug.cgi?id=611692
2012-09-11 01:54:39 +01:00
Stefan Kost
c1574cfbd1
gdp: fix broken xrefs in docs
2012-09-11 01:54:39 +01:00
Sebastian Dröge
1774354a3a
gdp: Don't write to the same region of memory as a uint64 and uint16 as this breaks ...
...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c:
Don't write to the same region of memory as a uint64 and uint16
as this breaks strict aliasing rules and apparantly breaks on PPC
and s390. Thanks to Sjoerd Simons for analysing. Fixes bug #348114 .
2012-09-11 01:54:39 +01:00
Michael Smith
458f65fbba
gdp: When calculating GDP body CRC, use the correct pointer.
...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_packet_from_event_1_0):
When calculating GDP body CRC, use the correct pointer.
Fixes part of #522401 .
2012-09-11 01:54:39 +01:00
Sebastian Dröge
90af674a5f
gdp: Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static...
...
Original commit message from CVS:
* gst/gstconfig.h.in:
* libs/gst/base/gstcollectpads.c: (gst_collect_pads_read_buffer):
* libs/gst/check/gstcheck.c: (gst_check_log_message_func),
(gst_check_log_critical_func), (gst_check_drop_buffers),
(gst_check_element_push_buffer_list):
* libs/gst/controller/gstcontroller.c: (gst_controller_get),
(gst_controller_get_type):
* libs/gst/controller/gsthelper.c: (gst_object_control_properties),
(gst_object_get_controller), (gst_object_get_control_source):
* libs/gst/controller/gstinterpolationcontrolsource.c:
(gst_interpolation_control_source_new):
* libs/gst/controller/gstlfocontrolsource.c:
(gst_lfo_control_source_new):
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_event_from_packet_0_2):
* plugins/elements/gstfdsrc.c:
* plugins/elements/gstmultiqueue.c:
* plugins/elements/gsttee.c:
* plugins/elements/gsttypefindelement.c:
* plugins/indexers/gstfileindex.c: (_file_index_id_save_xml),
(gst_file_index_add_association):
* plugins/indexers/gstmemindex.c:
* tests/benchmarks/gstpollstress.c: (mess_some_more):
* tests/check/elements/queue.c: (setup_queue):
* tests/check/gst/gstpipeline.c:
* tests/check/libs/collectpads.c: (setup), (teardown),
(gst_collect_pads_suite):
* tests/examples/adapter/adapter_test.c:
* tests/examples/metadata/read-metadata.c: (make_pipeline):
* tests/examples/xml/createxml.c:
* tests/examples/xml/runxml.c:
* tools/gst-inspect.c:
* tools/gst-run.c:
Correct all relevant warnings found by the sparse semantic code
analyzer. This include marking several symbols static, using
NULL instead of 0 for pointers, not using variable sized arrays
on the stack, moving variable declarations to the beginning of
a block and using "foo (void)" instead of "foo ()" for declarations.
2012-09-11 01:54:39 +01:00
Damien Lespiau
c0362d43ab
gdp: Fix empty prototypes. Fixes bug #507957 .
...
Original commit message from CVS:
Patch by: Damien Lespiau <damien.lespiau@gmail.com>
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gstcontrolsource.h:
* libs/gst/controller/gstinterpolationcontrolsource.h:
* libs/gst/controller/gstlfocontrolsource.h:
* libs/gst/dataprotocol/dataprotocol.h:
Fix empty prototypes. Fixes bug #507957 .
2012-09-11 01:54:39 +01:00
Tim-Philipp Müller
8941bdd4ee
gdp: g_type_class_ref() other types as well, see #349410 and #64764 .
...
Original commit message from CVS:
* gst/gst.c: (init_post):
* gst/gstevent.c: (_gst_event_initialize):
* gst/gstquery.c: (_gst_query_initialize):
* libs/gst/dataprotocol/dataprotocol.c (gst_dp_init):
g_type_class_ref() other types as well, see #349410 and #64764 .
* gst/gstbuffer.c: (_gst_buffer_initialize):
* gst/gstmessage.c: (_gst_message_initialize):
Simplify existing g_type_class_ref().
2012-09-11 01:54:39 +01:00
Tim-Philipp Müller
328677c684
gdp: Printf fixes.
...
Original commit message from CVS:
* gst/gstpad.c: (pre_activate):
* gst/gstregistry.c: (gst_registry_scan_path_level):
* gst/gstregistryxml.c: (load_plugin):
* libs/gst/controller/gstcontroller.c:
(gst_controlled_property_set_interpolation_mode):
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_packet_from_event_1_0):
* libs/gst/net/gstnetclientclock.c:
(gst_net_client_clock_observe_times):
* plugins/elements/gstfdsrc.c: (gst_fd_src_create):
Printf fixes.
2012-09-11 01:54:39 +01:00
Andy Wingo
a03185f5f2
gdp: GST_DISABLE_DEPRECATED is only for users of API that don't want to see deprecated functions in the headers; people th...
...
Original commit message from CVS:
2006-08-11 Andy Wingo <wingo@pobox.com>
* configure.ac:
* libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packetizer_new):
* tests/check/libs/gdp.c: (gst_dp_suite): GST_DISABLE_DEPRECATED
is only for users of API that don't want to see deprecated
functions in the headers; people that want to compile out
deprecated code should pass -DGST_REMOVE_DEPRECATED into the
CFLAGS. Fixes the build of multifdsink, or will soon..
2012-09-11 01:54:39 +01:00
Stefan Kost
562a1bbdd6
gdp: add gst_object_{s,g}et_control_rate(), add private data section, fix docs
...
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* libs/gst/controller/gstcontroller.c:
(_gst_controller_get_property), (_gst_controller_set_property),
(_gst_controller_init), (_gst_controller_class_init):
* libs/gst/controller/gstcontroller.h:
* libs/gst/controller/gsthelper.c: (gst_object_get_control_rate),
(gst_object_set_control_rate):
API: add gst_object_{s,g}et_control_rate(), add private data section,
fix docs
* libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packetizer_new):
* libs/gst/dataprotocol/dataprotocol.h:
add deprecation guards to make gtk-doc happy and allow disabling cruft
2012-09-11 01:54:38 +01:00
Wim Taymans
ae5528c28f
gdp: Make debug category static
...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any),
(gst_dp_crc), (gst_dp_header_payload_length),
(gst_dp_header_payload_type), (gst_dp_packet_from_event),
(gst_dp_packet_from_event_1_0), (gst_dp_buffer_from_header),
(gst_dp_caps_from_packet), (gst_dp_event_from_packet_0_2),
(gst_dp_event_from_packet), (gst_dp_validate_header),
(gst_dp_validate_payload):
Make debug category static
Constify the crc table.
Do some more arg checking in public functions.
Fix some docs and do some small cleanups.
* tests/check/libs/gdp.c: (GST_START_TEST), (gst_dp_suite):
Add some more checks to see if GDP deals with bogus input.
2012-09-11 01:54:38 +01:00
Thomas Vander Stichele
93b60df9ac
gdp: fix failure to deserialize event packets with empty payload (only ev...
...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_event_from_packet_1_0):
Fixes #347337 : failure to deserialize event packets with
empty payload (only event type)
2012-09-11 01:54:38 +01:00
Thomas Vander Stichele
499736b709
gdp: add a gdp image to the docs
...
Original commit message from CVS:
* docs/README:
* docs/images/gdp-header.svg:
add a gdp image
* docs/libs/Makefile.am:
* docs/libs/gdp-header.png:
* libs/gst/dataprotocol/dataprotocol.c:
add it to the API docs
* docs/manual/intro-motivation.xml:
fix typo
2012-09-11 01:54:38 +01:00
Thomas Vander Stichele
2c9aa80caa
gdp: add note to docs about GDP versioning; remove tmpl file
...
Original commit message from CVS:
add note to docs about GDP versioning; remove tmpl file
2012-09-11 01:54:38 +01:00
Thomas Vander Stichele
84bbfbecc4
gdp: add a GstDPPacketizer object, and create/free functions
...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any),
(gst_dp_version_get_type), (gst_dp_init),
(gst_dp_header_from_buffer), (gst_dp_header_from_buffer_1_0),
(gst_dp_packet_from_caps), (gst_dp_packet_from_caps_1_0),
(gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0),
(gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet_1_0),
(gst_dp_event_from_packet), (gst_dp_packetizer_new),
(gst_dp_packetizer_free):
* libs/gst/dataprotocol/dataprotocol.h:
API: add a GstDPPacketizer object, and create/free functions
API: add GstDPVersion enum
Add 1.0 event function that uses the string serialization
Serialize more useful buffer flags
Fixes #343988
2012-09-11 01:54:38 +01:00
Thomas Vander Stichele
19ea4af5b3
gdp: factor out CRC code
...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
(gst_dp_packet_from_event):
factor out CRC code
2012-09-11 01:54:38 +01:00
Thomas Vander Stichele
10d21bc171
gdp: factor out some common header init code
...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
(gst_dp_packet_from_event):
factor out some common header init code
2012-09-11 01:54:38 +01:00
Thomas Vander Stichele
849da00210
gdp: make gst_dp_crc() public
...
Original commit message from CVS:
* docs/libs/gstreamer-libs-sections.txt:
* docs/libs/tmpl/gstdataprotocol.sgml:
* libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
* libs/gst/dataprotocol/dataprotocol.h:
API: make gst_dp_crc() public
2012-09-11 01:54:38 +01:00
Thomas Vander Stichele
25b5f08745
gdp: make sure we zero the whole ABI-compatible area
...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_header_from_buffer):
make sure we zero the whole ABI-compatible area
2012-09-11 01:54:38 +01:00
Thomas Vander Stichele
c1b82e3cda
gdp: whitespace, comment, doc fixup
...
Original commit message from CVS:
whitespace, comment, doc fixup
2012-09-11 01:54:38 +01:00
Michael Smith
1c7fae3d5d
gdp: Fixes in reading/writing events over GDP (not currently used?) - dereferencing ...
...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
(gst_dp_event_from_packet):
Fixes in reading/writing events over GDP (not currently used?) -
dereferencing NULL events for unknown/invalid event types, memory
leak, and change g_warning to GST_WARNING.
2012-09-11 01:54:38 +01:00
Michael Smith
cfcef37b4f
gdp: Fix docs for dataprocotol to not get the return types completely wrong for a fe...
...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c:
Fix docs for dataprocotol to not get the return types completely
wrong for a few functions.
2012-09-11 01:54:38 +01:00
Wim Taymans
fc5ec74824
gdp: Documentation updates.
...
Original commit message from CVS:
* libs/gst/base/gstadapter.c:
* libs/gst/base/gstadapter.h:
* libs/gst/base/gstbasesink.c: (gst_base_sink_class_init),
(gst_base_sink_get_position):
* libs/gst/base/gstbasesink.h:
* libs/gst/base/gstbasesrc.c: (gst_base_src_class_init),
(gst_base_src_default_query), (gst_base_src_default_do_seek),
(gst_base_src_do_seek), (gst_base_src_perform_seek),
(gst_base_src_send_event), (gst_base_src_update_length),
(gst_base_src_get_range), (gst_base_src_loop),
(gst_base_src_start):
* libs/gst/base/gstbasesrc.h:
* libs/gst/base/gstbasetransform.h:
* libs/gst/base/gstcollectpads.h:
* libs/gst/base/gstpushsrc.c:
* libs/gst/base/gstpushsrc.h:
* libs/gst/dataprotocol/dataprotocol.c:
* libs/gst/dataprotocol/dataprotocol.h:
* libs/gst/net/gstnetclientclock.h:
* libs/gst/net/gstnettimeprovider.h:
Documentation updates.
2012-09-11 01:54:38 +01:00
Andy Wingo
7e0a99936d
gdp: Fix Timmeke Waymans bug.
...
Original commit message from CVS:
2005-10-13 Andy Wingo <wingo@pobox.com>
* libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps):
Fix Timmeke Waymans bug.
(gst_dp_caps_from_packet): Make sure we pass a NUL-terminated
string of the proper length to gst_caps_from_string. There's a
potential for, before this fix, that this could cause someone
connecting over the network to cause a segfault if the payload is
not NUL-terminated.
2012-09-11 01:54:37 +01:00