Jan Schmidt
b460592917
mpegdemux: Only treat streams from 0xa0 to 0xaf as LPCM, not 0xa0..0xbf
...
Don't treat some streams (Private Stream 2) as LPCM when they're not. Fixes
playback of files that have private streams in them now that the PES filter
emits such packets.
2009-05-26 21:05:01 +01:00
Tim-Philipp Müller
606daecf70
dvdspu: fix printf formats to avoid compiler warnings
2009-05-26 18:43:18 +01:00
Jan Schmidt
b68a05dbfa
gstspu: Implement PGS rendering and alpha blending
...
Refactor the DVD subpicture compositing, switching it to 8-bit alpha
calculations. Reuse some of the resulting code to implement PGS
subpicture blending.
Implement parsing and collecting of composition objects properly, but
assuming a single active window and colour palette for now. I need more
PGS samples.
2009-05-26 15:58:09 +01:00
Jan Schmidt
7e20e3be45
dvdspu: Move a bunch of vobsub specific logic to a separate file.
...
Start separating out the vobsub logic in preparation for creating
separate renderer objects for each subpicture format.
2009-05-26 15:31:56 +01:00
Jan Schmidt
e0e5975462
dvdspu: Add copyright header and includes to the PGS handler
2009-05-26 15:31:55 +01:00
Jan Schmidt
293a976532
dvdspu: Make the PGS dumping less verbose
2009-05-26 15:31:55 +01:00
Jan Schmidt
871287ba2a
dvdspu: Collect entire PGS packets and queue as events
...
Collect fragmented PGS packets and submit as complete events for
processing at the correct moment.
2009-05-26 15:31:55 +01:00
Jan Schmidt
4e847cb4ac
dvdspu: Add simple PGS handler that dumps the packet info
...
Add setcaps logic on the subpicture sink pad for configuring
which subpicture format is arriving.
Add the first piece of PGS subpicture handling by dumping the stream
contents out to the terminal as the packets arrive.
Add some more debug.
Don't calculate the running time for our subpicture packets twice,
once is enough.
2009-05-26 15:31:54 +01:00
Jan Schmidt
78cd406a76
dvdspu: Add a simple default colour table.
...
When we're not provided with a palette in advance, draw with a grey
colour or two, instead of YUV green.
2009-05-26 15:31:54 +01:00
Jan Schmidt
f7eefea47c
mpegdemux: Add sparse stream filling.
...
First stab at sending new-segment events to effect sparse stream
updates.
2009-05-26 15:31:54 +01:00
Jan Schmidt
e1d778e559
mpegdemux: Add support for outputting sub-picture streams found in files.
...
Output subpicture streams when they are found on the private stream ID.
Don't strip off the first byte of such packets when pushing.
2009-05-26 15:31:53 +01:00
Jan Schmidt
471640e3f3
mpegtsdemux: Add mapping for DVD and Bluray subpicture streams.
...
Add output subpicture pads for DVD (video/x-dvd-subpicture) and Bluray PGS
(subpicture/x-pgs) streams. Remove an unused variable from
the PES filter.
2009-05-26 15:31:53 +01:00
Jan Schmidt
a7cd4b03ad
dvdspu: Don't accidentally lose the colour palette when flushing the SPU
...
Fixes racy startup on DVDs where it sometimes gets entirely the wrong set
of colours in the menus and subtitles.
2009-05-26 15:31:51 +01:00
Wim Taymans
707eaf7684
rtpsource: byteswap the port from GstNetAddress
...
Since the port in GstNetAddress is in network order we might need to byteswap it
before adding it to the source statistics.
2009-05-26 15:42:55 +02:00
Edward Hervey
023af351fb
gstpesfilter: Directly use gst_adapter_take_buffer().
2009-05-25 18:32:26 +02:00
Edward Hervey
410d8f8910
gstpesfilter: Don't peek the adapter if we don't have enough data.
2009-05-25 18:32:26 +02:00
Edward Hervey
849ea99358
gstpesfilter: Don't skip private streams PES but push them out.
...
The one thing we *DO* need to do for those streams is to skip all
the PTS/DTS/Scrambling/DSM/extension/... handling.
2009-05-25 18:32:26 +02:00
Edward Hervey
36cc757bda
mpegtsdemux: Ignore NULL packets as early as possible.
...
This avoids:
* creating a MpegTSStream structure for nothing
* processing packet data for nothing
2009-05-25 18:32:26 +02:00
Edward Hervey
f92f282874
mpegtsdemux: Add mapping for HDV private streams
2009-05-25 18:32:26 +02:00
Wim Taymans
269f3ff1a2
rtpbin: remove ptdemux ghostpads
2009-05-25 13:46:29 +02:00
Michael Smith
1a98c66f4a
adpcmdec: Add new plugin for ms-adpcm decoding.
2009-05-22 16:56:52 -07:00
Edward Hervey
0444aa3374
mpegvideoparse: Detect interlaced content and set it on outgoing caps.
...
I also added the parsing of all the other bits in the sequence extension
header in case we need it later.
2009-05-22 17:19:26 +02:00
Wim Taymans
e8423da78e
rtpbin: add to new signal to remove SSRC pads
2009-05-22 16:41:19 +02:00
Ali Sabil
0d014baaa4
ssrcdemux: emit signal when pads are removed
...
Add action signal to clear an SSRC in the ssrc demuxer.
Add signal to notify of removed ssrc.
See #554839
2009-05-22 16:35:20 +02:00
Wim Taymans
9353ceb530
rtpbin: use our ghostpads instead of its target
...
Since we keep a reference to our ghostpads, we can use them to track sessions.
This avoid us having to mess with the target of the ghostpad.
2009-05-22 15:45:19 +02:00
Wim Taymans
1c85da2d2b
rtpbin: don't warn when getting request pads twice
...
Allow getting the request pads multiple times, just return the previously
created pads.
2009-05-22 15:36:17 +02:00
Wim Taymans
a0b6202baf
rtpsource: add RTP and RTCP source address
...
Add the RTP and RTCP sender addresses in the stats structure.
2009-05-22 13:47:30 +02:00
Wim Taymans
d48dcb0499
rtpsession: reuse source code for SDES
...
Reuse the RTPSource object property instead of duplicating code.
2009-05-22 13:45:15 +02:00
Wim Taymans
142840432b
rtpbin: set target state on new elements
...
Set the state on newly added elements to the state of the parent.
Add some debug info and do some cleanups
2009-05-22 12:20:13 +02:00
Wim Taymans
58c59d7953
rtpbin: unref requests pads after releasing
2009-05-22 11:59:17 +02:00
Wim Taymans
580b20d6cc
mpegtsdemux: fix memleaks and refcounts
...
Use correct constants for PID_type so that we clear the right filter.
provide_clock must return a ref to a clock.
2009-05-22 11:02:07 +02:00
Tim-Philipp Müller
e5b1c976c4
id3tag: canonicalise function names
2009-05-22 09:54:57 +01:00
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