Can't get RTMP-Stream running

Hi,

I’m currently working on a plugin and am not able to play streams from sf.tv

This ist the info I got about my RTMP-Stream:



rtmpdump  -r "rtmp://cp50792.edgefcs.net/ondemand/cosf/vod/glanzundgloria/2006/09/glanzundgloria_20060905_120000_500k.flv" --swfUrl  --pageUrl "http://www.videoportal.sf.tv/video?id=b03a40a3-1696-4c13-874e-39bfa9d67241"  --flashVer "WIN 10,0,22,87" -o "glanz & gloria - Erotik-Shooting mit Fannie Lüscher.flv



I tried:

http://www.plexapp.com/player/player.php?url=rtmp://cp50792.edgefcs.net/ondemand/cosf/vod/&clip=glanzundgloria/2006/09/glanzundgloria_20060905_120000_500k<br />



and moved "&clip=" back and forth but it didn't work.

Any ideas?

Rtmp streams are really hit or miss. Some will not work no matter how hard you beat on them.



You always have the solution of using a site config.

I’m using several sources and I would hate to create site configs. I tested a bit further and found out that I can download the video with the following rtmpdump command:



rtmpdump.exe --host "cp50792.edgefcs.net" --tcUrl "rtmp://cp50792.edgefcs.net/ondemand/" --playpath "cosf/vod/glanzundgloria/2006/09/glanzundgloria_20060905_120000_500k" -o "test.flv"



tcUrl and playpath are the equivalents to url and to clip.


9.1.1. When you should NOT create a Site Config¶<br />
<br />
If you have access to the video stream directly, then you should not use a site configuration file.<br />
<br />
You will have to do some sleuthing to see if you can get access to the .flv, .mp4 or RTMP streams directly. You can use tools like the Net inspector in Firebug or you can sometimes find the stream URL passed in as a parameter to the player if you view the HTML source.<br />
<br />
Some formats will just not work. RTMPE (note the E) or other formats which have DRM will have to be played with the flash/silverlight player and warrant the creation of a Site Configuration file<br />




I'll try creatin a WebVideoItem, but there is no way of testing it online or outside of Plex?

“ondemand” is the rtmp stream app for Akamai, so the url needs to be split after that. You get:

url = rtmp://cp50792.edgefcs.net/ondemand

clip = cosf/vod/glanzundgloria/2006/09/glanzundgloria_20060905_120000_500k



Resulting in:


http://www.plexapp.com/player/player.php?url=rtmp://cp50792.edgefcs.net/ondemand&clip=cosf/vod/glanzundgloria/2006/09/glanzundgloria_20060905_120000_500k



If that doesn't work it's very likely they use SWF verification to protect their streams.

Yes there seems to be a verification process (rtmpdump says something about ignoring swfVerification request), but if rtmpdum can simply ignore it Plex should be able to do the same :)

I quickly wrote a siteconfig:

<?xml version="1.0" encoding="UTF-8"?><br />
<site site="http://www.videoportal.sf.tv/video*"<br />
	    plugin="http://videoportal.sf.tv/flash/videoplayer.swf"<br />
			initialState="playing"<br />
			version="1.0"><br />
	<br />
	<crop x="0" y="0" width="640" height="360" />  	<br />
	<seekbar type="thumb"><br />
		<start x="73" y="374" /><br />
		<end   x="336" y="374" /><br />
		<played><br />
		             <color rgb="CECECE" /><br />
		</played><br />
	</seekbar><br />
	<br />
	<!-- PLAYING --><br />
	<state name="playing"><br />
		<event><br />
			<condition><br />
				<command name="pause" /><br />
			</condition><br />
			<action><br />
				<click x="36" y="370" /><br />
				<goto state="paused" /><br />
			</action><br />
		</event><br />
	</state><br />
	<br />
	<!-- PAUSED --><br />
	<state name="paused"><br />
		<event><br />
			<condition><br />
				<command name="play" /><br />
			</condition><br />
			<action><br />
				<click x="36" y="370" /><br />
				<goto state="playing" /><br />
			</action><br />
		</event><br />
	</state><br />
</site>



and added it in my plugin:

	dir.Append(WebVideoItem("http://www.videoportal.sf.tv/video?id=b03a40a3-1696-4c13-874e-39bfa9d67241", "Test", "Nur ein Test", summary="toytoytoy",thumb=None, art=None))<br />




but in Plex only the "opening stream..."-popup appears and the audio is being played in the background, it stays that way. Any idea what I've done wrong here?

Try

http://www.videoportal.sf.tv/video.

instead of

http:
//www.videoportal.sf.tv/video

for the site attribute.

(video* only matches zero or more o’s)



Thank you, but still no video. Perhaps I misunderstood the seekbar part, I took the coords from the very left of the seekbar and from the very right and set the color to the grey of the thumb.

http://videoportal.sf.tv/flash/videoplayer.swf redirects to http://www.videoportal.sf.tv/flash/videoplayer.swf

Try using http://
.*videoportal.sf.tv/flash/videoplayer.swf for the plugin attribute on the site tag.

I did some testing with rtmpdump too and found that they are using SWF verification. Without it, it get an error every time I try:


ERROR: RTMP_ReadPacket, failed to read RTMP packet header<br />
37188.935 kB / 524.36 sec (79.6%)<br />
Download may be incomplete (downloaded about 79.60%), try resuming<br />




Using the swfVfy parameter with the player url everything works fine:

rtmpdump -r "rtmp://cp50792.edgefcs.net/ondemand/cosf/vod/glanzundgloria/2006/09/glanzundgloria_20060905_120000_500k.flv" --swfVfy "http://www.videoportal.sf.tv/flash/videoplayer.swf" -o test.flv

thank you very much, it works now!

Looking at the SF Flash player, I think this should work for the seekbar:


        <seekbar type="thumb"><br />
                <start x="70" y="373" /><br />
                <end   x="333" y="373" /><br />
                <played><br />
                             <color rgb="888888" /><br />
                </played><br />
        </seekbar><br />


To complete the site config you can use this for video end detection:


		<!-- Video ends --><br />
		<event><br />
			<condition><br />
				<url matches="getminiwall" /><br />
			</condition><br />
			<action><br />
				<goto state="end" /><br />
			</action><br />
		</event><br />



Thank you again, is there a way to display the estimated duration?

If you have the duration info you can set it on the (Web)VideoItem with the duration parameter (in milliseconds). I'm not sure if it's displayed in the videoplayer for Flash/Silverlight content though.

Okay, I thought that Plex might be able to calculate the duration from the seekbar info, but doesn't seem so.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.