RTMP streaming problems -- app options missing?
#1
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:
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)
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:
Code:
17:42:06 T:10564    INFO: Parsed host    : fms.354a.edgecastcdn.net
17:42:06 T:10564    INFO: Parsed app     : 00354A/videos
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:
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 }
};
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!
Reply

Logout Mark Read Team Forum Stats Members Help
RTMP streaming problems -- app options missing?0