After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 619739 - Teletext decoder element based on libzvbi
Teletext decoder element based on libzvbi
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other Linux
: Normal normal
: 0.10.23
Assigned To: GStreamer Maintainers
GStreamer Maintainers
: 599884 618850 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2010-05-26 16:44 UTC by Andoni Morales
Modified: 2011-05-23 13:34 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
New teletext decoder component (40.02 KB, patch)
2010-05-26 16:44 UTC, Andoni Morales
none Details | Review
0001-teletextdec-don-t-try-to-push-an-event-on-a-pad-that.patch (878 bytes, patch)
2010-06-10 12:11 UTC, Andoni Morales
none Details | Review
0002-teletextdec-fix-deadlock-on-a-stream-error.patch (925 bytes, patch)
2010-06-10 12:12 UTC, Andoni Morales
none Details | Review
teletextedec: New teletext decoder plugin based in zvbi (41.92 KB, patch)
2010-09-13 10:04 UTC, Andoni Morales
committed Details | Review
teletextdec: don't try to push an event on a pad that returned an error (922 bytes, patch)
2010-09-13 10:06 UTC, Andoni Morales
committed Details | Review
teletextdec: fix deadlock on a stream error (969 bytes, patch)
2010-09-13 10:06 UTC, Andoni Morales
committed Details | Review
teletextdec: add some data in the preroll buffer (961 bytes, patch)
2010-09-13 10:06 UTC, Andoni Morales
committed Details | Review
teletextdec: add a new method to convert a page in a list of strings (6.47 KB, patch)
2010-09-13 10:07 UTC, Andoni Morales
committed Details | Review
teletextdec: Add support for pango (5.99 KB, patch)
2010-09-13 10:07 UTC, Andoni Morales
committed Details | Review

Description Andoni Morales 2010-05-26 16:44:53 UTC
Created attachment 162034 [details] [review]
New teletext decoder component

This patch against gst-plugins-bad adds a new plugin for teletetext decoding.

This element is a rework of Sebastien's teletext decoder component (http://github.com/sebp/gst-teletext and http://github.com/ylatuya/gst-teletext).

The sink pad accepts the following formats:
  * "video/mpeg,mpegversion=2,systemstream=true"
  * "private/teletext"

The source pad can push in the following format:
  * "video/x-raw-rgb"
  * "text/plain"
  * "text/html"

There is also a subtitles mode which strip off the first and the last line (teletext info lines) and the blank lines if the source pad has negociated "text/plain", and can be used to feed the subtitles into the muxer. 
This mode could also be used to add transparency to a page to overlay the subtitles.

I would also like to add a support for pango markup, but it's currently a work in progress.
Comment 1 Andoni Morales 2010-06-10 12:11:31 UTC
Created attachment 163281 [details] [review]
0001-teletextdec-don-t-try-to-push-an-event-on-a-pad-that.patch
Comment 2 Andoni Morales 2010-06-10 12:12:04 UTC
Created attachment 163282 [details] [review]
0002-teletextdec-fix-deadlock-on-a-stream-error.patch
Comment 3 Sebastian Dröge (slomo) 2010-06-10 13:13:12 UTC
How is this related to bug #618850?
Comment 4 Andoni Morales 2010-06-10 13:58:45 UTC
It's a different implementation. 
This plugin is based on Sebastien's teletext decoder and it's based on libzvbi, which takes care of most of the decoding stuff.
This element supports as input both mpeg-ts and sliced vbi data, while the other plugin only supports sliced vbi.
As output, this one supports RGB, plain text and html and I'll also add support for pango markup, whilst the other element only supports pango markup.
Comment 5 Marc Leeman 2010-06-11 07:29:11 UTC
The other element supports txt and pango markup ;-) ; but once you have pango markup; your element is more complete and more feature rich.
Comment 6 Andoni Morales 2010-06-11 11:13:05 UTC
Anyway, the support for pango is very basic and mostly oriented to display subtitles with colors, which can't be done using plain/text. What I do is to scan each line and pick the line color from the first non null character. Does it sounds good to you?
I can't work on it this weekend, but I'll try to upload a patch on monday/tuesday.
Comment 7 Marc Leeman 2010-06-11 11:32:27 UTC
Cool. I'll test it and see if I can use it as a drop in replacement after matching the params.
Comment 8 Andoni Morales 2010-09-13 10:04:58 UTC
Created attachment 170123 [details] [review]
teletextedec: New teletext decoder plugin based in zvbi
Comment 9 Andoni Morales 2010-09-13 10:06:08 UTC
Created attachment 170124 [details] [review]
teletextdec: don't try to push an event on a pad that returned an error
Comment 10 Andoni Morales 2010-09-13 10:06:44 UTC
Created attachment 170125 [details] [review]
teletextdec: fix deadlock on a stream error
Comment 11 Andoni Morales 2010-09-13 10:06:53 UTC
Created attachment 170126 [details] [review]
teletextdec: add some data in the preroll buffer
Comment 12 Andoni Morales 2010-09-13 10:07:04 UTC
Created attachment 170127 [details] [review]
teletextdec: add a new method to convert a page in a list of strings
Comment 13 Andoni Morales 2010-09-13 10:07:14 UTC
Created attachment 170128 [details] [review]
teletextdec: Add support for pango
Comment 14 Andoni Morales 2010-10-23 20:11:42 UTC
Can anyone review it or commit the patches in *bad?
Comment 15 Marc Leeman 2010-10-24 08:21:44 UTC
Haven't tested it recently; did so a couple months ago. I'll see if I can update the version and re-test it on dvb-s.

A couple months ago; it certainly was working properly on ZDF, Arte, RAI, ...
Comment 16 Sebastian Dröge (slomo) 2011-05-23 13:07:33 UTC
*** Bug 599884 has been marked as a duplicate of this bug. ***
Comment 17 Sebastian Dröge (slomo) 2011-05-23 13:09:19 UTC
*** Bug 618850 has been marked as a duplicate of this bug. ***
Comment 18 Sebastian Dröge (slomo) 2011-05-23 13:33:33 UTC
commit 67f23a8539811144db66bac3076749e6d4b4ca54
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Mon May 23 15:32:09 2011 +0200

    teletextdec: Minor cleanup and indention fixes

commit 827e2d13c1ab8eae451f55a0ce0da2a6565cef3f
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Mon May 23 15:20:45 2011 +0200

    teletextdec: Don't use GST_FLOW_IS_FATAL()

commit 81134554dbbb4493631b571e2364d78ebb8598da
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Mon May 23 15:14:04 2011 +0200

    teletextdec: Fix buffer data leak

commit d20de1087cf8dfbfc8e00d04df8db53d312a6dc7
Author: Andoni Morales Alastruey <amorales@flumotion.com>
Date:   Fri Sep 10 14:34:42 2010 +0200

    teletextdec: Add support for pango
    
    https://bugzilla.gnome.org/show_bug.cgi?id=619739

commit f4e4fc44f7a3b5e3abf81eca3b7aa3e9a499ca73
Author: Andoni Morales Alastruey <amorales@flumotion.com>
Date:   Thu Jun 10 12:44:27 2010 +0200

    teletextdec: add a new method to convert a page in a list of strings
    
    https://bugzilla.gnome.org/show_bug.cgi?id=619739


commit fb98c55f67d77499aa6f0dd5749206e267aac05f
Author: Andoni Morales Alastruey <amorales@flumotion.com>
Date:   Thu Sep 9 16:41:32 2010 +0200

    teletextdec: add some data in the preroll buffer
    
    https://bugzilla.gnome.org/show_bug.cgi?id=619739

commit 126a98d967275b5f4ed0c09e5ff9c8e75bafd09f
Author: Andoni Morales Alastruey <amorales@flumotion.com>
Date:   Thu Jun 10 13:55:30 2010 +0200

    teletextdec: fix deadlock on a stream error
    
    https://bugzilla.gnome.org/show_bug.cgi?id=619739

commit afd240c621e77a87fe09a5b4559451fc7ddbd88a
Author: Andoni Morales Alastruey <amorales@flumotion.com>
Date:   Thu Jun 10 12:42:42 2010 +0200

    teletextdec: don't try to push an event on a pad that returned an error
    
    https://bugzilla.gnome.org/show_bug.cgi?id=619739

commit 8bb6ff414f320b84a04abeaff25c5d261d087ace
Author: Andoni Morales Alastruey <amorales@flumotion.com>
Date:   Mon Sep 13 11:59:18 2010 +0200

    teletextdec: New teletext decoder plugin based in zvbi
    
    https://bugzilla.gnome.org/show_bug.cgi?id=619739