Menu

#451 VDR and Hauppauge PVR HD simultaneous support

Freevo 1.x series
open
nobody
5
2015-01-07
2010-02-13
Rob Davis
No

I normally use VDR for receiving ATSC and NTSC broadcasts as I can
stream it around the house and use a Hauppauge MVP box in different
rooms.

However, I just got a nice Hauppauge PVR-HD which isn't (yet) supported
by VDR. So I hacked a freevo a little to get it using VDR and the
PVR-HD..

I did this initially about 4 years ago, but then ended up using VDR
instead of Freevo. Anyway, this uses two seperate input mechanisms, so
I copied an idea I found on the internet to allow a "pvr_cmd" into the
video_groups structure.

This is from my local_conf.py

TV_VIDEO_GROUPS = [
VideoGroup(vdev='/dev/video0',
adev=AUDIO_DEVICE,
input_type='component',
tuner_type='external',
input_num=0,
group_type='pvr-hd',
desc='PVR-HD',
vcr_cmd = 'cat /dev/video0> %(filename)s & sleep %(seconds)s ; kill -9 $!;'
),
VideoGroup(vdev='/dev/video0',
adev=AUDIO_DEVICE,
input_type='component',
input_num=1,
group_type='pvr-hd',
desc='PVR-HD',
vcr_cmd='cat /dev/video0> %(filename)s & sleep %(seconds)s ; kill -9 $!;'
),
VideoGroup(vdev='http://oac:3000/TS',
adev=AUDIO_DEVICE,
tuner_type="None",
input_type='none',
input_num=2,
group_type='streamdev',
desc='VDR',
vcr_cmd='mencoder -oac copy -ovc copy -o %(filename)s http://oac:3000/TS/%\(channel)s -endpos %(seconds)s;'
)
]
TV_CHANNELS = [
( '','Component','None', None, 1 ),
( 'I31497.labs-4.zap2it.com','906-WREXDT-13 WREXDT fcc',103, None, 2 ),
( 'I58646.labs-4.zap2it.com','919-CNN HD-CNNHD',919, None, 0 )

]

The top line is just using the pvr-hd without any channel change.. (For
recording DVR recordings or On Demand things), the second will select
channel 103 on VDR to watch, the third will change to channel 919 on my
cable box and watch it using the hauppauge pvr-hd (Just
watches /dev/video0)..

I had to modify generic_record.py as it would send the channel number as
a string instead of an integer when working out which group to select
and not get the correct group.

Then several changes have been made to mplayer.py in TV, which streams
from VDR. The channel request is sent with a +1 at the end to select
the first audio channel.. (The second can sometimes be spanish here)..

Then I changed config.py and generic_record.py to allow the vcr_cmd
based on Video_Group.

Recordings are native .ts streams, either from the hauppauge (h264,ac3
audio) or the TS from VDR.

Hope this helps someone (it goes with Freevo 1.9.0)

Discussion

  • Rob Davis

    Rob Davis - 2010-02-13

    Some patches to allow multiple input sources and VDR

     
  • Duncan Webb

    Duncan Webb - 2010-04-27
    • labels: --> Freevo Helpers
     
  • Duncan Webb

    Duncan Webb - 2010-04-27

    Hi Rob,

    Nice of you to do this. It could possibly be easier to apply to svn as a patch rather than files.

     

Log in to post a comment.