Commit graph

2296 commits

Author SHA1 Message Date
Tim-Philipp Müller
fdaeae57c9 id3tag: change GType to GstId3Tag so it doesn't conflict with the id3tag plugin in -ugly 2009-05-22 09:51:29 +01:00
Tim-Philipp Müller
02bff8754b id3tag: register GType of the base class with a less generic name
.. so we can easily move the base class into -base later without
causing GType name conflicts.
2009-05-22 01:30:48 +01:00
Olivier Crête
c5ab83a1cb rtpbin: Implement releasing the streams
See #561752
2009-05-22 01:46:04 +02:00
Olivier Crête
451ca5dbc0 rtpbin: Keep jb signals handler
Keep the signal handlers so they can be disconnected at release time

See #561752
2009-05-22 01:16:11 +02:00
Wim Taymans
b3aeee2bf2 rtpbin: use the right lock for the sessions
Use the right lock when iterating the sessions.
2009-05-22 01:12:57 +02:00
Olivier Crête
fb59348dbe rtpbin: Free session if request pads are released
Free the session when all the request pads are released.
Don't mess with the session list in free_session as it is called from a foreach
on that list.
Set the state of the upstream element to NULL first.

See #561752
2009-05-22 01:03:55 +02:00
Olivier Crête
4424fd3c93 rtpbin: Implement relasing of the rtp recv pad 2009-05-22 00:51:53 +02:00
Olivier Crête
65d55e6b13 rtpbin: Implement releasing of rtp send pads 2009-05-22 00:44:51 +02:00
Olivier Crête
b831c9b434 rtpbin: Implement release of the recv rtcp pad
See #561752
2009-05-22 00:34:36 +02:00
Olivier Crête
ab80a4fa41 rtpbin: Implement releasing of rtcp src pad
See #561752
2009-05-22 00:16:19 +02:00
Wim Taymans
e9eae335f1 sdpdemux: rework RTCP sending and RTP receiving
When we are dealing with multiast, create the udp src and sink elements pointing
to the multicast addresses. When we are doing unicast, receive data on the local
ports and don't send RTCP because we don't know where we have to send it.

Fixes #583188
2009-05-21 22:22:06 +02:00
Michael Smith
fe38f53572 id3tag: Add new id3 tagging plugin, supports v1, v2.3, and v2.4.
By default, does v1 and v2.3, but there are properties to select.
Will hopefully replace id3mux, id3v2mux, in the not-too-distant future.
2009-05-21 13:15:46 -07:00
Edward Hervey
0520a2a53b mxf: Fix frame_layout for non-interlaced formats. Fixes #583337 2009-05-20 17:15:51 +02:00
Jan Schmidt
90aa8eff4c fpsdisplaysink: Fix resetting of the sink in NULL
Reset the fpsdisplaysink in NULL by removing the textoverlay if we
created it.

Fixes: #582633
2009-05-16 01:26:55 +01:00
Jan Schmidt
48e32a0890 Moved 'y4menc' from -bad to -good 2009-05-16 00:17:00 +01:00
Thiago Santos
405f80dec4 [qtmux] Fixes segfault when adding a blob as first tag.
Moves tags data initialization to the function that actually appends
the tags to the list. Fixes #582702

Also fixes some style caught by the pre-commit hook.
2009-05-15 09:21:44 -03:00
Sebastian Dröge
f5ba4904f7 mxfdemux: Use a RW lock to protect metadata and add all pads at once without a lock held
This makes it possible, among other things, to do a query in the
pad-added callback.

Fixes bug #582656.
2009-05-15 11:49:20 +02:00
Jan Schmidt
29b44a5e2f dvdspu: Push update frame, if any, when entering stills.
When entering a still frame generates an updated buffer, make sure
to push it out, otherwise we may not put a frame onscreen with a
rendered button, causing raciness as to whether buttons get drawn
or not when jumping back to the menu on some discs.
2009-05-14 11:28:14 +01:00
Wim Taymans
b20a88702d y4menc: change my email
change my email to something more current
See #580783
2009-05-13 17:55:46 +02:00
Wim Taymans
60f46ec99c y4menc: don't strip timestamps
Fixes #582483
2009-05-13 17:54:47 +02:00
Sebastian Dröge
453794d383 Moved 'deinterlace2' from -bad to -good
And remove old deinterlace plugin as deinterlace2 will
be called deinterlace in -good.
2009-05-13 10:47:54 +02:00
Sebastian Dröge
8c13566624 Moved 'flv' from -bad to -good 2009-05-12 21:50:12 +02:00
Jan Schmidt
ad1f7e6ed3 dvdspu: Make the debugging output a bit clearer.
Display more info about custom DVD events in the debug messages.
2009-05-11 17:04:09 +01:00
Jan Schmidt
513367a88c dvdspu: Always push a frame at the start of a still frame, and fix a leak.
Make sure to push the frame for a still frame, with discont = true and
timestamp=none, so that it gets displayed by the sink. Also, don't leak
each rendered video frame during still menus.
2009-05-11 17:04:09 +01:00
Jan Schmidt
571a7746fc dvdspu: Add a guard when we don't have any subpicture buffer to render 2009-05-11 17:04:08 +01:00
Edward Hervey
f9dfc44a67 mpegtsdemux: Protect bitrate estimation against bogus values.
If the estimated bitrate is lower than 188 bytes, there's most likely
something completely wrong with the two samples. If that happens,
force recalculation.

Use guint64 for observation PCR, I saw cases where it would overflow.
2009-05-11 16:59:20 +02:00
Edward Hervey
bc062b9acf mpegtsdemux: Only take PCR from the active stream for bitrate estimation. 2009-05-11 16:58:58 +02:00
Edward Hervey
432dd98321 mpegtsdemux: Change debugging levels for very frequent messages.
This allows debugging with mpegtsdemux:4 while being able to track what's
going on (and avoid taking up as much cpu for debugging as for the actual
demuxing process).
2009-05-11 16:53:18 +02:00
Edward Hervey
5aa3358f3b mpegtsdemux: Revert indentation and comment header file.
One shouldn't run gst-indent on .h files, in this case it was un-beautifying
the indentation :)
2009-05-11 16:53:12 +02:00
Mark Nauwelaerts
29d53b22f9 gppmux: Add MPEG-4 part 2 to supported formats. Fixes #581593. 2009-05-10 21:21:36 +02:00
Tristan Matthews
6451febd14 mxfmux: Fix uninitialized variable compiler warning
This will always be set to something but gcc didn't detect
this. Fixes bug #582013.
2009-05-10 10:41:41 +02:00
Sebastian Dröge
d09515b49f mxfmux: Write metadata items in reference order
This ensures that the metadata items are always written
in the same order and that first comes the preface,
then the identification linked from the preface, ...

Some demuxers can't handle files where the metadata
items are in random order.
2009-05-09 15:50:51 +02:00
Sebastian Dröge
18f8c9b0b4 mxfmux: Fix EOS logic again 2009-05-09 15:50:51 +02:00
Sebastian Dröge
8692ae2a9d mxfmux: Don't unref NULL buffers if pushing a buffer after the first failed 2009-05-09 15:50:51 +02:00
Zaheer Merali
ff7b54e7da mpegtsdemux: Add initial naive seeking support and fix duration query.
Sync from gst-fluendo-mpegdemux and have seeking/duration query
improvements in. No support however for wrapped around pcrs etc. but a
start nonetheless.
Also fix indentation issues.
2009-05-08 18:26:43 +01:00
Sebastian Dröge
8c57211bd2 deinterlace2: Add a disabled mode for passthrough operation
Also allow to change the mode in PAUSED and PLAYING by updating
the caps if necessary.
2009-05-08 15:42:43 +02:00
Christian Schaller
67dd3c11f4 Add ranks to various muxers and encoders in -bad 2009-05-07 17:53:42 +01:00
Arnout Vandecappelle
9542d9e251 mpeg4videoparse: don't leak the config data
Clear the config data when going to READY or when disposed.
Fixes #581427
2009-05-05 16:54:39 +02:00
Wim Taymans
46139253bc rtpssrcdemux: drop unexpected RTCP packets
We usually only get SR packets in our chain function but if an invalid packet
contains the SR packet after the RR packet, we must not fail but simply ignore
the malformed packet.

Fixes #581375
2009-05-05 16:50:14 +02:00
Zaheer Abbas Merali
179f5bb850 mpegtsparse: Remember pids that are meant to be stream pids.
Fixes #569781
2009-05-04 22:09:05 +01:00
Vincent Genieux
e41401e317 mpegtsparse: Ignore subtable extension when parsing PAT
Fixes #569673.
2009-05-03 17:42:44 +01:00
Vincent Genieux
8ef8daf4db mpegtsparse: make safe changing the program-numbers property dynamically
Fixes #569437.
2009-05-03 17:21:22 +01:00
Mark Nauwelaerts
9bbacae78f baseparse: fix (regression in) newsegment handling
(aacparse, amrparse, flacparse).  Fixes #580133.
2009-05-03 14:46:58 +02:00
Tim-Philipp Müller
76535b0e1f docs: make fpsdisplaysink show up in the docs 2009-05-01 14:28:43 +01:00
Tim-Philipp Müller
9b1c7c94b4 fpsdisplaysink: move private struct into plugin struct and use Gst namespace 2009-05-01 14:28:43 +01:00
Tim-Philipp Müller
e101037589 fpsdisplaysink: rename plugin (not element) to debugutilsbad
Makes it easier to add further utils here without creating yet another plugin.
2009-05-01 14:28:42 +01:00
Thiago Santos
76aa98549a qtmux: changes caps of src pads to video/quicktime, variant=something
Take a look at bug #580005 for further info.
2009-04-30 14:43:36 -03:00
Tristan Matthews
8d4315ee5c fpsdisplaysink: init variable to NULL to avoid compiler warning
Fixes #580901.
2009-04-30 17:09:28 +01:00
Wim Taymans
5704bc8f89 dvdspu: do some basic clipping
Add some basic clipping of the subtitle region when the subtitle is bigger than
the image we should put it on.
2009-04-30 14:20:16 +02:00
Wim Taymans
f38cb76b5f dvdspu: don't EOS when the subtitle got EOS
Don't forward the EOS on the subtitle pad as the video might still be running.
2009-04-30 14:18:58 +02:00
Stefan Kost
1ae52725d9 fpsdisplay: code cleanup and plug overlay as needed
Pluggin the text-ovelay causes some slowdowns and might need a colorspace
converter. We now only check the text-overlay property whne goint to ready and
plug or unplug the text-overlay at that time. If the property changes during
playing, its not switched immediately.
2009-04-30 13:48:07 +03:00
Tristan Matthews
62db462298 flvmux: init variable to NULL to fix compiler warning
Fixes #580786.
2009-04-29 18:53:58 +01:00
Sebastian Dröge
87e9e529e7 flv: Set/require the framed/parsed fields of the audio/mpeg caps to TRUE 2009-04-29 13:56:07 +02:00
Sebastian Dröge
c741c2cd59 flv: Always write at least the minimal tags and write the PAR as tags 2009-04-29 13:16:25 +02:00
Sebastian Dröge
d780d5f095 flv: Add support for muxing some tags 2009-04-29 13:03:46 +02:00
Sebastian Dröge
51e01d6bb5 flv: Add support for title tag 2009-04-29 13:03:27 +02:00
Sebastian Dröge
bf4d7d233d flv: Fix parsing of tags and add new mappings
We shouldn't register a new GstTag for every unknown tag
we find as this might lead to conflicts and also those
tags are essentially unknown.

Add mappings for some known tags and also convert string
dates to GDate, as found in many FLV files.
2009-04-29 09:42:32 +02:00
Olivier Crête
3a4c9c990a rtpmux: Reject wrong caps 2009-04-28 16:28:40 -04:00
Olivier Crête
6c4eeff781 rtpmux: Fix leak
Fixed a leak discovered by Laurent Glayal <spegle@yahoo.fr>
2009-04-28 16:03:49 -04:00
Olivier Crête
905aad3572 rtpmux: Fix leak
Fixed a leak discovered by Laurent Glayal <spegle@yahoo.fr>
2009-04-28 15:59:37 -04:00
Olivier Crete
cc51f90c1a rtpsouce: make WARNING into LOG
Since neither rtpmanager nor any of the payloaders properly implement
pad allocation, there is no way for the rtpmanager to inform downstream elements
of the new SSRC if there is an SSRC collision. So the warning is emitted all the
time and it is confusing.

Fixes #580144
2009-04-27 11:11:11 +02:00
Olivier Crete
bf3ea86c2f rtpsession: notify when SSRC changes
Emit a g_object_notify when the SSRc changes because of a collision.
Fixes #580144
2009-04-27 11:11:11 +02:00
Christian Schaller
b627bb5f2d Add new plugin to spec file and add missing header to gst/dccp/Makefile.am 2009-04-27 10:04:51 +01:00
Thiago Santos
bb86b8ca7e mp4mux: Changes src caps to application/x-iso-mp4
Fixes #580005
2009-04-24 18:53:36 -03:00
Stefan Kost
95520973d0 fpsdisplay: more cleanups
Use normal gst-defines in PLUGIN_DEFINE. Shorten _start/stop method names.
More ideas. Move debug category-init down to plugin-init.
2009-04-23 14:38:20 +03:00
Stefan Kost
314f2e26c5 fpsdisplay: use a nicer font family 2009-04-23 14:38:19 +03:00
Stefan Kost
193f638b0a fpsdisplay: various cleanups, docs and comments
Remove unused base_init. Add basic doc blob. Reuse query object. Rename
variables for clarity. Add comments and ToDos.
2009-04-23 14:38:19 +03:00
Stefan Kost
790235e29f fpsdisplay: remove iface proxy
When we get bus messages for setting the xid, we have the real sink element
instance as message_src. No need to proxy the xoverlay iface therefore
(autovideosink does not do it either). Also we don't need to rewrite the
message src of all messages from that sink.
2009-04-23 14:38:19 +03:00
Jan Schmidt
5307933825 input-selector: Forward segment events for the active pad immediately.
When a segment event is received on the active pad, forward it downstream
immediately instead of deferring it until the next data buffer arrives. This
fixes problems with segment updates never being sent downstream, like those
needed for sparse streams, or for closing previously opened segments.

This fixes playback of DVD menus with a still video frame and an audio track,
for example.

Fixes: #577843
2009-04-23 11:09:13 +01:00
Olivier Crête
962f9173f2 rtpmux: Fix warning 2009-04-22 18:01:07 -04:00
Olivier Crête
74e0724acf rtpmux: Set different caps depending on the input 2009-04-22 16:29:44 -04:00
Olivier Crête
098b75c2f2 rtpmux: Only free pad private when pad is disposed 2009-04-22 16:26:08 -04:00
Sebastian Dröge
6734a9980e flv: Add documentation to flvmux and flvdemux
Partially fixes bug #573737.
2009-04-22 19:52:05 +02:00
Sebastian Dröge
8e84633120 mxf: Mark most fields of the instance struct as private 2009-04-22 19:45:07 +02:00
Sebastian Dröge
4efa891f6f deinterlace2: Add documentation and integrate into the build system 2009-04-22 19:43:22 +02:00
Sebastian Dröge
e3664d57ad mxf: Add documentation to mxfmux and update the docs 2009-04-22 19:24:43 +02:00
David Schleef
ef5e486fcd Add interlaced support to videoparse
Add a virtual method in rawparse to set buffer flags.  This doesn't
use API from unreleased -base, since it defines GST_VIDEO_BUFFER_TFF
if it's not defined yet.
2009-04-21 18:55:05 -07:00
Olivier Crête
b68fa5111a Merge branch 'rtpmux-fixes' 2009-04-21 13:27:29 -04:00
Edward Hervey
c717af5c0a mpegdemux: Only error out at EOS push failure if we don't have any streams.
This should remove the bogus error messages while still keeping the original
intent of this, which is to inform the pipeline/application/user that we
could not find any valid streams.

There are many reasons why pushing an event can fail, and not all of them are
because there's no link downstream (it could be because it was blocked, or
flushing).
2009-04-21 16:12:08 +02:00
Zaheer Abbas Merali
51fdc78786 mpegtsdemux: add hack specific for itvhd
itvhd masks its h264 video stream as a private stream making it harder for
other set top boxes to decode. this checks for specific program number, video
pid and stream type combination before declaring it as h264.
2009-04-21 12:09:31 +01:00
Zaheer Abbas Merali
c5825f9e1d mpegtsparse: detect AC3 streams in PMT table
add 'has-ac3' boolean to pmt bus message
2009-04-21 12:09:31 +01:00
Zaheer Abbas Merali
39d6074539 itv hd hack 2009-04-21 12:09:31 +01:00
Zaheer Abbas Merali
e8ca380063 hack for itvhd sid to detect mpeg1 as h264 2009-04-21 12:09:31 +01:00
Olivier Crête
9c014d0013 rtpmux: Remove useless caps mangling 2009-04-20 20:24:17 -04:00
Olivier Crête
edd3717150 rtpmux: Rename variable for more clarity 2009-04-20 20:23:39 -04:00
Olivier Crête
655a3d125a rtpmux: Use GST_BOILERPLATE 2009-04-20 20:23:37 -04:00
Olivier Crête
5af0efd1d3 rtpmux: Do the includes locally 2009-04-20 20:23:02 -04:00
Sebastian Dröge
0ad5dec019 deinterlace2: Make it possible to select interlacing autodetection or to enfore deinterlacing
For this add a "mode" property that defaults to "interlaced" for now as
most decoders/demuxers don't properly set the "interlaced" field on the
caps yet.

If this property is set to "auto" the element will work in passthrough
mode unless the caps contain the "interlaced" field.
2009-04-19 17:21:16 +02:00
Zaheer Merali
71be79f668 mpegtsparse: fix leak of GST_TYPE_LIST gvalue 2009-04-18 23:42:57 +01:00
Zaheer Merali
c9ae67fac9 mpegtsparse: fix leak in src_pad_query 2009-04-18 13:09:23 +01:00
Wim Taymans
71076cad54 rtpsession: join the RTCP thread
Avoid a case where a joinable thread would be left unjoined, which leaked the
thread structure.
Fixes #577318.
2009-04-17 16:16:29 +02:00
Sebastian Dröge
63044be8e5 deinterlace2: Use GST_(DEBUG|WARNING|ERROR)_OBJECT instead of the non-OBJECT ones 2009-04-17 15:39:59 +02:00
Sebastian Dröge
9017f1903a deinterlace2: Reset history if DISCONT is set on the incoming buffer 2009-04-17 15:39:36 +02:00
Sebastian Dröge
6c8f4a36e3 deinterlace2: Fix timestamps for buffers with RFF flag set 2009-04-17 15:39:10 +02:00
Sebastian Dröge
7a30947913 mxf: Properly handle the new interlaced support from libgstvideo for (de)muxing 2009-04-16 22:14:15 +02:00
Sebastian Dröge
a32e180155 deinterlace2: Rename line_length to row_stride and remove output_stride 2009-04-16 17:42:27 +02:00
Sebastian Dröge
ffaef58b59 deinterlace2: Implement support for RFF and ONEFIELD buffer flags 2009-04-16 17:42:27 +02:00
Stefan Kost
e01373662a fpsdisplaysink: add a initial port of a sink with fps display
This now works with a event probe. Needs some extra work.
2009-04-16 18:39:29 +03:00
Lasse Laukkanen
78b208125a camerabin: clean up and fix assertion fail when setting zoom in NULL state 2009-04-16 16:08:42 +03:00
Lasse Laukkanen
9b0fa11a5d camerabin: fix format matching when detecting allowed frame rate 2009-04-16 16:08:41 +03:00
Lasse Laukkanen
0847a84f41 camerabin: don't lose pending state when changing resolution 2009-04-16 16:08:40 +03:00
Lasse Laukkanen
65ddcd6d5d camerabin: change img-done signal parameter from GString* to const gchar*
Don't allow setting filename via img-done signal parameter but force app
use filename property. Don't stop capture when setting filename property.
Update check unit test based on the change.
2009-04-16 15:19:20 +03:00
Olivier Crête
d8ba5624ce rtpmux: Add GST_DEBUG_FUNCPTRs 2009-04-15 13:23:01 -04:00
Olivier Crête
66fca81e23 rtpdtmfmux: Release locked pad on release_pad
Release the special pad if the pad is removed from the muxer.
2009-04-15 13:15:55 -04:00
Laurent Glayal
65cb85316b rtpdtmfmux: Release special on pad dispose
Fixes #577690
2009-04-15 13:11:32 -04:00
Wim Taymans
a2fdf5648f jitterbuffer: prevent overflow in EOS estimation
Use a guint64 instead of a guint to hold a 64bit value to prevent completely
bogues EOS estimation values due to overflows.
2009-04-15 18:14:48 +02:00
Wim Taymans
ba6b41dad4 rtpbin: we should not provide a clock
There is no need to provide a clock.
2009-04-15 17:44:17 +02:00
Wim Taymans
f7af854c28 jitterbuffer: more estimated EOS fixes
Do more accurate EOS estimate and guard against backward timestamps.
2009-04-15 17:28:56 +02:00
Wim Taymans
87da61f965 jitterbuffer: release lock before pushing EOS
Make sure we release the jitterbuffer lock before we start pushing out data
because else we might deadlock.
2009-04-15 17:25:02 +02:00
Sebastian Dröge
e539615c79 deinterlace2: Move output buffer from the instance struct to a function parameter 2009-04-15 15:46:44 +02:00
Sebastian Dröge
b66a6f90be deinterlace2: Add initial support for automatic detection of the field order 2009-04-15 15:33:17 +02:00
Sebastian Dröge
5a95bac390 deinterlace2: Add support for YVYU colorspace
This is the same as YUY2 with just Cr and Cb swapped. As
we don't make a difference between them when deinterlacing
this works.
2009-04-15 14:47:49 +02:00
Sebastian Dröge
50424e44ad mxfmux: Small cleanup 2009-04-13 13:33:00 +02:00
Sebastian Dröge
0fa50e9d77 mxfdemux: Don't use invalid buffer offsets, instead assume offset == 0 2009-04-07 15:49:00 +02:00
Sebastian Dröge
acc912599d mxf: Fix comparison 2009-04-07 15:45:50 +02:00
Sebastian Dröge
83324d6788 Use UL database for all metadata ULs 2009-04-07 15:20:10 +02:00
René Stadler
d5216a1a66 baseparse: Fix slightly broken buffer-in-segment check (aacparse, amrparse, flacparse) 2009-04-07 05:41:46 +03:00
René Stadler
0293f54d06 baseparse: Fix push mode seeking (aacparse, amrparse)
Sending the flush-start event forward before taking the stream lock actually
works, in contrast to deadlocking in downstream preroll_wait (hunk 1).

After that we get the chain function being stuck in a busy loop. This is fixed
by updating the minimum frame size inside the synchronization loop because the
subclass asks for more data in this way (hunk 2).

Finally, this leads to a very probable crash because the subclass can find a
valid frame with a size greater than the currently available data in the
adapter. This makes the subsequent gst_adapter_take_buffer call return NULL,
which is not expected (hunk 3).
2009-04-05 05:26:09 +03:00
Jan Schmidt
0b73fd2870 dvdspu: Add some debug
Add a little bit of extra debug. Wrap a hardcoded #if 0 into a define instead.
2009-04-02 14:46:22 +01:00
Tim-Philipp Müller
fffc3ba770 legacyresample: fix negotiation so that upstream can actually fixate to downstream's rate
If one side has a preference for a particular sample rate or set of sample rates, we
should honour this in the caps we advertise and transform to and from, so that elements
actually know about the other side's sample rate preference and can negotiate to it
if supported. Also add unit test for this.
2009-04-01 15:45:22 +01:00
Mark Nauwelaerts
ad2c7bffe7 baseparse: Delay newsegment as long as possible.
If newsegment is sent (too) early, caps may not yet be fixed/set,
and downstream may not have been linked.
2009-03-31 16:18:00 +02:00
Wim Taymans
d6550696d4 rtpbin: add on_npt_stop signal
Add the on_npt_stop signal to rtpbin and rtpjitterbuffer to notify the
application that the NPT stop position has been reached.
2009-03-27 17:44:57 +01:00
Wim Taymans
9605150830 outputselector: reset state when going to READY
Reset the last-buffer, the pending pad and the segment when going to the READY
state.
Fixes #576712.
2009-03-27 11:21:21 +01:00
Mark Nauwelaerts
654ca28f1b qtmux: fix reusing element
State change to READY and then back to PAUSED should still provide
the proper structures as are otherwise freshly available following
a request_new_pad.

Pointed out by Thiago Santos.
2009-03-26 21:56:28 +01:00
Sebastian Dröge
f510be57cd mxf: Fix compilation and compiler errors with GLib < 2.16.0 2009-03-26 20:28:30 +01:00
Sebastian Dröge
2c51bbdfad mxf: Fix "cast to pointer type of different size" compiler warning 2009-03-26 14:26:34 +01:00
Sebastian Dröge
9b6d6fd0dd mxf: Rename forgotten function to fix unresolved symbols error 2009-03-26 13:24:49 +01:00
Sebastian Dröge
f22494b6fe mxf: Use mxf_u{l,uid}_is_equal() and friends instead of memcmp() 2009-03-26 13:20:18 +01:00
Sebastian Dröge
c1c8b40d42 mxf: Differentiate between UL and UUID 2009-03-26 13:11:07 +01:00
Sebastian Dröge
ce01236e32 mxf: Source files and #include cleanup 2009-03-26 12:46:22 +01:00
Sebastian Dröge
eaea85ed4a xdgmime: Use GIOs g_content_type_guess() if possible 2009-03-26 12:10:05 +01:00
Sebastian Dröge
81af2259c2 mxf: Use the UL database for some more ULs 2009-03-26 11:51:43 +01:00
Sebastian Dröge
a9f931c467 mxf: Remove some GLib < 2.14 compatibility stuff 2009-03-26 11:42:45 +01:00
Руслан Ижбулатов
f5b298e3d7 xdgmime: Link with winsock library to fix build with MinGW
Partially fixes bug #573595.
2009-03-26 11:33:50 +01:00
Руслан Ижбулатов
dafa530773 dccp: Port DCCP plugin to MinGW
Partially fixes bug #573595.
2009-03-26 11:32:08 +01:00
Sebastian Dröge
6f62242c5f Merge branch 'mxfmux' 2009-03-26 08:13:10 +01:00
Sebastian Dröge
e5caf2edda mxfmux: Cleanup 2009-03-26 08:12:02 +01:00
Sebastian Dröge
3b88dce4d1 mxfmux: Fix handling of buffers with more than one edit unit and EOS handling 2009-03-26 08:11:20 +01:00
Wim Taymans
6b2c55e254 selector: merge the tags
Merge the tags received on the input-selector sinkpads instead of only keeping
the last one we saw.
2009-03-24 15:23:03 +01:00
René Stadler
83016fa9dc aacparse: Fix busyloop when seeking. Fixes #575388
The problem is that after a discont, set_min_frame_size(1024) is called when
detect_stream returns FALSE. However, detect_stream calls check_adts_frame
which sets the frame size on its own to something larger than 1024. This is the
same situation as in the beginning, so the base class ends up calling
check_valid_frame in an endless loop.
2009-03-23 20:57:15 +02:00
René Stadler
3f90e6ff13 aacparse: Refactor check_valid_frame to expose broken code
Just moving code around and removing an unhelpful/misleading comment.
2009-03-23 20:57:15 +02:00
Wim Taymans
fcfc22f6f6 qtmux: fix includes for lseek
--
2009-03-23 17:07:16 +01:00
LRN
df124a0b28 win32: fix seeking in large files
Use _lseeki64() on Windows to seek in large files.
Fixes #576021.
2009-03-23 17:07:16 +01:00
Sebastian Dröge
da27eb2380 mxf: Move some static const variables into functions 2009-03-23 15:06:11 +01:00
Stefan Kost
a7a97b9139 Makefile.am: no static libs for plugins 2009-03-22 21:02:45 +02:00
Sebastian Dröge
2224a990a8 mxfmux: Fix error handling 2009-03-22 15:58:50 +01:00
Sebastian Dröge
effb5786da mxfmux: Fix some memory leaks, improve debugging and handle errors better 2009-03-22 15:51:37 +01:00
Sebastian Dröge
ddced37a8b mxfmux: Add an error state from which we return immediately
Also improve debugging a bit.
2009-03-22 15:35:42 +01:00
Sebastian Dröge
226f23edde mxf: Optimize mxf_ul_is_subclass() a bit 2009-03-21 10:19:49 +01:00
Sebastian Dröge
b409f71f49 mxf: Start implementing a central UL database and add some helper functions and use them 2009-03-21 10:19:49 +01:00
Sebastian Dröge
a19f0375ec mxfmux: Make sure to include a picture in the edit units when muxing MPEG2/MPEG4 2009-03-21 10:19:49 +01:00
Sebastian Dröge
992caf48ba mxfdemux: Remove accidentially committed g_assert_not_reached() 2009-03-21 10:19:49 +01:00
Sebastian Dröge
c6730cd223 mxf: Add support for muxing/demuxing subsampled YUV formats 2009-03-21 10:19:49 +01:00
Sebastian Dröge
c95ba980b2 mxfdemux: Use correct width/height for stride conversions 2009-03-21 10:19:49 +01:00
Sebastian Dröge
a31498d8d4 mxf: Implement stride transformations for raw video content for muxing and demuxing 2009-03-21 10:19:49 +01:00
Sebastian Dröge
b6bac882f9 mxfdemux: Simplify caps selection by using a lookup table 2009-03-21 10:19:49 +01:00
Sebastian Dröge
9aa16c2ea5 mxfmux: Add initial support for muxing raw picture essence 2009-03-21 10:19:48 +01:00
Sebastian Dröge
3d2f7c9ca0 mxfmux: Only add an essence container UL once to the partition and preface 2009-03-21 10:19:48 +01:00
Sebastian Dröge
1925b8e9f7 mxfdemux: Add support for AYUV and v308 YUV colorspaces 2009-03-21 10:19:48 +01:00
Sebastian Dröge
9fd64eee8d mxfmux: Use the correct edit rate instead of estimating it from the first buffer duration 2009-03-21 10:19:48 +01:00
Sebastian Dröge
6c126cbfdf mxfdemux: Error out directly if pushing a packet downstream failed 2009-03-21 10:19:48 +01:00
Sebastian Dröge
fc70fb1706 mxfmux: Add support for DV/DIF muxing and add framerate, etc to the caps when demuxing DV/DIF content 2009-03-21 10:19:48 +01:00
Sebastian Dröge
266736817d mxfmux: Add some debugging and error out on invalid input data 2009-03-21 10:19:48 +01:00
Sebastian Dröge
57ba515539 deinterlace: Fix uninitialized variable compiler warnings 2009-03-21 10:19:48 +01:00
Sebastian Dröge
c5c155884a mxfmux: Add support for muxing MPEG audio and video 2009-03-21 10:19:48 +01:00
Sebastian Dröge
28e4871217 mxfdemux: Use correct caps type for AC3 audio (audio/x-ac3 instead of audio/ac3) 2009-03-21 10:19:47 +01:00
Sebastian Dröge
654f0627e4 mxfmux: Add support for muxing JPEG2000 code streams 2009-03-21 10:19:47 +01:00
Sebastian Dröge
244c0a4707 mxfmux: Add support for muxing VC-3 (aka DNxHD) video 2009-03-21 10:19:47 +01:00
Sebastian Dröge
60d0dc07bf mxfmux: Add support for muxing A-Law audio 2009-03-21 10:19:47 +01:00
Sebastian Dröge
0a5dc919fb mxfmux: Add support for muxing raw audio 2009-03-21 10:19:47 +01:00
Sebastian Dröge
e50039897b mxf: Add MXF muxer
This muxer currently only supports OP1a and is
probably not yet 100% complying to the standards.
2009-03-21 10:19:47 +01:00
Jan Schmidt
cf4485133b mxfdemux: Fix build on GLib < 2.16 some more 2009-03-18 10:35:43 +00:00
Zaheer Merali
43117a8d86 mxf: Replace g_hash_table_get_values with code working with glib 2.6.
Fixes #575565
2009-03-16 17:33:45 +00:00
Tim-Philipp Müller
7a85af3ce6 xdgmime: make xdg typefinder more conservative
The whole raison d'etre of this typefinder is to help avoid false
positives when used in combination with our main typefinder in
-base. Its task is not really to typefind audio/video files, even
less so given that it detects *MIME* types, not GStreamer media
types. Therefore, if this typefinder detects an audio or video
type, don't even suggest it - our own typefinders are hopefully
better at this and detect the right type of type on top of that,
and even if they're not we really want to know about it and fix
it. Fixes #575157.
2009-03-13 22:53:21 +00:00
Wim Taymans
4bff4266d5 rtpbin: don't return FALSE on seek events
Silently ignore the seek event instead of returning FALSE.
2009-03-13 16:00:21 +01:00
Josep Torra
6cb429eb4f mpegpsdemux: workaround to fix playback of certain malformed clips
Added a workarround to permit play certain malformed clips where first
SCR is greater than last SCR. Fixes bug #454228
2009-03-13 10:07:18 +00:00
Josep Torra
bfdfc069aa mpegdemux: Fixed a bug in the TS scanner. Fixes #574009 2009-03-10 21:18:20 +01:00
Jan Schmidt
81a950ddf8 camerabin: Make the tests pass when the camerabin can't initialise.
The camerabin tests were throwing glib errors and hanging when
gst-plugins-good elements (jpegenc, videocrop) can't found.
2009-03-07 00:31:07 +00:00
Jan Schmidt
4814c3ca87 camerabin: Partly fix distcheck
Don't dist the generated marshal.h header by putting it in the headers
list.
2009-03-07 00:30:23 +00:00
Sebastian Dröge
6b51d475b5 mxfdemux: Store and use the seqnum of the currently running segment everywhere 2009-03-06 17:46:37 +01:00
Sebastian Dröge
424bb07965 mxf: Don't even try to serialize DM frameworks as it will cause an assertion until this is finished 2009-03-06 17:24:03 +01:00
Sebastian Dröge
b5e87b6517 mxf: Don't use NULL GstStructures to prevent warnings
Currently serializing of DM Frameworks is not supported
yet by DMS1 and will give us NULL.
2009-03-05 14:40:57 +01:00
Tim-Philipp Müller
3cfe16cc63 photography: declare interface as unstable API by means of a warning
Application developers won't know right away which module an interface comes from,
and may assume that it is covered by the usual GStreamer API guarantees, so make
it as clear as possible that this particular API is still subject to change
(should have done that with other libraries in -bad before too really).
2009-03-04 21:30:30 +00:00
Tim-Philipp Müller
c23834eab3 valve: rename plugin file from libfsvalve.* to libgstvalve.*
If you're running things uninstalled, you might need to manually
remove the registry to get the plugin's features to show up
correctly. Also, you probably want to do a make clean to get rid
of the old plugin file.
2009-03-04 20:41:10 +00:00
Edward Hervey
6a91eb2f48 gsreal: bring down the rank of the real decoders to MARGINAL.
Basically, at this point, the ffmpeg equivalent decoders perform way
better, so we'll make the ffmpeg equivalents PRIMARY and these
MARGINAL.
2009-03-04 20:02:04 +01:00
Josep Torra
ff1a6b4b22 mpegtsdemux: reset sync_lut_len to 0 on READY to NULL 2009-03-04 18:16:31 +00:00
Sebastian Pölsterl
12ac5763f9 mpegtsparse: fix memleak
Fix memleak in mpegts_packetizer_clear where MpegTSPacketizerStream is
not freed properly when using foreach_stream_clear function.
2009-03-03 19:08:28 +00:00
Josep Torra
84860befdf mpegtsdemux: dynamically adjust the sync LUT table
Make the sync LUT table adjusted dynamically according to the size
of scanned data. Fixes demuxing buffers of any size.
2009-03-03 18:28:10 +00:00
Olivier Crête
b02708a2f6 autoconvert: Import fsselector from gst-plugins-farsight as autoconvert
fsselector is too close to selector, so import is as autoconvert. Not importing
the history because the directory is also called gst/selector and it fails.
2009-03-03 18:53:11 +01:00
Edward Hervey
1068a40d6d qtmux: Be a bit more verbose in our debug message when failing to renegotiate 2009-03-03 10:12:34 +01:00
Sebastian Dröge
62dbf4b9bc mxfdemux: Use arrays instead of lists for the metadata registries 2009-03-02 17:00:41 +01:00
Sebastian Dröge
f429818589 xdgmime: Reduce probability to POSSIBLE 2009-03-02 16:29:01 +01:00
Sebastian Dröge
de61b45025 xdgmime: Add locking to the xdg_mime_* calls as it's not thread-safe 2009-03-02 16:27:55 +01:00
Sebastian Dröge
f957ee0aeb xdgmime: Use g_pattern_match_simple() instead of fnmatch() for Win32 compatibility 2009-03-01 20:18:30 +01:00
LRN
e571138ef6 xdgmime: Fix unused variable compiler warning 2009-03-01 20:13:31 +01:00
Sebastian Dröge
8c4584aa56 xdgmime: Don't warn if we have no MMAP support 2009-03-01 20:12:12 +01:00
Sebastian Dröge
39850d674e xdgmime: Use g_ntoh[ls] instead of the non-GLib functions for Win32 compatibility 2009-03-01 20:11:07 +01:00
Sebastian Dröge
b30926428d xdgmime: Use G_BYTE_ORDER instead of relying on LITTLE_ENDIAN to be defined 2009-03-01 20:09:24 +01:00
Tim-Philipp Müller
96a42c80d9 realdec: use gst_plugin_add_dependency() 2009-03-01 00:03:50 +00:00
Sebastian Dröge
ed72bba6a2 mxf: Fix memory leak
gst_structure_id_set() will copy GstStructures instead of taking
the ownership.
2009-02-28 20:42:49 +01:00
Sebastian Dröge
b5b2e44563 mxf: Store the metadata type ID inside the class structure 2009-02-28 20:39:42 +01:00
vanista
38dd0f6410 mpegtsdemux: Fix memory leaks when PUSI is missed due to packet loss
Fixes bug #573288.
2009-02-28 19:41:10 +01:00
Edward Hervey
38d3b76d1b nsf: Don't write further than the limits of the table (size is 75, as defined in the header)
gcc 4.3.3 found this one, I'm impressed.
2009-02-28 11:43:56 +01:00
Andrzej Polatyński
22a9d7577f videoanalyse: Fix brightness calculation to not only use the first rowstride
Fixes bug #573391.
2009-02-27 20:44:20 +01:00
Michael Smith
c0ad05cec4 mpeg4videoparse: Use correct values for checking VO startcode.
Fix compiler warning due to condition always being true - since we're
only looking at the final byte of the startcode (not the leading
0x000001), only check for < 0x1f, not < 0x11f
2009-02-27 11:36:58 -08:00
Sebastian Dröge
546bfbecb8 xdgmime: Use empty caps for registering the typefinders with old core versions
core before 0.10.22.1 produced assertions when storing typefind factories
with NULL caps in the registry.
2009-02-27 20:21:23 +01:00
Wim Taymans
41b65b421b mpeg4videoparse: handle more formats
We only need a Video Object Start code before we can start pushing out data.
Search for this code also instead of only looking for VOS and VOP.
Fixes #572551.
2009-02-27 13:08:15 +01:00
Stefan Kost
fab9dfa5d0 camerabin: rework signaling and tests
Revert the GString change. There are no marshallers for it. A better change is
now described in http://bugzilla.gnome.org/show_bug.cgi?id=573370.
Test should work again.
2009-02-27 12:35:14 +02:00
Stefan Kost
5f2d5aa5a5 baseparse: revert last change and properly fix
Baseparse internaly breaks the semantics of a _chain function by calling it with
buffer==NULL. The reson I belived it was okay to remove it was that there is
also an unchecked access to buffer later in _chain. Actually that code is wrong,
as it most probably wants to set discont on the outgoing buffer.
2009-02-27 12:27:14 +02:00
David Schleef
becb7fd02c Add v210 format 2009-02-26 12:49:03 -08:00
David Schleef
0964c00d2b Fix incorrect "pixel_aspect_ratio" in caps
Should be "pixel-aspect-ratio".
2009-02-26 12:49:03 -08:00
Olivier Crête
8961f43ec8 gstrtpbin: Don't forward revc events to sender
Don't send events from the receiver to the sender side.
Fixes #572900.
2009-02-26 13:10:29 +01:00
Stefan Kost
68cb1a84de baseparse: remove checks for buffer==NULL
Accordifn to docs for GstPadChainFunction buffer cannot be NULL. If we would
leave the check, we would also need more such check below.
2009-02-26 11:05:31 +02:00
Stefan Kost
53f975f63c docs: various doc fixes
No short-desc as we have them in the element details.
Also keep things (Makefile.am and sections.txt) sorted.
Reword ambigous returns. No text after since please.
2009-02-25 12:42:36 +02:00
Wim Taymans
9a0e1e0dca mpegdemux: don't ignore GstFlowReturn values
don't ignore the return value of pull_range because we only get a valid non-NULL
buffer when the return value is GST_FLOW_OK. Avoids a crash when the pipeline is
shutting down.
2009-02-25 11:34:45 +01:00
Stefan Kost
518d98899e camerabin: update signal marshaller and docs
Use GString instead of GPointer for the marshaller as this is what the callback uses.
Slightly reformat docs.
2009-02-25 11:41:36 +02:00
Lasse Laukkanen
c81bce2b21 camerabin: unblock correct pad in reset, support fakesink as view finder 2009-02-25 10:45:19 +02:00
Sebastian Dröge
ab1c576ec2 xdgmime: Add new typefinder based on xdgmime
This typefinder is mostly useful to filter out any false positives
by the other typefinders like the usual Word document misdetected as
MP3 file.
2009-02-24 15:26:27 +01:00
Edward Hervey
c2c1941ffc liveadder: Fix build on macosx 2009-02-23 15:25:03 +01:00
Lasse Laukkanen
bde8707b65 camerabin: Add aspect ratio capsfilter for view finder
If dealing with larger frame sizes than view finder sink element
accepts then maintain aspect ratio when scaling frames to fit.
2009-02-23 14:20:13 +02:00
Lasse Laukkanen
24d99bbe56 camerabin: Scale incoming frames if their size does not match requested size
If capture preparation in videosrc results in frame size different
from requested size, then we need to scale them.
2009-02-23 14:20:12 +02:00
Edward Hervey
6227900c71 dccp: Fix "non-void without return value" compilation issue. 2009-02-22 22:00:58 +01:00
Andoni Morales
7992233522 camerabin: Fix compilation on Windows with Visual Studio
Windows doesn't have strcasecmp so we should use
g_ascii_strcasecmp here instead.

Also Windows doesn't have sys/time.h so we first
need to check if it actually exists and if not
we should not include it.

Fixes bug #572315.
2009-02-22 18:41:08 +01:00
Olivier Crête
00a155333c Moved rtpmux from gst-p-farsight to -bad 2009-02-21 17:50:35 +01:00
Olivier Crête
ad4d98d70c Re-indent to Gst style 2009-02-21 17:48:57 +01:00
Olivier Crête
fe071273c4 [MOVED FROM GST-P-FARSIGHT] Document rtp muxer a bit 2009-02-21 17:48:57 +01:00
Laurent Glayal
0bff57a395 [MOVED FROM GST-P-FARSIGHT] Add signals before stream lock and after unlocking 2009-02-21 17:48:57 +01:00
Olivier Crête
a34534df79 [MOVED FROM GST-P-FARSIGHT] Let ssrc through getcaps 2009-02-21 17:48:57 +01:00
Olivier Crête
2c83849849 [MOVED FROM GST-P-FARSIGHT] Rename have_base to have_ts_base 2009-02-21 17:48:57 +01:00
Olivier Crête
7a222b560e [MOVED FROM GST-P-FARSIGHT] Protect the seqnum with object lock in rtpmux 2009-02-21 17:48:57 +01:00
Olivier Crête
d0c7c0fc6c [MOVED FROM GST-P-FARSIGHT] Remove unused sink_ts_base 2009-02-21 17:48:57 +01:00
Olivier Crête
f5a8eb59af [MOVED FROM GST-P-FARSIGHT] Have getcaps to force the same clockrate on all pads 2009-02-21 17:48:57 +01:00
Olivier Crête
44b6071bd7 [MOVED FROM GST-P-FARSIGHT] Validate RTP data in RTP Mux 2009-02-21 17:48:56 +01:00
Olivier Crête
4bfd3b4561 [MOVED FROM GST-P-FARSIGHT] Remove unused clock-rate property 2009-02-21 17:48:56 +01:00
Olivier Crête
10f623547f [MOVED FROM GST-P-FARSIGHT] Clarify locking in rtpdtmfmux 2009-02-21 17:48:56 +01:00
Laurent Glayal
31ba19c159 [MOVED FROM GST-P-FARSIGHT] Missing format parameter 2009-02-21 17:48:56 +01:00
Olivier Crête
a68ed1d223 [MOVED FROM GST-P-FARSIGHT] Remove .git-darcs-dir files 2009-02-21 17:48:56 +01:00
Håvard Graff
d5f589c82f [MOVED FROM GST-P-FARSIGHT] Update seqnum base in rtp muxer
With help from Wim
2009-02-21 17:48:56 +01:00
Håvard Graff
272f888d9c [MOVED FROM GST-P-FARSIGHT] Fix some more leaks 2009-02-21 17:48:56 +01:00
Håvard Graff
4749d03a1d [MOVED FROM GST-P-FARSIGHT] Fix leak 2009-02-21 17:48:56 +01:00
Olivier Crête
363861fac6 [MOVED FROM GST-P-FARSIGHT] Don't unref caps we don't know (thanks Wim) 2009-02-21 17:48:55 +01:00
Olivier Crête
9609426eda [MOVED FROM GST-P-FARSIGHT] Put per-buffer debug at level LOG 2009-02-21 17:48:55 +01:00
Olivier Crête
95ea8a98fb [MOVED FROM GST-P-FARSIGHT] Make debug print accurate 2009-02-21 17:48:55 +01:00
Olivier Crête
498635f9b1 [MOVED FROM GST-P-FARSIGHT] Set our caps on the buffers 2009-02-21 17:48:55 +01:00
Olivier Crête
fed3e1c5e8 [MOVED FROM GST-P-FARSIGHT] Take the clock-base stored from the last setcaps 2009-02-21 17:48:55 +01:00
Olivier Crête
1875f490c5 [MOVED FROM GST-P-FARSIGHT] Store the clock-base on setcaps 2009-02-21 17:48:55 +01:00
Olivier Crête
963cec9458 [MOVED FROM GST-P-FARSIGHT] Add padprivate to the request pads 2009-02-21 17:48:55 +01:00
Olivier Crête
4e110b544f [MOVED FROM GST-P-FARSIGHT] Remove whitespace in gstrtpmux 2009-02-21 17:48:55 +01:00
Olivier Crête
b2f71c2401 [MOVED FROM GST-P-FARSIGHT] Make indentation more correct 2009-02-21 17:48:54 +01:00
Olivier Crête
abbdf7c22f [MOVED FROM GST-P-FARSIGHT] Fix typo 2009-02-21 17:48:54 +01:00