• 1(current)
  • 2
  • 3
  • 4
  • 5
  • 8
Support for streaming from a ReplayTV
#1
members of the xbmc team,

i have added a feature to xbmc requested by some that allows it to do streaming playback of shows recorded on a networked replaytv 4000/5000/5500 series.  i thought i would post here to get input on the best way to get this included in future versions of xbmc.  i assume that i should just add the necessary files and patches to the patch section on sf, but i wanted to go ahead and give a heads up here of what integrating this feature entails.  below is the readme file i am planning to include with the patches and source.  i appreciate any comments and assistance in getting this included and thanks for all your hard work on xbmc!

Quote:***************************************************************************
xbmc support for streaming shows from a replaytv by rtvguy
***************************************************************************
this patch adds support for streaming shows recorded on a networked
replaytv 4000, 4500, 5000, or 5500 series pvr directly to xbmc for
playback.  this is accomplished by adding a new streaming protocol to xbmc
that i call the rtv protocol.  this protocol is implemented in a manner
similar to xbms in that most of the code rests in a dynamically-loaded
library called librtv.  the source code to this library is included in the
patch .zip file.

integrating this patch into the xbmc cvs should be fairly straightforward,
as described below.

***************************************************************************
changed xbmc files:
***************************************************************************
1) xbmc/application.cpp
the included application.cpp.patch file modifies this file to provide
support for loading the librtv library.

2) xbmc/filesystem/factorydirectory.cpp
the included factorydirectory.cpp.patch file modifies this file to add
support for the crtvdirectory class.

3) xbmc/filesystem/filefactory.cpp
the included filefactory.cpp.patch file modifies this file to add support
for the cfilertv class.

4) mplayer/mplayer.dll
the file libmpdemux/open.c in docs/mplayer_sourcecodepatch.rar must be
modified to add support for the rtv protocol.
specifically, the following line:
if (stricmp(url->protocol, "xmbs") &&
stricmp(url->protocol, "xns") &&
stricmp(url->protocol, "shout") &&
stricmp(url->protocol, "cdda") &&
stricmp(url->protocol, "smb") &&
stricmp(url->protocol, "iso9660") )
must be changed to:
if (stricmp(url->protocol, "xmbs") &&
stricmp(url->protocol, "xns") &&
stricmp(url->protocol, "shout") &&
stricmp(url->protocol, "cdda") &&
stricmp(url->protocol, "smb") &&
stricmp(url->protocol, "rtv") &&
stricmp(url->protocol, "iso9660") )

5) xbmc.vcproj
the included xbmc.vcproj.patch file modifies this file to add the files
rtvdirectory.h, rtvdirectory.cpp, filertv.h, and filertv.cpp to the xbmc
project and also suppresses preloading of the librtv library.

***************************************************************************
added xbmc files:
***************************************************************************
1)xbmc/filesystem/rtvdirectory.h
the interface for the crtvdirectory class.

2)xbmc/filesystem/rtvdirectory.cpp
the implementation of the crtvdirectory class.

3)xbmc/filesystem/filertv.h
the interface for the cfilertv class.

4)xbmc/filesystem/filertv.cpp
the implementation of the cfilertv class.

5) docs/librtv.rar
this file contains complete source code for the librtv library.

***************************************************************************
added xbmc directories:
***************************************************************************
1) xbmc/lib/librtv
this directory should contain the librtv binaries built from the source
code included in "docs/librtv.rar" (release: librtv.lib, debug:
librtvd.lib).  this directory should also include the *.h header files from
the "docs/librtv.rar" file.

***************************************************************************
instructions for use:
***************************************************************************
setting up rtv shares in a build of xbmc that includes support for them is
easy.  just add the necessary info under the <video> section of
xboxmediacenter.xml, much as you would for a relax or xbms share  there are
2 different kinds of shares, each with two different show listing formats.

share type #1 - manual rtv share

listing format a (preferred)
the following example will display a list of recordings by name (as
retrieved from the replayguide) for the replaytv with the ip address of
192.168.1.100.
   <bookmark>
     <name>name of your choice</name>
     <path>rtv://192.168.1.100/</path>    
   </bookmark>
 
listing format b
the following example will display a list of recordings by *filename only*
for the replaytv with the ip address of 192.168.1.100.  this can be useful
if for some reason your replayguide cannot be properly parsed (all known
replayguide formats as of 01/04 should be supported).
   <bookmark>
     <name>name of your choice</name>
     <path>rtv://192.168.1.100/video</path>    
   </bookmark>

share type #2 - automatic rtv share

listing format a (preferred)
the following example will attempt to automatically discover and list in
xbmc *all* replaytvs on your lan.  selecting a particular replaytv in the
list will then display its recordings by name as described above.
   <bookmark>
     <name>name of your choice</name>
     <path>rtv://*/</path>    
   </bookmark>

listing format b
the following example will attempt to automatically discover and list in
xbmc *all* replaytvs on your lan.  selecting a particular replaytv in the
list will then display its recordings by *filename only* as described
above.
   <bookmark>
     <name>name of your choice</name>
     <path>rtv://*/video</path>    
   </bookmark>
   
that's it!
Reply
#2
i am not a dev and i don't have a replaytv, but this sounds veeery interesting. Smile
read the xbmc online-manual, faq and search the forums before posting! do not e-mail the xbmc-team asking for support!
read/follow the forum rules! note! team-xbmc never have and never will host or distribute ms-xdk binaries/executables!
Reply
#3
Thumbs Up 
cool, please submit the sourcecode on sourceforge (link here) and/or upload it here here (link)  Smile
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#4
thanks! i submitted the sourcecode to the sourceforge patches section for xbmc (sorry about the screwed up formatting in the description there as a result of my copy/paste). let me know if any additional explanation etc. is needed.
Reply
#5
awesome work! can't wait till this gets merged into cvs!

keep xbmc rolling!

cp
Reply
#6
any idea when this will be merged into cvs?  i have a replaytv and would love to test it out!

let me know,

cp
Reply
#7
fantastic news! :d
i too would be happy to test it.
Reply
#8
ditto. i will test it too.

-jason.
Reply
#9
sounds cool.
however can you upload the files changed entirely
instead of patches?

frodo



XBMC Project Founder (Retired), now head programmer of MediaPortal
Reply
#10
(frodo @ jan. 11 2004,12:37 Wrote:sounds cool.
however can you upload the files changed entirely
instead of patches?

frodo
no problem.  i uploaded an updated .zip file that includes the changed files at the sourceforge patch section for xbmc.
http://sourceforge.net/tracker....=581840

i noticed that changes have been made to the open.c file in mplayer_sourcecodepatch.rar since i last got it from cvs.  namely, part of the code that previously needed a slight modification to add rtv protocol support is now not compiled into the mplayer.dll binary due to mplayer_network not being defined.  so, currently no changes are needed there.  will that code be included again at some point in the future of xbmc?  just in case it will, i did include a modified open.c that includes the one-line change necessary for rtv protocol support.

please let me know if i can provide any other info that will assist in integrating this into cvs.  thanks!
Reply
#11
any updates on a cvs build?

thanks for the great app..

mlr
Reply
#12
any update on integration frodo?

i tried to compile it with the above patch however i got some errors, so that may be holding you back...

keep me posted!

cp
Reply
#13
will see if i can include it in cvs tonight
frodo
XBMC Project Founder (Retired), now head programmer of MediaPortal
Reply
#14
Information 
any luck? Image

cp
Reply
#15
frodo or gamester17,

gamester17 has requested that i test the cvs implementation of my patch, but so far this has not shown up in the anonymous cvs. however, it is reportedly in the developer cvs now--is that correct?
Reply
  • 1(current)
  • 2
  • 3
  • 4
  • 5
  • 8

Logout Mark Read Team Forum Stats Members Help
Support for streaming from a ReplayTV0