Printing rtmpdump compatible URLs (radio and live TV)

Bastien Nocera hadess at hadess.net
Tue Apr 15 02:05:00 PDT 2014


Heya,

I've been working on porting some portions of get_iplayer to quvi so
that I can integrate into GNOME applications, such as GNOME Videos.

The script for quvi 0.9 is here:
https://github.com/grilofw/grilo-lua-sources/blob/master/quvi/bbc.lua

The problem I'm facing is when I attempted to add support for radio and
live sources. I've been using this patch for get_iplayer:
diff --git a/get_iplayer b/get_iplayer
index 4d99adc..88de535 100755
--- a/get_iplayer
+++ b/get_iplayer
@@ -8434,14 +8434,7 @@ sub get {
        if ( $playpath ) {
                @cmd = (
                        $bin->{rtmpdump},
-                       '--port', $port,
-                       '--protocol', $protocol,
-                       '--playpath', $playpath,
-                       '--host', $server,
-                       $swfarg, $swfurl,
-                       '--tcUrl', $tcurl,
-                       '--app', $application,
-                       '--pageUrl', $pageurl,
+                       "$tcurl/$playpath app=$application playpath=$playpath swfUrl=$swfurl swfVfy=1 tcUrl=$tcurl pageurl=$pageurl",
                        @cmdopts,
                );
        # Using just streamurl (i.e. no playpath defined)
@@ -8455,7 +8448,8 @@ sub get {
                );
        }
 
-       $return = main::run_cmd( 'normal', @cmd );
+       # $return = main::run_cmd( 'normal', @cmd );
+       print "URL: \"$cmd[1]\"\n";
 
        # exit behaviour when streaming
        if ( $opt->{nowrite} && $opt->{stdout} ) {

and comparing results of my script with that of my script using this
page:
https://neil.fraser.name/software/diff_match_patch/svn/trunk/demos/demo_diff.html

I'm guessing that my generation of an RTMPdump URL is incorrect (I can't
play the resulting URL when using radio or LiveTV) and would be grateful
if somebody could point out what I'm doing wrong, or even better,
integrate this sort of functionality directly in get_iplayer.

Cheers




More information about the get_iplayer mailing list