Opened 13 years ago

Closed 13 years ago

#1458 closed patch (invalid)

Patch to use freebox set top box ADSL modem as a TV source,

Reported by: laurent@… Owned by: Isaac Richards
Priority: minor Milestone: unknown
Component: mythtv Version:
Severity: medium Keywords:
Cc: Ticket locked: no

Description

What is it?

This is a first attempt to support Freebox internet set top box in myth TV as a TV source. Path is using livMedia library to enable RTSP support in mythtv. Patch is also heavily base on dbox2 input source, and portion of code is take from this source. Patch is based upon Svn version.

Freebox is an internet ADSL triple play modem from the French provider Free. This modem support:

  • Access to internet (of course).
  • One analog phone port providing phone other IP.
  • And most interesting, about 150 TV channel.

The TV channel can be delivered to the set top box audio/video output, or via the local area network, using RTSP protocol. With this last method, you can watch two or free different channel at the same time if you ADSL speed enable it (one channel is about 3-4 Mb/s).

The provider, Free, use the Videolan VLC software for this (http://www.videolan.org/). When a user wants to see a channel, what append is:

URL point to an internal Http server in the Freebox which deliver the file playlist.m3u. This file contains a list of the channel support by the box. For each channel, the file will contains a line like this :

#EXTINF:0,2 - France 2 rtsp://mafreebox.freebox.fr/freeboxtv/201

This line contains the channel numbers, the channel name, and the rtsp

url associate to this channel.

  • User will click on the play list entry. These actions trigger an Rtsp request

to the Freebox modem. After this, Freebox modem starts to relay multicast flux from the provider network to the local area network.

  • Videolan will use receive data to display the channel. Data encoding is an

Mpeg2 TS stream, so decode them for use in myth TV is quite easy.

What is working so far?

  • There is support in mythtv-setup for adding Freebox as an input source, and

configuring address.

  • Db Schema is modifying to permits this.
  • There is basic support for channel list reading, and channel abstraction in

file FreeboxChannel?.cpp.

  • FreeboxRecorder?.cpp is able to launch the RSTP request, to get back the data,

and to buffered write them for display in MythTV.

So basically, you can watch a Freebox channel in Mythtv with this patch.

What is not working so far?

  • Channel change is not working. Default open RTSP flux is hardcode in

FreeboxRecorder?.cpp.

  • There is no AC3 or 16/9 support.
  • There is support for only one data flow at the same time.

What have to be done?

I will have a look quickly to end the Channel support and recorder so you can change channel.

Laurent

Attachments (3)

patch.freebox.v1.diff (39.5 KB) - added by laurent@… 13 years ago.
The patch
patch.freebox.v1.01.diff (51.6 KB) - added by anonymous 13 years ago.
patch.freebox.v1.10.diff (45.1 KB) - added by anonymous 13 years ago.

Download all attachments as: .zip

Change History (5)

Changed 13 years ago by laurent@…

Attachment: patch.freebox.v1.diff added

The patch

Changed 13 years ago by anonymous

Attachment: patch.freebox.v1.01.diff added

Changed 13 years ago by anonymous

Attachment: patch.freebox.v1.10.diff added

comment:1 Changed 13 years ago by anonymous

Hi,

Just post a new version of my path to use freebox as a TV source for mythtv. This new version work's well now. I resolve the issue with channel changing, and so, channel change is now work's ok.

I rewrite many thing in the patch, and do a general cleanup, removing debug log from the source.

Can you please give me any feedback on this work, as I don't have any return on this so far. I will be please to update this patch in the future, but It will be more easy for me if the base patch is include in current SVN version.

Laurent.

comment:2 Changed 13 years ago by Isaac Richards

Resolution: invalid
Status: newclosed

Patch cannot be applied. Code uses essentially random indentation and introduces new nonconditional external dependencies.

Note: See TracTickets for help on using tickets.