Project

General

Profile

Feature #1018

Raspberry pi

Added by lenod lenod over 12 years ago. Updated about 12 years ago.

Status:
Rejected
Priority:
Low
Assignee:
Category:
non-x86
Target version:
-
Start date:
2012-05-29
Due date:
% Done:

0%

Estimated time:

Description

I'm sure you have heard about raspberrypi.org and I would find it great if tvheadend was ported to this.
XBMC is already ported to the Pi, and tvheadend would be great both as a backend and a frontend (via an xbmc-plugin), and some script transcoding mpeg2 videos (most common tv-recorded format) into h264/mpeg4 (which can be easily decoded using the pi's GPU).
What do you think about that?

History

#1

Updated by Hein Rigolo over 12 years ago

well ... go ahead and try to compile tvheadend on that platform. But tvheadend by it self is not enough, you also need supported dvb drivers. So take a standard debian distribution for the Rpi and start hacking away.

Remember that tvheadend does not do any recoding, so you need to use ffmpeg or an other tool if you need to re-encode your files. But as far as I can tell it has enough CPU power to do software decoding of SD quality of mpeg streams (it can play DVD's for example .. at least .. that is what I understood)

Hein

#2

Updated by Jouk Hettema - over 12 years ago

You might want to take a look at OpenELEC (openelec.tv). They have a downloadable image for the Raspi and also have tvheadend as a xbmc-plugin available (oscam as well which might come in handy in some occasions). AFAIK the Raspi isn't powerfull enough to do software decoding, running tvheadend and xbmc without resource issues. Perhaps better to make a client-server setup?

g'luck

Jouk

#3

Updated by lenod lenod over 12 years ago

I know it is not powerfull enough, but I think it is enough for a backend (which doesn't need decoding). This way I can let it on all day long, and record tv form wherever I am. Then, I can make him transcode to mpeg4 (which he decodes very well) while it is idle, no matter if it takes hours. For example if I record something late at night, once finished it has more than 15h to transcode before I watch my movie the following evening. Or I can just make it copy on a real frontend to watch it.

Anyway, I think that the openelec plugin is just for the frontend part and it would be much more convenient if I could install it on a custom debian install.
Right now I'm looking to adding dvb support without recompiling my kernel (if it is possible ...).
I will look at oscam too, it looks like a good option too, thanks.

#4

Updated by Giovanni Panozzo over 12 years ago

I'm running tvheadend on my raspberry pi under debian, with a USB Hauppauge Nova-T Stick 2. I can use it to stream video on the network or for recording. CPU load during streaming is less than 10%, tested with standard DVB-T resolution, not HD video.

Unfortunately I had to recompile the kernel to add support for I2C, DVB and the dib0700 driver module.
I also compiled tvheadend from git repository.

I had also to buy an externally powered USB HUB to power the Hauppauge USB Stick. But the total power consumption (raspberry + USB DVB-T Stick) is less than 6W.

So I don't think this is really an issue for tvheadend developers: tvheadend is ok (almost ok, there are other kind of issues :)). But the lack of a raspberry pi distribution supporting dvb-t recording drivers and tvheadend in binaries is the real problem.

If you need the binaries or help, just write me at .

#5

Updated by lenod lenod over 12 years ago

Thanks for sharing you experience and proposing your help!
I'm planning to do the same (and add support for v4l too). If I don't manage to do so I will ask for your help ;)

What kind of issues did you have when compiling tvheadend? Did you cross-compile or did you do it in the Pi? (and if so how long did it take?)

I would also find great that the to have the choice between a lightweight kernel (the current one) and one with the common drivers/modules.
Does it make the kernel really bigger or slower?

#6

Updated by Giovanni Panozzo over 12 years ago

@leonid

I compiled tvheadend on the Raspberry pi under debian, no cross-compilation. No big issues: the package compiled without problems and installed ok.
Only a small packaging issue: the .deb package does not contain the initscript, so I had to copy it manually in /etc/iint.d, rename, chmod and run update-rc.d

The new kernel is a bit smaller than the stock one (14KB), and I really can't understand why. I added only I2C support to the kernel image and some extra DVB modules in /lib/modules (only few kilobytes more). All my /lib/modules is only 20MB large.

#7

Updated by lenod lenod over 12 years ago

Ok, I will try that when I have time ;)
But I don't want to recompile my kernel each time there is an update ...

#8

Updated by lenod lenod over 12 years ago

I managed to make it work!
The problem is that there are lots of errors when recording and the video has a lot a freezes. I don't know if it is due to a misconfiguration or something (the stick works on other computers and the CPU is far from 100%).

The other thing is that tvheadend crashes when I try to abort a recording and the logs are empty.

I also noticed that the frequencies in France are not up to date but I think there is a bug entry about that.

#9

Updated by Pavol Grohol over 12 years ago

Hi,

it is a great news that this activity already started. I am also waiting for my Raspberry and it would be great to have TVHeadend running on it together with XBMC. I hope I will be also able to help with it.

#10

Updated by lenod lenod over 12 years ago

It seems that there are some issues with the kernel making some discontinuities while recording. I think the archlinux one is ok and I have to test the debian wheezy one (as well as the raspbmc one).

#11

Updated by Jack J over 12 years ago

lenod lenod wrote:

It seems that there are some issues with the kernel making some discontinuities while recording. I think the archlinux one is ok and I have to test the debian wheezy one (as well as the raspbmc one).

I'm trying to get TvHeadend running, without success.
Could you please provide instructions how to get TvHeadend running on Raspberry Pi's Arch Linux?

#12

Updated by M deV over 12 years ago

Jack wrote:

I'm trying to get TvHeadend running, without success.
Could you please provide instructions how to get TvHeadend running on Raspberry Pi's Arch Linux
?

I've used this guide:
https://www.lonelycoder.com/redmine/boards/5/topics/28763
and this guide:
https://www.lonelycoder.com/redmine/projects/tvheadend/wiki/Tvheadend_gentoo

Where the init.d files of course aren't usable for Debian, but the rest seems to work for compiling.

TvHeadend is running on the Raspberry Pi and my Sundtek DVB-C card is detected, but no services are found. The television cable is definitely hooked up correctly, because it has been used with a HTPC a moment earlier. I suspect it has trouble writing little tmp files with services (can that be?), because I encounter 'can't write' errors.
Did anybody else run into these kind of problems? Or is the method of configuration of compiling bad?

#13

Updated by Adam Sutton over 12 years ago

  • Category changed from General to non-x86
#14

Updated by Adam Sutton over 12 years ago

Any of you guys want to join the dev team? As rpi packager/maintainer?

#15

Updated by John de Rol over 12 years ago

M deV wrote:

Jack wrote:

I'm trying to get TvHeadend running, without success.
Could you please provide instructions how to get TvHeadend running on Raspberry Pi's Arch Linux
?

I've used this guide:
https://www.lonelycoder.com/redmine/boards/5/topics/28763
and this guide:
https://www.lonelycoder.com/redmine/projects/tvheadend/wiki/Tvheadend_gentoo

Where the init.d files of course aren't usable for Debian, but the rest seems to work for compiling.

TvHeadend is running on the Raspberry Pi and my Sundtek DVB-C card is detected, but no services are found. The television cable is definitely hooked up correctly, because it has been used with a HTPC a moment earlier. I suspect it has trouble writing little tmp files with services (can that be?), because I encounter 'can't write' errors.
Did anybody else run into these kind of problems? Or is the method of configuration of compiling bad?

I got tvheadend detecting my Terratec Cinergy T2 on a raspi. I described here what I did: http://raspims.blogspot.de/2012/08/goal-getting-to-run-tvheadend-with-my.html

Perhaps it has a use for you.

#16

Updated by Pavol Grohol over 12 years ago

Adam Sutton wrote:

Any of you guys want to join the dev team? As rpi packager/maintainer?

Hi, I could spent couple of hours weekly on this. But to be honest I am not sure what it means to be packager/maintainer. I am a computer programmer but not on linux platform. Anyway I am also open for such an experience. Can you give me more details about what is expected? Thanks

#17

Updated by Adam Sutton over 12 years ago

Hi Pavol,

That's great :)

To be honest at this stage I'm not sure "what" might be involved. It might not be a lot, mostly it'll probably just be a case of compiling up some packages and making sure they run, reporting any issues specific to pi, helping fix them, etc...

I'm really just trying to get people involved :) and we're all trying to find our feet.

Maybe you could start by collating any instructions on what's necessary to get TVH running on the pi. Cross compiler install that sort of thing? That way we can put together a short wiki article on steps that need to be taken? and possibly start thinking about providing some scripts to help with the build process.

Adam

#18

Updated by benny kill about 12 years ago

John de Rol wrote:

M deV wrote:

Jack wrote:

I'm trying to get TvHeadend running, without success.
Could you please provide instructions how to get TvHeadend running on Raspberry Pi's Arch Linux
?

I've used this guide:
https://www.lonelycoder.com/redmine/boards/5/topics/28763
and this guide:
https://www.lonelycoder.com/redmine/projects/tvheadend/wiki/Tvheadend_gentoo

Where the init.d files of course aren't usable for Debian, but the rest seems to work for compiling.

TvHeadend is running on the Raspberry Pi and my Sundtek DVB-C card is detected, but no services are found. The television cable is definitely hooked up correctly, because it has been used with a HTPC a moment earlier. I suspect it has trouble writing little tmp files with services (can that be?), because I encounter 'can't write' errors.
Did anybody else run into these kind of problems? Or is the method of configuration of compiling bad?

I got tvheadend detecting my Terratec Cinergy T2 on a raspi. I described here what I did: http://raspims.blogspot.de/2012/08/goal-getting-to-run-tvheadend-with-my.html

Perhaps it has a use for you.

Tried raspberry with raspian as tvheadend server (used your howto). My client was my laptop with XBMC.

sd channel stream: 30% raspberry cpu performance
hd channel stream: 100% raspberry cpu performance :(

My tplink router with openwrt runs better as tvheadend server! ;)

#19

Updated by Adam Sutton about 12 years ago

Without having tried this (I don't have a card to hook up to my pi), I would hazard a guess (from discussion I've seen) that the major limiting factor in getting TVH to run on a pi is actually the fact it'll have to be a USB based capture card.

For the most part TVH is relatively low CPU usage, it does do some data processing, but its generally light weight as its mostly just doing data shovelling. Some new EPG modules, with huffman decode, do add about 10-20% on my server machine (from a nominal load of around 5%), so disabling those might help a bit (if they're active).

However the pi is known to have particularly poor USB performance (lots of frenetic IRQ activity etc..), I think there has been work to sort this out, but I'm not sure what the status is. But given that for TVH there is going to be a LOT of USB traffic, that is likely to be severely limiting.

Adam

#20

Updated by Pavol Grohol about 12 years ago

Pavol Grohol wrote:

Adam Sutton wrote:

Any of you guys want to join the dev team? As rpi packager/maintainer?

Hi, I could spent couple of hours weekly on this. But to be honest I am not sure what it means to be packager/maintainer. I am a computer programmer but not on linux platform. Anyway I am also open for such an experience. Can you give me more details about what is expected? Thanks

Hi all,

so I have tried to compile TvHeadend for RaspberryPI. I needed just IPTV part of it, so I did not do anything regarding DVB drivers and such a stuff. I also did compilation directly on RaspberryPI and it was pretty straight forward:
- I have installed latest Raspbian
- I have run following commands
- sudo apt-get update
- sudo apt-get install git gcc build-essential
- git clone https://github.com/tvheadend/tvheadend
- ./configure --disable-avahi
- make
- build.linux/tvheadend -C -d

After these steps TvHeadend was running successfully.
Then I have just copied everything to Raspbmc a run TvHeadend there.
I was able to stream from TvHeadend to XBMC client on my laptop and TvHeadend used approximately 20% of CPU on RaspberryPI.

#21

Updated by benny kill about 12 years ago

Pavol Grohol wrote:

Pavol Grohol wrote:

Adam Sutton wrote:

Any of you guys want to join the dev team? As rpi packager/maintainer?

Hi, I could spent couple of hours weekly on this. But to be honest I am not sure what it means to be packager/maintainer. I am a computer programmer but not on linux platform. Anyway I am also open for such an experience. Can you give me more details about what is expected? Thanks

Hi all,

so I have tried to compile TvHeadend for RaspberryPI. I needed just IPTV part of it, so I did not do anything regarding DVB drivers and such a stuff. I also did compilation directly on RaspberryPI and it was pretty straight forward:
- I have installed latest Raspbian
- I have run following commands
- sudo apt-get update
- sudo apt-get install git gcc build-essential
- git clone https://github.com/tvheadend/tvheadend
- ./configure --disable-avahi
- make
- build.linux/tvheadend -C -d

After these steps TvHeadend was running successfully.
Then I have just copied everything to Raspbmc a run TvHeadend there.
I was able to stream from TvHeadend to XBMC client on my laptop and TvHeadend used approximately 20% of CPU on RaspberryPI.

Forgot to set the disablbe avahi parameter before compiling...maybe without that it will run more stable. Can test it next days, caus i dont have dvbs at home! :( can you send me an iptv link i can test?

#22

Updated by Pavol Grohol about 12 years ago

benny kill wrote:

Pavol Grohol wrote:

Pavol Grohol wrote:

Adam Sutton wrote:

Any of you guys want to join the dev team? As rpi packager/maintainer?

Hi, I could spent couple of hours weekly on this. But to be honest I am not sure what it means to be packager/maintainer. I am a computer programmer but not on linux platform. Anyway I am also open for such an experience. Can you give me more details about what is expected? Thanks

Hi all,

so I have tried to compile TvHeadend for RaspberryPI. I needed just IPTV part of it, so I did not do anything regarding DVB drivers and such a stuff. I also did compilation directly on RaspberryPI and it was pretty straight forward:
- I have installed latest Raspbian
- I have run following commands
- sudo apt-get update
- sudo apt-get install git gcc build-essential
- git clone https://github.com/tvheadend/tvheadend
- ./configure --disable-avahi
- make
- build.linux/tvheadend -C -d

After these steps TvHeadend was running successfully.
Then I have just copied everything to Raspbmc a run TvHeadend there.
I was able to stream from TvHeadend to XBMC client on my laptop and TvHeadend used approximately 20% of CPU on RaspberryPI.

Forgot to set the disablbe avahi parameter before compiling...maybe without that it will run more stable. Can test it next days, caus i dont have dvbs at home! :( can you send me an iptv link i can test?

I am using just my internet provider's IPTV, which is local in his network so it would not work for you :-(

#23

Updated by Pavol Grohol about 12 years ago

Pavol Grohol wrote:

Pavol Grohol wrote:

Adam Sutton wrote:

Any of you guys want to join the dev team? As rpi packager/maintainer?

Hi, I could spent couple of hours weekly on this. But to be honest I am not sure what it means to be packager/maintainer. I am a computer programmer but not on linux platform. Anyway I am also open for such an experience. Can you give me more details about what is expected? Thanks

Hi all,

so I have tried to compile TvHeadend for RaspberryPI. I needed just IPTV part of it, so I did not do anything regarding DVB drivers and such a stuff. I also did compilation directly on RaspberryPI and it was pretty straight forward:
- I have installed latest Raspbian
- I have run following commands
- sudo apt-get update
- sudo apt-get install git gcc build-essential
- git clone https://github.com/tvheadend/tvheadend
- cd tvheadend
- ./configure --disable-avahi
- make
- build.linux/tvheadend -C -d

After these steps TvHeadend was running successfully.
Then I have just copied everything to Raspbmc a run TvHeadend there.
I was able to stream from TvHeadend to XBMC client on my laptop and TvHeadend used approximately 20% of CPU on RaspberryPI.

Hi,

just one line added above :-)

#24

Updated by Pavol Grohol about 12 years ago

To build TvHeadend directly on RaspBMC:

sudo apt-get update
sudo apt-get install git gcc build-essential libssl-dev pkg-config
git clone https://github.com/tvheadend/tvheadend
cd tvheadend
./configure --disable-avahi
make
sudo make install

To run TvHeadend automatically when PI boots up, create the file tvheadend.conf in /etc/init/ with content:
  1. TvHeadend server

description "TvHeadend server"

start on xbmc-started

script
su - pi -c "/usr/local/bin/tvheadend -C -d"
exit 0
end script

#25

Updated by Pavol Grohol about 12 years ago

Pavol Grohol wrote:

To build TvHeadend directly on RaspBMC:

sudo apt-get update
sudo apt-get install git gcc build-essential libssl-dev pkg-config
git clone https://github.com/tvheadend/tvheadend
cd tvheadend
./configure --disable-avahi
make
sudo make install

To run TvHeadend automatically when PI boots up, create the file tvheadend.conf in /etc/init/ with content:
  1. TvHeadend server

description "TvHeadend server"

start on xbmc-started

script
su - pi -c "/usr/local/bin/tvheadend -C -d"
exit 0
end script

Sorry, for some reason comment signs "#" was removed from first line so just change first line to "# TvHeadend server".

#26

Updated by Dickie A about 12 years ago

Pavol Grohol wrote:

Pavol Grohol wrote:

To build TvHeadend directly on RaspBMC:

sudo apt-get update
sudo apt-get install git gcc build-essential libssl-dev pkg-config
git clone https://github.com/tvheadend/tvheadend
cd tvheadend
./configure --disable-avahi
make
sudo make install

To run TvHeadend automatically when PI boots up, create the file tvheadend.conf in /etc/init/ with content:
  1. TvHeadend server

description "TvHeadend server"

start on xbmc-started

script
su - pi -c "/usr/local/bin/tvheadend -C -d"
exit 0
end script

Sorry, for some reason comment signs "#" was removed from first line so just change first line to "# TvHeadend server".

Thanks for the above posts, loving the htpc possibilities made available by this device.

Quick question when not running xbmc which service do you recommend auto starting on boot after?

I'm running the latest version of raspian mainly at the command line and would like the service to Start on boot prior to login

Cheers Dickie

#27

Updated by Pavol Grohol about 12 years ago

Dickie A wrote:

Pavol Grohol wrote:

Pavol Grohol wrote:

To build TvHeadend directly on RaspBMC:

sudo apt-get update
sudo apt-get install git gcc build-essential libssl-dev pkg-config
git clone https://github.com/tvheadend/tvheadend
cd tvheadend
./configure --disable-avahi
make
sudo make install

To run TvHeadend automatically when PI boots up, create the file tvheadend.conf in /etc/init/ with content:
  1. TvHeadend server

description "TvHeadend server"

start on xbmc-started

script
su - pi -c "/usr/local/bin/tvheadend -C -d"
exit 0
end script

Sorry, for some reason comment signs "#" was removed from first line so just change first line to "# TvHeadend server".

Thanks for the above posts, loving the htpc possibilities made available by this device.

Quick question when not running xbmc which service do you recommend auto starting on boot after?

I'm running the latest version of raspian mainly at the command line and would like the service to Start on boot prior to login

Cheers Dickie

Sorry, i do not really know too much about raspbian :-(

#28

Updated by Adam Sutton about 12 years ago

  • Status changed from New to Rejected

I don't actually think there is anything specific to do here. As far as I'm aware TVH has been used on the rpi.

Unless there are patches necessary to make it work, in which case someone that's got it working could/should submit a PR and we'll get it merged.

Adam

Also available in: Atom PDF