Hi everyone,
If I am not wrong (and hopefully I am) there might be a problem with XBMC code... Let me explain.
I am having a problem with streaming some RTMP link, which plays fine with rtmpdump:
Now tying to add to a python addon, I add the following:
And unfortunately I discovered this does not play at all. It seems I am getting back an error: "Invalid tincan object name (stream ID: 1)".
Now I looked over the logs and I noticed that 'app' parameter is not being passed at all, and instead it is being parsed from rtmp url:
Now I tried with rtmpdump, and for some odd reason those folks at VIKI made it impossible to play it unless full app uri is specified, which is '00354A/videos/encoded/79635'.
I looked through source code and I noticed the following in DVDInputStreamRTMP.cpp:
Which, unfortunately excludes many parameters, including such as 'app'.
(btw, if I am wrong and my Python syntax is simply incorrect please correct me!)
So my question is, is there any way to add a parameter to pass to rtmplib or play RTMP in any other alternative way from a Python addon?
Thank you very much!
If I am not wrong (and hopefully I am) there might be a problem with XBMC code... Let me explain.
I am having a problem with streaming some RTMP link, which plays fine with rtmpdump:
Code:
rtmpdump -r rtmp://fms.354a.edgecastcdn.net/00354A/videos/encoded/79635/ -p http://www.viki.com/channels/9172-my-love-butterfly-lady/videos/79635 -y mp4:79635_720p_1210061450.mp4 -a 00354A/videos/encoded/79635 -f 'LNX 11,2,202,238' -s http://a0.vikiassets.com/assets/vikiplayer.swf -o ep1.flv
Now tying to add to a python addon, I add the following:
Code:
url='rtmp://fms.354a.edgecastcdn.net/00354A/videos/encoded/79635/mp4:79635_720p_1210061450.mp4'
PlayPath='mp4:79635_720p_1210061450.mp4'
tcUrl='rtmp://fms.354a.edgecastcdn.net/00354A/videos/encoded/79635'
PageURL='http://www.viki.com/channels/9172-my-love-butterfly-lady/videos/79635'
app='00354A/videos/encoded/79635'
liz=xbmcgui.ListItem(name, iconImage="DefaultVideo.png", thumbnailImage=iconimage)
liz.setInfo( type="Video", infoLabels={ "Title": name } )
liz.setProperty('SWFPlayer','http://a0.vikiassets.com/assets/vikiplayer.swf')
liz.setProperty('PlayPath', PlayPath)
liz.setProperty('tcUrl', tcUrl)
liz.setProperty('PageURL', PageURL)
liz.setProperty('app',app)
xbmc.Player(xbmc.PLAYER_CORE_DVDPLAYER).play(url, liz)
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=url,listitem=liz)
Now I looked over the logs and I noticed that 'app' parameter is not being passed at all, and instead it is being parsed from rtmp url:
Code:
17:42:06 T:10564 INFO: Parsed host : fms.354a.edgecastcdn.net
17:42:06 T:10564 INFO: Parsed app : 00354A/videos
I looked through source code and I noticed the following in DVDInputStreamRTMP.cpp:
Code:
static const struct {
const char *name;
AVal key;
} options[] = {
{ "SWFPlayer", AVC("swfUrl") },
{ "PageURL", AVC("pageUrl") },
{ "PlayPath", AVC("playpath") },
{ "TcUrl", AVC("tcUrl") },
{ "IsLive", AVC("live") },
{ NULL }
};
(btw, if I am wrong and my Python syntax is simply incorrect please correct me!)
So my question is, is there any way to add a parameter to pass to rtmplib or play RTMP in any other alternative way from a Python addon?
Thank you very much!