• 1
  • 13
  • 14
  • 15(current)
  • 16
  • 17
  • 20
[Request] TVNZ OnDemand
(2012-10-04, 22:19)markhoney Wrote: Yes, you can use Flash Firebug to find out RTMP URLs - at least in the case of BrightCove's streaming media servers. However, this isn't a method of sniffing RTMP URLs in network traffic like RtmpDumpHelper or URLSnooper do. This method is more akin to scraping HTML pages to find out an RTMP URL.

Thank you for your reply. If you can in fact use Flash Firebug for this purpose, could you give a link to a video that this tactic would work on, so that I could perhaps try it? Currently RtmpSrv is most effective on Windows with RtmpDumpHelper, which is closed source. If we could utilize Flash Firebug instead, even for some sites, this would be a big help. If you could post a picture of Flash Firebug capturing RTMP parameters that would be even more helpful.
Reply
Are you in New Zealand? the videos I'm dealing with are geo-restricted to NZ only.

I've taken some screenshots and exported the AMF request and response, so this evening I'll post them to this thread for you. As I said, though, it'd be a manual process to do it this way so I'm not sure how helpful it'll be to you.
Author of the NZ OnDemand and ZoneMinder addons, and caretaker of the pyamf script. Contributor to fanart.tv, TheMovieDB and TheTVDB.
Reply
(2012-10-05, 04:57)markhoney Wrote: Are you in New Zealand?

I am in United States but I can try to find a proxy. If you know of any US sites that this works with for testing, that would be even better.

(2012-10-05, 04:57)markhoney Wrote: I've taken some screenshots and exported the AMF request and response, so this evening I'll post them to this thread for you. As I said, though, it'd be a manual process to do it this way so I'm not sure how helpful it'll be to you.

The ability to capture RTMP parameters using little more than Firefox and some plugins, could be incredibly useful. I find it strange that Firefox has such great support for monitoring HTTP streams and absolutely nothing for RTMP. If you are having trouble uploading images, I would suggest

http://imgur.com

It it quite easy and fast to use.
Reply
Here are images of an AMF request and response, as viewed in FireBug with FlashFireBug:

http://imgur.com/a/f8Xo6

Here's the AMF request that was made:

Code:
[ { "data" : [ "2823513dd61191c88af73bcacb66fd8e5d7d79bc",
        1257248093001,
        "5103633",
        963482467001
      ],
    "length" : "76 B",
    "responseURI" : "/1",
    "targetURI" : "com.brightcove.player.runtime.PlayerMediaFacade.findMediaByReferenceId"
  } ]

Here's the response:

http://pastebin.com/BgZVydwm

And here's the useful part of the response (bodies[0].data.renditions), which contains RTMP URLs:

Code:
[ { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "mediaDeliveryType",
            "frameWidth",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "size",
            "frameHeight"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "rtmpe://cp133145.edgefcs.net/ondemand/&mp4:videos/963482467001/963482467001_1861320635001_5103633.mp4",
    "encodingRate" : 400000,
    "frameHeight" : 246,
    "frameWidth" : 448,
    "mediaDeliveryType" : 0,
    "size" : 126649849,
    "videoCodec" : "H264",
    "videoContainer" : 1
  },
  { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "mediaDeliveryType",
            "frameWidth",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "size",
            "frameHeight"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "rtmpe://cp133145.edgefcs.net/ondemand/&mp4:videos/963482467001/963482467001_1861340470001_5103633.mp4",
    "encodingRate" : 549992,
    "frameHeight" : 246,
    "frameWidth" : 448,
    "mediaDeliveryType" : 0,
    "size" : 173412958,
    "videoCodec" : "H264",
    "videoContainer" : 1
  },
  { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "mediaDeliveryType",
            "frameWidth",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "size",
            "frameHeight"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "rtmpe://cp133145.edgefcs.net/ondemand/&mp4:videos/963482467001/963482467001_1861321365001_5103633.mp4",
    "encodingRate" : 300000,
    "frameHeight" : 154,
    "frameWidth" : 280,
    "mediaDeliveryType" : 0,
    "size" : 95072742,
    "videoCodec" : "H264",
    "videoContainer" : 1
  },
  { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "mediaDeliveryType",
            "frameWidth",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "size",
            "frameHeight"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "rtmpe://cp133145.edgefcs.net/ondemand/&mp4:videos/963482467001/963482467001_1861320676001_5103633.mp4",
    "encodingRate" : 250000,
    "frameHeight" : 154,
    "frameWidth" : 280,
    "mediaDeliveryType" : 0,
    "size" : 79488792,
    "videoCodec" : "H264",
    "videoContainer" : 1
  },
  { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "mediaDeliveryType",
            "frameWidth",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "size",
            "frameHeight"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "rtmpe://cp133145.edgefcs.net/ondemand/&mp4:videos/963482467001/963482467001_1861335144001_5103633.mp4",
    "encodingRate" : 1099992,
    "frameHeight" : 396,
    "frameWidth" : 720,
    "mediaDeliveryType" : 0,
    "size" : 344654025,
    "videoCodec" : "H264",
    "videoContainer" : 1
  },
  { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "mediaDeliveryType",
            "frameWidth",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "size",
            "frameHeight"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "rtmpe://cp133145.edgefcs.net/ondemand/&mp4:videos/963482467001/963482467001_1861333133001_5103633.mp4",
    "encodingRate" : 899992,
    "frameHeight" : 276,
    "frameWidth" : 504,
    "mediaDeliveryType" : 0,
    "size" : 282418043,
    "videoCodec" : "H264",
    "videoContainer" : 1
  },
  { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "mediaDeliveryType",
            "frameWidth",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "size",
            "frameHeight"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "rtmpe://cp133145.edgefcs.net/ondemand/&mp4:videos/963482467001/963482467001_1861351702001_5103633.mp4",
    "encodingRate" : 1499992,
    "frameHeight" : 396,
    "frameWidth" : 720,
    "mediaDeliveryType" : 0,
    "size" : 469364903,
    "videoCodec" : "H264",
    "videoContainer" : 1
  },
  { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "mediaDeliveryType",
            "frameWidth",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "size",
            "frameHeight"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "rtmpe://cp133145.edgefcs.net/ondemand/&mp4:videos/963482467001/963482467001_1861332818001_5103633.mp4",
    "encodingRate" : 699992,
    "frameHeight" : 276,
    "frameWidth" : 504,
    "mediaDeliveryType" : 0,
    "size" : 220145246,
    "videoCodec" : "H264",
    "videoContainer" : 1
  }
]

I can't help you with US streaming services, as I most probably won't be able to access any of them from NZ. However, I suggest you look for any US based On Demand service that uses BrightCove for delivering its content.
Author of the NZ OnDemand and ZoneMinder addons, and caretaker of the pyamf script. Contributor to fanart.tv, TheMovieDB and TheTVDB.
Reply
(2012-10-05, 13:29)markhoney Wrote: Here are images of an AMF request and response, as viewed in FireBug with
FlashFireBug:
I can't help you with US streaming services, as I most probably won't be able to
access any of them from NZ. However, I suggest you look for any US based On
Demand service that uses BrightCove for delivering its content.

Thanks for posting this, but it seems limited to TVNZ site only. I tried this
with http://amctv.com which also uses BrightCove, and no RTMP information was
revealed.

http://amctv.com/talking-dead/videos/tal...us-segment

Image
Reply
svnpenn, try the next AMF request that's below the one you expanded in the screenshot - 2 lines down, POST, 5.2 KB. I reckon that one will have the info you're after. To make the second request you may need info from the first AMF response, or just from the page HTML - if you're planning to do it programmatically.

Unfortunately I can't view your example as it's geo-restricted and I get the following response:

Quote:THE VIDEO YOU ARE TRYING TO WATCH CANNOT BE VIEWED FROM YOUR CURRENT COUNTRY OR LOCATION.
Author of the NZ OnDemand and ZoneMinder addons, and caretaker of the pyamf script. Contributor to fanart.tv, TheMovieDB and TheTVDB.
Reply
Here's one we should both be able to look at:

http://dadt.com/live/video/host-chat.html

I got this from Brightcove's list of customers:

http://www.brightcove.com/en/customers

Load that page up with Firefox, Firebug and FlashFireBug and in the Network tab, under the Flash filter, look for the amf request:

Code:
POST amf?playerId=60485602001

In the Response AMF section, drill down to:

Code:
bodies[0].data.playlistTabs.lineupListDTO.playlistDTOs[0].videoDTOs[0].renditions

You should see the following info, including URLs, in there:

Code:
[ { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "frameWidth",
            "mediaDeliveryType",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "frameHeight",
            "size"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "http://cdn.origin.dadt.com/video/296474766/296474766_1880604547001_LiveWithKelly-10052012-HostChat.mp4",
    "encodingRate" : 1046000,
    "frameHeight" : 272,
    "frameWidth" : 480,
    "mediaDeliveryType" : 0,
    "size" : 137018911,
    "videoCodec" : "H264",
    "videoContainer" : 1
  },
  { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "frameWidth",
            "mediaDeliveryType",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "frameHeight",
            "size"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "http://cdn.origin.dadt.com/video/296474766/296474766_1880609836001_LiveWithKelly-10052012-HostChat.mp4",
    "encodingRate" : 1596000,
    "frameHeight" : 272,
    "frameWidth" : 480,
    "mediaDeliveryType" : 0,
    "size" : 208350945,
    "videoCodec" : "H264",
    "videoContainer" : 1
  },
  { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "frameWidth",
            "mediaDeliveryType",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "frameHeight",
            "size"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "http://cdn.origin.dadt.com/video/296474766/296474766_1880604631001_LiveWithKelly-10052012-HostChat.mp4",
    "encodingRate" : 608959,
    "frameHeight" : 272,
    "frameWidth" : 480,
    "mediaDeliveryType" : 0,
    "size" : 79995436,
    "videoCodec" : "H264",
    "videoContainer" : 1
  },
  { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "frameWidth",
            "mediaDeliveryType",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "frameHeight",
            "size"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "http://cdn.origin.dadt.com/video/296474766/296474766_1880607241001_LiveWithKelly-10052012-HostChat.mp4",
    "encodingRate" : 958959,
    "frameHeight" : 272,
    "frameWidth" : 480,
    "mediaDeliveryType" : 0,
    "size" : 126406466,
    "videoCodec" : "H264",
    "videoContainer" : 1
  },
  { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "frameWidth",
            "mediaDeliveryType",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "frameHeight",
            "size"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "http://cdn.origin.dadt.com/video/296474766/296474766_1880604680001_LiveWithKelly-10052012-HostChat.mp4",
    "encodingRate" : 696000,
    "frameHeight" : 272,
    "frameWidth" : 480,
    "mediaDeliveryType" : 0,
    "size" : 91277438,
    "videoCodec" : "H264",
    "videoContainer" : 1
  },
  { "__traits" : { "count" : 9,
        "dynamic" : false,
        "externalizable" : false,
        "members" : [ "defaultURL",
            "encodingRate",
            "frameWidth",
            "mediaDeliveryType",
            "videoContainer",
            "videoCodec",
            "audioOnly",
            "frameHeight",
            "size"
          ],
        "type" : "com.brightcove.catalog.trimmed.RenditionAssetDTO"
      },
    "audioOnly" : false,
    "defaultURL" : "http://cdn.origin.dadt.com/video/296474766/296474766_1880603421001_LiveWithKelly-10052012-HostChat.mp4",
    "encodingRate" : 418959,
    "frameHeight" : 272,
    "frameWidth" : 480,
    "mediaDeliveryType" : 0,
    "size" : 55301659,
    "videoCodec" : "H264",
    "videoContainer" : 1
  }
]

In this case, they're HTTP URLs linking to .mp4 files, but if a company's using RTMP streams it will show RTMP URLs.
To get this thread back on track, I've nearly finished adding Stuff videos to the plugin. I'm tempted to try and tackle iSky or QuickFlix next (along with getting domestic TV3 videos working), so if anyone has any preference please let me know.
Author of the NZ OnDemand and ZoneMinder addons, and caretaker of the pyamf script. Contributor to fanart.tv, TheMovieDB and TheTVDB.
Reply
I would love Quickflix for XBMC. Got a free card fro Quickflix from Mercury Energy, so would be cool to be able to use that. See if it is any good.
Reply
Will this plugin work with an original xbox running xbmc4xbox? version 3.2

I gave it a try and got error below, As the script is failing on the first line of the script I'm assuming either I've done something very wrong or I was doomed before I started.

08:17:16 M: 38707200 NOTICE: -->Python Initialized<--
08:17:16 M: 38457344 ERROR: Error Type: exceptions.SyntaxError
08:17:16 M: 38457344 ERROR: Error Contents: ('invalid syntax', ('Q:\\scripts\\plugin.video.nz.ondemand\\default.py', 4, 1, '<!DOCTYPE html>\n'))
08:17:17 M: 38400000 ERROR: File "Q:\scripts\plugin.video.nz.ondemand\default.py", line 4
<!DOCTYPE html>
^
SyntaxError: invalid syntax
08:17:17 M: 38924288 WARNING: old getenv from python.lib called, library check needed
08:17:17 M: 38924288 WARNING: JpegIO: Error 55: Not a JPEG file: starts with 0x%02x 0x%02x
08:17:17 M: 41394176 WARNING: old getenv from python.lib called, library check needed
08:17:17 M: 41398272 WARNING: JpegIO: Error 55: Not a JPEG file: starts with 0x%02x 0x%02x
Reply
Hi there, thanks a lot for this AddOn, very useful!

Can you please clarify what the 'Prefetch Program URL' feature does, and what is the advantage of using it?

Thanks Smile
If I have helped you or increased your knowledge please click the 'Thumb Up - Like' button to show me your appreciation :)
For YouTube questions see the official thread here.
Reply
Hi Mark

if I can give my vote, it will be isky.
Would like to be able to watch isky without needing to hook my pc up.
Thanks for the great work you have done.
C
Reply
As a complete newbie to the world of digital media, I was delighted to find a TVNZ ondemand plugin for XMBC, which I have just installed on my Raspberry Pi.
However, I can't get TVNZ1, 2, TV3 or TV4 to work. Other channels do, though.
I get the impression from this forum that there are some unresolved questions about this plugin. Is that the case, or am I likely to be doing something wrong?
Reply
The author does appear to have given up on it. The tv companies keep changing their websites, which makes it difficult. They do not want to be friendly to projects like this.
If I have helped you or increased your knowledge, click the 'thumbs up' button to give thanks :) (People with less than 20 posts won't see the "thumbs up" button.)
Reply
oohh I loved the functionality of having tvnz on demand in XBMC :S

has anyone had any luck with this / any work arounds that can be used?
Reply
Don't worry, I've not given up - I just have other commitments at times. The latest travesty appears to be that TV3 have totally re-designed their OnDemand site - although I reckon I can have the plugin up and running in the next few days. While I'm there, I may have another crack at TVNZ and see if there's anything I can do to get that working as well.
Author of the NZ OnDemand and ZoneMinder addons, and caretaker of the pyamf script. Contributor to fanart.tv, TheMovieDB and TheTVDB.
Reply
  • 1
  • 13
  • 14
  • 15(current)
  • 16
  • 17
  • 20

Logout Mark Read Team Forum Stats Members Help
[Request] TVNZ OnDemand2