Commit graph

4978 commits

Author SHA1 Message Date
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
Youness Alaoui 3cc3e9ad1b hlsdemux: No need to store position since it's the buffer's timestamp
This also will fix the issue of having the current position different
from the actual position of the first buffer in the queue in case
the caching caused a resync of the sequence number.

Conflicts:

	gst/hls/gsthlsdemux.c
2012-05-10 13:38:57 -04:00
Youness Alaoui 87d10cf683 hlsdemux: Fallback to previous playlist when switching if the new playlist can't be fetched 2012-05-10 13:23:58 -04:00
Luis de Bethencourt f805f9e079 gaudieffects: consistency fixes in gstgaussblur 2012-05-10 13:46:27 +01:00
Luis de Bethencourt c7949405ca gaudieffects: port gaussianblur to GstVideoFilter 2012-05-10 10:47:27 +01:00
Luis de Bethencourt bc3afe0ac2 gaudieffects: port solarize to GstVideoFilter 2012-05-09 17:24:03 +01:00
Luis de Bethencourt ee60c2cf98 gaudieffects: port exclusion to GstVideoFilter 2012-05-09 17:24:03 +01:00
Luis de Bethencourt 2e1aa96113 gaudieffects: port dodge to GstVideoFilter 2012-05-09 17:24:03 +01:00
Luis de Bethencourt e9ec32fee7 gaudieffects: port dilate to GstVideoFilter 2012-05-09 17:24:03 +01:00
Luis de Bethencourt 2eba32aef3 gaudieffects: port burn to GstVideoFilter 2012-05-09 17:24:03 +01:00
Luis de Bethencourt ebad8a4dbc gaudieffects: port chromium to GstVideoFilter 2012-05-09 17:24:03 +01:00
Luis de Bethencourt 5a4b8d8937 gaudieffects: use GST_DEBUG_FUNCPTR in blur 2012-05-09 17:23:07 +01:00
Luis de Bethencourt 151b010bc9 gaudieffects: port gaussblur to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt f1220e95b5 gaudieffects: port solarize to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt 9602a3513b gaudieffects: port exclusion to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt e78f5817e5 gaudieffects: port dodge to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt 1471e804d8 gaudieffects: port dilate to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt 6b5d5c6f24 gaudieffects: add header to gaussblur 2012-05-09 13:18:53 +01:00
Luis de Bethencourt 3db482093d gaudieffects: port chromium to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt c123ac0735 gaudieffects: port burn to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt b2e3e417a5 controller: port to new controller location and api 2012-05-09 13:18:52 +01:00
Tim-Philipp Müller 9503daa56a rfbsrc: call WSAStartup/Cleanup on win32
If we link against libwinsock2, we should probably call
Startup/Cleanup as well.

https://bugzilla.gnome.org/show_bug.cgi?id=675415
2012-05-07 23:59:58 +01:00
Marc-André Lureau 2f20ec7312 rfbsrc: fix librfb linking on win32
libtool: link:  i686-w64-mingw32-gcc -shared .libs/libgstrfbsrc.dll.def
.libs/libgstrfbsrc_la-gstrfbsrc.o  -Wl,--whole-archive ./.libs/librfb.a
-Wl,--no-whole-archive  -L/usr/i686-w64-mingw32/sys-root/mingw/lib
-lgstbase-0.10 -lgstreamer-0.10 -lxml2 -lgobject-2.0 -lgthread-2.0
-lgmodule-2.0 -lglib-2.0 -lintl  -mms-bitfields -mms-bitfields -O2   -o
.libs/libgstrfbsrc.dll -Wl,--enable-auto-image-base -Xlinker
--out-implib -Xlinker .libs/libgstrfbsrc.dll.a
Creating library file: .libs/libgstrfbsrc.dll.a
./.libs/librfb.a(librfb_la-rfbdecoder.o): In function
`rfb_decoder_read':
/home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:164:
undefined reference to `_imp__recv@16'
./.libs/librfb.a(librfb_la-rfbdecoder.o): In function
`rfb_decoder_connect_tcp':
/home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:112:
undefined reference to `_imp__socket@12'
/home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:119:
undefined reference to `_imp__htons@4'
/home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:123:
undefined reference to `_imp__inet_addr@4'
/home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:125:
undefined reference to `_imp__connect@12'

It needs -lws2_32 which is already in $(WINSOCK2_LIBS)

https://bugzilla.gnome.org/show_bug.cgi?id=675415
2012-05-07 23:59:48 +01:00
Raimo Järvi 93ad7a4d06 Fix printf format compiler warnings on mingw-w64
https://bugzilla.gnome.org/show_bug.cgi?id=675520
2012-05-05 19:45:42 +01:00
Tim-Philipp Müller b87f7345db Add WINSOCK2_LIBS, remove WIN32_LIBS, fix rtmp build on Windows some more
One way of passing -lws2_32 to plugins should be enough..
2012-05-05 18:20:33 +01:00
Thiago Santos 133c9ef6be camerabin: remove unnecessary code 2012-05-04 19:54:51 -03:00
Thiago Santos acc48b7833 camerabin: improve image capture debug 2012-05-04 19:54:51 -03:00
Thiago Santos 95fd9cd277 camerabin: always force image-profile to have variable framerate
image-encodebin can't use videorate as it always store one buffer
to be able to do its timestamps/duration math. As image captures
only push one buffer at a time, this videorate behavior breaks
camerabin usage.
2012-05-04 19:50:52 -03:00
Youness Alaoui d3303121c8 basecamerabin: Do not set the pad templates in the base class.
It is best to let the subclass define the pad templates, this would
allow the subclass to decide which caps the pads should have.
2012-05-04 19:50:52 -03:00
Thiago Santos 37bac4c1ed wrappercamerabinsrc: avoid assertion by using null caps as any
NULL caps aren't valid caps, use a reference to 'any' caps
2012-05-02 16:21:01 -03:00
Thiago Santos cc09cd1303 camerabin: Fix get/set_property for encoding profiles
Encoding profiles are objects, not boxed types
2012-05-02 15:25:32 -03:00
Thiago Santos b5ba142b06 camerabin: remove custom renegotiate event
In 1.0 there is a core reconfigure event, camerabin doesn't need
its custom renegotiate event anymore
2012-05-01 15:31:11 -03:00
Thiago Santos b030923eb5 camerabin: Use plain video encoding profile for images
Do not use jpeg as a container format for image captures, use
the plain video encoding format. It was used as a container in
0.10 to force the addition of tags to the image.
2012-05-01 15:20:50 -03:00
Thiago Santos ad9822dea7 wrappercamerabinsrc: change output-selector negotiation mode
In 0.10 camerabin2 controlled the negotiation strictly and the output-selector
wouldn't forward setcaps calls. In 0.11 the renegotiation events are already in
core and we can allow the pipeline to handle it without much control from camerabin
part (I hope), so this patch makes output-selector forward caps negotiation events
to the active pad.
2012-05-01 15:20:49 -03:00
Thiago Santos 4a4f06abcf wrappercamerabinsrc: removing renegotiate handlers
gstreamer 1.0 already has the reconfigure event, remove the
custom event handling from wrappercamerabinsrc
2012-05-01 15:20:49 -03:00
Thiago Santos 9cd0172581 wrappercamerabinsrc: prevent caps renegotiation loop
Only set the zoom capsfilter caps when the new caps are different,
preventing a caps renegotiation loop.
2012-05-01 15:20:49 -03:00
Thiago Santos 79d3cc533f camerabin: Replacing ffmpegcolorspace with videoconvert 2012-05-01 15:10:51 -03:00
Wim Taymans 7394deef33 tsbase: unref bad packets too
Conflicts:

	gst/mpegtsdemux/mpegtsbase.c
2012-05-01 11:50:39 +02:00
Wim Taymans b56ab4b3cf tsdemux: reset the state of the stream when flushing
We need to reset the stream on a flush or else old packets could be added to the
list and leak.
2012-05-01 11:47:52 +02:00
Wim Taymans eaf4d97815 mpegtsbase: don't push events upstream in pull mode
In pull mode, don't push the seek event upstream.
2012-05-01 11:43:07 +02:00
Wim Taymans 6bf0ebdcd8 mpegts: don't poke into private adapter fields 2012-05-01 09:41:18 +02:00
Tim-Philipp Müller 2f50ad435b camerabin2: rename to "camerabin"
But leave source code intact for now, for easier patch merging.
2012-04-30 17:56:17 +01:00
Tim-Philipp Müller 7d65470c4a Remove old camerabin 2012-04-30 17:44:34 +01:00
Gil Pedersen da001be15a hlsdemux: start paused task on new data 2012-04-25 15:58:13 +02:00
Mark Nauwelaerts 4d1bd12ff8 coloreffects: port to 0.11 2012-04-24 17:01:21 +02:00
Sebastian Dröge 5d2b52697c dvb-sub: Use unchecked byte reader functions 2012-04-24 15:20:16 +02:00
Mark Nauwelaerts 07ddc9d8cd asfmux: use some more boilerplate 2012-04-23 17:11:38 +02:00
Mark Nauwelaerts e79cae3002 asfmux: port to 0.11 2012-04-23 16:55:18 +02:00
Gil Pedersen 1fa5624762 hlsdemux: port to 0.11 2012-04-20 15:34:59 +02:00
Wim Taymans 8da3c2a969 mpegtsdemux: we ignore warnings differently
We suppress the warnings in the .c file instead.
2012-04-20 11:25:31 +02:00
Gil Pedersen fcd8155d87 mpegtsdemux: port to 0.11
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674397
2012-04-20 11:25:31 +02:00
Wim Taymans 5bd76c7c97 mpegtsbase: clarify event ownership 2012-04-20 11:25:31 +02:00
Gil Pedersen 095a17ad03 mpegtsdemux: fix memory leaks
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674393
2012-04-20 11:25:31 +02:00
Sebastian Dröge ad871224fc fieldanalysis: Does not need to link to libgstbasevideo at all
Conflicts:

	gst/fieldanalysis/Makefile.am
2012-04-20 11:18:20 +02:00
Sebastian Dröge 7ff3293a44 video: Update for libgstvideo API changes 2012-04-19 12:31:39 +02:00
Youness Alaoui f1ec8fcb05 jpegparse: Do not set the duration to the input buffer's duration unless valid
This causes a bug where the first buffer has ts = 0, dur=X, the second buffer
has ts=X (because of ts += duration), dur=-1, then the following buffers
will start having a non valid timestamp.
The real duration is only calculated during the caps negociation when there
is a framerate available and the buffer's duration is invalid.
2012-04-18 15:41:57 -04:00
Julian Scheel 1059905237 tsdemux: Set currentlist to NULL after free.
This prevents double free of currentlist is some circumstances.
2012-04-18 09:30:22 +02:00
Youness Alaoui 2503e67ca9 jpegparse: Fix duration in buffers. It's frames per second, not seconds per frame 2012-04-17 21:23:30 -04:00
Mark Nauwelaerts 6578797245 collectpads2: rename to collectpads 2012-04-17 15:22:59 +02:00
Alessandro Decina 4251b25308 mpegtsmux: fix pad iterator leak 2012-04-16 08:53:12 +02:00
Alessandro Decina 34cf1a1bbc mpegtsmux: don't leak force key unit events 2012-04-16 08:53:06 +02:00
Matej Knopp 19f7bd470d mpegvideoparse: Parser fails to split some frames 2012-04-16 08:42:02 +02:00
Matej Knopp 23e312872e mpegvideoparse: Fix FPS and frame duration for telecine files 2012-04-16 08:42:02 +02:00
Matej Knopp 19ee94a8d1 mpegvideoparse: Do not update codec-data when only quantiser matrix changes 2012-04-16 08:42:02 +02:00