Sebastian Dröge
cda192b3b7
gst: Update for GST_PLUGIN_DEFINE() API changes
2012-04-05 18:02:56 +02:00
Wim Taymans
77299ba6ae
fix for caps api changes
2012-03-11 19:06:59 +01:00
Wim Taymans
1119f6ee41
Merge branch 'master' into 0.11
...
Conflicts:
ext/chromaprint/gstchromaprint.c
ext/mpeg2enc/Makefile.am
ext/voaacenc/gstvoaacenc.c
gst/dvbsuboverlay/gstdvbsuboverlay.c
gst/mpegtsdemux/mpegtsbase.c
gst/sdp/gstsdpdemux.c
gst/videoparsers/gsth264parse.c
sys/d3dvideosink/d3dvideosink.c
tests/examples/camerabin/gst-camera-perf.c
tests/examples/camerabin/gst-camerabin-test.c
tests/examples/camerabin2/gst-camerabin2-test.c
tests/examples/mxf/mxfdemux-structure.c
tests/examples/scaletempo/demo-main.c
2012-02-10 16:46:50 +01:00
Vincent Penquerc'h
8147669971
plenty: fixup glib deprecations
2012-01-27 15:47:07 +00:00
Wim Taymans
21073e98cf
port to new memory API
2012-01-25 14:51:25 +01:00
Wim Taymans
27ee60a27b
port to new gthread API
2012-01-19 11:34:26 +01:00
Vincent Penquerc'h
7521b597f4
various: fix pad template ref leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:08:27 +00:00
Matej Knopp
9d0bdcf6d7
Fix printf format compiler warnings on OS X / 64 bit
...
https://bugzilla.gnome.org/show_bug.cgi?id=662618
2011-11-23 23:43:15 +00:00
Wim Taymans
940de5b195
add parent to pad functions
2011-11-17 15:53:42 +01:00
Wim Taymans
6d92ecac75
add parent to query function
2011-11-16 17:30:38 +01:00
Wim Taymans
5231ae7252
_peer_get_caps() -> _peer_query_caps()
2011-11-15 17:24:07 +01:00
Wim Taymans
03713e5045
change getcaps to query
2011-11-15 16:34:13 +01:00
Wim Taymans
5de9be0fdd
dvbsuboverlay: port to 0.11
2011-10-10 10:15:05 +02:00
Tim-Philipp Müller
cc9e490313
dvbsuboverlay: fix up copyrights
2011-08-03 13:54:21 +01:00
Sebastian Dröge
bdf51f12d2
dvbsuboverlay: Remove some unused variables in the I420 blending function
2011-03-18 09:33:26 +01:00
Raimo Järvi
9e7d1ba888
dvbsuboverlay: Fix using alpha values in blitting.
...
Use each pixel's own alpha value instead of average alpha value when
calculating color components. Fixes bug #639763 .
2011-03-18 09:27:08 +01:00
Janne Grunau
43bfb0009a
dvbsuboverlay: fix leak of "clear screen" DVBSubtitles structs
2011-01-04 15:06:17 +00:00
Janne Grunau
9f02f693de
dvbsuboverlay: fix two minor deinitialization memory leaks
2011-01-04 13:51:55 +00:00
Janne Grunau
994156c1b8
dvbsuboverlay: remove unnecessary RGB -> YUV conversion by using YUV palettes
...
the default CLUTs still use RGB -> YUV conversions since the standard defines
them as RGBA values.
2011-01-03 20:23:24 +00:00
Alessandro Decina
143efa727e
dvbsuboverlay: fix compiler warnings
2010-12-27 13:20:28 +01:00
Tim-Philipp Müller
7a21a19499
dvbsuboverlay: clean-up: allocate flat array of rectangles
...
instead of an array of pointers to individually-allocated rectangles.
2010-12-27 11:10:53 +00:00
Tim-Philipp Müller
f8dc80a8b7
dvbsuboverlay: clean-up: dvb sub parser helper doesn't need to be a GObject
2010-12-25 16:30:50 +00:00
Tim-Philipp Müller
767c29cc2f
dvbsuboverlay: use GST_LOG etc. for logging
...
The dvbsub routines were originally designed as a mini lib with a
log callback (which from the looks of it in our case would always
be called and always assemble the string even with debug output
disabled). Some of these debug statements can probably be removed
or cleaned up some more.
2010-12-17 10:50:56 +00:00
Tim-Philipp Müller
d9f83ad938
dvbsuboverlay: fix atomic access
2010-12-17 10:50:36 +00:00
Janne Grunau
b73ae45460
dvbsuboverlay: fix rendering artefacts
...
Initialize source x position for odd height special case.
2010-12-16 15:33:59 +00:00
Edward Hervey
b191fb2b05
dvbsuboverlay: The enable property is a boolean and not an integer
2010-12-16 11:29:07 +01:00
Sebastian Dröge
a99e13cd5a
dvbsuboverlay: Rename DVB subtitling media type to subpicture/x-dvb
2010-12-15 21:11:29 +01:00
Sebastian Dröge
a71c3f7e48
dvbsuboverlay: Don't draw anything on the video if the enable property is set to FALSE
2010-12-15 20:54:35 +01:00
Sebastian Dröge
65598884d2
dvbsuboverlay: Add #defines for the property default values
2010-12-15 20:53:21 +01:00
Sebastian Dröge
e9fa2fcd8b
dvbsuboverlay: Use g_atomic_int_get() for reading the max_page_timeout field
2010-12-15 20:51:12 +01:00
Janne Grunau
9b3b1aedea
dvbsuboverlay: use atomic instructions to set/get enable property
2010-12-15 20:47:25 +01:00
Janne Grunau
533453186e
dvbsuboverlay: add property to limit page_time_out to a setable maximum
2010-12-15 20:47:25 +01:00
Janne Grunau
36b101cfb8
dvbsuboverlay: implement display definition segment subtitle windows
...
simplifies subtitle scaling in blit_i420()
2010-12-15 20:47:25 +01:00
Janne Grunau
4d8220b033
dvbsuboverlay: scale subtitles according to the display size
...
Display size is either transmitted in the display definition segment or
implicitly defined to 720x576. The subtitle window information also present in
the display definition segment is not yet used.
2010-12-15 20:47:25 +01:00
Janne Grunau
2f6f78caa3
dvbsuboverlay: fix luma stride for scaled subtitles (display width != width)
2010-12-15 20:47:24 +01:00
Alessandro Decina
5c097c447b
dvbsuboverlay: fix compiler warnings on OSX.
2010-12-08 19:36:48 +01:00
Sebastian Dröge
04eb581480
dvbsuboverlay: Implement nearest neighbour scaling for the subpictures
...
This becomes necessary when SDTV subtitles are used for HDTV videos.
2010-12-08 16:30:12 +01:00
Sebastian Dröge
8974371914
dvbsuboverlay: Revert some parts of last commit that shouldn't be committed
2010-12-08 16:30:11 +01:00
Sebastian Dröge
68b8fca047
dvbsuboverlay: Really choose the latest possible subpictures
...
And not the first subpictures that are still valid according to the
page timeout.
2010-12-08 16:30:11 +01:00
Sebastian Dröge
e25a1dc0cc
dvbsuboverlay: Refactor blending function and take average of all chroma values
2010-12-08 16:30:11 +01:00
Sebastian Dröge
2282a08890
dvbsuboverlay: Improve selection of current to be displayed subpictures
...
Drop all subpictures that are too old anyway and clear the currently
displayed subpictures if num_rects==0 happens.
2010-12-08 16:30:11 +01:00
Sebastian Dröge
01cf79ae59
dvbsuboverlay: Implement clipping of video buffers
...
Also don't clip subpicture buffers, they have no duration and
clipping them doesn't make much sense here.
2010-12-08 16:30:11 +01:00
Sebastian Dröge
672cb276be
dvbsuboverlay: Clean up locking some more
2010-12-08 16:30:10 +01:00
Sebastian Dröge
92109fdfbc
dvbsuboverlay: Flush subtitles and all internal state when needed
2010-12-08 16:30:10 +01:00
Sebastian Dröge
472cace08b
dvbsuboverlay: Set the global library log function exactly once
...
And don't use one of the possibly many renderer instances, this is only
calling for crashes.
2010-12-08 16:30:10 +01:00
Sebastian Dröge
2a976ae133
dvbsuboverlay: Remove lots of commented out and unused code and clean up locking
2010-12-08 16:30:10 +01:00
Mart Raudsepp
a203ad1aab
dvbsuboverlay: Fix more of the blending, so it looks quite good now
...
* libdvbsub gives us alpha channel already, not transparency level, so
don't do another "alpha = 255 - alpha", this is done by libdvbsub.
* Fix alpha channel handling in interpolation - assrender had an additional
1bpp alpha bitmap as a possible mask, we don't. So don't use the palette
index array as alpha values; bug from quick code porting long ago to
changing pixel colors (assrender has a single pixel color for whole
regions or something, unlike dvbsub, which has indexed colors).
* Don't forget to reassign our YUV and other local pixel color variables
after shifting to work on the bottom part of a 2x2 subsample block, or
it's obviously very blocky.
Remaining issues in blending:
* Should probably be interpolating or doing something else useful with the
resulting U and V channels, so that most of the source pixel UV values would
actually be actually cared about, except for just one out of possibly four.
* Don't convert AYUV to ARGB in libdvbsub, and then back from ARGB to AYUV in
dvbsuboverlay for no reason
* Re-factor the whole thing to something more like textoverlay blending
* Related to that, perhaps cache the current spu in a good format for quick
blending on each frame, after which the more often called blending parts
might become more straightforward
2010-12-08 16:30:10 +01:00
Mart Raudsepp
efa1e9a1fe
dvbsuboverlay: Fix blending bug regarding color channel addressing.
...
libdvbsub gives us ARGB ordered pixels right now, not RGBA.
2010-12-08 16:30:10 +01:00
Mart Raudsepp
21abf9c4a8
dvbsuboverlay: Do blending calls when appropriate
...
This gives us actually shown subtitles, however with bugs in the
current blitting code, resulting in very transparent subtitles.
2010-12-08 16:30:10 +01:00
Mart Raudsepp
84b52f6eb4
dvbsuboverlay: Implement fallback page_time_out honoring
...
The spec has a page_time_out in the page composition segment to ensure
subtitles don't get stuck on screen for too much longer than intended,
when future page composition segments get lost on bad reception, or other
problems. Honor it in the gst plugin side.
2010-12-08 16:30:10 +01:00