Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deliver raw teletext to clients that are able to display it (e.g. XBMC) #44

Merged
merged 2 commits into from Aug 2, 2012

Conversation

mikrohard
Copy link
Contributor

I think the title says it all. It's just a simple teletext parser to deliver raw teletext data to the client.

@mikrohard
Copy link
Contributor Author

For those of you who would like to try it with XBMC, have a look a this:
opdenkamp/xbmc#250

@dahool84
Copy link

dahool84 commented Oct 5, 2011

Good job!!

@xbmc-cobradevil
Copy link
Contributor

Thank you very much

I opened a ticket for this https://www.lonelycoder.com/redmine/issues/511 because i'm not a programmer i had to wait for someone to implement this.

I will try to patch the source to see if it works

William

@mikrohard
Copy link
Contributor Author

Don't forget to patch XBMC as well...

Patch for tvheadend: http://linode.sledim.si/tmp/deliver_raw_teletext_to_clients.patch
Patch for XBMC: http://linode.sledim.si/tmp/enable_teletext_htsp_pvrclient.patch

@joergschiller
Copy link

This introduces a bug for me when I try to record some channels. The audio streams were not detected when recording. Stream from tvheadend to mplayer or watching the channels in xbmc works.

I found this issue while testing this recording issue and reverting some patches I use in my fork of tvheadend. I traced this down to this pull request.

Description of bug with ts dumps: http://www.lonelycoder.com/redmine/issues/754#note-6
Result of testing without the patch: http://www.lonelycoder.com/redmine/issues/754#note-7

I hope this is somehow useful. Don't hesitate to contact me for further information.

Greetings
Joerg

@xbmc-cobradevil
Copy link
Contributor

Hello,

see my comments in: http://www.lonelycoder.com/redmine/issues/754#note-10

Thank you for looking into it.

William

…reams. Temporary until a better solution is found.
@Wird
Copy link

Wird commented Feb 11, 2012

I use this teletext patch in my version of tvheadend, and it works very fine, hope we will soon see this in master:)
nice work :)

@ghost
Copy link

ghost commented Jun 5, 2012

Would love it to see this added to the master!

opdenkamp added a commit to opdenkamp/tvheadend that referenced this pull request Jun 18, 2012
@schumi2004
Copy link

Does anyone have updated patch files including the quick fix supplied by Jernej ?

@mikrohard
Copy link
Contributor Author

Just add ".patch" to the github url... https://github.com/andoma/tvheadend/pull/44.patch

@schumi2004
Copy link

thanks @mikrohard getting the patch worked but applying it failed

02:55:16 {master} ~/tvheadend$ git apply --ignore-space-change --ignore-whitespace tvheadend_deliver_raw_teletext_to_clients.v0.2.patch
error: patch failed: src/parsers.c:102
error: src/parsers.c: patch does not apply
error: patch failed: src/tsdemux.c:110
error: src/tsdemux.c: patch does not apply
error: patch failed: src/plumbing/globalheaders.c:202
error: src/plumbing/globalheaders.c: patch does not apply

Maybe it's better to change it by hand?

@mikrohard
Copy link
Contributor Author

That's weird.... which tvheadend source are you using?

It applies without any problems against the current master branch...

Mac-Mini:tmp mikrohard$ git clone https://github.com/andoma/tvheadend.git
Cloning into 'tvheadend'...
remote: Counting objects: 10920, done.
remote: Compressing objects: 100% (2830/2830), done.
remote: Total 10920 (delta 8281), reused 10614 (delta 8049)
Receiving objects: 100% (10920/10920), 4.44 MiB | 365 KiB/s, done.
Resolving deltas: 100% (8281/8281), done.
Mac-Mini:tmp mikrohard$ cd tvheadend/
Mac-Mini:tvheadend mikrohard$ curl https://github.com/andoma/tvheadend/pull/44.patch > 44.patch
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  3603  100  3603    0     0   3965      0 --:--:-- --:--:-- --:--:--  4949
Mac-Mini:tvheadend mikrohard$ patch -p1 -i 44.patch 
patching file src/parsers.c
Hunk #2 succeeded at 168 (offset 7 lines).
Hunk #3 succeeded at 1316 (offset 77 lines).
patching file src/tsdemux.c
patching file src/plumbing/globalheaders.c
Hunk #1 succeeded at 205 (offset 3 lines).
Mac-Mini:tvheadend mikrohard$ 

@schumi2004
Copy link

Strange i'm using same master branch as you did.
I did several new clones and everytime i'm getting the same result.

Only difference is that i'm compiling/patching it on Ubuntu 10.10, going to try again later today.

@mikrohard
Copy link
Contributor Author

Compiling and patching are two separate things... make sure to be in the right folder when patching.

@schumi2004
Copy link

@mikrohard i ment patching but i think i'm already in right folder

02:55:16 {master} ~/tvheadend$ git apply --ignore-space-change --ignore-whitespace tvheadend_deliver_raw_teletext_to_clients.v0.2.patch

It seems your way of compiling works and my method , patch apply 44.patch doesn't

Now i need to find a workaround to get patching working in other program.

@mikkle
Copy link

mikkle commented Jul 5, 2012

Confirmed working on latest tvheadend master and @opdenkamp 's latest xbmc/master. Nice! (although slightly old school ;-)

@schumi2004
Copy link

@mikkle what is old school? My way of patching ?

@stefansaraev
Copy link
Contributor

@schumi2004 give "git am" a try :)

EDIT: my way:

git clone https://github.com/andoma/tvheadend.git
cd tvheadend
git checkout -b teletext
wget https://github.com/andoma/tvheadend/pull/44.patch
git apply --check --stat 44.patch
git am < 44.patch

adamsutton added a commit that referenced this pull request Aug 2, 2012
Deliver raw teletext to clients that are able to display it (e.g. XBMC)
@adamsutton adamsutton merged commit 2e09a06 into tvheadend:master Aug 2, 2012
@john-tornblom
Copy link
Contributor

I was just wondering, what is the reason for disabling the teletext stream in globalheaders? The commit log says:

"Disable teletext recording to prevent issues with other elementary streams. Temporary until a better solution is found."

The tsmuxer (libavformat) I'm currently trying to get going is using globalheaders and the teletext never reaches the muxer ;(

@adamsutton
Copy link
Contributor

Oh dear :(

My guess is, without understanding this area of the code, is that its been done in the wrong part of the pipeline? Not sure.

Maybe we consider this a short term patch to solve the immediate problem that XBMC guys were having, but maybe we need to do it properly for your new libav muxer.

@schumi2004
Copy link

I tried this patch on OpenELEC in combination with the modified TV Headend.
On my Windows desktop i have teletext but in OpenELEC not.

@mikrohard
Copy link
Contributor Author

The globalheaders commit is a workaround for this issue: https://www.lonelycoder.com/redmine/issues/754

It seems that in some situations the teletext data causes globalheaders detection to abort or something. Before it was used only for recordings... and mkv muxing doesn't support teletext so I thought it was an OK workaround.

@adamsutton
Copy link
Contributor

@schumi2004 is it possible that openelec haven't picked up the XBMC patch that's also needed? I'm not completely familiar with this as I don't use teletext myself. The reasoning being the inclusion was simply that it's already being successfully used by a large number of users.

@mikrohard I think its fine as a temporary solution, its just John is investigating a rework of the muxer in TVH to add more generic support via libav, he may need to revisit this to get that working. But I wanted this in so we can move towards @opdenkamp using tvh master (though I know there are some other fixes to add first).

@schumi2004
Copy link

@adamsutton i compile my own OpenELEC builds and i added this patch to the patch dir for xbmc in OpenELEC source and i see it being picked up in log. I'll try again later today but i doubt it will work.

I'm also using latest tvheadend from @opdenkamp repo

When i use a Frodo build it does seem to work. Maybe the source used for pvr builds in OpenELEC is outdated or different, not sure.

@Gujs
Copy link

Gujs commented Aug 2, 2012

@schumi2004 teletext should work on openelec-PVR builds without any problem. It should work with both versions of xbmc (frodo and eden).

@schumi2004
Copy link

Well tested it again, applied xbmc teletext patch, all seems good but no teletext at all. No teletext available. Tried it again with Frodo and voila teletext, on my windows desktop, teletext. don't get it :(

@mikrohard
Copy link
Contributor Author

There is no need to patch xbmc for teletext anymore. Eden-pvr and Frodo-pvr support tvheadend teletext OTB.

@schumi2004
Copy link

@mikrohard i think for OE it does, source is i think outdated and needs to be patched. I also tried a build without the patch and still getting no teletext. I think i just switch to Frodo since it works perfect there.

@Gujs
Copy link

Gujs commented Aug 5, 2012

@schumi2004 You don't need to patch OE for getting teletext to work on both XBMC. I just tried both builds and both work fine. But again, this will work just on PVR builds.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet