wpbear
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-16-2010
02:34 PM
Re: D-Link DNS-323/DNS-321 NAS as your My Media server
I slightly modified the DLINK NAS python setup and got it work on my WD MyBook White-newer edition.
This is what I did:
1. Enable SSH
2. Telnet in with Putty
(2a) On the NAS, install python 2.6 from the Optware repository by running the commands
(3) Put the Roku into developer mode -- follow Installation instructions in the README for "My Media" at http://github.com/netguy204/roku_media_ ... ME.textile, which will point you to the right pages in the Roku SDK documentation
(4) Install "My Media" software on your PC. (From viewtopic.php?f=28&t=25955)
(5) Copied "My Media" software also to the WD MyBook NAS. I installed mine at /opt/etc/roku_media_server
(6) On the NAS, create the shell script /opt/bin/rokud containing
Use chmod u+x rokud to make it executable. You can invoke this script in the future (not now) to manually start the "My Media" server.
(7) Create shell script /opt/etc/init.d/S90rokud containing
Use chmod u+x rokud to make it executable.
(8) Run springboard.py (or springboard.vbs) on your PC to set the configuration, and then click on the "Install Client" button. Note that the server_ip should be the IP address of your NAS (not your PC).
(9) Running springboard on your PC will have created a config.ini file in the folder where you ran springboard. Copy-paste its contents into a new file on the NAS named (if you followed my example) /opt/exec/roku_media_server/server/config.ini
(10) You can now manually start "My Media" on your NAS by invoking the rokud script, or reboot the NAS to make sure it gets started automatically. To check that it's running, on the NAS run the command `ps -ef | grep rss` -- there should be a processing running "python2.6 ./rss_server.py"
(11) Go to your TV and see if your Roku box can see the My Media channel, and the Music and Video folders within that channel that you specified in the config.ini file you created in steps 8 & 9.
This is what I did:
1. Enable SSH
2. Telnet in with Putty
(2a) On the NAS, install python 2.6 from the Optware repository by running the commands
export PATH=/opt/bin:/opt/sbin:$PATH
ipkg update
ipkg install python26
(3) Put the Roku into developer mode -- follow Installation instructions in the README for "My Media" at http://github.com/netguy204/roku_media_ ... ME.textile, which will point you to the right pages in the Roku SDK documentation
(4) Install "My Media" software on your PC. (From viewtopic.php?f=28&t=25955)
(5) Copied "My Media" software also to the WD MyBook NAS. I installed mine at /opt/etc/roku_media_server
(6) On the NAS, create the shell script /opt/bin/rokud containing
#!/opt/bin/sh
export PATH=/opt/bin:/opt/sbin:$PATH
cd /opt/etc/roku_media_server/server
python2.6 ./rss_server.py </dev/null >/tmp/rokud.$$ 2>&1 &
Use chmod u+x rokud to make it executable. You can invoke this script in the future (not now) to manually start the "My Media" server.
(7) Create shell script /opt/etc/init.d/S90rokud containing
#!/bin/sh
prefix="/opt"
PATH=${prefix}/bin:${prefix}/sbin:/sbin:/bin:/usr/sbin:/usr/bin
cd /opt/etc/roku_media_server/server
python2.6 ./rss_server.py </dev/null >/tmp/rokud.$$ 2>&1 &
Use chmod u+x rokud to make it executable.
(8) Run springboard.py (or springboard.vbs) on your PC to set the configuration, and then click on the "Install Client" button. Note that the server_ip should be the IP address of your NAS (not your PC).
(9) Running springboard on your PC will have created a config.ini file in the folder where you ran springboard. Copy-paste its contents into a new file on the NAS named (if you followed my example) /opt/exec/roku_media_server/server/config.ini
(10) You can now manually start "My Media" on your NAS by invoking the rokud script, or reboot the NAS to make sure it gets started automatically. To check that it's running, on the NAS run the command `ps -ef | grep rss` -- there should be a processing running "python2.6 ./rss_server.py"
(11) Go to your TV and see if your Roku box can see the My Media channel, and the Music and Video folders within that channel that you specified in the config.ini file you created in steps 8 & 9.
renojim
Community Streaming Expert
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-17-2010
12:09 AM
Re: My Media - Your Music and Video on the Roku DVP
"aamster" wrote:
I have My Media setup and followed the handbrake conversion of files to mp4 format. I'm struggling because when I open the mp4 file streamed from my computer, in my media, the player displays "retrieving" for about 30 seconds and then aborts. When I try to open it again, nothing happens. Causing additional frustration, the file played fine just last week! I have not altered settings. Does anyone know what I should try?
The first thing to try, if you haven't already, is to reboot everything. Reboot your server and unplug your Roku for a few seconds. Does it happen for all videos, or just one particular file? Check the 'my_media_log.txt' file that's created in the directory with 'rss_server.py' to see if there's any error or warning message (this file can get quite large and you may want to delete it periodically). Next, telnet to your Roku's ip address port 8085. There's all kinds of stuff spewed there; maybe something will show up that will explain what's happening.
-JT
Roku Community Streaming Expert
Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.
I am not a Roku employee.
Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.
I am not a Roku employee.
aamster
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-17-2010
11:10 AM
Re: My Media - Your Music and Video on the Roku DVP
The first thing to try, if you haven't already, is to reboot everything. Reboot your server and unplug your Roku for a few seconds. Does it happen for all videos, or just one particular file? Check the 'my_media_log.txt' file that's created in the directory with 'rss_server.py' to see if there's any error or warning message (this file can get quite large and you may want to delete it periodically). Next, telnet to your Roku's ip address port 8085. There's all kinds of stuff spewed there; maybe something will show up that will explain what's happening.
Does it happen for all videos, or just one particular file?
What happens is, I'll try to play one file, it will display "retrieving" for about 30 seconds, then when I try to play it again or any other file, nothing will happen.
I tried all the above. I don't know how to read the my media log.text file or the telnet results, so I'll leave that up to you guys. Thanks.
my media log.text:
DEBUG:root:rejecting .DS_Store
DEBUG:root:rejecting .localized
DEBUG:root:http://192.168.0.5:8001/media?name=The+Private+Life+of+Plants+-+03+-+Flowering.mp4&key=video
DEBUG:root:http://192.168.0.5:8001/media?name=The.Milk.Of.Sorrow.mp4&key=video
DEBUG:root:http://192.168.0.5:8001/media?name=titicutfollies.mp4&key=video
DEBUG:root:server issued range query: bytes=1017661807-
DEBUG:root:player issued range request starting at 1017661807
DEBUG:root:server issued range query: bytes=1018628937-
DEBUG:root:player issued range request starting at 1018628937
DEBUG:root:server issued range query: bytes=1018749809-
DEBUG:root:player issued range request starting at 1018749809
DEBUG:root:server issued range query: bytes=1018873280-
DEBUG:root:player issued range request starting at 1018873280
DEBUG:root:server issued range query: bytes=1019818480-
DEBUG:root:player issued range request starting at 1019818480
Telnet:
oldScr = pscr.screen
395: if pl.theme <> currentTheme then
396: currentTheme = pl.theme
397: initTheme(app, currentTheme)
398: endif
399: pscr = makePosterScreen(port)
400: pscr.SetPlayList(pl)
401: pscr.screen.Show()
402: oldScr.Close()
403: currentBaseSong = 0
404:
405: else if pl = invalid then
406: ShowServerProblemMsg(server)
407: else
408: ShowListProblemDialog()
409: endif
410: endif
411: endif
412: else if type(msg) = "roAudioPlayerEvent" then
413: if msg.isStatusMessage() then
414: print "audio status: ";msg.GetMessage()
415: endif
416: if msg.isRequestSucceeded() then
417: print "audio isRequestSucceeded"
418:
419: 'queue the next song'
420: posters = pscr.GetPosters()
421: song = currentBaseSong + 1
422: maxsong = posters.Count() - 1
423:
424: if song > maxsong
425: song = 0
426: endif
427:
428: print "song: ";Stri(song)
429: print "max song: ";Stri(maxsong)
430:
431: audio.Stop()
432: audio.ClearContent()
433: item = posters[song].item
434:
435: 'stop if the next item is a video'
436: if not item.GetType() = "mp4" then
437: audio.AddContent(item.GetPlayable())
438: audio.Play()
439: endif
440:
441: pscr.screen.SetFocusedListItem(song)
442: currentBaseSong = song
443: endif
444: if msg.isPartialResult() then
445: print "audio partial result"
446: endif
447: if msg.isRequestFailed() then
448: print "audio request failed: ";msg.GetMessage()
449: print "error code: ";Stri(msg.GetIndex())
450: endif
451: if msg.isFullResult() then
452: print "isFullResult"
453: endif
454: print "end roAudioPlayerEvent"
455: endif
456: end while
457:
458: 'showSpringboardScreen(item)'
459:
460: 'exit the app gently so that the screen doesnt flash to black'
461: screenFacade.showMessage("")
462: sleep(25)
463: End Sub
/tmp/plugin/HRBqSr/pkg:/source/appMain.brs(376): runtime error ec: 'Dot' Operator attempted with invalid BrightScript Component or interface reference.
376: SaveOffset(item.GetTitle(),offset.toStr())
Backtrace:
Function main() As Void
entry evsp: 0
Local Variables:
global &h07 rotINTERFACE:ifGlobal
m &h06 bsc:roAssociativeArray, refcnt=2
app &h16 bsc:roAppManager, refcnt=1
screenfacade &h16 bsc:roPosterScreen, refcnt=1
rss &h16 bsc:roAssociativeArray, refcnt=11
port &h16 bsc:roMessagePort, refcnt=5
server &h14 String val:http://192.168.0.5:8001/feed
pl &h16 bsc:roAssociativeArray, refcnt=2
pscr &h16 bsc:roAssociativeArray, refcnt=1
audio &h16 bsc:roAudioPlayer, refcnt=1
currentbasesong &h12 Integer val:0
currenttheme &h16 bsc:roString, refcnt=2
layers &h16 bsc:roList, refcnt=1
dontkillposterscreen &h15 Boolean val:false
msg &h16 bsc:roPosterScreenEvent, refcnt=1
last_selected &h30 Untyped val:Uninitialized
rec &h30 Untyped val:Uninitialized
song &h12 Integer val:7
posters &h16 bsc:roList, refcnt=3
item &h16 bsc:roAssociativeArray, refcnt=3
offset &h1a Invalid val:invalid
oldscr &h16 bsc:roPosterScreen, refcnt=1
maxsong &h30 Untyped val:Uninitialized
BrightScript Debugger>
renojim
Community Streaming Expert
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-18-2010
04:01 AM
Re: My Media - Your Music and Video on the Roku DVP
Ok, the telnet output is a crash dump. I don't know why it's happening, but it explains why the second time you try to play the video nothing happens. It looks like you're running an old version of the client (and I would guess the server as well). Please download the latest developer's preview version here and give that a try. There may still be some issue with the video, but there's no sense in trying to debug a problem on an old version.
-JT
-JT
Roku Community Streaming Expert
Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.
I am not a Roku employee.
Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.
I am not a Roku employee.
aamster
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-18-2010
10:08 AM
Re: My Media - Your Music and Video on the Roku DVP
Excellent. The updated developer version fixed all problems. Thanks! It works flawlessly!
renojim
Community Streaming Expert
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-18-2010
10:24 AM
Re: My Media - Your Music and Video on the Roku DVP
Glad to hear it!
-JT
-JT
Roku Community Streaming Expert
Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.
I am not a Roku employee.
Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.
I am not a Roku employee.
skug67
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-19-2010
10:47 AM
Re: My Media - Your Music and Video on the Roku DVP
Just wondering, now that the Roku supports HTTP live streaming, if there was anyway to do on-the-fly transcoding for watching via the Roku. I've got a headless Ubuntu box that is currently running mythtv (for recording OTA content) and Mediatomb (better than mythtv's built-in UPnP server, because among other things it does do on-the-fly transcoding). Since mythtv captures video as MPEG2, I have to transcode before watching on the Roku. I've got this set-up to run after each show is recorded. Once the transcoding is over, MyMedia works perfectly if I tell it to look for videos in the mythtv storage location. But sometimes, you want to start watching before a show is over. Right now, I've got no way to do that on the Roku. I'd like to think that between the various programs I've already got installed (or maybe something new that I'm not thinking of -- hopefully open source) this should be do-able.
Anybody have any thoughts/suggestions?
Anybody have any thoughts/suggestions?
renojim
Community Streaming Expert
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-19-2010
09:15 PM
Re: My Media - Your Music and Video on the Roku DVP
Do you have a way to do the on-the-fly HLS transcoding? I've been experimenting with using a special build of vlc to do it with mixed results (under windose).
-JT
-JT
Roku Community Streaming Expert
Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.
I am not a Roku employee.
Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.
I am not a Roku employee.
skug67
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-20-2010
08:43 AM
Re: My Media - Your Music and Video on the Roku DVP
Don't really know anything about HLS. I've seen that there's a plugin for VLC (which I gather would first require me to recompile VLC), but I haven't started playing w/it, because I don't have a sense of what the next step would be.
renojim
Community Streaming Expert
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-20-2010
11:15 AM
Re: My Media - Your Music and Video on the Roku DVP
In a nutshell, the HLS transcoder/server creates a "playlist" of video clips and the .ts (MPEG2) clips themselves. The playlist (a .m3u8 file) gets sent to the Roku and then it parses it and requests the .ts video files from the server. Roku recommends the Wowza server (wowzamedia.com), but I gave it a try and quickly trashed it when it started complaining about my Java installation on the second attempt to run the server (one of many reasons I hate Java! :x ). I rebuilt vlc to support HLS and create the playlist and video clips and then modified the mymedia server and client to send them to the Roku. It's something I plan on getting back to as soon as I finish the next release of the client. I don't know if having a general purpose transcoder built into the mymedia server is realistic, though.
-JT
-JT
Roku Community Streaming Expert
Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.
I am not a Roku employee.
Help others find this answer and click "Accept as Solution."
If you appreciate my answer, maybe give me a Kudo.
I am not a Roku employee.