Commit Graph

57 Commits

Author SHA1 Message Date
Jan Schmidt adde9fadeb winegstreamer: Fix refcounting for videoflip.
Creating an element and placing it in a bin gives overship of the
element refcount to the bin. Don't explicitly unref it after that.

Signed-off-by: Jan Schmidt <jan@centricular.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 22:32:06 +09:00
Jan Schmidt 4aefacd162 winegstreamer: Do conversion before flipping.
The videoflip element doesn't handle all formats, so some formats like
Intel Indeo 3 will cause errors and fail.

Add videoconvert before videoflip to do format conversion when it's
needed.

Signed-off-by: Jan Schmidt <jan@centricular.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 22:32:06 +09:00
Jan Schmidt 1db3b0bd25 winegstreamer: Don't store decodebin explicitly.
Once placed inside the container, decodebin will be managed and
destroyed by the container. There's no need to store it, or (especially)
unref it.

Signed-off-by: Jan Schmidt <jan@centricular.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 22:32:05 +09:00
Jan Schmidt 22bdf77486 winegstreamer: Don't replace internal bus.
Don't replace the bus on the decodebin inside our container, as it
causes problems with internal GStreamer element management.

Put the bus only on the top-level container.

Signed-off-by: Jan Schmidt <jan@centricular.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 22:32:01 +09:00
Zhenbo Li 0c0c86a8c7 winegstreamer: Remove a condition which is always true.
Signed-off-by: Zhenbo Li <litimetal@gmail.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-08 00:51:08 +09:00
Hadrien Boizard 68e45dd4d0 winegstreamer: Use BOOL type where appropriate.
Signed-off-by: Hadrien Boizard <h.boizard@laposte.net>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-02 13:24:50 +09:00
Andrew Eikum 29deae351b winegstreamer: Set offset on GstBuffer.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-19 23:42:16 +09:00
Andrew Eikum 1517bfb186 winegstreamer: Fix IQualityControl::Notify.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-19 23:42:13 +09:00
Andrew Eikum 0025649714 strmbase: Improve QualityControl tracing.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-18 10:37:08 +09:00
Andrew Eikum 6107b36e56 winegstreamer: Flip video output.
Gstreamer handles video top-down, but Windows's dshow handles it
bottom-up. So let's insert a videoflip filter to fix the discrepancy
instead of relying on videorenderer to flip it like we did before.

Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-14 14:39:55 +09:00
Andrew Eikum e8311270ab winegstreamer: Update to use gstreamer-1.0.
Based on initial work by Rafał Mużyło.

Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 15:32:49 +09:00
Andrew Eikum 99894cf37c winegstreamer: Add TRACEs and improve formatting.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 15:22:31 +09:00
Andrew Eikum 56b6523842 winegstreamer: Always run gstreamer callbacks on a Wine thread.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-14 21:27:20 +09:00
Thomas Faber fd8a33fde8 winegstreamer: Avoid side-effects in asserts. 2015-04-03 17:07:38 +09:00
Thomas Faber ed761920ca winegstreamer: Avoid empty initializer braces. 2015-02-17 22:04:47 +09:00
Thomas Faber 04240e6ae3 winegstreamer: Destroy BaseFilter after GST child class. 2014-07-22 12:07:24 +02:00
Jacek Caban 289bdc4f45 strmbase: Store BasePinFuncTable inside Base*PinFuncTable structs. 2014-01-06 20:47:02 +01:00
Frédéric Delanoy 50435f6623 winegstreamer: Use boolean type where appropriate. 2013-11-11 17:06:44 +01:00
Damjan Jovanovic 4bdfa7f864 winegstreamer: return the IMemAllocator so the BaseOutputPin can store it and use it, avoiding a NULL pointer crash. 2013-01-17 12:21:31 +01:00
Francois Gouget 86c3f68303 winegstreamer: Make the GST_QualityControl methods static. 2012-11-23 14:39:43 +01:00
Christian Costa 20e1f8a027 winegstreamer: Turn some FIXME into TRACE. 2012-11-21 15:20:31 +01:00
Francois Gouget fac36c55e9 Assorted typo, spelling, wording and case fixes. 2012-05-15 16:26:43 +02:00
Aric Stewart 56477075c2 strmbase: Remove QualityControlImpl from the general strmbase.h.
Quality Control things are not part of the standard strmbase library set.
2012-04-03 12:19:17 +02:00
Aric Stewart d3c5b2c4f1 strmbase: COM cleanup for cleanup SourceSeeking. 2012-03-26 18:15:50 +02:00
Aric Stewart eb5d8b969f strmbase: COM cleanup for BasePin, BaseInputPin, and BaseOutputPin. 2012-03-26 18:15:49 +02:00
Maarten Lankhorst 6df92c11ca winegstreamer: Use WAVE_FORMAT_PCM when possible for demux. 2011-09-14 17:27:11 +02:00
Marcus Meissner 9450b0eb1e wingstreamer: Set target of parameter pointer, not parameter (Coverity). 2011-07-11 11:53:12 +02:00
Maarten Lankhorst 715921fea0 winegstreamer: Fix setcaps call. 2011-07-05 14:27:37 +02:00
Maarten Lankhorst 9ef5a863e3 winegstreamer: Correct a state transition. 2010-12-14 16:01:59 +01:00
Maarten Lankhorst ea397d2599 winegstreamer: Silence a harmless fixme. 2010-12-14 16:01:43 +01:00
Maarten Lankhorst feb716b423 winegstreamer: Always update time when Run is called. 2010-12-06 19:16:01 +01:00
Maarten Lankhorst bd4083bd63 winegstreamer: Kill thread on disconnect. 2010-12-05 12:24:03 +01:00
Maarten Lankhorst c911893e43 winegstreamer: Make sure size is set correctly before delivering buffers. 2010-12-05 12:23:56 +01:00
Maarten Lankhorst 3213061ebd winegstreamer: Do not allow timestamp + late to go negative in QOS messages. 2010-11-25 11:49:06 +01:00
Maarten Lankhorst 36fb590efd winegstreamer: Fix seeking for real. 2010-11-25 11:48:45 +01:00
Maarten Lankhorst a63c81d480 winegstreamer: Destroy thread in GST_Connect. 2010-11-17 14:01:16 +01:00
Maarten Lankhorst f3481b0218 winegstreamer: Fix reference leak. 2010-11-17 14:01:16 +01:00
Maarten Lankhorst 694ec2a48a winegstreamer: Fix support for seeking in demux. 2010-11-12 12:00:09 +01:00
Maarten Lankhorst cf085af126 winegstreamer: Move up gst_segment_init to prevent a theoretical race condition. 2010-11-11 17:08:41 +01:00
Maarten Lankhorst 50d8b0db7a winegstreamer: Fix regression from d62b4dcb66.
Accidentally made a worse leak by plugging a smaller one.
2010-11-11 12:25:06 +01:00
Maarten Lankhorst 97393cd557 winegstreamer: Fix playing .flv and realmedia files. 2010-11-11 12:25:00 +01:00
Maarten Lankhorst bdde3f1a7d winegstreamer: Add better support for unsupported audio/video.
This will fix the hangs caused by trying to play audio/video files for
which the codecs are not enabled in gstreamer.
2010-11-11 12:24:58 +01:00
Maarten Lankhorst 482541447b winegstreamer: Fix GetState. 2010-11-10 16:18:52 +01:00
Maarten Lankhorst 46f4011ec4 winegstreamer: Add support for qos to demuxer. 2010-11-10 12:15:27 +01:00
Maarten Lankhorst d82d3d074b winegstreamer: Move seeking from filter to pins. 2010-11-10 12:15:17 +01:00
Maarten Lankhorst d62b4dcb66 winegstreamer: Fix buffer leak in error path. 2010-11-10 12:14:37 +01:00
Aric Stewart 9dc2c5cf0b winegstreamer: 4 buffers is insufficient for some mpeg streams. 2010-11-09 17:08:21 +01:00
Maarten Lankhorst 76a976d049 winegstreamer: Clarify FIXME. 2010-11-09 17:07:52 +01:00
Maarten Lankhorst 4cbce24593 winegstreamer: Fix GSTInPin_EnumMediaTypes. 2010-11-09 16:57:09 +01:00
Maarten Lankhorst ccc8141b82 winegstreamer: Send EOS on exiting thread. 2010-11-09 16:56:51 +01:00