xbmc.player()
#1
Maybe I should know this because it's somewhere in a Wiki (don't think so) but I am trying to understand the parameters to xbmc.player(). Apparently I can pass two, the first one being a URL string (including rtmp) and the second an array of properties (sorry for my terminology, I generally program C/C++/C#/Java, not Python). Anyhow, these properties seem to be strings of things that are somehow used during the playback request.

In particular I am trying to understand how the rtmp playback works. I pass it an rtmp URL with port and app and then the playfile in the array of items which make up the second parameter. However, I see that I can also specify another property (trying to read the plugins) which is the SWFPlayer property. How is this property used? It is somehow masquerading another origin for the rtmp playback. Not sure how this works - can someone explain?
Reply
#2
this is why rtmp suck goat b*lls.

a rtmp url is not an url - you need to specify other properties which are not part of the url, such as swfplayer url, tcurl and whatnot. these are poor man's attempts at obfuscating things. i'd suggest you look at any of the rtmp-enabled plugins, e.g. iplayer
Reply
#3
Googling for "python xbmc docs" brings up the Python docs every time (might not be completely up to date, but it's good that it is).

http://xbmc.sourceforge.net/python-docs/
Reply
#4
spiff Wrote:this is why rtmp suck goat b*lls.

a rtmp url is not an url - you need to specify other properties which are not part of the url, such as swfplayer url, tcurl and whatnot. these are poor man's attempts at obfuscating things. i'd suggest you look at any of the rtmp-enabled plugins, e.g. iplayer

I understand that rtmp urls consist of a host, and app and a play path. All nice and good. Whether it sucks or not - I doubt I can talk the provider into changing the way he delivers his datastream ;-).

I player will not play my stream. I used MediaCatcher and I am positive I have the right values. I used Flazr and and see the connection being made and then immediately being rejected, Reading the NBC plugin code it appears as if the only possible explanation is the passing of a player URL, one of those properties in the second parameter passed to player. (More in the post below)
Reply
#5
Dan Dare Wrote:Googling for "python xbmc docs" brings up the Python docs every time (might not be completely up to date, but it's good that it is).

http://xbmc.sourceforge.net/python-docs/

Thanks, I found the docs. Maybe I misread them but I don't see a second parameter being passed nor any sort of explanation of what it does. Have a look at the NBC plugin, somewhere towards the bottom of the NBC class he calls the player and passes those rtmp parameters. I would like to know what happens with the SWFPlayer property. What does the plugin manager/ player do with it?
Reply
#6
it's sent on to the rtmp lib which appends it as part of the connection negotation packet. see xbmc/lib/libRTMP/rtmp.cpp and xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamRTMP.cpp
Reply
#7
Great, thanks. That makes sense. Let me study the C code.
Reply

Logout Mark Read Team Forum Stats Members Help
xbmc.player()0