TiVo Community
TiVo Community
TiVo Community
Go Back   TiVo Community > Underground Playground > Developers Corner
TiVo Community
Reply
Forum Jump
 
Thread Tools
Old 01-17-2014, 11:20 PM   #31
Dan203
Super Moderator
 
Dan203's Avatar
 
Join Date: Apr 2000
Location: Nevada
Posts: 24,349

__________________
Dan Haddix
Super Moderator
Developer for VideoReDo
Dan203 is offline   Reply With Quote
Old 01-18-2014, 09:05 PM   #32
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
So, netflix communicates via HTTPS. I tried to decrypt using man-in-the middle techniques, but it appears the app has smart enough certificate handling where that won't work.

I also verified that TechCrunch and MovieFone seem to be using just normal .mp4 files.

It looks like we could be SOL here until Tivo gives us some more information regarding their SDK.

Edit: I was able to get the video file decoded. Here is an ASCII readout of the header from the netflix video file:

... ftypmp42....isomiso2dashiso6...luuidNetflixPiffStrm!........ .`It...........
[................].............C.......]....^..%.......40k.i....free...................Luuid....~C.A ..!!..d2.........km.Netflix Media Library Version 1.0.1755.....mmoov...xmvhd.........kna.....kna.............. ..............................................@............. ......................trak...htkhd.........kna.....kna...... ..........................................................@. .............Amdia...,mdhd.........kna.....kna............U. .....4hdlr........soun............Audio Media Handler.....minf....smhd...........$dinf....dref............ url ........stbl....stts............ctts...........Astsd........ ...1ec-3...............................
dec3p........stsc............stsz................stco....... ....<mvex....mehd.......
[...... trex............................sidx........................ .

Last edited by ntlord : 01-18-2014 at 09:59 PM.
ntlord is offline   Reply With Quote
Old 01-20-2014, 02:14 PM   #33
Dan203
Super Moderator
 
Dan203's Avatar
 
Join Date: Apr 2000
Location: Nevada
Posts: 24,349
Those are MP4 atoms. So apparently Netflix uses MP4. But since it's adaptive bitrate it must use a fragmented MP4 system like SmoothStream or MPEG-Dash. IIRC the website uses Silverlight for streaming right? SIlverlight uses SmoothStream, so that's probably what it is. But the Netflix app on TiVo doesn't use Opera, so that's probably some custom implementation.

What bout YouTube? Does it do adaptive streaming on the TiVo? If your network starts to slow does it automatically drop to a lower resolution? Or does it stall and stutter? If it does adaptive streaming then there must be some way to do it via Opera and there is hope for us. If not then static MP4s are the only option and we're basically SOL.

Dan
__________________
Dan Haddix
Super Moderator
Developer for VideoReDo
Dan203 is offline   Reply With Quote
Old 01-20-2014, 07:08 PM   #34
moyekj
Registered User
 
Join Date: Jan 2006
Location: Mission Viejo, CA
Posts: 8,875
Quote:
Originally Posted by ntlord View Post
So, netflix communicates via HTTPS. I tried to decrypt using man-in-the middle techniques, but it appears the app has smart enough certificate handling where that won't work.

I also verified that TechCrunch and MovieFone seem to be using just normal .mp4 files.

It looks like we could be SOL here until Tivo gives us some more information regarding their SDK.

Edit: I was able to get the video file decoded. Here is an ASCII readout of the header from the netflix video file:

... ftypmp42....isomiso2dashiso6...luuidNetflixPiffStrm!........ .`It...........
[................].............C.......]....^..%.......40k.i....free...................Luuid....~C.A ..!!..d2.........km.Netflix Media Library Version 1.0.1755.....mmoov...xmvhd.........kna.....kna.............. ..............................................@............. ......................trak...htkhd.........kna.....kna...... ..........................................................@. .............Amdia...,mdhd.........kna.....kna............U. .....4hdlr........soun............Audio Media Handler.....minf....smhd...........$dinf....dref............ url ........stbl....stts............ctts...........Astsd........ ...1ec-3...............................
dec3p........stsc............stsz................stco....... ....<mvex....mehd.......
[...... trex............................sidx........................ .
If you have an actual decrypted Netflix video file (how did you get that?) then please run mediainfo on it and post the output here. I assumed lately they were using mpeg2 TS container for TiVos with H.264 video & AC3 audio. As Dan203 posted the above implies mp4 container. The original Netflix on TiVo implementation years ago I think was using asf container with VC-1 video & 2-channel WMA9 audio.
__________________
Roamio Pro (GigE)
Elite (MoCA)
Premiere (MoCA adapter)
Cox - Motorola CableCards & TAs
Slingbox 350 via TiVo Mini & TiVo Stream for remote viewing

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.

Last edited by moyekj : 01-20-2014 at 07:17 PM.
moyekj is offline   Reply With Quote
Old 01-21-2014, 10:25 AM   #35
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
Well I just have a streaming version of it. I was able to trick the netflix client into using http instead of https using some arp spoofing and an SSL interception program that returns HTTP links when HTTPS is requested. Then I just ran tcpdump.

I assume its unencrypted because of the header, but I'm sure it has all kinds of additional DRM.

Would media info work on a partial file?
ntlord is offline   Reply With Quote
Old 01-21-2014, 10:51 AM   #36
moyekj
Registered User
 
Join Date: Jan 2006
Location: Mission Viejo, CA
Posts: 8,875
Quote:
Originally Posted by ntlord View Post
Would media info work on a partial file?
I think it should. Worth a try anyway.
__________________
Roamio Pro (GigE)
Elite (MoCA)
Premiere (MoCA adapter)
Cox - Motorola CableCards & TAs
Slingbox 350 via TiVo Mini & TiVo Stream for remote viewing

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
moyekj is offline   Reply With Quote
Old 01-21-2014, 02:25 PM   #37
Dan203
Super Moderator
 
Dan203's Avatar
 
Join Date: Apr 2000
Location: Nevada
Posts: 24,349
Quote:
Originally Posted by ntlord View Post
Well I just have a streaming version of it. I was able to trick the netflix client into using http instead of https using some arp spoofing and an SSL interception program that returns HTTP links when HTTPS is requested. Then I just ran tcpdump.

I assume its unencrypted because of the header, but I'm sure it has all kinds of additional DRM.

Would media info work on a partial file?
Based on your dump the MOOV atom is at the start of the file so it should work. It should work even if the data is encrypted as most of the info about the file is stored at the container level and that does not appear to be encrypted.
__________________
Dan Haddix
Super Moderator
Developer for VideoReDo
Dan203 is offline   Reply With Quote
Old 01-21-2014, 03:53 PM   #38
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
Hmm. Stupidly I got rid of my capture file. And for whatever reason, I can't get it to work again. Netflix keeps timing out. One thing I did notice is that it seems to be video by video. When I had it working, I tried a different video and it looked like it was returning a "ismv" file, which as I understand it is smooth streaming. I'll keep at it. Hopefully, I can get this to work.
ntlord is offline   Reply With Quote
Old 01-21-2014, 06:21 PM   #39
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
Ok here is a capture of the ismv file, still working on trying to get mp4.




Edit. I'm don't think there ever was an MP4, I think I must have just picked up in the middle of the ismv file.

Last edited by ntlord : 01-21-2014 at 06:50 PM.
ntlord is offline   Reply With Quote
Old 01-21-2014, 06:55 PM   #40
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
Here are the rest of the details:

General
Count : 284
Count of stream of this kind : 1
Kind of stream : General
Kind of stream : General
Stream identifier : 0
Inform : MPEG-4 (Base Media): 225 MiB, 2h 10mn
Count of video streams : 1
Video_Format_List : AVC
Video_Format_WithHint_List : AVC
Codecs Video : AVC
Complete name : /Users/[*removed]/Desktop/138716156.ismv
Folder name : /Users/[*removed*]/Desktop
File name : 138716156
File extension : ismv
Format : MPEG-4
Format : MPEG-4
Format/Extensions usually used : mp4 m4v m4a m4b m4p 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma f4v
Commercial name : MPEG-4
Format profile : Base Media
Internet media type : video/mp4
Codec ID : iso2
Codec ID/Url : http://www.apple.com/quicktime/download/standalone.html
Codec : MPEG-4
Codec : MPEG-4
Codec/Extensions usually used : mp4 m4v m4a m4b m4p 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma f4v
File size : 236043450
File size : 225 MiB
File size : 225 MiB
File size : 225 MiB
File size : 225 MiB
File size : 225.1 MiB
Duration : 7824483
Duration : 2h 10mn
Duration : 2h 10mn 24s 483ms
Duration : 2h 10mn
Duration : 02:10:24.483
Overall bit rate mode : VBR
Overall bit rate mode : Variable
Overall bit rate : 241338
Overall bit rate : 241 Kbps
Stream size : 7760723
Stream size : 7.40 MiB (3%)
Stream size : 7 MiB
Stream size : 7.4 MiB
Stream size : 7.40 MiB
Stream size : 7.401 MiB
Stream size : 7.40 MiB (3%)
Proportion of this stream : 0.03288
HeaderSize : 172206
DataSize : 2184
FooterSize : 235869060
IsStreamable : Yes
Encoded date : UTC 2013-09-14 01:53:10
Tagged date : UTC 2013-09-14 01:53:10
File last modification date : UTC 2014-01-22 00:21:03
File last modification date (local) : 2014-01-21 19:21:03

Video
Count : 272
Count of stream of this kind : 1
Kind of stream : Video
Kind of stream : Video
Stream identifier : 0
StreamOrder : 0
Inform : 233 Kbps, 320*240 (16:9), at 23.976 fps, AVC (Main@L3.0) (CABAC / 3 Ref Frames)
ID : 2
ID : 2
Format : AVC
Format/Info : Advanced Video Codec
Format/Url : http://developers.videolan.org/x264.html
Commercial name : AVC
Format profile : Main@L3.0
Format settings : CABAC / 3 Ref Frames
Format settings, CABAC : Yes
Format settings, CABAC : Yes
Format settings, ReFrames : 3
Format settings, ReFrames : 3 frames
Internet media type : video/H264
Codec ID : encv / avc1 / avc1
Codec ID/Info : Advanced Video Coding
Codec ID/Url : http://www.apple.com/quicktime/download/standalone.html
Codec : AVC
Codec : AVC
Codec/Family : AVC
Codec/Info : Advanced Video Codec
Codec/Url : http://developers.videolan.org/x264.html
Codec/CC : encv
Codec profile : Main@L3.0
Codec settings : CABAC / 3 Ref Frames
Codec settings, CABAC : Yes
Codec_Settings_RefFrames : 3
Duration : 7824483
Duration : 2h 10mn
Duration : 2h 10mn 24s 483ms
Duration : 2h 10mn
Duration : 02:10:24.483
Bit rate mode : VBR
Bit rate mode : Variable
Bit rate : 233403
Bit rate : 233 Kbps
Maximum bit rate : 352000
Maximum bit rate : 352 Kbps
Width : 320
Width : 320 pixels
Height : 240
Height : 240 pixels
Pixel aspect ratio : 1.333
Display aspect ratio : 1.778
Display aspect ratio : 16:9
Rotation : 0.000
Frame rate mode : CFR
Frame rate mode : Constant
Frame rate : 23.976
Frame rate : 23.976 fps
Frame count : 187600
Resolution : 8
Resolution : 8 bits
Colorimetry : 4:2:0
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8
Bit depth : 8 bits
Scan type : Progressive
Scan type : Progressive
Interlacement : PPF
Interlacement : Progressive
Bits/(Pixel*Frame) : 0.127
Stream size : 228282727
Stream size : 218 MiB (97%)
Stream size : 218 MiB
Stream size : 218 MiB
Stream size : 218 MiB
Stream size : 217.7 MiB
Stream size : 218 MiB (97%)
Proportion of this stream : 0.96712
Encoded date : UTC 2013-09-14 01:53:10
Tagged date : UTC 2013-09-14 01:53:10
Encryption : Encrypted
Buffer size : 470000
ntlord is offline   Reply With Quote
Old 01-21-2014, 08:09 PM   #41
moyekj
Registered User
 
Join Date: Jan 2006
Location: Mission Viejo, CA
Posts: 8,875
That's very interesting. Strange how there is no audio information. Looks like this means TiVo can play back ismv format. Will have to see if I can get an ismv encoding pushed to TiVo (probably have to trick pyTivo to let it through as is).
__________________
Roamio Pro (GigE)
Elite (MoCA)
Premiere (MoCA adapter)
Cox - Motorola CableCards & TAs
Slingbox 350 via TiVo Mini & TiVo Stream for remote viewing

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
moyekj is offline   Reply With Quote
Old 01-22-2014, 02:29 AM   #42
Dan203
Super Moderator
 
Dan203's Avatar
 
Join Date: Apr 2000
Location: Nevada
Posts: 24,349
That makes sense. The website uses Silverlight, which is SmoothStream. However Neflix uses a custom app, so it could be a proprietary implimentation.

Does anyone know if the YouTube app does adaptive streaming? Meaning will it change resolution based on your network speed? Or AOL On or Moviefone? That would tell us if some sort of fragmented MP4 is supported in Opera.
__________________
Dan Haddix
Super Moderator
Developer for VideoReDo
Dan203 is offline   Reply With Quote
Old 01-22-2014, 08:10 AM   #43
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
Quote:
Originally Posted by moyekj View Post
That's very interesting. Strange how there is no audio information. Looks like this means TiVo can play back ismv format. Will have to see if I can get an ismv encoding pushed to TiVo (probably have to trick pyTivo to let it through as is).
The audio stream is sent in a different GET request. It's called an "isma" file. I didn't decode that, but I probably could if you wanted me to.
ntlord is offline   Reply With Quote
Old 01-22-2014, 08:11 AM   #44
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
Quote:
Originally Posted by Dan203 View Post
That makes sense. The website uses Silverlight, which is SmoothStream. However Neflix uses a custom app, so it could be a proprietary implimentation.

Does anyone know if the YouTube app does adaptive streaming? Meaning will it change resolution based on your network speed? Or AOL On or Moviefone? That would tell us if some sort of fragmented MP4 is supported in Opera.
I can capture the youtube .mp4 later on tonight, I have no idea how to determine if it is adaptive streaming, but I can run it through mediainfo, if that will help?
ntlord is offline   Reply With Quote
Old 01-22-2014, 08:26 AM   #45
jgametest
Registered User
 
Join Date: Oct 2013
Posts: 112
Capture and adapting

Keep in mind this is how Streambaby was born from the old Youtube application. It's possible we could learn a lot from the new format and provide a valuable feature to the group. I was doing some side work running an Airplayit server from my primary IP and port. When pushing this address into KMTTG web the screen was showing up as Black background and blue hyperlinks obviously could not navigate. So this lead me to input the address manually with EntertheWebz and it loaded the formatted page in correct form showing me my entire list with playback option of Live Conversion or Play. When I choose conversion it loaded lots of Html codes indicating the info was bouncing all over the place but nothing hit AirPlayit as a conversion request. Hmm, so I tried live playback for a minute my TiVo thought about the request and in the bottom left of my screen it said processing then it timed out and said failed source. The video playback was .mp4 and .avi neither was understandable by the built in codec of EntertheWebz. I have reached out to David the developer to see if there is a way we can use a live open source codec that could emulate this ability but that could take time to find such a thing. Perhaps there is a web version of FFMPEG as an HTML5 compatible device. Not sure if it's possible but makes you think. I will keep hunting and if I come across a lead will let you know.
jgametest is offline   Reply With Quote
Old 01-22-2014, 09:37 AM   #46
moyekj
Registered User
 
Join Date: Jan 2006
Location: Mission Viejo, CA
Posts: 8,875
Quote:
Originally Posted by ntlord View Post
The audio stream is sent in a different GET request. It's called an "isma" file. I didn't decode that, but I probably could if you wanted me to.
Interesting. So on TiVo side it must be muxing audio and video together on the fly I would guess into TS container. It would be useful to see audio specs as well, though we're pretty sure it must be AC3.

pyTivo pushes are not going through currently and I couldn't get my ismv encoding to play via Streambaby raw method so no luck getting TiVo to play ismv directly yet for me.
__________________
Roamio Pro (GigE)
Elite (MoCA)
Premiere (MoCA adapter)
Cox - Motorola CableCards & TAs
Slingbox 350 via TiVo Mini & TiVo Stream for remote viewing

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
moyekj is offline   Reply With Quote
Old 01-22-2014, 05:18 PM   #47
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
I'm not at all familiar with HME. But what about some sort of hybrid frankenapp that uses a combo of HTML5 and HME.

As I understand it, kmttg has the ability to both launch HTML5 url's and HME apps. What if a specialized web server was created which would serve up an HTML5 plex app, but once a video is selected, it would ping this web server with the request, which in turn would launch an HME video player window that would use the plex transcoder for the file?

I get that there is still the 1.1g limitation, but is better than nothing, right? My only issue is I suspect it would be crazy slow.

How does the HME protocol work? I seem to be having trouble finding documentation on the video side of things.
ntlord is offline   Reply With Quote
Old 01-22-2014, 11:09 PM   #48
moyekj
Registered User
 
Join Date: Jan 2006
Location: Mission Viejo, CA
Posts: 8,875
If you're going to go HME route and live with the 1.1GB limitation then may as well just use Streambaby. HME also eliminates the Mini from being used as a client as well. Note that via Streambaby you can also push videos instead of streaming them to get past the 1.1GB limitation and there's a "vidmgr" app out there that does that as well (using pyTivo to push) but with fancier metadata viewing options, but none of those work for a Mini. The nice thing about an Opera based solution is that it does work with the Mini and doesn't have the delays in starting video playback that HME solutions have.

I do envision eventually if an html-based solution is found that it may be useful to wrap HME around it so as to have a way to launch html from the TiVo itself instead of using kmttg or the like. i.e. The only purpose of HME is to be an html launch point from "Apps & Games" for the application, and that would work for a Mini as well.
__________________
Roamio Pro (GigE)
Elite (MoCA)
Premiere (MoCA adapter)
Cox - Motorola CableCards & TAs
Slingbox 350 via TiVo Mini & TiVo Stream for remote viewing

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
moyekj is offline   Reply With Quote
Old 01-23-2014, 07:39 AM   #49
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
Quote:
Originally Posted by moyekj View Post
I do envision eventually if an html-based solution is found that it may be useful to wrap HME around it so as to have a way to launch html from the TiVo itself instead of using kmttg or the like. i.e. The only purpose of HME is to be an html launch point from "Apps & Games" for the application, and that would work for a Mini as well.
Exactly what I was thinking. I didn't have a chance to decode the youtube stuff yet, but I'll post it up, when I do.
ntlord is offline   Reply With Quote
Old 01-23-2014, 06:58 PM   #50
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
Ok, I think there might be some good news with respect to youtube. Take a look at this media info:

General
Complete name : /Users/[*removed*]/Desktop/videoplayback.mp4
Format : dash
Codec ID : dash
File size : 64.0 KiB
Duration : 5s 5ms
Overall bit rate : 105 Kbps
Encoded date : UTC 2014-01-19 14:11:10
Tagged date : UTC 2014-01-19 14:11:10

Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : Main@L2.1
Format settings, CABAC : Yes
Format settings, ReFrames : 3 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 5s 5ms
Bit rate : 241 Kbps
Width : 426 pixels
Height : 240 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 23.976 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.098
Stream size : 147 KiB
Encoded date : UTC 2014-01-19 14:11:10
Tagged date : UTC 2014-01-19 14:11:10

Here is the GET

GET /videoplayback?clen=7411046&burst=40&algorithm=throttle-factor&signature=93B3116767BD39A3EDEBC08819C6C6C51DE1E761.7C 348E3AAD34F21E7D56AF8F432313D80A5433F7&source=youtube&gir=ye s&fexp=917000%2C930005%2C909207%2C906434%2C916612%2C901476%2 C936910%2C936913%2C907231&factor=1.25&key=yt5&lmt=1390227070 849331&dur=244.578&ipbits=0&sver=3&id=0d8bbf6c66d98a24&ip=68 .55.5.176&sparams=algorithm%2Cburst%2Cclen%2Cdur%2Cfactor%2C gir%2Cid%2Cip%2Cipbits%2Citag%2Clmt%2Csource%2Cupn%2Cexpire& itag=133&mv=m&mt=1390524907&ms=au&upn=3fnOVmqOxqY&expire=139 0548037&cpn=ayacBtj7J4PEbYRR&alr=yes&mime=video%2Fmp4&rateby pass=yes&ptk=7minutesinheaven%2Buser&oid=c3gpN_mwQ_w5xpWDAmN ysQ&ptchn=310aJFjr6Gn9mGZjMZ2VTQ&pltype=content&range=0-65535&keepalive=yes&fr=yes HTTP/1.1
User-Agent: Opera/9.80 (Linux mips) Presto/2.12.407 Version/12.50 , TiVo-Device/20.3.8-USA-6 (TiVo, TCD848000, wired)
Host: r1---sn-jvhj5nu-p5q6.googlevideo.com
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/webp, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: en
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Origin: https://www.youtube.com

Last edited by ntlord : 01-23-2014 at 07:11 PM.
ntlord is offline   Reply With Quote
Old 01-23-2014, 07:54 PM   #51
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
OK, I think I've found something

I believe Opera supports Media Source Extensions! While I haven't gotten it quite able to play yet, load this link on your Tivo:

http://dashif.org/reference/players/...0.0/index.html

If you try it in Safari, for example, if gives all kinds of warnings. But it seems to mostly work on the Tivo. For example, it loads the proper video length.

Edit: This works:

http://dash-mse-test.appspot.com/

Run the oops_ceenc file.

Last edited by ntlord : 01-23-2014 at 10:36 PM.
ntlord is offline   Reply With Quote
Old 01-23-2014, 11:46 PM   #52
Dan203
Super Moderator
 
Dan203's Avatar
 
Join Date: Apr 2000
Location: Nevada
Posts: 24,349
Cool find! MPEG-Dash is a an open standard similar to SmoothStream, but with a slightly different playlist format. Still uses fragmented MP4 files though. If we can figure out how to get dash files out of FFmpeg then a streaming server might actually be possible. Although I'm not sure about AC3 audio. It might be limited to 2ch AAC, which could be another reason why Netflix doesn't use Opera.
__________________
Dan Haddix
Super Moderator
Developer for VideoReDo
Dan203 is offline   Reply With Quote
Old 01-23-2014, 11:56 PM   #53
moyekj
Registered User
 
Join Date: Jan 2006
Location: Mission Viejo, CA
Posts: 8,875
Took me a little while to figure out what you were saying plays. The "Demo Player" link followed by "oops_cenc" specifically is what you need to follow. For those that want to try it, you can use Q,A,W,S keys on Slide remote or your keyboard with kmttg on the virtual remote tab to navigate around the web page somewhat. Q, A keys jump between links, W, S keys between headers.
__________________
Roamio Pro (GigE)
Elite (MoCA)
Premiere (MoCA adapter)
Cox - Motorola CableCards & TAs
Slingbox 350 via TiVo Mini & TiVo Stream for remote viewing

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
moyekj is offline   Reply With Quote
Old 01-24-2014, 07:30 AM   #54
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
So based on my research Plex is capable of outputting mpeg-dash (it's what it uses for Chromecast). I played around with it a bit last night, and I got it somewhat working, but I couldn't get it to output what looks like a fully complete MPD file. At least, it wasn't nearly as complete as the test MPD files that player I found was using.

I don't have a chromecast, but I might purchase one this weekend and play around with it, and see if I can intercept the calls it is making to Plex. What's interesting about chromecast is that it works similar to Opera SDK in that it is basically just a chrome web browser.
ntlord is offline   Reply With Quote
Old 01-25-2014, 09:32 AM   #55
bradleys
It'll be fine....
 
Join Date: Oct 2007
Posts: 1,493
Sorry if this is an obviously ignorant question...

But couldn't we build a nice looking interface to browse media using the HTML5 interface and then initiate Stream Baby Stream to play the video?

I would much rather use the TiVo video playback tools anyway.

Would this work on the mini?
__________________
TiVo S2 (Retired)
TiVo Series 3 (for sale)
TiVo HD (for sale)
TiVo Premier (2 TB Upgrade)
TiVo Roamio Plus
TiVo Mini
iPad TiVo app
TiVo Stream (Sold)
Personal Video Share powered by PyTiVo
bradleys is offline   Reply With Quote
Old 01-25-2014, 10:04 AM   #56
moyekj
Registered User
 
Join Date: Jan 2006
Location: Mission Viejo, CA
Posts: 8,875
Quote:
Originally Posted by bradleys View Post
Would this work on the mini?
No. HME streaming is actually copying to a TiVo buffer which Mini doesn't have. Thus, for example, streambaby doesn't work on Mini (the browsing part does, starting video stream does not). Only way to stream to a Mini is via its Opera browser.
If you're just looking for a nicer front end than streambaby then perhaps "vidmgr" will suit your needs. It's an HME front end to pyTivo push. (Obviously won't work on a Mini either).
__________________
Roamio Pro (GigE)
Elite (MoCA)
Premiere (MoCA adapter)
Cox - Motorola CableCards & TAs
Slingbox 350 via TiVo Mini & TiVo Stream for remote viewing

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
moyekj is offline   Reply With Quote
Old 01-25-2014, 10:22 AM   #57
bradleys
It'll be fine....
 
Join Date: Oct 2007
Posts: 1,493
I have looked at it before...

What I would REALLY like is for TiVo to see / handle my PyTiVo share as a modern TiVo with the HDUI and Streaming et al...

But not really expecting it!
__________________
TiVo S2 (Retired)
TiVo Series 3 (for sale)
TiVo HD (for sale)
TiVo Premier (2 TB Upgrade)
TiVo Roamio Plus
TiVo Mini
iPad TiVo app
TiVo Stream (Sold)
Personal Video Share powered by PyTiVo
bradleys is offline   Reply With Quote
Old 01-25-2014, 03:48 PM   #58
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
Ok, so I went out and bought a chromecast. A couple of things:

This is a sample MPD file generated by plex:

<MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd" type="static" minBufferTime="PT10S" mediaPresentationDuration="PT0H42M20S" maxSegmentDuration="PT10S">
<Period start="PT0S" duration="PT0H42M20S">
<AdaptationSet segmentAlignment="true">
<SegmentTemplate timescale="1" duration="5" initialization="dash/065f63df4d9795ed/$RepresentationID$/initial.mp4" media="dash/065f63df4d9795ed/$RepresentationID$/$Number$.m4s" startNumber="0"/>
<Representation id="video" mimeType="video/mp4" bandwidth="2000000" codecs="avc1.42c00d"/>
</AdaptationSet>
<AdaptationSet segmentAlignment="true">
<SegmentTemplate timescale="1" duration="5" initialization="dash/065f63df4d9795ed/$RepresentationID$/initial.mp4" media="dash/065f63df4d9795ed/$RepresentationID$/$Number$.m4s" startNumber="0"/>
<Representation id="audio" mimeType="audio/mp4" bandwidth="384000" codecs="mp4a.40.2">
<AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configurati on:2011" value="2"/>
</Representation>
</AdaptationSet>
</Period>
</MPD>

1. This is the webpage the chromecast hits: http://www.plexapp.com/chromecast/production/index.html

2. The webpage uses this obsfucated javascript: http://www.plexapp.com/chromecast/production/js/plex.js

I deobsfucated using this: http://jsbeautifier.org/

3. After looking at the javascript you can tell that Plex is doing some super complicated things like parsing the mp4 file.

4. The MPD file is not compliant and appears to have placeholder variables in it e.g., $Representation. If you search through the javascript, you can see that it has some logic to replace them.

At this point, I think the easiest thing to do is to figure out how to kick off a video using the Plex html web page. But that might be above my Javascript understanding.
ntlord is offline   Reply With Quote
Old 01-25-2014, 07:34 PM   #59
jgametest
Registered User
 
Join Date: Oct 2013
Posts: 112
Note Do you have the paid Plex App for ChromeCast?

Unless you are a Plex Pass subscriber you will not be able to see the full effect of the ChromecastApp. As a paid subscriber they grant full access to their products before they decide to release to the general public.

https://plex.tv/subscription/about
Monthly $3.99 Yearly $29.99 Lifetime $74.99

They just recently released an updated Plex Home Theater which replaced The Plex Media Center. Personally I'm still on the fence if in March if I will switch to Roku. We will be cable cutting on the 31st of January. But hey Brighthouse should not be too sad, I'm still paying for 20 MBPS and the Digitial Phone.
jgametest is offline   Reply With Quote
Old 01-25-2014, 09:13 PM   #60
ntlord
Registered User
 
Join Date: Nov 2013
Posts: 29
There is no paid app for chromecast. I do have Plexpass. But that won't matter from what we are trying to do. The plex JavaScript I pointed to is the key, as it's responsible for parsing the MPD file and playing the mp4 chunks.
ntlord is offline   Reply With Quote
Reply
Forum Jump




Thread Tools


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Advertisements

TiVo Community
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
vBulletin Skins by: Relivo Media

(C) 2013 Magenium Solutions - All Rights Reserved. No information may be posted elsewhere without written permission.
TiVoŽ is a registered trademark of TiVo Inc. This site is not owned or operated by TiVo Inc.
All times are GMT -5. The time now is 11:59 PM.
OUR NETWORK: MyOpenRouter | TechLore | SansaCommunity | RoboCommunity | MediaSmart Home | Explore3DTV | Dijit Community | DVR Playground |