Media Server :: Client-server Media Relay Using RTMFP In FMS 4
Sep 23, 2010
I am trying to make clients to connect FMS4 server over RTMFP for my video conferencing application.It is basically a client-server media relay application in which clients with webcam/mic connect the server and the server relays video/audio data to other clients. This application is working perfectly with FMS 3.0 but it was RTMP rather than RTMFP - I simply replaced 'RTMP' with 'RTMFP' in netConnetion and tried to test in Flash Media Development Server 4.0, but it is failed to make a connection from a client - it was working after replacing it back with 'RTMP' of course.
I believe server-client media relay is possibe using RTMFP in FMS4 because Adobe said:"Although RTMFP is often used for peer-assisted networking applications, you can use RTMFP in unicast, broadcast, and multi-point publishing applications as well. Simply replace the RTMP protocol in the NetConnection.connect() call with the RTMFP protocol:" in url...
I am testing RTMFP unicast for a video chat project using FM Developer Server 4.0.During the testing I overloaded the upload traffic to make packets dropped rather than suffering delay due to retransmission.
However, I see it makes a significant delay and it looks like doing retransmission just like RTMP.
Do you know if there is an option in FMS to disable the retransmission or other configuration I have to consider?One thing I found is "Netstream.videoReliable=false; Netstream.audioReliable=false;" but it doesn't make any difference.
We're on the way to buy a 1 CPU license for FMES4 and I'm looking if anyone can provide real world benchmarks. We will use a Intel X5680 CPU with dual Port 10Ge NIC and we're wondering how much concurrent p2p RTMFP Session the server will be able to handle.
If a p2p RTMFP Session can not be created we want fallback to another server instance with the cheaper FMIS4 on it, is this the right way to handle this?
I'm using the RTMFP protocol to publish and play video and audio, but i'm with a little problem. I installed the FMS 4 Development Server in a Windows Server machine located in our local network and it works perfectly. In order to deploy our application, we have a remote server with a fresh install of the Ubuntu 10.04 Server, and the FMS 4 installed in this server. In other server we have the Java and Flex application, which will be used in the client browser.
The problem is that when trying to change the NetConnection url to the remote FMS server, which is the Ubuntu server, the netconnection can't connect to it. When changing to the RTMP protocol it connects, but with the RTMFP don't. I can't find any information in the log files or anything else.
I am trying to create a flash player to stream an on online Internet radio station using FMS. I chose FMS after being told that I need RTMP server to extract the metadata. Our radio audio is being encoded using a DJ interface called SAM Broadcaster. But for some reason, it does not have an option to send over the stream directly to a Flash Media Server. Only options are either IceCAST or ShoutCAST. How should i setup the stream? Should it be Stream encoder>> IceCAST/SHOUTCast Server>>Flash Media Server>>Flash Player Client. Or should I setup Stream Encoder>>Flash Media Server>>Flash Player Client? Shouldn't Flash Media Server be an alternative to IceCast or Shoutcast? If that is the case, how do I send over the stream from SAM Broadcaster directly to Flash Media Server without restreaming through another streaming server?
Probably this feature is in the next generation of FMS 4.5 However, it is said this can be achieved with some manipulation of files with current FMS. Can we do a 2-way live video session.
UserA(in webpage flashplayerV11 beta: encode using H264) -> Flash Media Server -> UserB at iPhone(either HTML5 or others to play the live video in RTMP/RTMFP)
Next step will be the reverse:UserA(in webpage flashplayerV11 beta: decode using H264) <- Flash Media Server <- UserB at iPhone(either HTML5 or others to publish the live video in RTMP/ RTMFP)Better to use UDP based.Seems the HTTP live streaming incurs huge delay 4-8sec; not really working for live video chat sessions.. So how Skype handle this on iOS? with its own encoding/decoding?
i have a small LAN of about 8 computers all of which are running windows 7. I have installed FMS and XAMPP webserver on one of the machines. I want to stream live from one PC to all the other PCs on the LAN. I have a webpage with jwplayer embedded in it on my XAMPP webserver that is able to see the live stream when i start it locally. I mean the live stream works fine on the machine with the servers on it. But when i want to view the live stream from another machine in the LAN by accessing the webpage that has the jwpalyer from another machine, The jwplayer returns "server not found:rtmp://192.168.10.1/live" error. I was thinking that maybe a firewall is blocking the 1935 port but i have turned off the firewall of every PC on the LAN. I have unistalled any antivirus program on all the PCs. But i still get the same error when i try to access the live stream from another PC on the LAN.When i run netstat -a -n|find ":1935" i get 192.168.10.2:49184 192.168.10.1:1935 SYN_SENT and i think the request for the stream is sent but the conection is rejected.
This is the code for the webpage with jwplayer embedded in it. maybe it: <html>head> <title>JW FLV Media Player</title> <script type="text/JavaScript" src="swfobject.js"></script>
i am new on steaming & flash server; when we try to use RTMP over HTTP the outside client gets the internal IP address of the FMS server instead of the NAT one or public IP address, how can we solve this.
I have created a script for an Adobe FMS application to broadcast a playlist of video files as a live stream. (internet tv)
I am now working on a custom Flash-based video player to play my stream.
How do I send information from my server-side FMS application (main.asc) to the client-side video player? (e.g: title, duration of current video player)
I understand how clients use bandwidth detection etc to dynamically switch streams via client calls with ns.play2( ... ), but I was wondering if it's possible to only ever use 1 initial ns.play( ... ) call on the client side, but let FMS server side logic that I write dictate which client sees what content. For example, I have 3 clients connected to my FMS server, all watching a live stream. I then decide I want clientA to see 'recordedMovieA.flv', clientB to continue seeing the live stream, and clientC to watch 'recordedMovieB.flv'.
i am currently playing around with a flash media server trial in combination with the flowplayer.All in all i am testing the performance and general functionality for the company i work for.Anyways, i am trying to search a way to check the bandwidth of a client ( server sided ) and redirecting him to the right video stream.Sure this could be done by the backend flash application, but its out intention to perform this check server sided.
I built a simple rtmfp app using flash builder (I tested using the cirrus dev key to make sure it connects) but I cant seem to use the rtmfp service on my fms development server. Ive modified the index.html (in the webroot dir on the fms computer) to provide a link to a folder containing the html file and the swf file generated from my flash builder project. When I type in "rtmfp://localhost/" on my app I receive a "NetConnection.Connect.Failed" or a "NetConnection.Connect.Rejected" (if i do it directly on the fms computer).
Do I need to place my app in the "applications" directory to run properly? Ive checed the adaptor.xml file and everthing seems correct, I even added my public ip to the host port field, is there some confguration I missed?
Im not sure what Im doing wrong, Ive double checked my router and the fms computer's firewall thorugh a port scan and found the ports to be allowing traffic through.
I m working in flex3.0 and i just want to know that how can i call a function from fms server to my AS3.0 (Client Side) code.i tried the syntax client.call(methodname,null,null); but my flex code throw exception unable to call the method.here can i use clientobject.call (methodname,null,null) and is there some special way to declare that method at client side.
No I have installed fms4.5, but I can't find good docs how to set something like this up. In Learning section I saw a lesson, but this one isn't ready.So I want to publish using flash and the subscribers to the livestream can be iPhones or Browsers.
I have established Flash Media Server 4.5 on the house computer with win7 a router wasn't present, the cord goes on a straight line to the computer, at me allocated IP. I want that it was possible to address to the server from the Internet. At first video was started only on a local computer, then after change resolved ип in "adaptor.xml" the starting page of the server has started to open with other computers and examples work, video plays. But to incorporate on "rtmfp" leaves only from that computer on which there is a server (under the test on http://cc.rtmfp.net/all green points and one more too with all green points) leaves that computers can incorporate to the server on "rtmp" as the example of the server with video translation works well, but on "rtmfp" connects only those at whom green points.
I was try to connect my FMS 4 development server (Redhat linux OS) in live which was not connected, but the same setup in local windows is connected.I do know whats the exact problem. Also i will stop the iptables in linux but no use.
the question is,a client which can use "rtmfp" to connect to a FMS server,and the connecting success,Whether Can not guarantee that the client can play the Multicast video? because the client may be behind a Special firewall So he may connect to the FMS server ,but can not use P2P to connect to the members those are in the group?
If the answer is "yes",Whether i should make a check function that make these client back to "RTMP"?
I see that the new Flash Media Servers were released. Looking over the information on the product pages, Flash Media Enterprise Server 4 is the only available product that supports RTMFP connections?
We currently have Flash Media Server 3.5 and our product utilizes RTMP connections, but I've been working with your Stratus Server and RTMFP and have found that the new protocol better fits our needs. However, the price for Flash Media Enterprise Server 4 is beyond our budget. Is there any possibility that RTMFP support are/will be available in the lower levels of Flash Media Server?
a client publishes a simple webcam and microphone. I noticed that if I use rtmfp the admin console shows between 30 to 200 messages dropped for a simnple webcam at 320x240 10fps quality 69 and audio speex at quality 6. sor after some minutes the video is unsynchronized with the audio. I turned off aggregateMsg and queue. if I use RTMP there is 0 dropped packets.
Is anyone can explain why FMS 4.0..1-r2009 on linux 64bits High Internet speed line on client side without any bandwidth problem last flash player
Only the Flash Media Enterprise Server(FMES) has the "RTMFP peer introduction services" [URL] influxis created SmartMesh which enables p2p in Flash Media Interactive Server(FMiS). [URL] I couldn't find info on what does the peer introduction service do, what is the difference in capabilities of FMiS and FMES and what is the difference between RTMFP unicast and RMTFP multicast. Is it possible to create a p2p rtmfp connection between two clients with FMiS assuming I have a webservice that help clients exchange FarID?
I managed to run the FMS on an EC2 instance and I am able to use admin console. So I think I can say, that the server is running. Now I want to connect to the multicast application, which is delivered with the FMS as an example, via RTMFP. I can't get it to work... With an FMS 4.5 development server I didn't experience such problems. It seems to be a problem with the AWS. It might be, that I missed something to configure
I am building an enterprise application which involves many to many video chat. Most of the chats at any given time will be idle but they still need to trasmit some frames to keep the video chat alive and let other person know that someone is available. Will I be able to achieve this without any media server such as FMS and wowza? I heard about data packet loss during RTMFP. Is that true? What would be my limitations?
I have application that uses the send functionally in the NetStream on the server-side. When a connect to the app using rtmp I am able to see the send come thru but if the app uses rtmfp it does notI gone thru all the examples in setting up a mutlicast app and I know the app works because when I publish a video out everyone in the group sees the video. The only thing not working is send. I've also set dataReliable to true.
I know this question comes up from time to time, but it's completely unaddressed in the documentation and I'd like there to exist a more authoritative treatment of the subject.Like many other developers, we're trying to record multicast RTMFP streams. We see three options:
Broadcasting clients open two outgoing NetStreams: one for the multicast group through RTMFP, and another directly to FMS through RTMP for recording. One downside to this solution is that now the user has two outgoing streams, so available outbound bandwidth for any broadcasting client could easily become a constraint on video quality.One can stream to FMS 4 using RTMP and have FMS-side code that records and broadcasts the stream to the multicast group using RTMFP (recommended by JayCharles at http:url...). I haven't tried this out yet but my guess it that it will have worse video quality than a pure RTMFP solution. Is my concern justified?Super-hacky solution: one could have flash player running in some kind of virtual environment on a server. This flash player could subscribe to the multicast stream and record the video at a systems level. Has anyone tried a hack as daring as this? What solution is recommended by Adobe?It's incredible to me that FMS 4 can't act as an RTMFP consumer, thereby both acting as a multicast node and also recording the video. Can anyone at Adobe comment on this omission in functionality?
Let's say user A connected to the FMS server with an RTMFP NetConnection, and user B connected to the server with an RTMP connection. If I want to connect them together, would it be better if I also connect A to an RTMP NetConnection to the server?
I'd like to hear some opinions about using NetGroups VS. using direct p2p connections between everybody, considering there would either be 2,3 or 4 people max in the group.
How can I send some data to ALL peers via p2p-network?I tried using netgroup.post() but not all users recieved this messages.Then I tried to get peers to resend ( via post() ) all the data they have received - this works well, but produces large amounts of additional traffic for all peers (3Ñ…-5Ñ… and more)Is there a way guaranteed to deliver a message from the server to all peers? (not sending data from a server directly to each peer)