I've been trying for the last 5-6h to get an RMTP stream trought the umsp server.
I'm using the latest firmware version from SVN which include rtmpdump, so don't ask me why it's there... it is there.
This is a working rmtpdump line (it's a crapy webtv show from here -_-)
- Code: Select all
/usr/bin/rtmpdump -r 'rtmp://medias-flash.tou.tv/ondemand/?auth=daEbmaxdkcBbYaXaMcaalcYdwbyd8cbd_c.-bmyIJk-cOW-
4qqBulJpxAE&aifp=v0001&slist=002/MOV/HR/2010-03-15_ASIMON_0001_hr;002/MOV/MR/2010-03-15_ASIMON_0001_mr;002/MOV/BR
/2010-03-15_ASIMON_0001_br' -y 'mp4:002/MOV/HR/2010-03-15_ASIMON_0001_hr.mov' -q
Here is a part of my TouTV umsp plugin (touTV is a website with Canadian/Quebec, show. They broadcast using rtmp)
- Code: Select all
<?php
$location = "http://127.0.0.1/umsp/plugins/toutv-proxy.php
$data = array(
'url' => $location,
);
$dataString = http_build_query($data, 'pluginvar_');
$retMediaItems[] = array (
'id' => 'umsp://plugins/rev3-animetv?' . $dataString, //don't bother, Ive used the rev3 plugin as a base
'dc:title' => $title,
'res' => $location,
'upnp:class' => 'object.item.videoitem',
'protocolInfo' => '*:*:*:*',
);
?>
And here is the proxy :
- Code: Select all
<?php
header("HTTP/1.1 200 OK". "\r\n");
header("Content-Type: video/x-flv");
passthru("/usr/bin/rtmpdump -r 'rtmp://medias-flash.tou.tv/ondemand/?auth=daEbmaxdkcBbYaXaMcaalcYdwbyd8cbd_c.-bmyIJk-cOW-4qqBulJpxAE&aifp=v0001&slist=002/MOV/HR/2010-03-15_ASIMON_0001_hr;002/MOV/MR/2010-03-15_ASIMON_0001_mr;002/MOV/BR/2010-03-15_ASIMON_0001_br' -y 'mp4:002/MOV/HR/2010-03-15_ASIMON_0001_hr.mov' -q");
?>
I can't understand why it isn't working...
anyhow, before getting to that, I've tried other method :
rtmpgw : It start a web server that take a http GET request and output the RTMP stream right trought it. For some reason, thw wdtvl doesn't get it... it try, but when the stream is finished, it fail saying that file isnt a supported blablabla.
Actually i've tried a direct rtmpgw... like res: http://127.0.0.1:666/ //666 is the listening port I chose)
without success.
Than I created the proxy, to change the header. It used a socket Open to get to rtmpgw... but still it wasnt playing.
In all my try, I was never able to pass the GET param to rtmpgw, I've been only able to start it with predefined -r and -y param thus 127.0.0.1:666 always downloaded the same stream.
There is something working... as I can see on the rtmpgw console that it is loading the stream.
I can even browse using my computer to WDTVLIVE:666/ and it will download the stream. I've renamed it to .flv and it played nicely in mplayercHC. I've tried it on the wdtvl... it played, but the sound wasn't in sync with the video... but that's another problem.
Something I didn't try as I'm not that good with unix (for now) is transcoding using ffmpeg. I think the latest version support rtmpstream... maybe we could use that as an input and output something that the wdtvl can read.
Sorry for that long post and for all the grammar error... English isn't my maiden language.



