Live Stream Listener

I am new to Stobe Media Playback, however i've managed to customize my player with posters.  My player was originally set up to auto play a live stream but the auto play feature disbled the poster feature.  I was wondering if there was a way to code my player to listen for the live stream from FMS and automatically start playing the live stream.  Thank you in advance for your time consideration! 

Hi,
Auto play disables the poster frame, as expected - it jumps directly to playing the video.
If I understand corrrectly, you need a way to tell if the live is online or not.
In the live case, there is no out-of-the-box support in SMP for detecting if the live has started. You will have to write your own code to see if the server is streaming.
I suggest to make an improvement request in our bugtracker: http://bugs.adobe.com/jira/browse/FM - raise it as an issue . It will be better tracked and it will have a higher chance to being considered for fixing.
S.

Similar Messages

  • HDS live streaming to Flash not working

    Adobe Flash Media Server 4.5.5 r4013
    Windows 2008
    Sources:
    http://help.adobe.com/en_US/flashmediaserver/devguide/WSd391de4d9c7bd609-52e437a812a3725df a0-8000.html
    http://www.adobe.com/devnet/adobe-media-server/articles/live-multi-bitrate-video-http-flas h-ios.html
    Live streaming a single or multi-bitrate video over HTTP to Flash does not work. I have followed the instructions on the 2 sources listed above repeatedly, but I can’t get live streaming over HTTP to Flash to work. Live streaming to iOS over HTTP works with no problems (single and multi-bitrate streams).
    I have tried the troubleshooting steps from the following:
    http://help.adobe.com/en_US/flashmediaserver/devguide/WS0432746db30523c21e63e3d12efac195bd -8000.html
    Troubleshoot live streaming (HTTP)
    1.      Services window (Windows): Flash Media Server (FMS), Flash Media Administration Server, and FMSHttpd services are running. ✓
    2.      Verified that the request URL is correct. ✓
    3.      Configured ports:
    a.      Configure Apache to use port 80. Open rootinstall/Apache2.2/conf/httpd.conf in a text editor. Change the line Listen 8134 to Listen 80.
    b.     Configure Flash Media Server not to use port 80. Open rootinstall/conf/fms.ini in a text editor. Remove 80 from the ADAPTOR.HOSTPORT parameter so the parameter looks like the following: ADAPTOR.HOSTPORT = :1935 ✓
    4.      Placed a crossdomain.xml file to the rootinstall/webroot directory. ✓
    5.      In Flash Media Live Encoder, select the Encoding Options tab, choose Output from the Panel options menu, and verify the following:
    a) The value of FMS URL is rtmp://fms-dns-or-ip/livepkgr. If you’re testing on the same server as Flash Media Server, you can use the value localhost for fms-dns-or-ip. ✓
    b) For a single stream, the value of Stream is livestream?adbe-live-event=liveevent. ✓
    c) For adaptive bitrate streaming, the value of Stream is livestream%i?adbe-live-event=liveevent. ✓
    Flash Media Live Encoder uses this value to create unique stream names. To use another encoder, provide your own unique stream names, for example, livestream1?adbe-live-event=liveevent, livestream2?adbe-live-event=liveevent.
    The encoder is showing all 3 streams being published and streaming.
    6. Check Administration Console: the livepkgr application and the 3 streams are running. ✓
    7. Check the logs for errors. Flash Media Server logs are located in the rootinstall/logs folder. The master.xx.log file and the core.xx.log file show startup failures. Apache logs are located in the rootinstall/Apache2.2/logs folder. X
    a)   core00.log: these errors did not occur every time that I tried playing the live stream but these are the only relevant errors in the logs.
    1. 7968 (w)2611179     Warning from libf4f.dll: [Utils] [livestream2] Discarded all queued Media Messages received before first Video Keyframe Message
    2. 7968 (w)2611179     Warning from libf4f.dll: [Utils] [livestream3] Discarded all queued Media Messages received before first Video Keyframe Message
    b) edge00.log:
    13:33:57 4492          (w)2641213 Connection rejected by server. Reason : [ Server.Reject ] : (_defaultRoot_, _defaultVHost_) : Application (hds-live) is not defined.          -
    c) Apache-Error:
    1.     [warn]  Checking if stream is disabled but bootstrap path in event file is empty for event:livepkgr/events/_definst_/liveevent stream name:livestream
    2.     [warn] bootstrap path is in event file is empty for event:livepkgr/events/_definst_/liveevent stream name:livestream1
    As I mentioned, everything works on iOS and FMS seems to be creating all of the stream segments and meta files:
    a.     The 3 streams are being created in: HD:\Program Files\Adobe\Flash Media Server 4.5\applications\livepkgr\streams\_definst_
    b.    FMS is creating the following files in each stream folder (livestream1, livestream2, livestream 3):
    1. livestream1.bootstrap
    2. livestream1.control
    3. livestream1.meta
    4. .f4f segments
    5. .f4x segments
    The appropriate files are also being created in the HD:\Program Files\Adobe\Flash Media Server 4.5\applications\livepkgr\events\_definst_\liveevent folder, in which I have the following Manifest.xml and Event.xml files:
    <manifest xmlns="http://ns.adobe.com/f4m/1.0">
      <media streamId="livestream1" bitrate="200" />
      <media streamId="livestream2" bitrate="500" />
      <media streamId="livestream3" bitrate="1000" />
    </manifest>
    <Event>
      <EventID>liveevent</EventID>
      <Recording>
    <FragmentDuration>4000</FragmentDuration>
    <SegmentDuration>16000</SegmentDuration>
        <DiskManagementDuration>3</DiskManagementDuration>
      </Recording>
    </Event>
    I’ve tried clearing the contents of both streams\_definst_ and events\_definst_\liveevent (keeping the xml files) after restarting the encoder, and creating a different event definst for the streams (liveevent2 for example).
    We have an event in 2 weeks that we would like to stream to both Flash and iOS. Any help in solving this problem will be greatly appreciated.

    One step closer:
    Changed the crossdomain.xml file (more permissive settings).
    Changed the encoding on FMLE to vp6. Working somewhat (don't know what I did to make it start streaming through hds).
    But at least now I can get the individual streams in the set manifest file to work:
    http://localhost/hds-live/livepkgr/_definst_/livevent/livestream1.f4m
    http://localhost/hds-live/livepkgr/_definst_/livevent/livestream2.f4m
    http://localhost/hds-live/livepkgr/_definst_/livevent/livestream3.f4m
    BUT when I try to play the streams through the set manifest file from http://localhost/liveevent.f4m I'm getting the following error:
    "The F4m document contains errors URL missing from Media tag." I'll search the forums to see if anyone else has come across this problem.
    I used the f4m config tool to make the file. These are the file's contents:
    <manifest xmlns="http://ns.adobe.com/f4m/2.0">
      <baseURL>http://localhost/hds-live/livepkgr/_definst_/liveevent/</baseURL>
      <media href="livestream1.f4m " bitrate="200"/>
      <media href="livestream2.f4m " bitrate="500"/>
      <media href="livestream3.f4m " bitrate="1000"/>
    </manifest>
    Thanks

  • Running a live stream from an XML playlist

    I have just successfully installed Adobe FMS on my server.
    I would now like to know how to program a script to run a continuous live stream, of MP4 videos, from an XML playlist.
    Can anyone tell me how to do this? ...or provide me a good tutorial? (I am a complete newbie to ActionScript.)
    Thanks in advance...

    application.allowDebug = true;
    application.onAppStart = function(){
    this.userID =0;
    this.playObj = new Object();
    this.timObj = new Object();
    this.passCli = new Object();
    this.couObj = new Object();
    this.couObj.count = 1;
    application.so0 = SharedObject.get("so",false);
    this.dates = new Object;
    this.dates.dat0 = new Date().valueOf()+"a";
    this.dates.dat1 = new Date().valueOf()+"b";
    this.dates.dat2 = new Date().valueOf()+"c";
    this.dates.dat3 = new Date().valueOf()+"d";
    this.myStream = new Object;
    this.myStream.st = Stream.get (this.dates.dat0.toString());
    this.myStream.st1 = Stream.get (this.dates.dat1.toString());
    this.myStream.st2 = Stream.get (this.dates.dat2.toString());
    this.myStream.st3 = Stream.get (this.dates.dat3.toString());
    this.int0
    this.int1
    this.int2
    this.int3
    this.int4
    this.lock0=0;
    this.lock1=0;
    this.lock2=0;
    this.lock3=0;
    this.lock4=0;
    listen();
    function listen(){
    clearInterval(application.int3);
    application.int0 = setInterval(time,1000,application.myStream.st);
    application.myStream.st.onStatus = function(info){
    if(info.code == "NetStream.Play.Stop"&&application.lock0==0){
      trace("code0"+info.code);
      clearInterval(application.int0);
      application.timObj.tim = 0;
      application.int1 = setInterval(time,1000,application.myStream.st1);
      application.couObj.count = 2;
      playcurr(application.passCli.cli);
      switchStream(application.so0);
      listen1(application.myStream.st1);
      application.lock0=1;
      function listen1(mystreamst1){
      mystreamst1.onStatus = function(info){
    if(info.code == "NetStream.Play.Stop"&&application.lock1==0){
      trace("code1"+info.code);
      mystreamst1 = null;
      clearInterval(application.int1);
      application.timObj.tim = 0;
      application.int2 = setInterval(time,1000,application.myStream.st2);
      application.couObj.count = 3;
      playcurr(application.passCli.cli);
      switchStream(application.so0);
      listen2(application.myStream.st2);
      application.lock1=1
      function listen2 (mystream2){
    mystream2.onStatus = function(info){
    trace("code2"+info.code);
    if(info.code == "NetStream.Play.Stop"&&application.lock2==0){
      clearInterval(application.int2);
      application.mystream2 = null;
      application.timObj.tim = 0;
      //application.int3 = setInterval(time,1000,application.myStream.st3);
      application.couObj.count = 4;
      playcurr(application.passCli.cli);
      switchStream(application.so0);
         application.lock2=1;
      listen3(application.myStream.st3);
      function listen3(mystream3){
    mystream3.onStatus = function(info){
    trace("code3"+info.code);
    if(info.code == "NetStream.Play.Stop"&&application.lock3==0){
      trace("yes yes yes yes yes yes");
      clearInterval(application.int3);
      application.couObj.count = 1;
      mystream3 = null;
      application.timObj.tim = 0;
      //application.int4 = setInterval(time,1000,application.myStream.st);
      playcurr(application.passCli.cli);
      switchStream(application.so0);
      application.lock0=0;
      application.lock1=0;
      application.lock2=0;
      application.lock3=0;
    application.dates.dat0 = new Date().valueOf()+"e";
    application.dates.dat1 = new Date().valueOf()+"f";
    application.dates.dat2 = new Date().valueOf()+"g";
    application.dates.dat3 = new Date().valueOf()+"h";
    application.myStream.st = Stream.get (application.dates.dat0.toString());
    application.myStream.st1 = Stream.get (application.dates.dat1.toString());
    application.myStream.st2 = Stream.get (application.dates.dat2.toString());
    application.myStream.st3 = Stream.get (application.dates.dat3.toString());
    application.myStream.st.play(application.playObj.vid[0],0,-1,0);
    application.myStream.st1.play(application.playObj.vid[1],0,-1,0);
    application.myStream.st2.play(application.playObj.vid[2],0,-1,0);
    application.myStream.st3.play(application.playObj.vid[3],0,-1,0);
    listen();
    ///here next
    application.onConnect = function(client){
    application.acceptConnection(client);
    application.passCli.cli = client;
    client.call("setUserID",null,this.userID);
    this.userID++;
    if(application.clients.length == 1 ){
    videoArray = new Array();
    var playlist = new XML();
    playlist.ignoreWhite = true;
    //parse xml play list for individual elements
    playlist.onLoad = function( success ) {
    if(playlist.loaded == true) {
    if (playlist.firstChild.hasChildNodes()) {
    for (var aNode = playlist.firstChild.firstChild; aNode != null; aNode=aNode.nextSibling) {
    if (aNode.nodeType == 1) {
    //create array from parsed xml elements.
    videoArray[aNode.attributes.id] = aNode.attributes.name ;
    //pass array out of onload function
    application.playObj.vid = videoArray;
    application.myStream.st.play(application.playObj.vid[0],0,-1,0);
    application.myStream.st1.play(application.playObj.vid[1],0,-1,0);
    application.myStream.st2.play(application.playObj.vid[2],0,-1,0);
    application.myStream.st3.play(application.playObj.vid[3],0,-1,0);
    pass0(videoArray);
    //play first video on playlist
    playlist.load("http://www.privatechatnow.com/fmsuser/playlist.xml");
    }//end onetime if statement
    function pass0(videoArray){
      //receive array
      //play intial video
      if(application.clients.length == 1){
    // application.playObj.vid=videoArray;
    playcurr(application.passCli.cli);
    for (var key in application.playObj){
    trace(key + ": " + application.playObj[key]);
       //put currently playing videio into object
      //isolate playlist switching loop for each connected client
      //listen to currently playing stream with onStatus
      //change to next video in playlist
      //use onStatus and current duration and seek to scrub to cuurently playin video each time a user connects.
      //continue untill playlist is played then loop back to first video in playlist.
        //onConnect play currently playing video
    if (application.clients.length >1){
    playcurr(application.passCli.cli);
    //message client with currently play flv
    //message client when flv changes
    //message client with metadata
    application.onPublish = function(clientObject, streamObject){
    trace("Stream name :: "+streamObject.name);
    function switchStream(so0){
    if(application.couObj.count == 1){
        clength = application.timObj.tim-3;
    currlen = application.playObj.vid[0].length;
        nextlen = application.playObj.vid[1].length;
    so0.send("playSecond",application.playObj.vid[0],clength,currlen,nextlen);
    if(application.couObj.count == 2){
        clength = application.timObj.tim-3;
    currlen = application.playObj.vid[1].length;
    nextlen = application.playObj.vid[2].length;
        so0.send("playSecond",application.playObj.vid[1],clength,currlen,nextlen);
    if(application.couObj.count == 3){
    clength = application.timObj.tim-3;
    currlen = application.playObj.vid[2].length;
      nextlen = application.playObj.vid[3].length;
        so0.send("playSecond",application.playObj.vid[2],clength,currlen,nextlen);
    if(application.couObj.count == 4){
        clength = application.timObj.tim-3;
    currlen = application.playObj.vid[3].length;
      nextlen = application.playObj.vid[0].length;
        so0.send("playSecond",application.playObj.vid[3],clength,currlen,nextlen);
    function playcurr(client){
    trace("count = "+application.couObj.count.toString());
    if(application.couObj.count ==1){
        clength = application.timObj.tim-3;
    currlen = application.playObj.vid[0].length;
      nextlen = application.playObj.vid[1].length;
        client.call("playZero",null,application.playObj.vid[0],clength,currlen,nextlen); 
    if(application.couObj.count ==2){
        clength = application.timObj.tim-3;
    currlen = application.playObj.vid[1].length;
      nextlen = application.playObj.vid[2].length;
        client.call("playZero",null,application.playObj.vid[1],clength,currlen,nextlen); 
    if(application.couObj.count ==3){
        clength = application.timObj.tim-3;
    currlen = application.playObj.vid[2].length;
      nextlen = application.playObj.vid[3].length;
        client.call("playZero",null,application.playObj.vid[2],clength,currlen,nextlen); 
    if(application.couObj.count ==4){
        clength = application.timObj.tim-3;
    currlen = application.playObj.vid[3].length;
      nextlen = application.playObj.vid[0].length;
        client.call("playZero",null,application.playObj.vid[3],clength,currlen,nextlen); 
    application.onDisconnect = function(oldclient){
    if(application.clients.length ==0){
    this.userID--;
    function time(myStream){
    application.timObj.tim = myStream.time;

  • Live stream switching

    hi!
    I have a problem. I want to set up a live streaming experience, where streams will be switched live by a server side application written in .NET. The flash clients will have no control over what stream they want to watch.the setup is such: video streams from two cameras are encoded in Live Encoder. FMS should stream only a single stream to the clients and which stream should be shown should be chosen by a .NET application
    How do I go about accomplishing such a task? As I understand the FMS uses RTMP to communicate with clients. Are there any other ways to contact the FMS and tell it to switch between two streams, i.e. an XMLSocket connection? This would be perfect since it would integrate with the .NET server perfectly. I do not like the prospect of using RTMP to contact the FMS and tell it to switch between streams. Is it even possible, or can the stream switching be performed only per client?

    You can use an XML socket, but the FMS application will need to initiate the connection, as FMS has no support for listening for anything other than RTMP and HTTP requests.
    Stream switching can happen on the FMS side. In your FMS application, you'll create a server side stream, and use the Stream.play method for playing other sources (live streams or recorded flv/h.264 files) over that stream. Your subscribers will connect to the server side stream
    See the FMS docs for the Stream class and the XMLSocket class.

  • How to understand live stream is online

    Hi,
    First sorry about my english, i search my problem, but i couldnt find my answer,
    We have more then 80 live stream videos. More than 20 PC with capture cards, send cam streams to FSM with FME,
    Problems,
    PC can crush, capture card can crush, fme can crush, camera connection can crush,
    so with below code, i can unterstand if FMS server is alive, "NetConnection.Connect.Success"
    but is my stream  alive? How i can understand "1test1" is alive,
    for example i can unterstand with onMetaData info, if there is no meta info, no stream,
    but i am a noob, what is the true way to understand live stream is alive, meta info isn't true way i think
    i change var videoURL:String ="1test1" to a false value
    but no error i get, it never says "NetStream.Play.StreamNotFound":
    my goal is, i will make a web page, it will find all livestreams from xml, and cheack them, so systemadmin will see problem easly,
    last question, if there is a camera problem, livestream gives a blank black screen, can i understand automaticly  this screen
    var videoURL:String ="1test1"
    var nc:NetConnection = new NetConnection();
    nc.client = this;
    nc.connect("rtmp://myFMS/live/");
    nc.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
    function netStatusHandler(event:NetStatusEvent):void{
    trace(" trace netStatusHandler: " +event.info.code);  
    switch (event.info.code)
    case "NetConnection.Connect.Success":
    connectStream();
    break;
    case "NetStream.Play.StreamNotFound":
    trace("Stream not found: " + videoURL);
    break;
    function connectStream():void
    var vid:Video = new Video(640,480);
    var ns:NetStream = new NetStream(nc);
    ns.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
    var meta:Object = new Object();
    meta.onMetaData = function(info:Object){
    trace("metadata: duration=" + info.duration + " width=" + info.width + " height=" + info.height + " framerate=" + info.framerate)}        
    ns.client = meta;
    addChild(vid);     
    vid.attachNetStream(ns);
    ns.play(videoURL);

    thanks, now i am able to understand what's your requirement.
    first you create a sample live chat application. just for testing purpose. 
    1- create video object.; 
    2- create camera object; 
    3- attache camera object to video object; 
    4- create a button and register a event and listener function write below code. 
    5- download adobe.image.PNGEncoder class 
    hope, you can capture photo from video object into you testing application 
    package
        import com.adobe.image.PNGEncoder;
        import flash.display.Sprite;
        import flash.display.DisplayObject;
        import flash.events.*;
        import flash.display.Bitmap;
        import flash.display.BitmapData;
        import flash.media.Video;
        import flash.media.Camera;
        import flash.geom.*;
        import flash.net.FileReference;
        import flash.utils.ByteArray;
        public class SavePng extends Sprite
            private var cam:Camera;
            private var video:Video;
            private var ab:FileReference;
            public function SavePng()
                cam = Camera.getCamera();
                cam.setMode(800,600,25);
                cam.setQuality(0, 90);
                video = new Video(1024,768);
                video .smoothing=true;
                video.attachCamera(cam);
                addChild(video);
                btn.addEventListener(MouseEvent.CLICK,saveImage);
                ab=new FileReference();
            private function saveImage(evt:MouseEvent):void
                var count:int = 0;
                var scaleW:Number = .5;
                var scaleH:Number = .5;
                var m:Matrix = new Matrix();
                m.scale(scaleW,scaleH);
                var bmd:BitmapData = new BitmapData(320,240,true);
                bmd.draw(video);
                var img:Bitmap=new Bitmap(bmd);
                img.x=250;
                img.y=200;
                addChild(img);
                var ba:ByteArray = PNGEncoder.encode(bmd);
               ab.save(ba,"sushil.png")

  • Live stream buffer shrinking

    We're encountering a problem with live audio streams going
    through FMS. We play back the streams with a generous buffer on the
    client to smooth out any hiccups in the end-user's connection. But
    over long periods of time (10-30 minutes) the amount of data in the
    listener's buffer (monitored with NetStream.bufferLength) gradually
    shrinks until it hits 0, pauses to buffer again, and refills. This
    occurs on several different internet connections, and there appears
    to be plenty of bandwidth available to refill the buffer even if
    momentary network problems occur.
    Is there anything we can configure in FMS or the client
    players to prevent this? Thanks in advance for any
    suggestions.

    No problems here viewing CNN live streams.  According to CNN FAQ, you need Flip4Mac to view their live streams/videos.
    "You may watch live video using the Flip4Mac plugin and Quicktime 7.1.2+"
    http://www.cnn.com/help/live.html

  • When does iTunes supports  AAC+ / MPEG4 radio live streams?

    I like listening radio live streams thru airTunes on my stereo. Unfortunately at the moment the swiss national radio station does not support iTunes as e.g. www.kcrw.com. They answered they will jump one step further to AAC+ / MPEG4 as new standard formats. But of course iTunes does not support this new standard either. Has anyone a clue if iTunes will support these new formats? thanks
    MacBook Pro A1212   Mac OS X (10.4.9)  

    Due wrong chapter in forum closed and reopened: http://discussions.apple.com/thread.jspa?threadID=997046

  • Quicktime live streams stop and then repeat

    Hi, I'm using firefox 2.0.0.11 and Quicktime 7.3.0
    I'm trying to listen to a live stream from a radio station that is a .wax live stream. Everything works fine, however, when the playback marker reaches the right side of the quicktime screen, the stream stops and it returns to the beginning and repeats what it's just played. I'd really like to listen to the whole stream until I decide to stop it. Can anyone help?
    Simon

    The same thing happened to me, EXCEPT, for me, I realized that if I NEVER touch the controller during the live stream it doesn't stop and loop. It keeps going until the feed ends.
    For me, it ONLY stops and loops if I try to use the controller while viewing the live stream.
    This is certainly not a fix, but a possible temporary solution for some, while Apple works on fixing this BUG.

  • Can storing a live stream using actionscript fail by the cache filling up with overhead?

    Hi,
    Lately we have been seeing a problem with the archives of live streams we create using FMS. We use FMS for live streaming and concurrently store the stream in a file using ActionScript. We use the following code to record:
    var s2 = Stream.get('mp4:' + mp4name);
    application.publishedStreamMP4= s2;
    application.publishedStreamMP4.record();
    application.publishedStreamMP4.play(application.publishedStream.name,-1,-1);
    (some lines have been removed that are used for logging, etc).
    Sometimes some of these functions fail and return false. In these cases FMS's core log shows that the cache is full:
    2013-06-11 11:45:55        13863   (w)2611372      The FLV segment cache is full.  -
    In investigating this issue I have not yet been able to recreate this exact situation. By lowering the cache to 1MB I have however been able to create a situation where storing a stream can stop because the cache is full. The situation occurs as follows:
    * The server is restarted, the cache is empty.
    * A live stream is started, which is also recorded.
    * Via the Administration API the cache values <bytes> and <bytes_inuse> show to be exactly the same as the <overhead> of the object that relates to the file being saved. The <bytes> and <bytes_inuse> values of the object are 0.
    * This continues in the same way untill the cache is full.
    * When the limit of the cache is reached the message
    2013-06-11 12:07:35        13863   (w)2611372      The FLV segment cache is full.  -
    is shown in the core log and storing of the file stops. The instance log also show status changes:
    2013-06-11 12:07:35        13863   (s)2641173      MP4 recording status for livestream.mp4: Code: NetStream.Record.NoAccess Level: status Details:         -
    2013-06-11 12:07:35        13863   (s)2641173      MP4 recording status for livestream.mp4: Code: NetStream.Record.Stop Level: status Details:     -
    In the filesystem I can confirm that the last change of the file is on this moment (in this case 12:07). The live stream continues without problems.
    I have reproduced this several times. Though I can understand that caches can fill up and this can cause trouble I feel like this situation is a bug in FMS. The cache fills up with overhead, which is apparently reserved untill writing the file ends.
    I hope someone here can help out. Has anyone seen a situation like this and is there any remedy for it? Or even a workaround where this overhead in the cache can be released so the cache does not fill up?
    We use FMS version 4.5.1.

    You can use an XML socket, but the FMS application will need to initiate the connection, as FMS has no support for listening for anything other than RTMP and HTTP requests.
    Stream switching can happen on the FMS side. In your FMS application, you'll create a server side stream, and use the Stream.play method for playing other sources (live streams or recorded flv/h.264 files) over that stream. Your subscribers will connect to the server side stream
    See the FMS docs for the Stream class and the XMLSocket class.

  • Live Stream video from RSTP(RSP) to RTMP conversion

    Need Help please
    Has anyone ever connfigured a Live stream coming form RTP or RTSP  source to RTMP
    Would like to convert or inject the RTP source into AMS so i can rebroadcast.

    I am developing to an application for the video transmission on Internet using a modification of the program found in the pagina of JMF for the transmission of the video and an applet for the visualization. the program works well in a LAN but when trying to use this in Internet I have problems with this wanted to know if somebody knows as to make a transmission to different clients in Internet using rtp. I use socktes to identify the client sy I have a program that listens to requests and it transmits to them but when trying to transmit different clients single I complete recive the transmission.

  • HLS Live Streaming / LivePkgr issues

    Greetings!
    We just began using AMS for live streaming with HLS and we encouter some serious issues. Our first commercial live event is scheduled to next Wednesday and we cannot afford to lose our customer so your help is greatly appreciated.
    We have two issues which are probably related :
    When we start streaming all goes well for the first couple minutes but passed that point the stream gets less fluid. In the video player you can see a pause - dropped frames? - then the stream resumes fines. Then after say 30 seconds another pause and so on. If we stream for long enough the player finally goes black and the stream cannot be resumed.
    We experience some random AMS service shutdown every other day or so. The server just stops streaming for an unkown reason. Please have a look at our edge log below. Looks like we have some recuring "bind failed" errors but I have no idea if they are related.
    Again your help is greatly appreciated. On a side note we would be happy to purchase per-incident support from Adobe to solve the issue asap but it looks it's not available anymore. Anybody from the staff feel free to PM me about it.
    Link : http://www.webtv.coop/group/Test-WebTV/f9b9c899885569fa901a787fcdb08568
    User : test
    Pass : test
    Thanks a bunch,
    Ph.
    edge.00.log
    #Version: 1.0
    #Start-Date: 2014-07-25 00:02:45
    #Software: Adobe Media Server 5.0.3 r3029 x64
    #Date: 2014-07-25
    #Fields: date   time    x-pid   x-status        x-ctx   x-comment
    2014-07-25    00:02:40        28648   (i)2581173    Host: videodb.webtv.coop IPv4: 10.2.2.8 -
    2014-07-25    00:02:40        28648   (i)2631180    Info from AccessAdaptor: Access Adaptor started /opt/adobe/ams/modules/access/libconnect.so.    -
    2014-07-25    00:02:40        28648   (e)2631013    Failed to create listener for adaptor backup_defaultRoot_, IP localhost, port 19350: TCCommBridge::createListener 127.0.0.1:19350/v4: bind failed!!!.   -
    2014-07-25    00:02:40        28648   (e)2631013    Failed to create listener for adaptor backup_defaultRoot_, IP , port 1935: TCCommBridge::createListener 0.0.0.0:1935/v4: bind failed!!!.        -
    2014-07-25    00:02:40        28648   (e)2631114    Failed to start listeners for adaptor backup_defaultRoot__edge1.        -
    2014-07-25    00:02:40        28648   (e)2791225    Failed to start edge : backup_defaultRoot__edge1        -
    #Date: 2014-07-25
    #Fields: date   time    x-pid   x-status        x-ctx   x-comment
    2014-07-25    00:04:50        28847   (i)2581173    Host: videodb.webtv.coop IPv4: 10.2.2.8 -
    2014-07-25    00:04:50        28847   (i)2631180    Info from AccessAdaptor: Access Adaptor started /opt/adobe/ams/modules/access/libconnect.so.    -
    2014-07-25    00:04:50        28847   (e)2631013    Failed to create listener for adaptor backup_defaultRoot_, IP localhost, port 19350: TCCommBridge::createListener 127.0.0.1:19350/v4: bind failed!!!.   -
    2014-07-25    00:04:50        28847   (e)2631013    Failed to create listener for adaptor backup_defaultRoot_, IP , port 1935: TCCommBridge::createListener 0.0.0.0:1935/v4: bind failed!!!.        -
    2014-07-25    00:04:50        28847   (e)2631114    Failed to start listeners for adaptor backup_defaultRoot__edge1.        -
    2014-07-25    00:04:50        28847   (e)2791225    Failed to start edge : backup_defaultRoot__edge1        -
    #Date: 2014-07-25
    #Fields: date   time    x-pid   x-status        x-ctx   x-comment
    2014-07-25    00:07:00        29817   (i)2581173    Host: videodb.webtv.coop IPv4: 10.2.2.8 -
    2014-07-25    00:07:00        29817   (i)2631180    Info from AccessAdaptor: Access Adaptor started /opt/adobe/ams/modules/access/libconnect.so.    -
    2014-07-25    00:07:00        29817   (e)2631013    Failed to create listener for adaptor backup_defaultRoot_, IP localhost, port 19350: TCCommBridge::createListener 127.0.0.1:19350/v4: bind failed!!!.   -
    2014-07-25    00:07:00        29817   (e)2631013    Failed to create listener for adaptor backup_defaultRoot_, IP , port 1935: TCCommBridge::createListener 0.0.0.0:1935/v4: bind failed!!!.        -
    2014-07-25    00:07:00        29817   (e)2631114    Failed to start listeners for adaptor backup_defaultRoot__edge1.        -
    2014-07-25    00:07:00        29817   (e)2791225    Failed to start edge : backup_defaultRoot__edge1        -
    #Date: 2014-07-25
    #Fields: date   time    x-pid   x-status        x-ctx   x-comment
    2014-07-25    00:09:10        30014   (i)2581173    Host: videodb.webtv.coop IPv4: 10.2.2.8 -
    2014-07-25    00:09:10        30014   (i)2631180    Info from AccessAdaptor: Access Adaptor started /opt/adobe/ams/modules/access/libconnect.so.    -
    2014-07-25    00:09:10        30014   (e)2631013    Failed to create listener for adaptor backup_defaultRoot_, IP localhost, port 19350: TCCommBridge::createListener 127.0.0.1:19350/v4: bind failed!!!.   -
    2014-07-25    00:09:10        30014   (e)2631013    Failed to create listener for adaptor backup_defaultRoot_, IP , port 1935: TCCommBridge::createListener 0.0.0.0:1935/v4: bind failed!!!.        -
    2014-07-25    00:09:10        30014   (e)2631114    Failed to start listeners for adaptor backup_defaultRoot__edge1.        -
    2014-07-25    00:09:10        30014   (e)2791225    Failed to start edge : backup_defaultRoot__edge1
    core.00.log
    #Version: 1.0
    #Start-Date: 2014-07-25 09:56:08
    #Software: Adobe Media Server 5.0.3 r3029 x64
    #Date: 2014-07-25
    #Fields: date   time    x-pid   x-status        x-ctx   x-comment
    2014-07-25    09:56:08        18327   (w)2581173    /opt/adobe/ams/applications/livepkgr/events/_definst_/canal91event/Event.xml does not exist or is invalid.    -
    master.00.log
    #Version: 1.0
    #Start-Date: 2014-07-25 00:00:33
    #Software: Adobe Media Server 5.0.3 r3029 x64
    #Date: 2014-07-25
    #Fields: date   time    x-pid   x-status        x-ctx   x-comment
    2014-07-25    00:00:30        17555   (i)2581226    Edge (28097) is no longer active.    -
    2014-07-25    00:00:30        17555   (w)2581255    Edge (28097) backup_defaultRoot__edge1 experienced 1 failure[s]!        -
    2014-07-25    00:00:30        17555   (i)2581224    Edge (28338) started, arguments : -edgeports ":1935" -coreports "localhost:19350" -conf "/opt/adobe/ams/conf/Server.xml" -adaptor "backup_defaultRoot_" -$
    2014-07-25    00:02:40        17555   (i)2581226    Edge (28338) is no longer active.    -
    2014-07-25    00:02:40        17555   (w)2581255    Edge (28338) backup_defaultRoot__edge1 experienced 1 failure[s]!        -
    2014-07-25    00:02:40        17555   (i)2581224    Edge (28648) started, arguments : -edgeports ":1935" -coreports "localhost:19350" -conf "/opt/adobe/ams/conf/Server.xml" -adaptor "backup_defaultRoot_" -$
    2014-07-25    00:04:50        17555   (i)2581226    Edge (28648) is no longer active.    -
    2014-07-25    00:04:50        17555   (w)2581255    Edge (28648) backup_defaultRoot__edge1 experienced 1 failure[s]!        -
    2014-07-25    00:04:50        17555   (i)2581224    Edge (28847) started, arguments : -edgeports ":1935" -coreports "localhost:19350" -conf "/opt/adobe/ams/conf/Server.xml" -adaptor "backup_defaultRoot_" -$
    2014-07-25    00:07:00        17555   (i)2581226    Edge (28847) is no longer active.    -
    ams.ini
    # ams.ini contains substitution variables for Adobe Media Server #
    # configuration files. Lines beginning with '#' are considered comments. #
    # A substitution variable is in the form <name>=<value>. Everything up to #
    # the first '=' is considered the name of the substitution variable, and #
    # everything after the first '=' is considered the substitution value. If #
    # you want a substitution variable to have leading or trailing spaces, #
    # enclose the value around double quotes. For example, foo=" bar " #
    # This section contains configurable parameters in Server.xml #
    # Username for server admin
    # For example:
    # SERVER.ADMIN_USERNAME = foo
    SERVER.ADMIN_USERNAME = admin
    # IP address and port Adobe Media Admin Server should listen on
    # For example:
    # SERVER.ADMINSERVER_HOSTPORT = :1111
    SERVER.ADMINSERVER_HOSTPORT = :1111
    # User id in which to run the process (Linux Only)
    # For example:
    # SERVER.PROCESS_UID = 500
    SERVER.PROCESS_UID = 500
    # Group id in which to run the process (Linux Only)
    # For example:
    # SERVER.PROCESS_GID = 500
    SERVER.PROCESS_GID = 500
    # License key for Adobe Media Server
    # For example:
    # SERVER.LICENSEINFO = XXXX-XXXX-XXXX-XXXX-XXXX-XXXX
    SERVER.LICENSEINFO = (license goes here)
    # LIVE_DIR denotes the full path of sample "Live" application's
    # folder for storing any live stream recorded by server. 
    # For example:
    # LIVE_DIR = <AMS_Installation_Dir>\applications\live
    LIVE_DIR = /opt/adobe/ams/applications/live
    # VOD_COMMON_DIR denotes the full path of sample "VOD" application's
    # folder for storing onDemand and Progressive Download .flv/.mp3 files.
    # File stored in this folder can be streamed and are also PD-able.
    # Note : If you are using the default installation of Apache as a webserver,
    # and if you modify VOD_COMMON_DIR, please change the document root
    # accordingly in httpd.conf.
    # For example:
    # VOD_COMMON_DIR = <AMS_Installation_Dir>\webroot\vod
    VOD_COMMON_DIR = /opt/adobe/ams/webroot/vod
    # VOD_DIR denotes the full path of sample "VOD" application's
    # folder for storing onDemand only .flv/.mp3 files. Files stored in
    # this folder are not PD-able
    # For example:
    # VOD_DIR = <AMS_Installation_Dir>\applications\vod\media
    VOD_DIR = /opt/adobe/ams/applications/vod/media
    # The maximum size of the FLV cache, in megabytes.
    # The default is 500MB.
    SERVER.FLVCACHE_MAXSIZE=500
    # Whether to start and stop the included HTTP server along
    # with AMS.
    SERVER.HTTPD_ENABLED = true
    # Whether to start and stop the cache cleaning tool along
    # with HTTP server.
    SERVER.HTCACHECLEAN_ENABLED = true
    # The path specifying the cache root for webserver caching.
    SERVER.HTCACHEROOT = /opt/adobe/ams/Apache2.2/cacheroot
    # This section contains configurable parameters in Adaptor.xml #
    # IP address and port(s) Adobe Media Server should listen on
    # For example:
    # ADAPTOR.HOSTPORT = :1935,80
    ADAPTOR.HOSTPORT = :1935
    # IP (address and) port that Adobe Media Server should proxy
    # unknown HTTP requests to. Leave empty to disable proxying.
    # With no address, specifies a localhost port.
    # For example:
    # HTTPPROXY.HOST = webfarm.example.com:80
    HTTPPROXY.HOST = :8134
    #This tag specifies an IP address for the player to use instead of a hostname when
    #making the RTMPT connection to AMS. If nothing is specified, AMS will automatically
    #determine the IP to use.
    ADAPTOR.HTTPIDENT2 =
    # This section contains configurable parameters in Vhost.xml #
    # Application directory for the virtual host
    # For example:
    # VHOST.APPSDIR = C:\myapps
    VHOST.APPSDIR = /opt/adobe/ams/applications
    # This section contains configurable parameters in Application.xml #
    # List of semi-colon delimited paths in which to search for script to load
    # For example:
    # APP.JS_SCRIPTLIBPATH = C:\scripts;C:\Program Files\Foo\scripts
    APP.JS_SCRIPTLIBPATH = /opt/adobe/ams/scriptlib
    # This section contains configurable parameters in Logger.xml #
    LOGGER.LOGDIR =
    # This section contains configurable parameters in Users.xml #
    # Enable or disable using HTTP requests to execute admin commands. 
    # Set to "true" to enable, otherwise it will be disabled. The 
    # actual commands permitted for server admin and virtual host admin 
    # users can be set in Users.xml. 
    USERS.HTTPCOMMAND_ALLOW = true

    Hi again everyone.
    Thanks Charles for offering a solution but unfortunately still not working. Please see details below.
    Netstat while AMS running :
    [root@videodb ams]# netstat -tulpn
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address              Foreign Address            State      PID/Program name
    tcp        0      0 0.0.0.0:2049                0.0.0.0:*                  LISTEN      -                
    tcp        0      0 0.0.0.0:5666                0.0.0.0:*                  LISTEN      22502/nrpe        
    tcp        0      0 127.0.0.1:8005              0.0.0.0:*                  LISTEN      19768/java        
    tcp        0      0 0.0.0.0:8134                0.0.0.0:*                  LISTEN      2309/httpd        
    tcp        0      0 127.0.0.1:11110            0.0.0.0:*                  LISTEN      29001/./amsadmin  
    tcp        0      0 0.0.0.0:806                0.0.0.0:*                  LISTEN      8256/rpc.statd    
    tcp        0      0 0.0.0.0:807                0.0.0.0:*                  LISTEN      27760/rpc.rquotad
    tcp        0      0 127.0.0.1:199              0.0.0.0:*                  LISTEN      8765/snmpd        
    tcp        0      0 0.0.0.0:8009                0.0.0.0:*                  LISTEN      19768/java        
    tcp        0      0 0.0.0.0:3306                0.0.0.0:*                  LISTEN      12980/mysqld      
    tcp        0      0 0.0.0.0:1935                0.0.0.0:*                  LISTEN      8690/amsedge      
    tcp        0      0 0.0.0.0:111                0.0.0.0:*                  LISTEN      8123/portmap      
    tcp        0      0 0.0.0.0:8080                0.0.0.0:*                  LISTEN      19768/java        
    tcp        0      0 0.0.0.0:80                  0.0.0.0:*                  LISTEN      2309/httpd        
    tcp        0      0 0.0.0.0:819                0.0.0.0:*                  LISTEN      27776/rpc.mountd  
    tcp        0      0 127.0.0.1:19350            0.0.0.0:*                  LISTEN      8690/amsedge      
    tcp        0      0 0.0.0.0:22                  0.0.0.0:*                  LISTEN      8790/sshd        
    tcp        0      0 0.0.0.0:1111                0.0.0.0:*                  LISTEN      29001/./amsadmin  
    tcp        0      0 0.0.0.0:49209              0.0.0.0:*                  LISTEN      -                
    tcp        0      0 127.0.0.1:25                0.0.0.0:*                  LISTEN      9323/master      
    udp        0      0 0.0.0.0:2049                0.0.0.0:*                              -                
    udp        0      0 10.2.2.8:1935              0.0.0.0:*                              8690/amsedge      
    udp        0      0 127.0.0.1:1935              0.0.0.0:*                              8690/amsedge      
    udp        0      0 0.0.0.0:57615              0.0.0.0:*                              -                
    udp        0      0 10.2.2.8:19350              0.0.0.0:*                              8690/amsedge      
    udp        0      0 127.0.0.1:19350            0.0.0.0:*                              8690/amsedge      
    udp        0      0 0.0.0.0:800                0.0.0.0:*                              8256/rpc.statd    
    udp        0      0 0.0.0.0:161                0.0.0.0:*                              8765/snmpd        
    udp        0      0 0.0.0.0:802                0.0.0.0:*                              27760/rpc.rquotad
    udp        0      0 0.0.0.0:803                0.0.0.0:*                              8256/rpc.statd    
    udp        0      0 0.0.0.0:816                0.0.0.0:*                              27776/rpc.mountd  
    udp        0      0 0.0.0.0:49875              0.0.0.0:*                              10305/avahi-daemon
    udp        0      0 0.0.0.0:5353                0.0.0.0:*                              10305/avahi-daemon
    udp        0      0 0.0.0.0:111                0.0.0.0:*                              8123/portmap      
    udp        0      0 10.2.2.8:123                0.0.0.0:*                              8824/ntpd        
    udp        0      0 127.0.0.1:123              0.0.0.0:*                              8824/ntpd        
    udp        0      0 0.0.0.0:123                0.0.0.0:*                              8824/ntpd
    Stopping server :
    [root@videodb ams]# ./server stop
    NPTL 2.5
    Stopping Adobe Media Server (please check /var/log/messages)
    Server has shutdown...
    Netstat after shutdown (ports 1935 and 19350 are free) :
    [root@videodb ams]# netstat -tulpn
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name  
    tcp        0      0 0.0.0.0:2049                0.0.0.0:*                   LISTEN      -                  
    tcp        0      0 0.0.0.0:5666                0.0.0.0:*                   LISTEN      22502/nrpe         
    tcp        0      0 127.0.0.1:8005              0.0.0.0:*                   LISTEN      19768/java         
    tcp        0      0 127.0.0.1:11110             0.0.0.0:*                   LISTEN      29001/./amsadmin   
    tcp        0      0 0.0.0.0:806                 0.0.0.0:*                   LISTEN      8256/rpc.statd     
    tcp        0      0 0.0.0.0:807                 0.0.0.0:*                   LISTEN      27760/rpc.rquotad  
    tcp        0      0 127.0.0.1:199               0.0.0.0:*                   LISTEN      8765/snmpd         
    tcp        0      0 0.0.0.0:8009                0.0.0.0:*                   LISTEN      19768/java         
    tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      12980/mysqld       
    tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      8123/portmap       
    tcp        0      0 0.0.0.0:8080                0.0.0.0:*                   LISTEN      19768/java         
    tcp        0      0 0.0.0.0:819                 0.0.0.0:*                   LISTEN      27776/rpc.mountd   
    tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      8790/sshd          
    tcp        0      0 0.0.0.0:1111                0.0.0.0:*                   LISTEN      29001/./amsadmin   
    tcp        0      0 0.0.0.0:49209               0.0.0.0:*                   LISTEN      -                  
    tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      9323/master        
    udp        0      0 0.0.0.0:2049                0.0.0.0:*                               -                  
    udp        0      0 0.0.0.0:57615               0.0.0.0:*                               -                  
    udp        0      0 0.0.0.0:800                 0.0.0.0:*                               8256/rpc.statd     
    udp        0      0 0.0.0.0:161                 0.0.0.0:*                               8765/snmpd         
    udp        0      0 0.0.0.0:802                 0.0.0.0:*                               27760/rpc.rquotad  
    udp        0      0 0.0.0.0:803                 0.0.0.0:*                               8256/rpc.statd     
    udp        0      0 0.0.0.0:816                 0.0.0.0:*                               27776/rpc.mountd   
    udp        0      0 0.0.0.0:49875               0.0.0.0:*                               10305/avahi-daemon 
    udp        0      0 0.0.0.0:5353                0.0.0.0:*                               10305/avahi-daemon 
    udp        0      0 0.0.0.0:111                 0.0.0.0:*                               8123/portmap       
    udp        0      0 10.2.2.8:123                0.0.0.0:*                               8824/ntpd          
    udp        0      0 127.0.0.1:123               0.0.0.0:*                               8824/ntpd          
    udp        0      0 0.0.0.0:123                 0.0.0.0:*                               8824/ntpd
    Restart :
    [root@videodb ams]# ./server start
    NPTL 2.5
    Starting Adobe Media Server (please check /var/log/messages)
    Content of edge.00.log :
    #Version: 1.0
    #Start-Date: 2014-08-06 14:39:17
    #Software: Adobe Media Server 5.0.3 r3029 x64
    #Date: 2014-08-06
    #Fields: date   time    x-pid   x-status        x-ctx   x-comment
    2014-08-06    14:39:12        15099   (i)2581173    Host: videodb.webtv.coop IPv4: 10.2.2.8 -
    2014-08-06    14:39:12        15099   (i)2631180    Info from AccessAdaptor: Access Adaptor started /opt/adobe/ams/modules/access/libconnect.so.    -
    2014-08-06    14:39:12        15099   (i)2631174    Listener started ( backup_defaultRoot__edge1 ) : localhost:19350/v4     -
    2014-08-06    14:39:13        15099   (i)2631174    Listener started ( backup_defaultRoot__edge1 ) : 1935/v4        -
    2014-08-06    14:39:14        15099   (i)2631174    Listener started ( backup_defaultRoot__edge1 ) : 127.0.0.1:19350 (rtmfp-core)/v4        -
    2014-08-06    14:39:14        15099   (i)2631174    Listener started ( backup_defaultRoot__edge1 ) : 10.2.2.8:19350 (rtmfp-core)/v4 -
    2014-08-06    14:39:14        15099   (i)2631509    Public rtmfp-core addresses for listener backup_defaultRoot__edge1 are: 127.0.0.1:19350;10.2.2.8:19350  -
    2014-08-06    14:39:14        15099   (i)2631174    Listener started ( backup_defaultRoot__edge1 ) : 127.0.0.1:1935 (rtmfp)/v4    -
    2014-08-06    14:39:14        15099   (i)2631174    Listener started ( backup_defaultRoot__edge1 ) : 10.2.2.8:1935 (rtmfp)/v4    -
    #Date: 2014-08-06
    #Fields: date   time    x-pid   x-status        x-ctx   x-comment
    2014-08-06    14:39:12        15097   (i)2581173    Host: videodb.webtv.coop IPv4: 10.2.2.8 -
    2014-08-06    14:39:12        15097   (i)2631180    Info from AccessAdaptor: Access Adaptor started /opt/adobe/ams/modules/access/libconnect.so.    -
    2014-08-06    14:39:12        15097   (e)2631013    Failed to create listener for adaptor _defaultRoot_, IP localhost, port 19350: TCCommBridge::createListener 127.0.0.1:19350/v4: bind failed!!!$
    2014-08-06    14:39:12        15097   (e)2631013    Failed to create listener for adaptor _defaultRoot_, IP , port 1935: TCCommBridge::createListener 0.0.0.0:1935/v4: bind failed!!!.    -
    2014-08-06    14:39:12        15097   (e)2631114    Failed to start listeners for adaptor _defaultRoot__edge1.    -
    2014-08-06    14:39:12        15097   (e)2791225    Failed to start edge : _defaultRoot__edge1    -
    #Date: 2014-08-06
    #Fields: date   time    x-pid   x-status        x-ctx   x-comment
    2014-08-06    14:41:22        15903   (i)2581173    Host: videodb.webtv.coop IPv4: 10.2.2.8 -
    2014-08-06    14:41:22        15903   (i)2631180    Info from AccessAdaptor: Access Adaptor started /opt/adobe/ams/modules/access/libconnect.so.    -
    2014-08-06    14:41:22        15903   (e)2631013    Failed to create listener for adaptor _defaultRoot_, IP localhost, port 19350: TCCommBridge::createListener 127.0.0.1:19350/v4: bind failed!!!$
    2014-08-06    14:41:22        15903   (e)2631013    Failed to create listener for adaptor _defaultRoot_, IP , port 1935: TCCommBridge::createListener 0.0.0.0:1935/v4: bind failed!!!.    -
    2014-08-06    14:41:22        15903   (e)2631114    Failed to start listeners for adaptor _defaultRoot__edge1.    -
    2014-08-06    14:41:22        15903   (e)2791225    Failed to start edge : _defaultRoot__edge1
    Content of var/log/messages :
    Aug  6 14:39:11 videodb Service[15070]: Server starting...
    Aug  6 14:39:12 videodb Server[15070]: /opt/adobe/ams/Apache2.2/bin/httpd -f ./conf/httpd.conf -d "/opt/adobe/ams/Apache2.2" -k start returned 0: [Wed Aug 06 14:39:11 2014] [info] mod_jithttp - AMS $
    Aug  6 14:39:12 videodb Server[15070]: /opt/adobe/ams/Apache2.2/bin/htcacheclean -n -t -i -p/opt/adobe/ams/Apache2.2/cacheroot -d5 -l1024K returned 0:
    Aug  6 14:39:12 videodb Adaptor[15097]: Failed to create listener for adaptor _defaultRoot_, IP localhost, port 19350: TCCommBridge::createListener 127.0.0.1:19350/v4: bind failed!!!.
    Aug  6 14:39:12 videodb Adaptor[15099]: Listener started ( backup_defaultRoot__edge1 ) : localhost:19350/v4
    Aug  6 14:39:12 videodb Adaptor[15097]: Failed to create listener for adaptor _defaultRoot_, IP , port 1935: TCCommBridge::createListener 0.0.0.0:1935/v4: bind failed!!!.
    Aug  6 14:39:12 videodb Adaptor[15097]: Failed to start listeners for adaptor _defaultRoot__edge1.
    Aug  6 14:39:12 videodb Edge[15097]: Failed to start edge : _defaultRoot__edge1
    Aug  6 14:39:12 videodb Service[15070]: Server started (/opt/adobe/ams/conf/Server.xml).
    Aug  6 14:39:13 videodb Adaptor[15099]: Listener started ( backup_defaultRoot__edge1 ) : 1935/v4
    Aug  6 14:39:14 videodb Adaptor[15099]: Listener started ( backup_defaultRoot__edge1 ) : 127.0.0.1:19350 (rtmfp-core)/v4
    Aug  6 14:39:14 videodb Adaptor[15099]: Listener started ( backup_defaultRoot__edge1 ) : 10.2.2.8:19350 (rtmfp-core)/v4
    Aug  6 14:39:14 videodb Adaptor[15099]: Public rtmfp-core addresses for listener backup_defaultRoot__edge1 are: 127.0.0.1:19350;10.2.2.8:19350
    Aug  6 14:39:14 videodb Adaptor[15099]: Listener started ( backup_defaultRoot__edge1 ) : 127.0.0.1:1935 (rtmfp)/v4
    Aug  6 14:39:14 videodb Adaptor[15099]: Listener started ( backup_defaultRoot__edge1 ) : 10.2.2.8:1935 (rtmfp)/v4

  • How to open live streaming audio? Like live streaming audio

    like
    i can't play some asf files
    i need help
    i suscribed to a radio station and can't listen to it
    also how can I use Window media player to open some live streaming audio or video instead of quicktime ?

    Install Flip4Mac to enable QuickTime to handle Windows Media files.

  • Video Live-Stream issue

    Hi,
    I'm not very familiar with jmf but i got it to play a local video file.
    my problem is now to play a livestream, when i try to create the player it seems that the player waits until it got all data.
    so the programm runs and it never comes to an end
    the streaming server recognize it as a listener so it seems to get the data but will only play it when transfer is complete
    any idea how i can play the stream?
    try{
                MediaLocator ml = new MediaLocator("http://127.0.0.1/stream");
                DataSource  src = Manager.createDataSource(ml);
                src.connect();
                src.start();
    }catch (Exception e){
    mediaPlayer = Manager.createRealizedPlayer(src);

    shrug I've never used the conveniance function createRealizedPlayer, I've always done it manually. With that said, I'm pretty sure that Player objects handle the connecting/opening of their DataSource themself.
    Just positing a guess here, but I'd imagine that you cannot realize a player with an open DataSource...and as createRealizedPlayer is a blocking call, it just blocks until the DataSource stops sending data (and then it realizes and can play the DS by opening it itself). In the case of a live stream, it probably never realizes.
    Replace your code with the following:
    MediaLocator ml = new MediaLocator("http://127.0.0.1/stream");
    try {
        mediaPlayer = Manager.createRealizedPlayer(ml);
    catch (NoPlayerException e) {
        System.err.println("Player could not be created : "+e);
    catch(CannotRealizeException e) {
        System.err.println("Player could not be realized: "+e);
    catch(IOException e) {
        System.err.println("Could not connect Player to data source: "+e);

  • PHP Live Stream Status

    Hello,
    I am creating a script to function like Ustream.tv or
    Justin.tv and it is currently configured at www.Toxin.tv. What I
    need to do is retrieve the status of a stream (amount of users and
    whether or not it's live) more importantly, though, whether or not
    it's live in JavaScript or PHP - if this is at all possible.
    Please help me, If I can't figure it out I'll just pay
    someone to do it :P but I'd really like to try to do it myself
    first. Thanks so much in advance.

    You can't do it at the application instance level (the FMS
    core can't listen for HTTP requests), but you can get a list of
    live streams from the admin service via http request.
    See the docs for the HTTP api of the admin service,
    specifically the getLiveStreams method.

Maybe you are looking for