Unable to get any programmes
dinkypumpkin
dinkypumpkin at gmail.com
Fri Jan 20 07:16:47 EST 2012
On 20/01/2012 11:10, Foster, Stephen wrote:
> Ok - Its definitely my setup - well we knew that anyway, but its very strange....
>
> I hardcoded the path to rtmpdump.exe and added some debug to get_iplayer.pl
>
> This is what I added around line
>
> 7985 my $rtmpver = `"$bin->{flvstreamer}" --help 2>&1`;
>
> main::logger "INFO:*** $bin->{flvstreamer} --help ***\n" if $opt->{verbose};
> main::logger "INFO:*** $rtmpver ***\n" if $opt->{verbose};
>
> $rtmpver="2.4";
>
>
> This displayed some useful info. It showed the correct version of rtmpdump was being called and that its output was "" (that's nothing!!)
>
> But with the above hack to hardcode the actual version of rtmp I am using (2.4) it successfully downloaded the programme.
>
> So it seems that something is not quite working correctly when piping/capturing output from rtmpdump to perl.
As a double-check, you should also print the value of $? immediately
after rtmpdump is run (it should be 0) to verify that it returned
successfully. The rtmpdump command to get the help output (parsed for
the version number) is executed slightly differently [via backticks]
than the command to actually perform the download [via
IPC::Open3::open3()]. You've demonstrated that the latter works, but it
might be useful to know if the former is actually failing or just not
returning output for some reason.
> I checked I am running the correct (local) version of perl from get_iplayer and I am, but I'm not sure how the libraries are linked in - could they be picking up info from my default install in c:/perl.
>
> Whilst it works I'm not happy with this hack - why is the output from rtmpdump not being captured into $rtmpver?
Just to double-check, if you run "perl -V" from the get_iplayer window
prompt, what's in @INC (at the end of the output)? For a get_iplayer
install, it should look like this:
@INC:
C:/Program Files/get_iplayer/lib
.
This isn't necessarily diagnostic since backticks is a builtin, but
would at least verify for us that you're not picking up the other Perl.
And as a paranoid check if you're on Windows 7, make sure these
directories do not exist:
C:\Users\<username>\AppData\Local\VirtualStore\Program Files\get_iplayer
or for 64-bit Windows:
C:\Users\<username>\AppData\Local\VirtualStore\Program Files
(x86)\get_iplayer
The installer should have removed them, but worth a quick check.
More information about the get_iplayer
mailing list