Edward Hervey
1c96c79b88
mpegtsdemux: Handle private section streams
...
Until now we simply ignored those streams (since we couldn't do anything
with it anyway). Now that we have the mpegts library and we offload the
section handling to the application side we can properly identify and
extract them.
By default it is disabled for tsparse and enabled for tsdemux, but there is
a property to change that.
This should open the way to properly handle all private section streams,
including:
* DSM-CC
* MHEG
* Carousel data
* Metadata streams (though I haven't seen any of those in the wild)
* ... And all other specs/protocols making use of those
Partially fixes #560631
2013-07-06 14:50:52 +02:00
Edward Hervey
a3b6b1a951
mpegtsdemux: Handle registration descriptor for programs and streams
...
* Allows us to simplify some code and prepare for future cleanups.
* Remove useless casts
* Add some FIXME regarding VC1
2013-07-06 10:59:54 +02:00
Brendan Long
f53e66f4c6
webvttenc: Separate cues with two line breaks instead of one.
...
See http://dev.w3.org/html5/webvtt/#syntax
https://bugzilla.gnome.org/show_bug.cgi?id=703673
2013-07-05 18:32:43 +01:00
Gwenole Beauchesne
d10acd3879
mpegvideoparse: cope with new parser API.
...
Migrate the code to use the new parser API based on GstMpegVideoPacket.
Also try to optimize gst_mpegv_parse_process_config() by using more of
GstMpegVideoPacket and determining the extension_start_code_identifier
prior to calling the parser function for that extension packet.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-07-05 17:39:28 +02:00
Edward Hervey
9da7551993
mpegtsbase: Remove no-longer needed code
...
Since we now send all sections to the packetizer, we no longer need to do
anymore in-depth checks for the validity of a section.
The choice boils down to:
1) Is it from a known PES pid ? If so pass it on (which might be just pushing
downstream in the case of tsparse, or accumulating PES data for tsdemux)
2) Is it from a known SI pid ? If so pass it to the section packetizer
2013-07-05 17:25:17 +02:00
Edward Hervey
b7bba5658a
mpegtsdemux: Fix compilation with debugging disabling
...
We previously weren't using that variable ...
2013-07-05 10:57:34 +02:00
Edward Hervey
7814ed196b
mpegtsdemux: Switch to using GstMpegTsStreamType
...
We still have some other stream types which haven't been ported, but
we will do so once we have defined the enums in the mpegts library.
Also add some FIXMEs regarding items discovered during analysis
2013-07-04 08:45:32 +02:00
Edward Hervey
1f2bb15618
mpegtsdemux: GstMpegTS => GstMpegTs
2013-07-03 14:00:58 +02:00
Edward Hervey
92edd82c86
mpegtsdemux: Switch to MPEG-TS SI library
...
* Only mpeg-ts section packetization remains.
* Improve code to detect duplicated sections as early as possible
* Add FIXME for various issues that need fixing (but are not regressions)
https://bugzilla.gnome.org/show_bug.cgi?id=702724
2013-07-03 09:17:25 +02:00
Andoni Morales Alastruey
977bf98b44
frei0r: add the build prefix path in the search dirs
2013-06-28 12:40:52 +02:00
Edward Hervey
358a68e65b
mpegdesc: Extend list of known descriptors
...
Add the various ATSC ones
2013-06-24 14:55:28 +02:00
Edward Hervey
26689fc437
mpegtsbase: Only warn for added streams when needed
...
We use add_stream(stream_type:-1) to ensure a programs' PCR Stream is
also taken into account. For most programs this will re-use an
existing ES stream.
So only warn that we are re-adding a stream if it was already present
AND it is not to ensure the PCR stream is taken into account.
2013-06-24 08:24:58 +02:00
Edward Hervey
f9b3b46ab5
mpegtspacketizer: Speed up section parsing
...
Only create subtables when needed. It was previously creating one every
single time ... to check if one was present.
And speed up code to detect whether a subtable was already present or not.
Overall makes section pushing 2 times faster.
2013-06-24 07:49:34 +02:00
Edward Hervey
15e3afc099
mpegdesc: Extend list of known descriptors
...
From ITU-T H222.0 (06/2012). Freely available from itu.int
2013-06-24 07:49:34 +02:00
Edward Hervey
9fd7f1c082
mpegtspacketizer: Speedup packet parsing
...
Avoid using bitshifting where not needed.
Speeds up packet parsing by 3% (this is *the* hotspot of mpeg-ts elements).
2013-06-24 07:49:34 +02:00
Edward Hervey
0592bcc3c9
mpegtspacketizer: Better detect already seen section
...
In some cases (NIT on highly-populated DVB-C operator for example), there
will be more than one section emitted for the same subtable and version
number.
In order not to lose those updates for the same version number, we checked
against the CRC of the previous section we parsed.
The problem is that, while it made sure we didn't lose any information, it
also meant that if the same section came back (same version, same CRC) later
on we would re-process it, re-parse it and re-emit it.
This version improves on that by keeping a list of previously observed CRC
for identical PID/subtable/version-number and will only process sections if
they really were never seen in the past (as opposed to just before).
On a 30s clip, this brings down the number of NIT section parsing from 4541
down to 663.
https://bugzilla.gnome.org/show_bug.cgi?id=614479
2013-06-23 09:06:15 +02:00
Edward Hervey
c0ce94dbf2
mpegtspacketizer: Speed up NIT parsing
...
Avoid duplicating the delivery structure, and instead give it to the
receiving container.
2013-06-19 19:31:12 +02:00
Edward Hervey
40bcf48b0c
mpegtbase: simplify code
...
We don't need generic methods for push/flush since we know all the
subclass that we control
2013-06-19 12:29:47 +02:00
Edward Hervey
79e63e3daf
mpegtsdemux: Fix for compiling without GST_DEBUG
...
Protect debug-only variables/usage, and in one case remove a useless
variable.
2013-06-19 12:29:46 +02:00
Edward Hervey
e66d543f00
tsparse: Ensure initial events are sent in the right order
...
First send stream-start, then caps, then segment.
The segment we push is from upstream in push-mode. If we work in pull-mode
then we initialize the base segment to BYTES.
https://bugzilla.gnome.org/show_bug.cgi?id=702422
2013-06-19 07:40:28 +02:00
Sebastian Dröge
d50625eeb0
mpegvideoparse: Make sure the buffer is writable before we add the MPEG video meta
...
https://bugzilla.gnome.org/show_bug.cgi?id=702174
2013-06-14 14:53:52 +02:00
Arnaud Vrac
a5402d6eeb
tsdemux: fix M2TS stream resync
...
Sync byte scan is incorrect for M2TS streams because the timestamp 4
bytes were not included in the flush size. This can result in an
infinite loop.
Rework the scan code to be clearer and work in all cases.
2013-06-12 08:01:24 +02:00
Arnaud Vrac
065d421d34
tsdemux: move some debug prints at the log level
2013-06-12 08:01:20 +02:00
Josep Torra
28a2902a7b
tsdemux: fixes seeking in pull mode
...
Preserve the current segment and observations in pull mode seeks with
flushing.
https://bugzilla.gnome.org/show_bug.cgi?id=698050
2013-06-12 08:01:06 +02:00
Hans de Goede
28e64d1031
wrappercamerabinsrc: Add video-source-filter during construction
...
By adding the video-source-filter during construction time, rather then
patching it in later (*), we can greatly reduce the amount of caps involved
in negotation, speeding up pipeline creation.
I wrote this while working on speeding up the startup of cheese. My cheese
has been modified to add a capsfilter, filtering for only the configured
resolution, with that cheese patch + this patch, the pipeline creation time
goes from aprox 1.1 seconds to aprox 350ms. This is with a Logitech 9000
pro camera, which supports lots of different resolutions at many different
framerates per resolution, causing a caps "explosion" if not filtered.
*) Note the code for this is left in, as it is still necessary if the
video-source-filter is changed between a stop + re-start.
https://bugzilla.gnome.org/show_bug.cgi?id=701953
2013-06-11 12:47:53 +02:00
Hans de Goede
8dc7fae455
wrappercamerabinsrc: Don't unset the video-source property on pipeline start
...
check_and_replace_src() was setting self->app_vid_src to NULL, which
means that an app setting the video-source property, and then starting,
stopping and re-starting the pipeline (ie to make changes to the
video-source-filter property) would after the restart no longer have
a video-source.
This patch fixes this by making gst_camerabin_setup_default_element return a
ref to the passed in user_element, rather then returning the user_element as
is, so that that ref can be passed on to the bin, and the app_vid_src ref
stays valid.
https://bugzilla.gnome.org/show_bug.cgi?id=701915
2013-06-10 16:16:29 +02:00
Sebastian Dröge
c383dd6420
rfb: Link with libgstbase for GstPushSrc
2013-06-07 15:18:15 +02:00
Alban Browaeys
44b1bc6081
mpegdemux: accept ID_PRIVATE_STREAM_1 to avoid loosing sync
...
Current fallback to lost_sync seems to impede a delay to restore
sync. Let the parser parse and skip the private stream.
Here it contains the digital camera brand (in 2010 bytes)
and is repeated twice.
https://bugzilla.gnome.org/show_bug.cgi?id=697283
2013-06-07 12:57:03 +02:00
Ilya Smelykh
ef0e051e7d
h264parse: Wait until SPS/PPS before outputting any data
...
https://bugzilla.gnome.org/show_bug.cgi?id=646327
2013-06-07 12:10:08 +02:00
Sebastian Dröge
37427ccaef
Release 1.1.1
2013-06-05 18:29:49 +02:00
Edward Hervey
0809770d26
mpegtspacketizer: Fix leak
...
Since we were manually setting GValue to the GValueArray, we also need
to specify how many were set, otherwise all values in the array will
be leaked.
2013-06-05 15:23:18 +02:00
Edward Hervey
877019ae00
mpegtspacketizer: Speedup TDT/TOT parsing
...
Use quarks where needed, makes it 2.5 times faster
2013-06-05 13:39:14 +02:00
Edward Hervey
824f08d1d8
mpegtspacketizer: Fix string leak
...
The description/text get copied in the structure.
2013-06-05 13:21:29 +02:00
Edward Hervey
f3bf40e2b0
mpegtspacketizer: Speed up descriptor parsing/packing
...
descriptors are stored as a GValueArray of GString. The downside is
that there is no way to "pass" ownership of a GValue to a GValueArray
which previously resulted in expensive copy/free of the (already expensive)
GString.
Here we estimate first the size of the GValueArray, then create it,
then directly use the GValue of that array.
Speeds up total SI parsing by ~30%
2013-06-05 12:49:09 +02:00
Edward Hervey
e6f0986b9e
mpegtspacketizer: Use gst_value_list_append_and_take_value
...
Avoids doing the expensive copy of structures/arrays/...
Speeds up parsing SI by about 50%
2013-06-05 12:48:05 +02:00
Edward Hervey
b378b7e9d6
mpegtspacketizer: Avoid copying GValueArray
...
Just give the GValueArray to the container GValue.
2013-06-05 11:27:05 +02:00
Sebastian Dröge
b8cb2b4d79
midiparse: In pull mode drop SEGMENT, CAPS and STREAM_START events
...
We create and send our own later from another thread.
2013-05-28 15:55:25 +02:00
Sebastian Dröge
357779d3c6
midiparse: Push stream-start event before anything else
2013-05-28 15:55:25 +02:00
Stefan Sauer
116f7c0a77
audiochannelmix: fill in the author template
...
The copyright header still contained the author template.
2013-05-26 14:29:54 +02:00
Michael Rubinstein
e6c8224609
mpegtsdemux: Free memory behind GString if we don't use it
...
https://bugzilla.gnome.org/show_bug.cgi?id=700903
2013-05-25 15:49:21 +02:00
Edward Hervey
ce441cbff7
mpegtsbase: Post an error message when EOS'ing without source pads
...
This ensures we don't "hang" when files can't be decoded, or contain
no valid streams.
2013-05-23 14:59:34 +02:00
Edward Hervey
7837cab44e
tsdemux: Demote a warning to debug level
...
We will get it for virtually every first packets.
2013-05-23 14:59:34 +02:00
David Schleef
35018ae632
audiofx: Add plugin, add audiochannelmix
2013-05-18 14:02:18 -07:00
Tim-Philipp Müller
a204ddd225
videosignal: fix CFLAGS order
2013-05-18 12:21:59 +01:00
Sebastian Dröge
f0a1935119
mpegtsmux: Push stream-start event before anything else
2013-05-15 11:38:35 +02:00
Sebastian Dröge
a5ac2d3aee
audiovisualizer: Enable GLib deprecation warnings again
2013-05-15 11:02:29 +02:00
Sebastian Dröge
3d09d0068d
audiovisualizer: Negotiate as soon as possible when getting the sinkpad caps
2013-05-15 11:00:46 +02:00
Sebastian Dröge
3de73279df
asfmux: Send stream-start event
2013-05-15 10:56:20 +02:00
Tim-Philipp Müller
f0039c6dc3
nsf: remove nsf plugin, replaced by gme plugin
...
https://bugzilla.gnome.org/show_bug.cgi?id=648021
2013-05-14 00:14:34 +01:00
David Schleef
e5288a2464
intervideosrc: Fix timestamp generation
2013-05-11 12:07:36 -07:00
Tim-Philipp Müller
146e78ffdb
rfbsrc: post error messages on errors
2013-05-11 19:42:31 +01:00
David Schleef
e79b977fdb
videofilters: Add videodiff element
2013-05-10 17:40:17 -07:00
David Schleef
4b7f0d99f0
y4mdec: set timestamps when restriding buffer
2013-05-10 17:40:17 -07:00
David Schleef
4a88eebe0e
videomark/detect: rename to simplevideomark[detect]
2013-05-10 17:31:10 -07:00
David Schleef
b3ff0630e8
videomark/detect: port to 1.0
2013-05-10 17:31:10 -07:00
Tim-Philipp Müller
4cfa3f5af3
rfbsrc: fix rfbdecoder new/free asymetry and wrong free in error case
...
If rfb_decoder_new() allocates the decoder sructure, rfb_decoder_free()
should free the structure. We should not free the decoder when an
error occurs during connection - it holds lots of configuration/state
and will be freed later in finalize.
2013-05-11 00:36:06 +01:00
Tim-Philipp Müller
14d20271c1
rfbsrc: make authentication handshake safe for multiple instances
...
Move DES key into context struct.
2013-05-11 00:29:40 +01:00
Tim-Philipp Müller
0fc4af8498
rfbsrc: remove GPL-licensed source file
...
and replace the 1% of it that we need with new code, so we
don't have to change the runtime license of rfbsrc to GPL.
2013-05-10 23:11:05 +01:00
Aleix Conchillo Flaque
90e006513a
rfbsrc: use glib gio sockets for network access
...
https://bugzilla.gnome.org/show_bug.cgi?id=700038
2013-05-10 20:52:29 +01:00
Aleix Conchillo Flaque
42783e676e
rfbsrc: port to 1.0
...
https://bugzilla.gnome.org/show_bug.cgi?id=700038
2013-05-10 20:43:16 +01:00
Greg Rutz
4d4fd09a3a
mpegtsmux: Fix memory leak when using prepare_func
...
prepare_func will allocate a new buffer to replace the original
one. Instead of using gst_buffer_replace (which causes an extra
refcount increment on the new buffer), we just unref the original
buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=699786
2013-05-07 16:37:49 +02:00
Matej Knopp
946ffd0da5
mpegvideoparse: don't compare buffer size when checking whether to update caps
...
https://bugzilla.gnome.org/show_bug.cgi?id=699398
2013-05-03 12:52:18 +02:00
Tim-Philipp Müller
f1a6d84a6c
mpegvideoparse: don't announce incomplete source caps
...
Don't send any source caps yet if we're still in
drop-buffers-until-we-get-a-sequence-header mode.
Fixes transmuxing of many MPEG-TS/PS streams into
formats which require things like width, height or
codec_data on the input caps.
Also fixes issues when using playbin with decoder
sinks that want width/height etc.
https://bugzilla.gnome.org/show_bug.cgi?id=695879
2013-05-01 17:42:11 +01:00
Olivier Crête
6e5db57d24
liveadder: Document that the latency is in milliseconds
...
Bug #698896
2013-04-26 15:33:18 -04:00
Edward Hervey
65ba9b4756
tsdemux: convert packet PTS/DTS as soon as possible
...
We let the mpegtspacketizer deal with pcr wraparound/resets.
https://bugzilla.gnome.org/show_bug.cgi?id=674536
2013-04-26 15:49:18 +02:00
Edward Hervey
05b51dfec0
mpegtsdemux: header cleanups/updates
2013-04-26 15:49:18 +02:00
Josep Torra
b946de7211
h264parse: Update src pad caps when it was explicitly signaled
...
Fixes src pad caps aren't updated when converting from AVC to bytestream
and new caps had been received in the sink pad.
https://bugzilla.gnome.org/show_bug.cgi?id=698679
2013-04-26 10:38:36 +02:00
Thiago Santos
d8b8809d57
tsdemux: Fix caps string leak
2013-04-24 12:28:17 +02:00
Wim Taymans
57ed87f51b
aiff: port to 1.0
2013-04-18 17:18:49 +02:00
Greg Rutz
2306d51d9d
tsdemux: Add support for Motorola DigiCipher II MPEG2 video
...
Since there is a conflict between the DCII stream type and BluRay
stream types, moved the processing of BluRay-specific stream types
to the beginning of the function. Only if a BluRay stream type
IS NOT found do we proceed to check the rest of the stream type
identifiers
Previous code was also "sort-of" handling a similar conflict between
BluRay AC3 audio and standard AC3 audio. Moved the special case BluRay
AC3 handling in the main switch statement to the new BluRay-specific
switch.
https://bugzilla.gnome.org/show_bug.cgi?id=697892
2013-04-18 09:30:58 +02:00
Youness Alaoui
ece3d1c2f6
h264parse: Do not check for VUI parameters if they were not present in the SPS
2013-04-16 19:58:06 -04:00
David Schleef
303a2eaec4
mpegtsdemux: check value before using as denominator
2013-04-15 17:05:30 -07:00
Sebastian Dröge
e51cd4fe2f
gst: Add better support for static plugins
2013-04-15 15:59:22 +02:00
Wim Taymans
9699a974ca
sdpdemux: fix timeout value
...
Timeout on udpsrc is in nanoseconds in 1.0
2013-04-15 09:28:05 +02:00
Alexander Olsson
90229af34c
jpegparse: accept any jpeg input - parsed, unparsed or unmarked
...
The src element may not include information about whether
the data is parsed or not. Hence do not require parsed=false.
Fixes multipartdemux ! jpegparse ! ...
https://bugzilla.gnome.org/show_bug.cgi?id=697884
2013-04-13 13:54:52 +01:00
David Schleef
8552396c36
videoanalyse: port to 1.0
2013-04-12 14:11:09 -07:00
David Schleef
83862968a3
videofiltersbad: port to 1.0
2013-04-12 14:11:06 -07:00
Matej Knopp
13ac73bef4
mpegdemux: decrease log priority for repeating messages
...
https://bugzilla.gnome.org/show_bug.cgi?id=697834
2013-04-12 00:18:36 +01:00
Sebastian Dröge
2713fd1058
tsdemux: Check the continuity counter for non-section packets too
...
And if we detect a discontinuity there (like... when losing packets
or having MPEGTS over raw UDP with out-of-order packets) we just
drop the corresponding packet.
A future version could try to implement a re-ordering algorithm based
on that, similar to what rtpjitterbuffer does.
2013-04-11 13:11:44 +02:00
Stefan Sauer
2991e1ed48
mfxdemus: update todo (ther eis a muxer)
2013-04-11 10:06:23 +02:00
Sebastian Dröge
4ca886c53b
mpegtsbase: Call ::program_stopped after removing all streams
...
Subclasses want to access the program while removing the streams
and will currently crash because of dereferencing NULL in some cases.
2013-04-10 16:19:00 +02:00
Alexander Schrab
3320f29a88
watchdog: race between g_main_loop_run/_quit fixed
...
https://bugzilla.gnome.org/show_bug.cgi?id=697694
2013-04-10 10:36:19 +01:00
David Schleef
329c250a41
watchdog: fix event handling
2013-04-09 15:43:35 -07:00
David Schleef
63a2fac9a9
yadif: remove extra template code
2013-04-09 15:43:35 -07:00
David Schleef
45cb1195a6
ivtc: remove transform_size, it's not needed
2013-04-09 15:43:35 -07:00
David Schleef
9fd00c01a3
interaudiosink: fix leak when not connected
2013-04-09 15:36:17 -07:00
Edward Hervey
98265d0b28
tsdemux: Add support for TrueHD audio
2013-04-07 18:41:38 +02:00
Tim-Philipp Müller
a84e2ccbb8
audiovisualizer: shaders assume 32bpp
...
Backport fix for crashes and invalid writes in totem from libvisual
in -base, to minimise differences to version in -base and to make
sure the bug doesn't sneak back in later when the base class is
made public.
The shader code looks like it makes assumptions that are not
necessarily always true, even if they're true for now for the
existing elements, namly that pixel stride is 4, for example.
See https://bugzilla.gnome.org/show_bug.cgi?id=683527
2013-04-05 00:53:54 +01:00
Matthew Waters
bf502f5502
audiovisualizer: handle non-existant pool in the default allocation query
...
gst_query_set_nth_allocation_pool() requires there to be a pool in the
query already. This is not always the case when we get the query from
upstream. Use gst_query_add_allocation_pool() instead in such case.
https://bugzilla.gnome.org/show_bug.cgi?id=681719
2013-04-05 00:38:36 +01:00
Wim Taymans
5d72759fec
audiovisualizer: improve allocation
...
Based on patch by Matthew Waters
Add private data
Add decide_allocation vmethod
Refactor bufferpool negotiation
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681719
2013-04-05 00:37:08 +01:00
Edward Hervey
2296296a51
mpegvideoparse: Only add meta if downstream needs it
...
It's not perfect, because in the cases where upstream doesn't
initiate an allocation query, we won't know.
2013-03-31 19:04:12 +02:00
Edward Hervey
14e7e78b7a
mpegvideoparse: Store information in GstMpegVideo12Meta
...
FIXME : Only do so if we know downstream will need it
2013-03-31 18:55:33 +02:00
Edward Hervey
ca3146a2cd
tsparse: Ensure segment events are forwarded
...
We skip them for tsdemux though (recreated later)
Fixes #690949
2013-03-30 13:54:37 +01:00
Wim Taymans
d7bcf7206f
mpegpsdemux: push stream start event
2013-03-30 11:15:48 +01:00
Josep Torra
b6719fe0e3
midiparser: ensure variable is initialized and fix debug message access
2013-03-30 10:57:08 +01:00
Josep Torra
030cf658e6
mpeg4videoparser: Fix a compiler warning about uninitialised variable use
2013-03-30 09:52:45 +01:00
David Schleef
a1bb437ece
watchdog: new element
2013-03-27 15:31:21 -07:00
David Schleef
65cb59912b
mxfdemux: Use %03u for format in gst_pad_create_stream_id_printf()
2013-03-25 18:57:32 -07:00
Wim Taymans
f468979dea
interlaced: set both DTS and PTS
...
Handle both dts and pts on output buffers.
2013-03-25 10:10:28 +01:00
Douglas Bagnall
0c9db072ce
tsdemux: remove unused current_program_number field
...
https://bugzilla.gnome.org/show_bug.cgi?id=690934
2013-03-24 20:58:28 +00:00
Tim-Philipp Müller
0002f7638b
rawparse: send segment event in time format also in push mode
...
When converting the incoming segment from byte to time format,
don't just convert the start/stop/time values, but also change
the segment format to TIME.
https://bugzilla.gnome.org/show_bug.cgi?id=696361
2013-03-22 19:40:58 +00:00
Sebastian Dröge
dfa6c17de5
y4mdec: Use the correct strides as used by y4m and convert to GStreamer strides if necessary
...
https://bugzilla.gnome.org/show_bug.cgi?id=696361
2013-03-22 15:53:08 +01:00
Sebastian Dröge
58bfdb2798
y4mdec: Use the default event/query handlers for the default handling
...
Especially don't forward caps events from the sinkpad to the srcpad.
https://bugzilla.gnome.org/show_bug.cgi?id=696282
2013-03-22 14:52:54 +01:00
Sebastian Dröge
5dba06113d
y4mdec: Properly handle segment and time values of -1
2013-03-22 14:50:28 +01:00
Wim Taymans
5981ad182e
midi: set midi parser rank primary
...
Now that it supports seeking and all, mark it primary
2013-03-22 14:48:52 +01:00
Wim Taymans
5474532f57
midiparse: always seek back to beginning
...
We always need to seek back to the beginning because when we do a flushing seek,
we might have lost events downstream.
2013-03-22 13:49:49 +01:00
Wim Taymans
803f564013
midiparse: implement seeking
...
Seek back to 0 for backward seeking and let things run and clip for forwards
seeking.
2013-03-22 12:25:16 +01:00
Wim Taymans
661989bcb7
midiparse: simplify the callbacks
...
We only need one callback to send bytes out.
2013-03-21 18:18:29 +01:00
Wim Taymans
06e06b6159
midiparse: clean up tracks
2013-03-21 17:25:32 +01:00
Wim Taymans
7a14606b51
midiparse: don't leak midi data
2013-03-21 17:16:24 +01:00
Wim Taymans
15f07e7f12
midiparse: small cleanups in error paths
2013-03-21 16:06:46 +01:00
Wim Taymans
adae7f1859
midiparse: duration is max of all track durations
2013-03-21 16:06:46 +01:00
Wim Taymans
7498d104a7
midiparse: fix klass
2013-03-21 16:06:46 +01:00
Wim Taymans
5492631d84
midiparse: Update duration
...
Rework things a bit so that we can run over the midi events and fire callbacks
for each of them. We can then use that for calculating the duration and also for
doing playback.
Only parse as many tracks as specified in the header.
Fix default tempo;
Send MIDI tick events every 10ms
2013-03-21 15:00:16 +01:00
Wim Taymans
76cd090503
midiparse: handle midi in RIFF
2013-03-21 09:30:41 +01:00
Wim Taymans
a093d65310
midiparse: small fixes
2013-03-21 07:21:41 +01:00
Wim Taymans
10cb1a7a3a
midi: set rank as marginal
...
Set the mark to marginal until we implement more features.
2013-03-21 07:21:41 +01:00
Wim Taymans
235f2a962e
midiparse: add basic midi parser
...
Parses midi files and outputs buffers with midi events.
2013-03-21 07:21:40 +01:00
Tim-Philipp Müller
3af6effcf2
ivtc: fix make dist
2013-03-20 15:29:51 +00:00
David Schleef
160f996c2f
combdetect,ivtc: code cleanup
2013-03-19 18:08:53 -07:00
David Schleef
db40edff17
combdetect: output progressive video
2013-03-19 16:26:45 -07:00
David Schleef
16091ef422
combdetect: code cleanup
2013-03-19 16:26:45 -07:00
David Schleef
f1993545cf
combdetect: switch to zebra striping
2013-03-19 16:26:45 -07:00
David Schleef
cac6b94922
ivtc: drop early fields
2013-03-19 16:26:45 -07:00
David Schleef
91310bd4c5
ivtc: new inverse telecine filter
...
This filter converts interlaced content that was originally
telecine'd from 24 fps (or similar) progressive content. It works
approximately like videorate, but with awareness of interlacing.
It merges neighboring fields in the input interlaced stream with
the goal of minimizing combing artifacts, while keeping the output
framerate constant. If it cannot avoid combing artifacts, it will
reconstruct the image from a single field. Note that this filter
does not autodetect the framerate, but will automatically fixate
at 24 fps.
2013-03-19 16:26:45 -07:00
Alessandro Decina
d2d6798087
Make the hls plugin depend on gnutls and move to ext/hls/
...
gnutls is used to implement AES decryption
2013-03-19 10:54:18 +01:00
Alessandro Decina
5c77ef61ed
hlsdemux: use gnutls instead of openssl
2013-03-19 10:26:54 +01:00
Alessandro Decina
7d982d3418
hlsdemux: support encrypted streams
2013-03-19 10:26:54 +01:00
Alessandro Decina
1f177beb33
hlsdemux: fix invalid free() introduced by last commit
2013-03-18 21:03:50 +01:00
Kevin Thornberry
72c5c70b90
mpegtsmux: fix creation of ADTS header for AAC audio in MPEG-TS
...
https://bugzilla.gnome.org/show_bug.cgi?id=695412
2013-03-18 10:31:51 +00:00
Alessandro Decina
175498434c
hlsdemux: parse #EXT-X-KEY tags
2013-03-18 07:34:13 +01:00
Alessandro Decina
4ca7426f2a
hlsdemux: factor out URI joining utility
2013-03-18 07:27:51 +01:00
Alessandro Decina
cb7ee940d2
hlsdemux: fix URI parsing for absolute fragment paths
2013-03-18 07:02:54 +01:00
Jean-François Fortin Tam
7b268f6965
frei0r: improve readability of RGB and XY property nickname strings
...
Also fix the Y prop nickname string being incorrect.
https://bugzilla.gnome.org/show_bug.cgi?id=695884
2013-03-16 18:16:34 +00:00
Jean-François Fortin Tam
53d33062e1
frei0r: fix nicknames for color and position properties
...
https://bugzilla.gnome.org/show_bug.cgi?id=695884
2013-03-16 18:14:37 +00:00
David Schleef
a80726c8d7
videosegmentclip: Don't leak buffers after segment
2013-03-15 00:16:16 -07:00
David Schleef
aa8918411e
videosignal: add FIXME for future revival
2013-03-15 00:16:16 -07:00
David Schleef
6005ab322d
mxfdemux: Add a second MXF UL for uncompressed audio
2013-03-14 14:41:38 -07:00
David Schleef
f0ab12fe89
mxfdemux: Ignore missing metadata descriptors
2013-03-14 14:41:37 -07:00
Wim Taymans
88492ff72e
hlsdemux: don't stop tasks in paused
...
A non-live element is supposed to continue streaming in the paused state so
don't stop the tasks when going to paused.
We also always want to start the update task after we prerolled enough data,
not only in the playing state.
2013-03-14 12:17:13 +01:00
Wim Taymans
3de57b9754
hlsdemux: add more debug
2013-03-14 12:17:13 +01:00
Greg Rutz
c66fd54e78
audiovisualizer: fix improper video frame clear operation
...
The current code is memsetting the GstVideoFrame.data address to 0s (which
causes a segfault). This member is actually an array of data buffers (one for
each plane). This fix iterates over each data plane to clear them all.
https://bugzilla.gnome.org/show_bug.cgi?id=695655
2013-03-13 00:40:24 +00:00
Tim-Philipp Müller
c2446a70f6
Remove DTMF plugin, moved to -good
...
https://bugzilla.gnome.org/show_bug.cgi?id=687416
2013-03-09 01:06:31 +00:00
Sebastian Dröge
acacef9fbb
mpegtsdemux: Fix various compiler warnings
2013-03-03 12:30:32 +01:00
Sebastian Dröge
ac6967a843
mpeg4videoparse: Use correct type specifiers for format strings to fix compiler warnings
2013-03-03 12:30:21 +01:00
Sebastian Dröge
570f012b58
freeverb: Fix compiler warning caused by wrong format specifier
2013-03-03 10:54:10 +01:00
Vincent Penquerc'h
b6f50c51f3
rawparse: fix caps leak
2013-02-28 16:55:36 +00:00
Tim-Philipp Müller
6325b06204
dvbsuboverlay: add all supported video formats to template caps
...
We now use gst_video_overlay_composition_blend(), so can support
all video formats supported by that, not just I420.
2013-02-19 13:04:21 +00:00
Tim-Philipp Müller
f2f9e4b68a
dvbsuboverlay: proxy the allocation query
...
Pass allocation query downstream.
2013-02-19 13:04:14 +00:00
Tim-Philipp Müller
79f419c82d
dvbsuboverlay: don't forward CAPS event from subtitle pad
...
May results in not-negotiated flow errors otherwise.
2013-02-19 11:14:11 +00:00
Stefan Sauer
57ff02f485
freeverb: remove channel-mask from caps
...
The channel-mask is only needed for channels>2 which we don't do.
2013-02-15 21:30:33 +01:00
Tim-Philipp Müller
829076358e
Revert "mpeg4videoparse: set 0 duration when vop_coded is 0"
...
This reverts commit d3219a261a
.
vop_coded 0 means that the previous frame should be repeated,
so it should have valid duration after all.
https://bugzilla.gnome.org/show_bug.cgi?id=683169
2013-02-14 09:40:08 +00:00
Olivier Crête
f25b0eda09
pngparse: Declare the width/height outside the loop
...
Also initialize them to make gcc happy
2013-02-12 18:11:34 -05:00
Olivier Crête
41afff88e0
videoparsers: Add png file parser
...
https://bugzilla.gnome.org/show_bug.cgi?id=690639
2013-02-12 17:04:38 -05:00
David Schleef
168c8406b5
Unrevert: mpegvideoparse: set timestamp based on pic offset
...
API is now in baseparse in gstreamer.
Timestamps in MPEG-TS streams are based on the last timestamp
before the start code of the picture. GstBaseParse sets the
timestamp based on the beginning of the sequence header, if
one exists before the picture. This fixes the case where the
timestamp occurs in the MPEG-TS stream between the seq header
and picture start code.
2013-02-12 12:23:03 -08:00
David Schleef
e614bd037e
yadif: Add mode property
...
Copy mode from deinterlace element. Isn't actually implemented
in yadif, every frame is deinterlaced, so effectively mode=1.
2013-02-12 12:23:03 -08:00
David Schleef
e5e7fccd03
yadif: Fix non-x86_64 builds
2013-02-12 11:48:21 -08:00
David Schleef
aeee2084ff
mpegdemux: add parsed=false to mpeg2 caps
2013-02-12 11:48:21 -08:00
Tim-Philipp Müller
aedc136926
Revert "mpegvideoparse: set timestamp based on pic offset"
...
This reverts commit 63718da919
.
The required baseparse API addition has not been pushed yet,
which breaks the build.
2013-02-12 09:38:35 +00:00
David Schleef
63718da919
mpegvideoparse: set timestamp based on pic offset
...
Timestamps in MPEG-TS streams are based on the last timestamp
before the start code of the picture. GstBaseParse sets the
timestamp based on the beginning of the sequence header, if
one exists before the picture. This fixes the case where the
timestamp occurs in the MPEG-TS stream between the seq header
and picture start code.
2013-02-11 17:41:17 -08:00
Tim-Philipp Müller
b738115ebd
yadif: fix distcheck
2013-02-11 23:46:27 +00:00
Tim-Philipp Müller
d3c79a6079
yadif: fix build in uninstalled setup
2013-02-11 22:40:35 +00:00
David Schleef
b339812c07
yadif: Add YADIF deinterlacing filter
...
Code copied from Libav, commit 26e4f0c70. Will eventually be
moved to -ugly because underlying code is GPL.
2013-02-11 12:30:29 -08:00
David Schleef
10b44cc81b
fieldanalysis: Add Y42B and Y444 formats
2013-02-11 12:30:29 -08:00
Tim-Philipp Müller
dee6536421
mxfdemux: fix taglist leak
...
Don't leak demuxer tag list.
2013-02-11 20:24:14 +00:00
Tim-Philipp Müller
453438a9dd
mxfdemux: fix push mode unit test failure
...
In the sink event handler we end up sending multiple EOS
events per pad. Don't return FALSE when sending the
second EOS on an already-EOS pad fails. Not sure if there
was a reason for sending a second EOS, so leaving the
code in there for now, but assume all went fine if there
are source pads, which is slightly less wrong than before.
This function needs work.
2013-02-11 19:59:20 +00:00
Tim-Philipp Müller
e63027f198
gdp: actually log generic dataprotocol stuff to gdp category
2013-02-11 12:34:24 +00:00
Tim-Philipp Müller
632f2ac1c6
inter: don't use deprecated GLib threading API
2013-02-11 12:01:19 +00:00
Tim-Philipp Müller
eef2324e4d
liveadder: don't use deprecated GLib threading API
2013-02-11 12:01:19 +00:00
Marc Leeman
6aa399ec9f
mxfdemux: deprecated GStaticRWLock -> GRWLock
...
https://bugzilla.gnome.org/show_bug.cgi?id=693322
2013-02-09 18:35:48 +00:00
Marc Leeman
f7b16f6185
chromahold: deprecated GStaticMutex -> GMutex
...
https://bugzilla.gnome.org/show_bug.cgi?id=693322
2013-02-09 18:35:33 +00:00
Tim 'mithro' Ansell
c8cbe98d90
gdppay: fix buffer leak when new caps are same as old caps
...
The leak occurs when you got a message with identical caps to the ones you
already had.
https://bugzilla.gnome.org/show_bug.cgi?id=693324
2013-02-07 14:07:17 +00:00
Jan Schmidt
0344b33f40
dvdspu: Fix the rendering of PGS windows with left != 0
...
When rendering a PGS window area where the left edge is not at
pixel 0, the chroma was being rendered in the wrong place since
commit 4dc648d343
2013-02-07 22:51:05 +11:00
Tim Ansell
12255ff660
inter: fix leaks in test
...
https://bugzilla.gnome.org/show_bug.cgi?id=693300
2013-02-07 11:31:12 +00:00
Stefan Sauer
998cfde158
freeverb: port to 1.0
2013-02-07 08:56:37 +01:00
Stefan Sauer
09764eca37
audiovisualizers: add comments for monoscope porting
2013-02-07 07:29:17 +01:00
David Schleef
65927acc45
interlace: fix negotiation for true interlaced modes
2013-02-06 15:51:01 -08:00
Josep Torra
7fafbe2e22
tsdemux: expose VC1 streams with missing descriptor.
...
Fixes playback of VC1 streams when the descriptor is missing.
2013-02-05 23:07:12 +01:00
Robert Swain
4513a48e8a
interlace: Add support for more telecine patterns
2013-02-05 13:40:39 +01:00
Robert Swain
0fc9b0b289
interlace: Add more verbose hints about field patterns
2013-02-05 13:40:32 +01:00
David Schleef
a19c0b5697
tsdemux: Add descriptors for SMPTE 302m audio
2013-02-04 18:07:17 -08:00
Mark Nauwelaerts
7df753165f
h264parse: separate fields for distinct functional uses of codec_data field
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=692789
2013-02-02 19:29:40 +01:00
Tim-Philipp Müller
74d1f8a400
rtpdtmfsrc: fix compiler warning
...
gstrtpdtmfsrc.c: In function 'gst_dtmf_src_prepare_message.isra.1':
gstrtpdtmfsrc.c:669:3: error: 's' may be used uninitialized in this function
2013-01-26 22:58:29 +00:00
Olivier Crête
bbc8fda864
rtpdtmfdepay: Fix missing work in doc
2013-01-25 21:06:05 -05:00
Olivier Crête
a2384408f0
rtpdtmfsrc: Post the messages after the clock wait
...
This way, the messages will be closer in time to when the packets are sent out
2013-01-25 20:45:43 -05:00
Olivier Crête
b69f09e26f
rtpdtmfsrc: Only set the duration when starting to send
...
The duration depends on the clock rate, which could change due to renegotiation
2013-01-25 20:45:43 -05:00
Olivier Crête
917d491d63
rtpdtmfsrc: remove "ssrc" from caps
...
ssrc is uint and we don't have a uint range type
2013-01-25 20:45:43 -05:00
Olivier Crête
81b452ba5d
dtmf/spandsp: Move dtmfdetect to use libspandsp
...
Remove our copy of the tone_detect.c file and use the original
from libspandsp. Also move the element to the spandsp plugin.
2013-01-09 20:05:16 -05:00
Victor Gottardi
21477d37e2
hlssink: don't forward multifilesink messages to application
...
These messages are usually only needed internally.
https://bugzilla.gnome.org/show_bug.cgi?id=689822
2013-01-06 22:53:11 +00:00
Victor Gottardi
e6f5c5674c
hlssink: m3u8 add EXT-X-ALLOW-CACHE
...
https://bugzilla.gnome.org/show_bug.cgi?id=689822
2013-01-06 22:53:11 +00:00
Victor Gottardi
4fb227b340
hlssink: round segment duration to nearest number of seconds
...
E.g. for 1s period, duration can be 0.99s, rounds down to 0, results in invalid
playlist
https://bugzilla.gnome.org/show_bug.cgi?id=689822
2013-01-06 22:53:10 +00:00
Tim-Philipp Müller
c313b7e212
hlssink: don't leak old playlist entries when using max-files
...
Based on patch by: Victor Gottardi <vgottardi@hotmail.com>
https://bugzilla.gnome.org/show_bug.cgi?id=689822
2013-01-06 22:53:00 +00:00
Tim-Philipp Müller
5522cceb55
inter: don't use deprecated GStaticMutex API
2013-01-04 17:19:25 +00:00
Tim-Philipp Müller
d1e9a96a69
mpegpsmux: use DTS in addition to PTS
...
And refactor choose_best_stream() a little.
videotestsrc pattern=ball ! x264enc ! mpegpsmux ! ...
plays much nicer now.
2013-01-01 11:59:39 +00:00
Tim-Philipp Müller
37de5a081c
mpegpsmux: use gstreamer debug logging system everywhere
2012-12-31 19:45:54 +00:00
Tim-Philipp Müller
c056ecb02b
mpegpsmux: port to 0.11
...
Naive port. Barely tested.
2012-12-31 19:42:03 +00:00
Matthias Hardt
0e3fdb1e16
tsdemux: extract ISO 639 language codes for subtitles into taglists
...
https://bugzilla.gnome.org/show_bug.cgi?id=680200
2012-12-28 23:32:55 +00:00
Thijs Vermeir
471ad809f6
videoparsers: use appropriate printf format for gsize
2012-12-18 16:52:26 +01:00
Thijs Vermeir
35a5100bc3
mxf: use appropriate printf format for gsize
2012-12-18 16:50:37 +01:00
Thijs Vermeir
67bbe5ebaf
jpeg: use appropriate printf format for gsize
2012-12-18 16:40:59 +01:00
Thijs Vermeir
775cf6ab3e
inter: use appropriate printf format for gsize
2012-12-18 16:20:08 +01:00
Sebastian Dröge
f623a78924
videoparsers: Make sure the caps are actually writable before changing them
2012-12-17 15:16:48 +01:00
Sebastian Dröge
9f1257330d
videoparsers: Use the peer caps for restrictions instead of the srcpad allowed caps
...
Otherwise we will intersect with the srcpad template caps and add all the caps fields
that the parser will ever set, no matter if downstream restricts this field or not.
This requires upstream to set this field on the caps to successfully negotiate.
https://bugzilla.gnome.org/show_bug.cgi?id=690184
2012-12-17 15:04:44 +01:00
Tim-Philipp Müller
02ab609c11
rtpmux: remove rtpmux plugin, moved to -good
...
Move rtpmux and rtpdtmfmux into rtpmanager plugin in -good.
https://bugzilla.gnome.org/show_bug.cgi?id=629117
2012-12-16 17:36:45 +00:00
Tim-Philipp Müller
7ab936fa7e
scaletempo: remove scaletempo plugin, moved to -good
...
https://bugzilla.gnome.org/show_bug.cgi?id=687262
2012-12-15 13:37:23 +00:00
Tim-Philipp Müller
8b2641805f
autoconvert: don't use deprecated threading API
2012-12-14 18:09:06 +00:00
Wim Taymans
0e0dd05fd6
h264parse: use upstream width/height when given
...
The upstream width and height should override the dimension detected in the
file.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683142
2012-12-13 14:15:04 +01:00
Arnaud Vrac
0d15c8a7a5
mpeg4videoparse: export number of sprite warping points in caps
...
This allows filtering out videos for hardware decoders that do not
support GMC at all or only support a limited number of sprite warping
points (usually 1).
2012-12-13 11:01:00 +00:00
Arnaud Vrac
07c2a82e5d
mpeg4videoparse: handle divx caps
...
DivX 4/5 are MPEG4 part 2 videos, so they can be parsed by this plugin.
2012-12-13 11:01:00 +00:00
Tim-Philipp Müller
b0c30383ca
mxfdemux: printf format fixes for debug messages
2012-12-12 18:50:09 +00:00
Tim-Philipp Müller
796708b3e3
hls: minor Makefile clean-up
...
Remove superfluous SOUP_CFLAGS and SOUP_LIBS.
2012-12-12 00:40:20 +00:00
Michael Esemplare
91bf909469
hls: link to the right gst-plugins-base libs and fix libs order
...
https://bugzilla.gnome.org/show_bug.cgi?id=690030
2012-12-11 21:13:21 +00:00
Sebastian Dröge
3478231790
mxfdemux: Don't allow any wrapping other than frame wrapping
...
Bad things will happen otherwise, like reading a complete,
multiple GB large video track into a single buffer.
Conflicts:
gst/mxf/mxfdemux.c
2012-12-06 10:10:05 +01:00
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
Thomas Vander Stichele
4447f427d7
gdp: fix more valgrind warnings before turning up the heat
...
Original commit message from CVS:
fix more valgrind warnings before turning up the heat
2012-09-11 01:54:37 +01:00
Wim Taymans
3e29c4db5c
gdp: It's about time we bump the version number.
...
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):
* libs/gst/dataprotocol/dataprotocol.h:
* libs/gst/dataprotocol/dp-private.h:
It's about time we bump the version number.
Since event types don't fit in the guint8 anymore describing
the payload type, make payload type 16 bits wide.
2012-09-11 01:54:37 +01:00
Andy Wingo
fd4cee0097
gdp: Fix error-checking return values.
...
Original commit message from CVS:
2005-09-27 Andy Wingo <wingo@pobox.com>
* libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return
values.
2012-09-11 01:54:37 +01:00
Wim Taymans
c960788378
gdp: Fix serialization of seek events.
...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
(gst_dp_event_from_packet):
Fix serialization of seek events.
2012-09-11 01:54:37 +01:00
Wim Taymans
1a0a543148
gdp: Some docs updates
...
Original commit message from CVS:
* CHANGES-0.9:
* docs/design/part-TODO.txt:
* docs/design/part-events.txt:
Some docs updates
* gst/base/gstbasesink.c: (gst_base_sink_handle_object),
(gst_base_sink_event), (gst_base_sink_do_sync),
(gst_base_sink_activate_push), (gst_base_sink_activate_pull):
* gst/base/gstbasesrc.c: (gst_base_src_send_discont),
(gst_base_src_do_seek), (gst_base_src_event_handler),
(gst_base_src_loop):
* gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
(gst_base_transform_configure_caps), (gst_base_transform_setcaps),
(gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
(gst_base_transform_event), (gst_base_transform_handle_buffer),
(gst_base_transform_set_passthrough),
(gst_base_transform_is_passthrough):
* gst/elements/gstfakesink.c: (gst_fake_sink_event):
* gst/elements/gstfilesink.c: (gst_file_sink_event):
Event updates.
* gst/gstbuffer.h:
Use faster casts.
* gst/gstelement.c: (gst_element_seek):
* gst/gstelement.h:
Update gst_element_seek.
* gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
(gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
(gst_event_new_flush_start), (gst_event_new_flush_stop),
(gst_event_new_eos), (gst_event_new_newsegment),
(gst_event_parse_newsegment), (gst_event_new_tag),
(gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
(gst_event_parse_qos), (gst_event_new_seek),
(gst_event_parse_seek), (gst_event_new_navigation):
* gst/gstevent.h:
Make GstEvent use GstStructure. Add parsing code, make sure the
API is sufficiently generic.
Mark possible directions of events and serialization.
* gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
(_gst_message_copy), (gst_message_new_segment_start),
(gst_message_new_segment_done), (gst_message_new_custom),
(gst_message_parse_segment_start),
(gst_message_parse_segment_done):
Small cleanups.
* gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
(gst_pad_set_caps), (gst_pad_send_event):
Update for new events.
Catch events sent in wrong directions.
* gst/gstqueue.c: (gst_queue_link_src),
(gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
(gst_queue_handle_src_query):
Event updates.
* gst/gsttag.c:
* gst/gsttag.h:
Remove event code from this file.
* libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
(gst_dp_event_from_packet):
Event updates.
2012-09-11 01:54:37 +01:00
Wim Taymans
4b241b4fba
gdp: Ported dataprotol to 0.9.
...
Original commit message from CVS:
* configure.ac:
* libs/gst/dataprotocol/Makefile.am:
* libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
* libs/gst/dataprotocol/dataprotocol.h:
* pkgconfig/Makefile.am:
* pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
* pkgconfig/gstreamer-dataprotocol.pc.in:
Ported dataprotol to 0.9.
Added pkgconfig files.
2012-09-11 01:54:37 +01:00
David Schleef
fc38357861
gdp: remove GstData checks
...
Original commit message from CVS:
* check/Makefile.am: remove GstData checks
* check/gst-libs/gdp.c: (START_TEST): fix for API changes
* gst/Makefile.am: add miniobject, remove data
* gst/gst.h: add miniobject, remove data
* gst/gstdata.c: remove
* gst/gstdata.h: remove
* gst/gstdata_private.h: remove
* gst/gsttypes.h: remove GstEvent and GstMessage
* gst/gstelement.c: (gst_element_post_message): fix for API changes
* gst/gstmarshal.list: change BOXED -> OBJECT
Implement GstMiniObject.
* gst/gstminiobject.c:
* gst/gstminiobject.h:
Modify to be subclasses of GstMiniObject.
* gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
(gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
(gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
(gst_subbuffer_get_type), (gst_subbuffer_init),
(gst_buffer_create_sub), (gst_buffer_is_span_fast),
(gst_buffer_span):
* gst/gstbuffer.h:
* gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
(gst_event_class_init), (gst_event_init), (gst_event_finalize),
(_gst_event_copy), (gst_event_new):
* gst/gstevent.h:
* gst/gstmessage.c: (_gst_message_initialize),
(gst_message_get_type), (gst_message_class_init),
(gst_message_init), (gst_message_finalize), (_gst_message_copy),
(gst_message_new), (gst_message_new_error),
(gst_message_new_warning), (gst_message_new_tag),
(gst_message_new_state_changed), (gst_message_new_application):
* gst/gstmessage.h:
* gst/gstprobe.c: (gst_probe_perform),
(gst_probe_dispatcher_dispatch):
* gst/gstprobe.h:
* gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
(gst_query_class_init), (gst_query_finalize), (gst_query_init),
(_gst_query_copy), (gst_query_new):
Update elements for GstData -> GstMiniObject changes
* gst/gstquery.h:
* gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
(gst_queue_chain), (gst_queue_loop):
* gst/elements/gstbufferstore.c:
(gst_buffer_store_add_buffer_func),
(gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
* gst/elements/gstfakesink.c: (gst_fakesink_class_init),
(gst_fakesink_render):
* gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
* gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
(gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
(gst_mmap_buffer_finalize), (gst_filesrc_map_region),
(gst_filesrc_create_read):
* gst/elements/gstidentity.c: (gst_identity_class_init):
* gst/elements/gsttypefindelement.c:
(gst_type_find_element_src_event), (free_entry_buffers),
(gst_type_find_element_handle_event):
* libs/gst/dataprotocol/dataprotocol.c:
(gst_dp_header_from_buffer):
* libs/gst/dataprotocol/dataprotocol.h:
* libs/gst/dataprotocol/dp-private.h:
2012-09-11 01:54:37 +01:00
Andy Wingo
cfb692090f
gdp: GCC 4 fixen.
...
Original commit message from CVS:
2005-05-04 Andy Wingo <wingo@pobox.com>
* check/Makefile.am:
* docs/gst/tmpl/gstatomic.sgml:
* docs/gst/tmpl/gstplugin.sgml:
* gst/base/gstbasesink.c: (gst_basesink_activate):
* gst/base/gstbasesrc.c: (gst_basesrc_class_init),
(gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
(gst_basesrc_query), (gst_basesrc_set_property),
(gst_basesrc_get_property), (gst_basesrc_check_get_range),
(gst_basesrc_activate):
* gst/base/gstbasesrc.h:
* gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
(gst_base_transform_src_activate):
* gst/elements/gstelements.c:
* gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
(gst_fakesrc_set_property), (gst_fakesrc_get_property):
* gst/elements/gsttee.c: (gst_tee_sink_activate):
* gst/elements/gsttypefindelement.c: (find_element_get_length),
(gst_type_find_element_checkgetrange),
(gst_type_find_element_activate):
* gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
* gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
(gst_caps_load_thyself):
* gst/gstelement.c: (gst_element_pads_activate),
(gst_element_save_thyself), (gst_element_restore_thyself):
* gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
(gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
* gst/gstpad.h:
* gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
(gst_xml_parse_file), (gst_xml_parse_memory),
(gst_xml_get_element), (gst_xml_make_element):
* gst/indexers/gstfileindex.c: (gst_file_index_load),
(_file_index_id_save_xml), (gst_file_index_commit):
* gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
(read_enum), (load_pad_template), (load_feature), (load_plugin),
(load_paths):
* libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
(gst_dp_packet_from_event), (gst_dp_caps_from_packet):
* tools/gst-complete.c: (main):
* tools/gst-compprep.c: (main):
* tools/gst-inspect.c: (print_element_properties_info):
* tools/gst-launch.c: (xmllaunch_parse_cmdline):
* tools/gst-xmlinspect.c: (print_element_properties):
GCC 4 fixen.
2012-09-11 01:54:37 +01:00
Wim Taymans
f97b03672b
gdp: Next big merge.
...
Original commit message from CVS:
Next big merge.
Added GstBus for mainloop integration.
Added GstMessage for sending notifications on the bus.
Added GstTask as an abstraction for pipeline entry points.
Removed GstThread.
Removed Schedulers.
Simplified GstQueue for multithreaded core.
Made _link threadsafe, removed old capsnego.
Added STREAM_LOCK and PREROLL_LOCK in GstPad.
Added pad blocking functions.
Reworked scheduling functions in GstPad to prepare for
scheduling updates soon.
Moved events out of data stream.
Simplified GstEvent types.
Added return values to push/pull.
Removed clocking from GstElement.
Added prototypes for state change function for next merge.
Removed iterate from bins and state change management.
Fixed some elements, disabled others for now.
Fixed -inspect and -launch.
Added check for GstBus.
2012-09-11 01:54:37 +01:00
Wim Taymans
278a383cd1
gdp: First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor...
...
Original commit message from CVS:
First THREADED backport attempt, focusing on adding locks and
making sure the API is threadsafe. Needs more work. More docs
follow this week.
2012-09-11 01:54:37 +01:00
Zaheer Abbas Merali
0e084e2179
gdp: Allocate the 1 byte more memory that was forgotten!!!!!
...
Original commit message from CVS:
2005-02-18 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
Allocate the 1 byte more memory that was forgotten!!!!!
2012-09-11 01:54:37 +01:00
Wim Taymans
b8d7a44a41
gdp: Fix threadsafety of the crc checking function.
...
Original commit message from CVS:
* libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
Fix threadsafety of the crc checking function.
2012-09-11 01:54:37 +01:00
Thomas Vander Stichele
a2c2a91a8b
gdp: fix for #150242
...
Original commit message from CVS:
fix for #150242
2012-09-11 01:54:37 +01:00
Thomas Vander Stichele
597f6b9ff2
gdp: doc style fixes
...
Original commit message from CVS:
doc style fixes
2012-09-11 01:54:37 +01:00
Thomas Vander Stichele
6139c0bf85
gdp: bump GDP to 0.1, add buffer flags
...
Original commit message from CVS:
bump GDP to 0.1, add buffer flags
2012-09-11 01:54:36 +01:00
Thomas Vander Stichele
2070420420
gdp: wrap header in _NEW
...
Original commit message from CVS:
wrap header in _NEW
2012-09-11 01:54:36 +01:00
Thomas Vander Stichele
8a1f20c5c5
Original commit message from CVS: use GST macros; add asserts
2012-09-11 01:54:36 +01:00
Thomas Vander Stichele
0f505e071f
gdp: private prototype
...
Original commit message from CVS:
private prototype
2012-09-11 01:54:36 +01:00
Thomas Vander Stichele
e174bad995
gdp: add dataprotocol
...
Original commit message from CVS:
clean up libs docs; add dataprotocol
2012-09-11 01:54:36 +01:00
Wim Taymans
f751de2850
add parent to pad functions
2012-09-11 01:54:36 +01:00
Wim Taymans
89af03a2b9
update for adapter api changes
2012-09-11 01:54:36 +01:00
Tim-Philipp Müller
9151a5f88f
gdppay: parse caps event and payload caps
...
Which makes it actually output stuff.
2012-09-11 01:54:36 +01:00
Wim Taymans
7713d67993
-base: update for buffer API change
2012-09-11 01:54:36 +01:00
Wim Taymans
5981bbfdf3
-base: port to new SEGMENT API
2012-09-11 01:54:36 +01:00
Wim Taymans
8b39dc2f80
segment: fix for new core API
...
Fix for gst_*_segment_full rename.
2012-09-11 01:54:36 +01:00
Wim Taymans
a1c42ffe0b
-base: don't use buffer caps
...
Port to newest 0.11 core API, remove GST_PAD_CAPS and GST_BUFFER_CAPS.
2012-09-11 01:54:35 +01:00
Sebastian Dröge
878caef597
gst: Use G_DEFINE_TYPE instead of GST_BOILERPLATE
2012-09-11 01:54:34 +01:00
Alessandro Decina
d33dd31fc7
android: make it ready for androgenizer
...
Remove the android/ top dir
Fixe the Makefile.am to be androgenized
To build gstreamer for android we are now using androgenizer which generates the
needed Android.mk files.
Androgenizer can be found here:
http://git.collabora.co.uk/?p=user/derek/androgenizer.git
2012-09-11 01:54:34 +01:00
Wim Taymans
b3da9ca972
bufferlist: fixes for new API
2012-09-11 01:54:34 +01:00
Wim Taymans
0e90a45365
plugins: port some plugins to the new memory API
2012-09-11 01:54:34 +01:00
Andoni Morales Alastruey
ce639b529b
gdppay: ensure buffer's metadata is writable before setting caps
2012-09-11 01:54:33 +01:00
David Schleef
70c399426e
gdppay: make newsegment buffer metadata writable
2012-09-11 01:54:33 +01:00
Benjamin Otte
6aae8db723
gst_element_class_set_details => gst_element_class_set_details_simple
...
Also change my email from the old university one to the current one.
2012-09-11 01:54:33 +01:00
Benjamin Otte
383c43abe5
Add -Wmissing-declarations -Wmissing-prototypes to warning flags
...
Includes all the fixes necessary to make stuff compile again.
2012-09-11 01:54:33 +01:00
Olivier Crête
925150953d
gdpdepay: Clear adapter on flush and state change
...
Fixes #600469
2012-09-11 01:54:33 +01:00
Tim-Philipp Müller
16e05084df
Remove GST_DEBUG_FUNCPTR where they're pointless
...
There's not much point in using GST_DEBUG_FUNCPTR with GObject
virtual functions such as get_property, set_propery, finalize and
dispose, since they'll never be used by anyone anyway. Saves a
few bytes and possibly a sixteenth of a polar bear.
2012-09-11 01:54:33 +01:00
Jan Schmidt
5a1492dc0b
gdppay: Don't repeat tags buffers for every new segment
...
Only send a tag buffer when one is received, not after every new segment
event/update.
2012-09-11 01:54:33 +01:00
Marc-André Lureau
04133c2d31
Bug 593035 - set IN_CAPS for streamheader buffer
2012-09-11 01:54:33 +01:00
Wim Taymans
e56bf3929e
gdppay: set caps on outgoing buffers
...
Set caps on outgoing buffers because NULL caps confuse basetransform.
Fixes #583867
2012-09-11 01:54:33 +01:00
Stefan Kost
f2cf891385
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.
2012-09-11 01:54:33 +01:00
Stefan Kost
526c4b5184
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.
2012-09-11 01:54:32 +01:00
Antoine Tremblay
a0679f9e56
gst/gdp/gstgdppay.c: Fix a buffer memleak and remove a confusing and wrong debug output.
...
Original commit message from CVS:
Patch by: Antoine Tremblay <hexa00 at gmail dot com>
* gst/gdp/gstgdppay.c: (gst_gdp_pay_reset):
Fix a buffer memleak and remove a confusing and wrong debug output.
Fixes bug #538663 .
2012-09-11 01:54:32 +01:00
Antoine Tremblay
ba89323790
gst/gdp/gstgdppay.c: Don't set caps on the buffers that contain a copy of the buffer including the caps of them resul...
...
Original commit message from CVS:
Patch by: Antoine Tremblay <hexa00 at gmail dot com>
* gst/gdp/gstgdppay.c: (gst_gdp_pay_reset_streamheader):
Don't set caps on the buffers that contain a copy of the buffer
including the caps of them resulting in an always increasing refcount
of the caps and insanely large caps. Instead include a buffer without
caps in the new caps. Fixes bug #536475 .
2012-09-11 01:54:32 +01:00
Jan Schmidt
c5520eea2a
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.
2012-09-11 01:54:32 +01:00
Antoine Tremblay
79c0a10f00
gst/gdp/gstgdppay.c: Close a buffer memory leak. Fixes bug #534071 .
...
Original commit message from CVS:
Patch by: Antoine Tremblay <hexa00 at gmail dot com>
* gst/gdp/gstgdppay.c: (gst_gdp_pay_chain):
Close a buffer memory leak. Fixes bug #534071 .
2012-09-11 01:54:32 +01:00
Edward Hervey
6f7b2e2a3b
gst/gdp/gstgdpdepay.c: Don't validate the payload if there isn't any.
...
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
Don't validate the payload if there isn't any.
Fixes #525915
2012-09-11 01:54:32 +01:00
Michael Smith
41be2b32d0
gst/gdp/gstgdpdepay.c: Check the body CRC (if set) when depayloading.
...
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
Check the body CRC (if set) when depayloading.
Fixes #522401 .
2012-09-11 01:54:32 +01:00
Sebastian Dröge
a8bf6e2d8a
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 .
2012-09-11 01:54:32 +01:00
Thomas Vander Stichele
5b15ce712b
gst/gdp/gstgdppay.c (gst_gdp_pay_chain): tests/check/pipelines/streamheader.c (tag_event_probe_cb,
...
Original commit message from CVS:
* gst/gdp/gstgdppay.c (gst_gdp_pay_chain):
* tests/check/pipelines/streamheader.c (tag_event_probe_cb,
GST_START_TEST, buffer_probe_cb, GST_START_TEST):
Fix a bug where serialized IN_CAPS buffers needed to be set IN_CAPS.
2012-09-11 01:54:32 +01:00
Thomas Vander Stichele
ef3dbd48da
debug changes
...
Original commit message from CVS:
debug changes
2012-09-11 01:54:31 +01:00
Wim Taymans
1ed9b0fff4
gst/gdp/gstgdppay.c: Make sure we set the IN_CAPS flag correctly.
...
Original commit message from CVS:
* gst/gdp/gstgdppay.c: (gst_gdp_pay_chain),
(gst_gdp_pay_sink_event):
Make sure we set the IN_CAPS flag correctly.
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_render):
Get the IN_CAPS flag before we call functions that mess with the flags.
2012-09-11 01:54:31 +01:00
Thomas Vander Stichele
c1c0767689
gst/gdp/gstgdppay.c (gst_gdp_pay_reset_streamheader, gst_gdp_pay_chain, gst_gdp_pay_sink_event):
...
Original commit message from CVS:
* gst/gdp/gstgdppay.c (gst_gdp_pay_reset_streamheader,
gst_gdp_pay_chain, gst_gdp_pay_sink_event):
Only stamp buffers with offset/offset_end right before they get
pushed. This ensures offset continuity, which was not the case
before as shown by
gst-launch -v -m audiotestsrc num-buffers=10 ! audioconvert ! vorbisenc ! gdppay ! identity check-imperfect-offset=TRUE ! fakesink silent=TRUE
2012-09-11 01:54:31 +01:00
Thomas Vander Stichele
4b972637e1
adding debugging
...
Original commit message from CVS:
adding debugging
2012-09-11 01:54:31 +01:00
Thomas Vander Stichele
9e3bb940b2
add buffer logging
...
Original commit message from CVS:
add buffer logging
2012-09-11 01:54:31 +01:00
Michael Smith
377554d9eb
gst/gdp/gstgdppay.c: Fix memory leaks and misleading debug messages, add a couple of comments.
...
Original commit message from CVS:
* gst/gdp/gstgdppay.c: (gst_gdp_pay_reset),
(gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain):
Fix memory leaks and misleading debug messages, add a couple of
comments.
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_get_stats),
(gst_multi_fd_sink_render):
Do not use gst_buffer_make_writable() in a basesink render method,
as it may incorrectly unref the buffer. Instead, use convoluted
dance to avoid copying the buffer except when we need to.
2012-09-11 01:54:31 +01:00
Thomas Vander Stichele
ab0f3921f5
adding a README
...
Original commit message from CVS:
adding a README
2012-09-11 01:54:31 +01:00
Thomas Vander Stichele
760d64bab2
Move GDP plugin to -base from -bad. Closes #347783 .
...
Original commit message from CVS:
* configure.ac:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/inspect/plugin-gdp.xml:
* gst/gdp/Makefile.am:
* tests/check/Makefile.am:
Move GDP plugin to -base from -bad. Closes #347783 .
2012-09-11 01:54:31 +01:00
Zaheer Abbas Merali
adf8399952
gst/gdp/gstgdpdepay.c: Fix event parsing by gdpdepay. Fixes #349916 .
...
Original commit message from CVS:
2006-08-04 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
Fix event parsing by gdpdepay. Fixes #349916 .
2012-09-11 01:54:30 +01:00
Wim Taymans
8b7b165e1b
gst/gdp/gstgdpdepay.c: Disable seeking.
...
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init),
(gst_gdp_depay_finalize), (gst_gdp_depay_sink_event),
(gst_gdp_depay_src_event), (gst_gdp_depay_chain),
(gst_gdp_depay_change_state):
Disable seeking.
Small cleanups.
Clear adapter on disconts.
Clear caps when going to READY instead of NULL
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init),
(gst_gdp_pay_init), (gst_gdp_pay_finalize), (gst_gdp_pay_reset),
(gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer),
(gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader),
(gst_gdp_queue_buffer), (gst_gdp_pay_chain),
(gst_gdp_pay_sink_event), (gst_gdp_pay_src_event),
(gst_gdp_pay_change_state):
* gst/gdp/gstgdppay.h:
Reset payloader when going to READY.
Fix leaked buffers in ->queue on push errors.
Disable seeking.
Code cleanups.
Create packetizer in _init, free in _finalize.
2012-09-11 01:54:29 +01:00
Wim Taymans
6c124ba100
gst/gdp/gstgdpdepay.c: Consume all events except EOS because we generate events from the gdp payload instead. Fixes #...
...
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init),
(gst_gdp_depay_sink_event), (gst_gdp_depay_chain):
Consume all events except EOS because we generate events from
the gdp payload instead. Fixes #349204
2012-09-11 01:54:29 +01:00
Thomas Vander Stichele
0d7a03eda3
gst/gdp/gstgdpdepay.c: proxying get/set caps is the wrong thing to do, since we really do change caps quite fundament...
...
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init):
proxying get/set caps is the wrong thing to do, since we really
do change caps quite fundamentally
* tests/check/elements/gdpdepay.c:
* tests/check/elements/gdppay.c:
remove declaration of buffers, it's already done in gstcheck.h
2012-09-11 01:54:29 +01:00
Thomas Vander Stichele
afe32c11ec
gst/gdp/: remove parent_class setting, BOILERPLATE does this fix typo in comment
...
Original commit message from CVS:
2006-07-17 Thomas Vander Stichele <thomas at apestaart dot org>
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_class_init):
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init),
remove parent_class setting, BOILERPLATE does this
(gst_gdp_pay_reset_streamheader):
fix typo in comment
2012-09-11 01:54:29 +01:00
Thomas Vander Stichele
366b9b2284
build as a plugin, not a lib
...
Original commit message from CVS:
build as a plugin, not a lib
2012-09-11 01:54:29 +01:00
Thomas Vander Stichele
01d7de7e2d
docs/plugins/: add more plugins and elements to docs
...
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
add more plugins and elements to docs
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
fix segfaults due to wrong g_free
add example
* gst/gdp/gstgdppay.c:
add example
2012-09-11 01:54:29 +01:00
Tim-Philipp Müller
17582f36fc
Use GST_DEBUG_CATEGORY_STATIC where possible ( #342503 ) and fix one GObject boilerplate macro.
...
Original commit message from CVS:
* ext/directfb/dfbvideosink.c:
* ext/gsm/gstgsmdec.c:
* ext/gsm/gstgsmenc.c:
* ext/libmms/gstmms.c:
* ext/neon/gstneonhttpsrc.c:
* ext/theora/theoradec.c:
* gst/freeze/gstfreeze.c:
* gst/gdp/gstgdpdepay.c:
* gst/gdp/gstgdppay.c:
* sys/glsink/glimagesink.c:
Use GST_DEBUG_CATEGORY_STATIC where possible (#342503 )
and fix one GObject boilerplate macro.
2012-09-11 01:54:29 +01:00
Thomas Vander Stichele
1094a0a54d
adapt to new api
...
Original commit message from CVS:
adapt to new api
2012-09-11 01:54:29 +01:00
Thomas Vander Stichele
10c57d9254
configure.ac: enable building of GDP elements
...
Original commit message from CVS:
* configure.ac:
enable building of GDP elements
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init),
(gst_gdp_pay_init), (gst_gdp_buffer_from_caps),
(gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event),
(gst_gdp_pay_reset_streamheader), (gst_gdp_pay_sink_event),
(gst_gdp_pay_set_property), (gst_gdp_pay_get_property),
(gst_gdp_pay_change_state):
* gst/gdp/gstgdppay.h:
add version 1.0
2012-09-11 01:54:28 +01:00
Thomas Vander Stichele
a5ef603d20
small fixes
...
Original commit message from CVS:
small fixes
2012-09-11 01:54:28 +01:00
Thomas Vander Stichele
ad556efb2a
gst/gdp/gstgdppay.c: add crc-header and crc-payload properties don't error out on some things that are recoverable
...
Original commit message from CVS:
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init),
(gst_gdp_pay_init), (gst_gdp_buffer_from_caps),
(gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event),
(gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain),
(gst_gdp_pay_sink_event), (gst_gdp_pay_set_property),
(gst_gdp_pay_get_property):
add crc-header and crc-payload properties
don't error out on some things that are recoverable
* tests/check/elements/gdppay.c: (GST_START_TEST), (gdppay_suite):
add test for crc
2012-09-11 01:54:28 +01:00
Stefan Kost
1f3890d483
Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
...
Original commit message from CVS:
* ext/alsaspdif/alsaspdifsink.h:
* ext/amrwb/gstamrwbdec.h:
* ext/amrwb/gstamrwbenc.h:
* ext/amrwb/gstamrwbparse.h:
* ext/arts/gst_arts.h:
* ext/artsd/gstartsdsink.h:
* ext/audiofile/gstafparse.h:
* ext/audiofile/gstafsink.h:
* ext/audiofile/gstafsrc.h:
* ext/audioresample/gstaudioresample.h:
* ext/bz2/gstbz2dec.h:
* ext/bz2/gstbz2enc.h:
* ext/dirac/gstdiracdec.h:
* ext/directfb/dfbvideosink.h:
* ext/divx/gstdivxdec.h:
* ext/divx/gstdivxenc.h:
* ext/dts/gstdtsdec.h:
* ext/faac/gstfaac.h:
* ext/gsm/gstgsmdec.h:
* ext/gsm/gstgsmenc.h:
* ext/ivorbis/vorbisenc.h:
* ext/libfame/gstlibfame.h:
* ext/nas/nassink.h:
* ext/neon/gstneonhttpsrc.h:
* ext/polyp/polypsink.h:
* ext/sdl/sdlaudiosink.h:
* ext/sdl/sdlvideosink.h:
* ext/shout/gstshout.h:
* ext/snapshot/gstsnapshot.h:
* ext/sndfile/gstsf.h:
* ext/swfdec/gstswfdec.h:
* ext/tarkin/gsttarkindec.h:
* ext/tarkin/gsttarkinenc.h:
* ext/theora/theoradec.h:
* ext/wavpack/gstwavpackdec.h:
* ext/wavpack/gstwavpackparse.h:
* ext/xine/gstxine.h:
* ext/xvid/gstxviddec.h:
* ext/xvid/gstxvidenc.h:
* gst/cdxaparse/gstcdxaparse.h:
* gst/cdxaparse/gstcdxastrip.h:
* gst/colorspace/gstcolorspace.h:
* gst/festival/gstfestival.h:
* gst/freeze/gstfreeze.h:
* gst/gdp/gstgdpdepay.h:
* gst/gdp/gstgdppay.h:
* gst/modplug/gstmodplug.h:
* gst/mpeg1sys/gstmpeg1systemencode.h:
* gst/mpeg1videoparse/gstmp1videoparse.h:
* gst/mpeg2sub/gstmpeg2subt.h:
* gst/mpegaudioparse/gstmpegaudioparse.h:
* gst/multifilesink/gstmultifilesink.h:
* gst/overlay/gstoverlay.h:
* gst/playondemand/gstplayondemand.h:
* gst/qtdemux/qtdemux.h:
* gst/rtjpeg/gstrtjpegdec.h:
* gst/rtjpeg/gstrtjpegenc.h:
* gst/smooth/gstsmooth.h:
* gst/smoothwave/gstsmoothwave.h:
* gst/spectrum/gstspectrum.h:
* gst/speed/gstspeed.h:
* gst/stereo/gststereo.h:
* gst/switch/gstswitch.h:
* gst/tta/gstttadec.h:
* gst/tta/gstttaparse.h:
* gst/videodrop/gstvideodrop.h:
* gst/xingheader/gstxingmux.h:
* sys/directdraw/gstdirectdrawsink.h:
* sys/directsound/gstdirectsoundsink.h:
* sys/dxr3/dxr3audiosink.h:
* sys/dxr3/dxr3spusink.h:
* sys/dxr3/dxr3videosink.h:
* sys/qcam/gstqcamsrc.h:
* sys/vcd/vcdsrc.h:
Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
2012-09-11 01:54:28 +01:00
Thomas Vander Stichele
bc93eeb575
gst/gdp/: Handle error cases when calling functions do downwards state change after parent's change_state
...
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain),
(gst_gdp_depay_change_state):
* gst/gdp/gstgdpdepay.h:
* gst/gdp/gstgdppay.c: (gst_gdp_pay_reset_streamheader),
(gst_gdp_pay_chain), (gst_gdp_pay_sink_event),
(gst_gdp_pay_change_state):
* gst/gdp/gstgdppay.h:
Handle error cases when calling functions
do downwards state change after parent's change_state
* tests/check/elements/gdpdepay.c: (GST_START_TEST):
* tests/check/elements/gdppay.c: (GST_START_TEST):
clean up more
2012-09-11 01:54:28 +01:00
Thomas Vander Stichele
98f21eebb2
adding GDP payloader and depayloader. Build integration will follow later when the GDP issues for core are sorted out.
...
Original commit message from CVS:
* gst/gdp/Makefile.am:
* gst/gdp/gstgdp.c: (plugin_init):
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_base_init),
(gst_gdp_depay_class_init), (gst_gdp_depay_init),
(gst_gdp_depay_finalize), (gst_gdp_depay_chain),
(gst_gdp_depay_change_state), (gst_gdp_depay_plugin_init):
* gst/gdp/gstgdpdepay.h:
* gst/gdp/gstgdppay.c: (gst_gdp_pay_base_init),
(gst_gdp_pay_class_init), (gst_gdp_pay_init),
(gst_gdp_pay_dispose), (gst_gdp_stamp_buffer),
(gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer),
(gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader),
(gst_gdp_queue_buffer), (gst_gdp_pay_chain),
(gst_gdp_pay_sink_event), (gst_gdp_pay_change_state),
(gst_gdp_pay_plugin_init):
* gst/gdp/gstgdppay.h:
* tests/check/Makefile.am:
* tests/check/elements/gdpdepay.c: (setup_gdpdepay),
(cleanup_gdpdepay), (gdpdepay_push_per_byte), (GST_START_TEST),
(setup_gdpdepay_streamheader), (gdpdepay_suite), (main):
* tests/check/elements/gdppay.c: (setup_gdppay), (cleanup_gdppay),
(GST_START_TEST), (setup_gdppay_streamheader), (gdppay_suite),
(main):
adding GDP payloader and depayloader. Build integration will
follow later when the GDP issues for core are sorted out.
2012-09-11 01:54:28 +01:00
Olivier Crête
064b143635
rtpmux: Misc fix for 0.11
...
Convert the incoming caps before proxying them
Clear the last_pad when going to ready
tests: Implement accept_caps, don't leak event
2012-09-10 20:38:14 -04:00
David Schleef
be8aa2973e
inter: fix leaks in audiosrc/sink
2012-09-09 02:03:33 +01:00
Edward Hervey
0a4c2524fa
mpeg4videoparse: Don't override upstream framerate and PAR
...
If upstream provided some, there's a good chance they are the ones to use
2012-09-08 17:07:12 +02:00
Tim-Philipp Müller
8968628ca2
hls: disable hlssink but do build hlsdemux
2012-09-08 14:43:37 +01:00
Robert Swain
b33f041753
hls: Add missing GST_PLUGINS_BASE_CFLAGS
2012-09-07 16:25:36 +02:00
Robert Swain
9d003f4d2b
hlssink: Add segment target-duration property
...
This property causes hlssink to push a force key unit event upstream
every target-duration seconds. This is for simple automatic segmenting.
To disable it, set the property to 0 and push the force key unit event
manually.
2012-09-07 16:25:36 +02:00
Alessandro Decina
b1029d767e
hls: add hlssink element
2012-09-07 16:25:36 +02:00
Thiago Santos
2139c81cdb
camerabin2: use correct variable when handling pad probe buffers
...
Pad probe data is in the GstPadProbeInfo, not in the user data
parameter.
2012-09-06 01:53:07 -03:00
Tim-Philipp Müller
9e53df7667
diracparse: fix main profile mapping
2012-09-03 13:58:16 +01:00
Tim-Philipp Müller
0ff01faaaa
diracparse: change "interlaced" boolean in caps to "interlace-mode"
...
Not strictly needed, but let's make it consistent with the raw
video way of doing things.
2012-09-03 12:41:33 +01:00
Tim-Philipp Müller
39ca8d05d9
diracparse: use strings for profile and level in caps
...
For consistency with most other formats.
https://bugzilla.gnome.org/show_bug.cgi?id=658436
2012-09-03 12:40:33 +01:00
Tim-Philipp Müller
c161defb44
id3tag: extract year to write into ID3v1 tag from GST_TAG_DATE_TIME not GST_TAG_DATE
2012-09-02 03:55:35 +01:00
Matej Knopp
d3219a261a
mpeg4videoparse: set 0 duration when vop_coded is 0
...
https://bugzilla.gnome.org/show_bug.cgi?id=683169
2012-09-02 03:43:12 +01:00
Tim-Philipp Müller
a79edf27d0
gst_message_new_duration -> gst_message_new_duration_changed
2012-09-02 01:48:12 +01:00
Jan Schmidt
a303375a3f
autoconvert: Handle caps query on internal srcpad
...
Reply with ANY caps to ensure linking the internal src pad. This
might need more attention later, to reply with the real upstream caps
for the currently active element.
2012-09-01 16:09:59 -07:00
Jan Schmidt
f2d0c6a89e
resindvd/mpegdemux: Send both PTS and DTS downstream
...
Now that we can.
2012-09-01 16:09:59 -07:00
Jan Schmidt
463ac4c12f
dvdspu: Make GAP event aware
2012-08-31 13:12:41 -07:00
Jan Schmidt
ea707c1764
autoconvert: Don't drop upstream events due to silly typo
2012-08-31 07:06:50 -07:00
Jan Schmidt
3ace19461f
mpegdemux: Merge some DVD pieces and fixes
...
Bring the resindvd copy of mpegpsdemux and the normal version
slightly closer together.
Don't forward incoming sink caps event to downstream elements.
2012-08-31 07:06:50 -07:00
Jan Schmidt
628a8ed8b1
mpegdemux: avoid extra refs/unrefs of the demuxer
...
Change all the gst_pad_get_parent() calls to a cast to the
passed parent variable where appropriate, and don't unref,
including the extra unref in the
gst_flups_demux_sink_activate_push() function.
2012-08-31 07:06:50 -07:00
Mark Nauwelaerts
429204a89e
dvbsuboverlay: adjust to modified video overlay composition API
...
... and supply overlay rectangle data in AYUV as provided by input
data rather than converting to RGB.
2012-08-30 12:21:41 +02:00
Thiago Santos
edb5a28973
camerabin: no need to set clock/basetime again
...
The base and clock aren't lost anymore on state changes
in 1.0
2012-08-29 22:05:56 -03:00
Thiago Santos
cc130a2fea
camerabin: no need to send extra reconfigure
...
Setting capsfilters already sends reconfigure events when a new
caps is set, no need to resend them.
2012-08-29 22:05:04 -03:00
Thiago Santos
9ff5b6bcbe
camerabin: request _%u templates instead of _%d
...
In 1.0, templates have been renamed to _%u as default
2012-08-29 15:45:05 -03:00
Thiago Santos
9fd555c3d0
wrappercamerabinsrc: rework video recording eos push
...
Push EOS outside of wrappercamerabinsrc so that none of the
internal elements gets its pads into eos state, preventing any
further data from passing
2012-08-29 15:45:05 -03:00
Mark Nauwelaerts
4f2bcc3243
h264parse: ensure sufficiently sized buffer when wrapping NAL
...
Noted by <zhangyanping210@yahoo.com.cn>
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=682589
2012-08-28 11:07:50 +02:00
Stefan Sauer
c1923a6755
audiovisualizer: revert renaming of the type
...
The special type name was lost when merging from base.
2012-08-22 15:10:25 +02:00
Tim-Philipp Müller
875b079d4b
audiovisualizer: avoid registering enum type of same name as libvisual plugin in -base
2012-08-21 13:29:16 +01:00
Tim-Philipp Müller
205a15e14b
id3tag: fix build
...
Some code slipped into the last commit that was meant to be
pushed separately. Use gst_date_time_unref() instead of _free().
2012-08-21 10:29:55 +01:00
Tim-Philipp Müller
38c749ca2f
id3tag: port to 0.11
2012-08-21 10:22:49 +01:00
Tim-Philipp Müller
2483c82bd7
video/x-dvd-subpicture -> subpicture/x-dvd
2012-08-20 23:37:00 +01:00
Tim-Philipp Müller
cc167a237a
Fix up FSF address in some source files as well
2012-08-18 20:31:17 +01:00
Stefan Sauer
4132d222cb
audiovisualizer: sync to change in base and port
...
Add support for GstVideoMeta and GstVideoFrame. Remove some redundant fields
that are also in GstVideoInfo. Don't disable the shader code, it does not
look broken.
2012-08-17 22:57:10 +02:00
Stefan Sauer
48cf0f3a77
audiovisualizer: status update
2012-08-17 15:16:00 +02:00
Stefan Sauer
ce221fdbdd
visualizer: small cleanup
...
Apply cleanup from copy in base.
2012-08-15 11:26:59 +02:00
Edward Hervey
105737db54
mpegtspacketizer: Fix flushing/sync handling
...
There was a stray adapter_flush() now that we used a temporary buffer
2012-08-14 19:07:58 +02:00
Edward Hervey
121aa3ad13
mpegtspacketizer: Better detect PCR resets
...
Assume that any differences in PCR greater than 15s means there is
a reset in the stream.
2012-08-14 19:07:51 +02:00
Edward Hervey
3153965658
mpegtspacketizer: Remove/demote some debugging
2012-08-14 19:07:39 +02:00
Edward Hervey
9abedc97ff
tsdemux: Always use current PTS/DTS
...
This avoids setting old PTS and/or DTS
2012-08-14 19:07:33 +02:00
Edward Hervey
e25c2e8e74
mpegtspacketizer: Remove unneeded memset(0)
2012-08-14 19:07:28 +02:00
Edward Hervey
8b80114101
mpegts: Use G_GNUC_INTERNAL
2012-08-14 19:07:24 +02:00
Edward Hervey
4d4d2f6eb0
mpegtspacketizer: Use gst_structure_*_take_value where applicable
...
Saves copying/freeing data
2012-08-14 19:06:16 +02:00
Edward Hervey
5de6fd1ff8
mpegtspacketizer: Cache the GIConv
...
Avoids having to constantly open/free them (which will end up being
very often with EIT/NIT).
2012-08-14 19:06:11 +02:00
Edward Hervey
e3c0bbe5f6
mpegtbase: reset element in READY=>PAUSED
...
Ensures all subclass reset vmethods are called
2012-08-14 19:06:04 +02:00
Edward Hervey
b1295aef14
mpegtspacketizer: Use more Quarks
2012-08-14 19:05:58 +02:00
Edward Hervey
d54624aa49
tsdemux: Remove useless code
...
PCR/OPCR is meant to be handled by the packetizer
2012-08-14 19:05:52 +02:00
Edward Hervey
4f55cc12ae
tsdemux: Calculate pcr/time/offset separately per program
...
Avoids quite a few issues with multi-program streams
2012-08-14 19:05:48 +02:00
Edward Hervey
a8d1e88bda
tsparse: Push out buffer on main source pad
2012-08-14 19:05:44 +02:00
Edward Hervey
558beab1b4
mpegtbase: vmethod to notify when we're done processing input
...
This can be used to notify subclasses no more data is expected this
round.
tsparse will use it to push whole buffers (without copy) on the main
source pad.
It could also be used later to decide whether to push pending data
in order to reduce latency.
2012-08-14 19:05:37 +02:00
Wim Taymans
a9f46ed059
mpegvideoparse: only apply repeat count when set
...
When there is no extension header, the repeat_count variable is left to 0 and
then the duration on the output buffers is calculated wrongly. Because the
duration is used to interpolate output timestamps, the output timestamps are
also wrong, causing bad framerates.
See https://bugzilla.gnome.org/show_bug.cgi?id=681535
2012-08-13 10:58:50 +02:00
Sebastian Dröge
abfa30a42b
gst: Set alignment at the correct place of GstAllocationParams
2012-08-08 17:41:42 +02:00
Sebastian Dröge
bdc46898de
gst: Add stream-id to stream-start events
2012-08-06 14:05:08 +02:00
Tim-Philipp Müller
489b102a43
gst_tag_list_free -> gst_tag_list_unref
2012-08-04 16:31:30 +01:00
Tim-Philipp Müller
c031f5bd27
schroedinger, mpegtsmux: fix plugin names
2012-08-03 11:52:11 +01:00
Robert Swain
955e50449e
wrappercamerabinsrc: Save image/video reconfiguration until capturing
...
Add a src pad event handler function that filters reconfigure events to
trigger the renegotiation code paths in the mode-specific start-capture
phase.
This is to work towards fixing unit tests but more work is needed.
2012-08-02 22:46:21 +02:00
Thiago Santos
0a831613a8
camerabin: update preview buffer pushing
...
need to pass a GstSample to the utilitary preview buffer post functions
as a GstBuffer doesn't have caps anymore. The GstSample has the GstCaps
and it is used to inform the preview's pipeline about the format of the
input, before it gets converted to the user's requested output format.
2012-07-29 00:53:29 -03:00
Tim-Philipp Müller
8b36de8b41
Revert "camerabin: update to new tag event creation API"
...
This reverts commit 5d890b3c92
.
The new API is the old API.
2012-07-29 00:04:35 +01:00
Thiago Santos
3ce5a977ad
camerabin: Fix references to avoid element leaking
...
Some pad probes are never going to be removed from the pads, so
we shouldn't keep a camerabin reference with them or camerabin will
never get released
2012-07-28 18:27:19 -03:00
Thiago Santos
5d890b3c92
camerabin: update to new tag event creation API
2012-07-28 15:17:17 -03:00
Sebastian Dröge
afd50a79f4
tag: Update for taglist/tag event API changes
2012-07-28 00:32:58 +02:00
Wim Taymans
658e54ff8c
audiovisualizer: fixate caps
2012-07-24 12:28:18 +02:00
Wim Taymans
57fa9e8bb2
guadi: prefix orc functions with gaudi_orc_
2012-07-24 10:46:39 +02:00
Wim Taymans
f4220d35a5
fieldanalysis: prefix orc functions
2012-07-24 10:44:51 +02:00
Wim Taymans
c31950d3e8
bayer: prefix orc functions with bayer_orc
...
Add bayer orc to the unit test
2012-07-24 10:32:51 +02:00
Robert Swain
305db3ef56
interlace: Use buffer flags and caps correctly
...
This requires a recent commit to -base that adds an INTERLACED buffer
flag.
2012-07-20 23:29:54 +02:00
Stefan Sauer
62e5afb95e
spectrascope: fabs->sqrt to calculate the magnitude
2012-07-19 16:11:02 +02:00
Tim-Philipp Müller
0cf07e04be
mpegpsdemux: also activate in push mode if the scheduling query failed
...
In case pads are unlinked somewhere.
2012-07-18 09:19:30 +01:00
Tim-Philipp Müller
421b593048
mpegdemux: fix push mode activation
...
Extra unref on push mode activation caused havoc.
2012-07-18 08:43:01 +01:00
Mark Nauwelaerts
a39b6cc1b8
dvbsuboverlay: no need to make buffer writable twice
2012-07-17 18:09:47 +02:00
Mark Nauwelaerts
47be2fc3d8
dvbsuboverlay: plug some ref leaks
2012-07-17 18:09:46 +02:00
Mark Nauwelaerts
081779aaa8
dvbsuboverlay: adjust to modified video overlay composition API
2012-07-17 18:09:46 +02:00
Wim Taymans
87ee22fe0e
update for RTP buffer api changes
2012-07-17 16:39:02 +02:00
Stefan Sauer
124c9a7fa4
audiovisualizer: shorten base class name
...
As suggested on IRC rename to AudioVisualizer. We use custom suffix on the type
to avoid clashing with other copies for the time being.
2012-07-16 22:02:44 +02:00
Tim-Philipp Müller
41a39d93bf
celt, opencv, wayland, dvbsub, festival, hls: printf format fixes
2012-07-15 12:27:12 +01:00
Mark Nauwelaerts
8712729a8c
dvbsuboverlay: adaptively blend or attach video overlay composition
...
Conflicts:
gst/dvbsuboverlay/gstdvbsuboverlay.c
2012-07-13 12:32:51 +02:00
Mark Nauwelaerts
2d0866ec28
dvbsuboverlay: use video overlay composition helper
...
... rather than custom home-made blending.
Conflicts:
gst/dvbsuboverlay/gstdvbsuboverlay.c
2012-07-13 12:27:57 +02:00
Mark Nauwelaerts
76aedf5641
tsdemux: more correctly determine expected PES packet payload size
...
... particularly considering that packet_length == 0 is possible.
2012-07-12 10:17:57 +02:00
Mark Nauwelaerts
006fe188e7
tsdemux: correctly determine expected PES packet payload size
...
Avoids consistently failing to detect that a packet is complete, which
would then only be pushed upon the start of a next packet, which leads
to quite a delay in case of a sparse (subtitle) stream.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=666674
2012-07-11 20:43:46 +02:00
Mark Nauwelaerts
4374a90553
dvbsuboverlay: ensure minimum page time out of 1 second
...
... to compensate for some bogus subtitle with a 0 timeout, which would
result in only being shown for a very unreadable amount of time.
See https://bugzilla.gnome.org/show_bug.cgi?id=666674
2012-07-11 20:43:43 +02:00
Tim-Philipp Müller
584485b9f4
dvbsuboverlay: fix compiler warnings
...
gstdvbsuboverlay.c:772:15: error: pointer targets in passing argument 5 of 'gst_segment_clip' differ in signedness
/home/tpm/gst/0.11/gstreamer/gst/gstsegment.h:192:14: note: expected 'guint64 *' but argument is of type 'gint64 *'
gstdvbsuboverlay.c:772:15: error: pointer targets in passing argument 6 of 'gst_segment_clip' differ in signedness
2012-07-11 13:59:18 +01:00
Mark Nauwelaerts
39d2a9fb44
dvbsuboverlay: fixup end-of-display-set forcing
...
Conflicts:
gst/dvbsuboverlay/gstdvbsuboverlay.c
2012-07-11 13:49:14 +02:00
Mark Nauwelaerts
5be47b949d
dvbsuboverlay: ensure valid subtitle running time by proper clipping
...
In particular, pass buffer timestamp (pts) to dvb_sub, and then clip
and convert to running time when the duration (timeout) is known after
decoding it.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=660233
Conflicts:
gst/dvbsuboverlay/gstdvbsuboverlay.c
2012-07-11 13:48:32 +02:00
Mark Nauwelaerts
76b147e803
dvbsuboverlay: properly force end-of-display-set
...
... which is upon receiving new data with different PTS spec-wise,
or optionally upon each packet of subtitle data if desired by property.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=669310
Conflicts:
gst/dvbsuboverlay/gstdvbsuboverlay.c
2012-07-11 13:45:14 +02:00
Mart Raudsepp
76ddd498e2
dvbsuboverlay: Handle non_modifying_colour_flag correctly in the RLE handlers
...
The check for when to not memset was checking on an undeterministic 'bits' variable value,
which is only meant to be used inside the loop earlier when it is supposed to check if
clut_index is 1 together with non_mod set, as per spec:
"non_modifying_colour_flag: If set to '1' this indicates that the CLUT entry value '1'
is a non modifying colour. When the non modifying colour is assigned to an object pixel,
then the pixel of the underlying region background or object shall not be modified. This
can be used to create "transparent holes" in objects."
https://bugzilla.gnome.org/show_bug.cgi?id=666352
2012-07-11 13:42:02 +02:00
Lasse Laukkanen
8fd2fc662a
photography: Add GstPhotography prefix and fix spelling colour->color
...
https://bugzilla.gnome.org/show_bug.cgi?id=622482
2012-07-11 00:10:55 +01:00
Wim Taymans
29092cc3b8
festival: unmap input buffer
2012-07-10 12:19:17 +02:00
Sreerenj Balachandran
68fadbb92a
port festival to 0.11
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679373
2012-07-10 12:19:17 +02:00
Tim-Philipp Müller
ae063e2942
dataurisrc: copy into provided buffer if a buffer is provided
2012-07-10 00:59:40 +01:00
Mark Nauwelaerts
63cdec88ae
asfmux: update for riff field rename
2012-07-09 12:54:41 +02:00
Stefan Sauer
266d1f62c0
audiovisualizers: update baseclass from libvisual porting
2012-07-08 19:27:23 +02:00
Tim-Philipp Müller
ea65e5d501
dtmfsrc: pass unhandled non-custom events to the base class
...
https://bugzilla.gnome.org/show_bug.cgi?id=666626
2012-07-08 00:08:55 +01:00
Tim-Philipp Müller
219e9ab133
asfmux: remove deprecated "is-live" property
...
Use the "streamable" property instead.
2012-07-06 14:53:57 +01:00
Sebastian Dröge
9c7d7498bb
gst: Implement segment-done event
2012-07-05 13:18:47 +02:00
David Schleef
963e6e3397
inter: Increase the inter audio surface buffering
2012-07-03 09:09:14 +02:00
David Schleef
e5c55ad554
interaudiosink: reenable channel property
2012-07-03 09:09:08 +02:00
David Schleef
b96fde73ab
interaudiosrc: Set format to time
2012-07-03 09:09:03 +02:00
Edward Hervey
d3271381ee
mpegtsbase: Move known PSI PIDs to where they belong
...
This avoids tsdemux parsing data is doesn't really care about
Conflicts:
gst/mpegtsdemux/mpegtsparse.c
2012-06-29 10:02:30 +02:00
Edward Hervey
ada9990092
mpegtbase: Add more known default SI PIDs
2012-06-29 09:59:13 +02:00
Edward Hervey
b5967d2323
tsdemux: Fix AAC LATM caps
2012-06-29 09:23:32 +02:00
Mark Nauwelaerts
c4b480b993
mpegtsmux: apply some more CLOCK_BASE to ensure slack for PCR offset
...
Conflicts:
gst/mpegtsmux/tsmux/tsmux.c
2012-06-27 14:52:10 +02:00
Wim Taymans
ba87a4524f
fix x-wmv format string
2012-06-27 11:23:19 +02:00
Wim Taymans
c0cd1c43ab
interlace: port to 0.11
2012-06-26 16:39:56 +02:00
Stefan Sauer
046d3ab98f
spectrascope: avoid dark pixels in fade-and-move-up mode
2012-06-24 21:11:39 +02:00
Stefan Sauer
65fa897f93
audiovisualizers: fix input buffer handling
...
Use _replace instead of _append to fix growing buffers.
2012-06-24 20:55:37 +02:00
Tim-Philipp Müller
2f15ebca96
hls, sdp: update for gst_element_make_from_uri() changes
2012-06-23 15:02:13 +01:00
Tony Houghton
a996d2f01a
Correct satellite delivery descriptor parsing.
...
Original code to parse satellite delivery descriptors to generate
"satellite" structures appeared to be copy & pasted from cable's code
without amending for satellite.
Also added 8PSK to dvbsrc's enum for modulation.
https://bugzilla.gnome.org/show_bug.cgi?id=654485
Conflicts:
gst/mpegdemux/gstmpegdesc.h
gst/mpegdemux/mpegtspacketizer.c
2012-06-21 11:37:21 +01:00
Edward Hervey
b8f32811ca
tsparse: Rework handling and cleanups
...
tspad always has a static source pad which output everything received
(not functional yet).
Program pads are now request pads.
Remove all cruft that should have been removed from the switch over
to mpegtsbase.
Conflicts:
gst/mpegtsdemux/mpegtsparse.c
2012-06-21 11:34:28 +01:00
Edward Hervey
a8dd05742a
mpegtbase: Always send EOS
...
subclass will take care of handling it more if needed
2012-06-21 11:25:17 +01:00
Wim Taymans
b3308676fd
update for bus api changes
2012-06-20 12:34:21 +02:00
Mark Nauwelaerts
ed34ed5b3d
mpegtsmux: fix value handling in pad iteration
2012-06-20 12:22:09 +02:00
Wim Taymans
dbed726057
update for task api change
2012-06-20 10:40:42 +02:00
Matej Knopp
9ad3761148
mpegtsmux: fix memory leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=678130
2012-06-20 10:21:42 +02:00
Edward Hervey
a931620208
mpegtspacketizer: Don't use GByteArray
...
Using a simple array comes to the same result for a fraction of the cost
2012-06-19 10:49:45 +01:00
Edward Hervey
8fd2d43d60
mpegtbase: Avoid copying GstStructure
2012-06-19 10:49:37 +01:00
Edward Hervey
94c68115ef
mpegdesc: Don't allocate/free GstMPEGDescriptor
...
Just use static variables
2012-06-19 10:49:26 +01:00
Tim-Philipp Müller
a3fc64d153
mpegdemux: rename plugin to mpegpsdemux
2012-06-16 18:35:56 +01:00
Tim-Philipp Müller
61bad24f81
mpegdemux: remove unused TS demuxer bits that have moved to tsdemux
2012-06-16 18:35:56 +01:00
Mark Nauwelaerts
20507bc0cf
mpegtsmux: remove obsolete struct field
2012-06-16 19:23:00 +02:00
Mark Nauwelaerts
beceb09acc
mpegtsmux: add support for DVB subtitle and teletext streams
...
See bug #673582 .
Conflicts:
gst/mpegtsmux/Makefile.am
2012-06-16 19:23:00 +02:00
Mark Nauwelaerts
898f6b48be
mpegtsmux: optionally use fixed-size PES header
2012-06-16 19:23:00 +02:00
Mark Nauwelaerts
f49e74aa34
mpegtsmux: only write PTS and DTS if different
2012-06-16 19:23:00 +02:00
Mark Nauwelaerts
fd92a8b65a
mpegtsmux: optionally set data_alignment flag in PES header
2012-06-16 19:23:00 +02:00
Mark Nauwelaerts
c76627ec9a
mpegtsmux: re-enable inadvertent disabled code
2012-06-16 19:22:59 +02:00
Mark Nauwelaerts
e8ab5af7b0
mpegtsmux: use default CollectPads collect heuristic
...
... with an appropriately custom buffer clip function to arrange for
buffer processing.
Conflicts:
gst/mpegtsmux/mpegtsmux.c
gst/mpegtsmux/mpegtsmux.h
2012-06-16 19:22:59 +02:00
Raimo Järvi
3f9a0a1747
mpegtsmux: Fix compiler warnings
...
https://bugzilla.gnome.org/show_bug.cgi?id=678211
2012-06-16 19:22:59 +02:00
Mark Nauwelaerts
893d6eb2a3
mpegtsmux: fix ported segment init
2012-06-16 19:22:59 +02:00
Matej Knopp
6229305d7b
mpegtsmux: port to 0.11
...
https://bugzilla.gnome.org/show_bug.cgi?id=678130
2012-06-16 19:22:35 +02:00
Raimo Järvi
e0241278f6
rfbsrc: Fix compiling in Windows
...
https://bugzilla.gnome.org/show_bug.cgi?id=677724
2012-06-14 16:38:22 +01:00
Tim-Philipp Müller
5f57478dc8
chart: remove old plugin that has never been ported to 0.10
2012-06-12 21:29:18 +01:00
Tim-Philipp Müller
739f653fed
videodrop: drop videodrop
...
It was never even ported to 0.10, and videorate does its job now.
2012-06-12 21:21:01 +01:00
Tim-Philipp Müller
588ea345b2
legacyresample: remove legacy plugin
2012-06-12 19:14:06 +01:00
Edward Hervey
5ae01f10fd
dvdspu: Fix array type
...
We wanted an array of guint8 (and not an array of pointers) to store
the data from gst_buffer_extract() and read it.
2012-06-12 11:02:38 +02:00
Mark Nauwelaerts
40760117b1
mpegtsmux: sprinkle some more debug catering
2012-06-11 16:52:55 +02:00
Mark Nauwelaerts
bef06e8c8d
mpegtsmux: add SPN/PTS indexing capabilities
...
Based on patch by Andreas Frisch <fraxinas@opendreambox.org>
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=644890
2012-06-11 16:52:53 +02:00
Mark Nauwelaerts
05dcabfe16
mpegtsmux: avoid memcpy due to temporary packet buffer
...
... by writing directly into the output buffer instead.
2012-06-11 16:52:49 +02:00
Tim-Philipp Müller
b7e82b27be
dvdspu: allow debugging of render and highlight rectangles via environment variable
...
Enable debugging of rectangles via GST_DVD_SPU_DEBUG.
https://bugzilla.gnome.org/show_bug.cgi?id=667223
Conflicts:
gst/dvdspu/gstspu-vobsub-render.c
2012-06-11 10:32:43 +02:00
Rob Clark
4e627c3e0d
dvdspu: cleanup debug code
...
Clean up debug code for drawing highlight rects which wasn't even
compiling previously.
TODO: might be nice if this could be controlled by properties or
env variables to make it possible to enable the debug code at
runtime.
https://bugzilla.gnome.org/show_bug.cgi?id=667223
Conflicts:
gst/dvdspu/gstspu-vobsub-render.c
2012-06-11 10:30:57 +02:00
Mark Nauwelaerts
c2387d8bf6
mpegtsmux: plug leaks when freeing stream
2012-06-08 17:20:30 +02:00
Sebastian Dröge
701da03ff9
elements: Use gst_pad_set_caps() instead of manual event fiddling
2012-06-08 15:58:36 +02:00
Mark Nauwelaerts
351f3915db
mpegtsmux: drain cached data upon EOS
2012-06-08 11:30:07 +02:00
Mark Nauwelaerts
0407e21ee3
mpegtsmux: allow for aligned output
...
... and refactor packet handling some more in the process.
Fixes #651805 .
2012-06-08 11:30:05 +02:00
Mark Nauwelaerts
ead42a5e27
mpegtsmux: improve m2ts timestamp interpolation
...
* a known PCR should really belong to a packet holding that PCR
* interpolation can be extended backward for initial packets (PAT, PMT)
2012-06-08 11:30:03 +02:00
Mark Nauwelaerts
8637fd69e5
mpegtsmux: tweak output buffer timestamping
2012-06-08 11:30:01 +02:00
Sebastian Dröge
ab7c61d165
Release 0.11.92
2012-06-07 16:23:09 +02:00
Wim Taymans
b98ec32380
update for tag event change
2012-06-06 13:02:40 +02:00
Wim Taymans
377556421d
bayer: fix output frame map
2012-06-06 11:19:06 +02:00
Mark Nauwelaerts
4cc905409e
mpegtsmux: more header clarifications and remove some redundant fields
2012-06-06 10:32:05 +02:00
Mark Nauwelaerts
38bb55c472
mpegtsmux: avoid PID collision for auto-generated PID
2012-06-06 10:31:59 +02:00
Edward Hervey
fa4f487d8f
tsmux: inline more code
...
With the previous commit, makes mpegtsmux 10 to 15% faster
2012-06-06 10:31:54 +02:00
Edward Hervey
e3a02ce49a
mpegtsmux: Don't use g_list_first ()
...
Seriously ...
2012-06-06 10:31:48 +02:00
Mark Nauwelaerts
c195a015e1
mpegtsmux: also properly reset and free pad data
2012-06-06 10:31:43 +02:00
Mark Nauwelaerts
ec109c390f
mpegtsmux: refactor init using _reset to cater for proper reuse
2012-06-06 10:31:39 +02:00
Mark Nauwelaerts
8cb22ffeaa
mpegtsmux: header cleanups and clarifications
2012-06-06 10:31:34 +02:00
Mark Nauwelaerts
59627a3e5d
mpegtsmux: tweak buffer handling
...
... for clarity and to avoid mixing _peek/_pop
2012-06-06 10:31:29 +02:00
Mark Nauwelaerts
30c782e062
mpegtsmux: misc code cleanups and refactoring
2012-06-06 10:31:24 +02:00
Mark Nauwelaerts
d97d49d237
mpegtsmux: avoid separate allocation for list of programs
2012-06-06 10:31:19 +02:00
Mark Nauwelaerts
281f48f66e
mpegtsmux: rearrange define's
2012-06-06 10:31:14 +02:00
Mark Nauwelaerts
4d94e0fcf7
mpegtsmux: removed hacked event handling
...
Conflicts:
gst/mpegtsmux/mpegtsmux.c
Reverted back to 0.10 state as it wasn't really ported
yet anyway.
2012-06-06 10:30:55 +02:00
Edward Hervey
e2576f0e86
mpegtsdemux: Also parse TOT (Time Offset Section)
...
It's the same as TDT, except with descriptors at the end
2012-06-05 10:54:27 +02:00
Edward Hervey
d9121c38ea
mpegtsdemux: FIXME/Comment about issues/errors
2012-06-05 10:54:26 +02:00
Edward Hervey
9e117b83fc
mpegtspacketizer: Fix leak
2012-06-05 10:54:26 +02:00
Edward Hervey
5f7ecaa0f1
mpegtspacketizer: Reduce usage of GstAdapter
...
Peek as much as possible in one go. Ideally we should remove usage of
adapter altogether, but for the time being it provides a big enough
speedup (around 2 times faster per packet processed).
2012-06-05 10:54:26 +02:00
Edward Hervey
f0867c7247
mpegtspacketizer: Avoid alloc/free where possible
...
Helps for streams with a lot of sections, like EIT
2012-06-05 10:54:26 +02:00
Edward Hervey
aab8c46f10
mpegtbase: Add more sections that don't have a CRC
2012-06-05 10:54:26 +02:00
Edward Hervey
25f6c78d79
mpegdefs: Add list of known table_id
...
Along with the specifications from which they come. Avoids having
to search for which spec a table_id belongs to
2012-06-05 10:54:26 +02:00
Edward Hervey
0e86e68c6a
mpegtspacketizer: Clarify debug statements
...
Use hex values in more cases (since that's how PID/table_id/... are
represented in the various specs).
2012-06-05 10:54:26 +02:00
Edward Hervey
63f8b970af
mpegtsbase/packetizer: Add CAT section handling
...
Allows reporting the global EMM
2012-06-05 10:54:25 +02:00
Edward Hervey
dfe6863387
mpegtbase: Add more debug in PSI handling
...
Allows us to identify which SI we don't handle
2012-06-05 10:47:49 +02:00
Edward Hervey
d47d1713d9
mpegtbase: Add more default known PSI table_id
2012-06-05 10:47:49 +02:00
Edward Hervey
9924c178c8
mpegtbase: Refactor PSI detection
2012-06-05 10:47:49 +02:00
Sebastian Dröge
7c6093357b
videoparsers: Fix GstBaseParse::get_sink_caps() implementations
...
They should take the filter caps into account and always return
the template caps appended to the actual caps. Otherwise the
parsers stop to accept unparsed streams where upstream does not
know about width, height, etc.
Fixes bug #677401 .
2012-06-05 09:30:00 +02:00
Edward Hervey
9f7e70f754
mpegtbase: ECM/CA sections don't have a CRC
...
So don't check for it :)
Also add a bit more info in the warning message to speed up detecting
whether it's a false-positive or not.
2012-06-01 16:42:41 +02:00
Edward Hervey
8b2f229553
mpegdesc: Add more comments/info
...
Namely where they belong to
2012-05-26 15:54:51 +02:00
Edward Hervey
8aa64c5d7d
tsdemux: Make sure we have a language code before using it
2012-05-26 15:54:48 +02:00
Edward Hervey
7784c0d350
mpegtsbase: Check before getting descriptors from structure
...
Avoids spurious warnings. Not having those descriptors is nothing
fatal, so check their presence before trying to get them.
2012-05-26 15:54:44 +02:00
Edward Hervey
b6732a27d3
pesparse: Be a bit more permissive with PTS/DTS parsing
...
According to the specifications a PTS_DTS_flags value of 0x01 is forbidden.
... but there are some rare files out there that do that.
Instead of erroring out, let's warn, carry on parsing accordingly.
If the packet is really corrupted there are enough checks afterward to
detect that.
2012-05-26 15:54:41 +02:00
Edward Hervey
12f24874aa
mpegtsbase: Fix bit operation
...
"a % 8" corresponds to "a & 0x7" (and not 0xf).
spotted by Julian Scheel
2012-05-25 14:16:59 +02:00
Edward Hervey
a633347ed1
mpegtsbase: Speed up _is_psi()
...
By making it inline and simplifying the bit macros
2012-05-23 09:37:49 +02:00
Mark Nauwelaerts
c5664dcda7
mpegvideoparse: avoid scanning for start codes twice
...
... since a previous terminating start code serves as subsequent start code.
2012-05-22 21:34:10 +02:00
Julian Scheel
a0a184931a
tsdemux: Add language code to taglist.
...
Read the language codes for tracks from the mpegts descriptors and add it into
the pads taglist.
https://bugzilla.gnome.org/show_bug.cgi?id=673896
2012-05-22 18:13:30 +02:00
Edward Hervey
6bf54ff850
tsdemux: Adapt to new packetizer API
...
We no longer use GstBufferList and instead copy the incoming data
into newly allocated memory.
This makes tsdemux behaviour 3 to 4 times faster.
2012-05-22 17:43:38 +02:00
Edward Hervey
7fdf1cb0c8
tsparse: Adapt to new packetizer API
2012-05-22 17:43:38 +02:00
Edward Hervey
3c73d29162
mpegtsbase: Adapt to new packetizer behaviour
2012-05-22 17:43:38 +02:00
Edward Hervey
c6035d403c
mpegtspacketizer: Avoid usage of GstBuffer internally
...
The overhead of creating/using 188 byte GstBuffer from GstAdapter
is too expensive.
We now peek the next packet, and provide a data/size which is only
valid until the packetizerpacket is cleared.
In addition, cleanup all the internal code to deal with that new
behaviour and remove double-checks which are no longer needed.
The section_length is now the corrected section_length (i.e. with
the additional 3 bytes).
Avoid using gst_adapter_prev_timestamp and instead track
the timestamp ourself.
2012-05-22 17:43:38 +02:00
Edward Hervey
6d01f5f1b3
mpegtspacketizer: Detect PCR wraparound in skew code
...
If the received PCR is going backwards (by a safe margin), include
that wraparound for further calculation.
https://bugzilla.gnome.org/show_bug.cgi?id=674536
2012-05-22 16:51:25 +02:00
Mark Nauwelaerts
09209045b6
videoparsers: avoid repeated caps setting
2012-05-22 14:49:18 +02:00
Mark Nauwelaerts
28f3858b94
mpegvideoparse: tweak codec parser API and adjust parser element
...
... to allow for more efficient parsing and (more) consistent parsing API
among various codec parsers.
Fixes #672701 .
Conflicts:
gst/videoparsers/gstmpegvideoparse.c
2012-05-22 14:09:47 +02:00
Sebastian Dröge
b5f5b8bf04
frei0r: Double properties are supposed in the range [0.0, 1.0]
...
Fixes bug #676137 .
2012-05-22 11:20:06 +02:00
Mark Nauwelaerts
1f0c18daf2
mpegvideoparse: unobfuscate frame parsing
...
... and add comments and debug statements.
Fixes #674202 .
Conflicts:
gst/videoparsers/gstmpegvideoparse.c
2012-05-21 20:31:27 +02:00
Mark Nauwelaerts
35a58df012
mpegvideoparse: Revert "fix crash"
...
This reverts commit 91210831ee672343a296f31357144359d5c2e768.
Such explicit reset should not be needed as it is arranged for by
the baseclass in unison with monitoring for a new frame by subclass.
As such it might wrongfully hide something else going on ...
See #674073 .
2012-05-21 20:25:01 +02:00
Tim-Philipp Müller
508b9ff51a
autoconvert: don't access GstElementFactory structure directly
2012-05-19 15:34:25 +01:00
Julian Scheel
5536bcf8b8
tsdemux: flush on pusi only for payload packets
...
Data should not be flushed out of the tsdemux because a payload unit start
indicator (pusi) is seen in a adaptation only ts packet. If the package contains no
payload a pusi does not indicate a new PES packet, but PSI information, etc.
This fixes playback of several TS files which contain ts packets without
payload but with pusi set to 1.
https://bugzilla.gnome.org/show_bug.cgi?id=676168
2012-05-18 11:12:20 +02:00
Edward Hervey
e75612c3fd
tsdemux: Don't queue data for streams that don't have a pad
...
This would result in an error further down, and it also avoids processing
for that data which we wouldn't be using anyway.
2012-05-18 11:11:37 +02:00
Edward Hervey
8a4fd8358d
tsdemux: Detect and handle scrambled packets
...
Users (tsdemux/mpegtsparse) can decide what to do with that
2012-05-18 11:11:31 +02:00
Edward Hervey
fa4b92e743
tsdemux: Emit no-more-pads when all pads are activated
...
Fixes #670921 again
2012-05-18 11:11:25 +02:00
Luis de Bethencourt
94f370c7d7
gaudieffects: add fallback code for orc
...
this includes an improved version of the burn filter, with a ~40% speed
improvement.
2012-05-17 11:15:22 +01:00
Luis de Bethencourt
e044e0fab4
gaudieffects: use CLAMP in solarize
...
No need to have a gate_int () function duplicating the already existing and
established CLAMP () function.
2012-05-17 10:54:31 +01:00
Luis de Bethencourt
9cb4f4e622
gaudieffects: use CLAMP in exclusion
...
No need to have a gate_int () function duplicating the already existing and
established CLAMP () function.
2012-05-17 10:54:31 +01:00
Luis de Bethencourt
4990dc2d1f
gaudieffects: use CLAMP in dodge
...
No need to have a gate_int () function duplicating the already existing and
established CLAMP () function.
2012-05-17 10:54:31 +01:00
Luis de Bethencourt
cb3d1794f8
gaudieffects: use CLAMP in chromium
...
No need to have a gate_int () function duplicating the already existing and
established CLAMP () function.
2012-05-17 10:54:31 +01:00
Mark Nauwelaerts
7f72b99426
h264parse: also consider nal_length_size when inserting codec data
...
See #676174 .
2012-05-17 11:47:19 +02:00
John Hein
6e78920416
y4m: link against the right libgstvideo
...
https://bugzilla.gnome.org/show_bug.cgi?id=676189
2012-05-16 21:50:48 +01:00
Luis de Bethencourt
5800315447
gaudieffects: example pipelines with videoconvert
2012-05-16 17:56:58 +01:00
Luis de Bethencourt
ad4ffc446f
gaudieffects: orc-ify burn filter
2012-05-16 17:56:58 +01:00
Stefan Sauer
5b39799cf0
hls: use gst api for timestamps instead of the (wrong) api from a too new glib
...
Conflicts:
gst/hls/gstfragment.c
2012-05-15 16:08:00 +02:00
Mark Nauwelaerts
74c73eba05
mpegtsmux: optimize output by aggregating packets
...
... rather than pushing each (small) packet in a separate buffer.
m2ts mode not yet optimized though.
2012-05-14 11:52:29 +02:00
Albert Astrals Cid
dda551e723
mpegts: support items in extended event descriptor
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=672478
2012-05-14 11:51:15 +02:00
Luis de Bethencourt
e9cba00c6a
gaudieffects: consistency in templates name
2012-05-10 21:37:59 +01:00
Thibault Saunier
52265cce1e
hlsdemux: Add a connection-speed property
...
Conflicts:
gst/hls/gsthlsdemux.c
2012-05-10 14:17:57 -04:00
Thibault Saunier
a8afa9755e
hls: Add a way to get best playlist for a specific bitrate in M3U8Client
...
Make use of it in hlsdemux
2012-05-10 14:08:11 -04:00
Youness Alaoui
594d983ff9
hlsdemux: Add failover protection.
...
Multiple streams with same bandwidth get retried
2012-05-10 14:07:54 -04:00
Youness Alaoui
705a52a1ac
hlsdemux: Calculate the real bitrate and switch to the correct variant
...
We now calculate the actual bitrate using the download speed/size and
then switch directly to the variant that matches our bandwidth the
most.
It will also be able to handle any use case where some of the
variants are not available, and would skip them and go to the next
possible variant.
Conflicts:
gst/hls/gsthlsdemux.c
2012-05-10 14:06:44 -04:00
Youness Alaoui
bfd7a52c5d
hlsdemux: Do not reset the sequence number in a live stream for a normal playlist update.
...
Only for stream switching
2012-05-10 14:00:49 -04:00
Thibault Saunier
f7553b6b0d
hlsdemux: If we update the playlist, make sure the sequence number is never more than 3 fragments before the end
2012-05-10 14:00:19 -04:00
Youness Alaoui
df958b4906
hlsdemux: In a live stream, do not start from 3 fragments before the end.
2012-05-10 13:59:46 -04:00