Server Side Actionscript for HTTP Streaming Connections, is it supported?

Hi, I have a server side actionscript application working for RTMP, and I would like to reuse this code for HTTP connections.
Is this possible?

Thank you for your answer.  If I understand what you are saying, the apache modules proxy http to rtmp on the streaming server.  I have an application that is passing context into the rtmp server side javascript using a url similar to this:
rtmp://myhostname.com/myapp?mycontext/mp4:myfilename
Do you think there is a way to pass the mycontext through the http url so that the Server Side Actionscript can perform an operation based on that context?

Similar Messages

  • How do I tell FMS to only serve a section of a file using server-side ActionScript?

    We have a bunch of mp3 files on our server and we'd like to serve only particular sections of particular files to users.  For example, hello.mp3 might be four minutes long, but when user 1 tries to play it, he should only be able to play the section from 0:30 to 1:00, whereas user 2 should be able to play the whole thing.
    I'm coming from a background using Wowza Media Server, where this is fairly easy to achieve: http://fmsguru.com/showtutorial.cfm?tutorialID=78.
    Wowza doesn't require any change to the player (it doesn't call any special methods), so I'm looking for the same here.
    I've been fiddling around with the main.asc file and the "Server-Side ActionScript" API to try and achieve something similar.  In particular I've found the Stream.play method, which seems relevant.  But I can't figure out how to attach a handler to a "play" event; all the examples I've seen only attach to Application.onConnect, which doesn't seem to include a connection to a particular file, which I need in order to determine the section that can be played.
    So I'd like to do something along the lines of this (this is completely made up and doesn't follow any of the APIs; it's just an illustration of what I'm trying to achieve):
    application.onConnect = function(client) {
       client.onPlay = function(stream) { // Client.onPlay doesn't exist; what should I do here?
           var section = getStreamSection(client, stream);
           stream.play(section.start, section.end);
    var getStreamSection = function(client, stream) {
       return { start: 30, end: 60 }; // Return value is based on the user's credentials and the file they're trying to stream

    You can find the documentation for Plug-ins here:
    http://help.adobe.com/en_US/flashmediaserver/plugin_apiref/index.html
    http://help.adobe.com/en_US/flashmediaserver/devguide/WS5b3ccc516d4fbf351e63e3d11a0d662434 -7ff6PluginAPI.html
    Basically you need to concentrate on E_PLAY event and two fields F_STREAM_LENGTH & F_STREAM_POSITION. I am pasting below some code which you need to paste in your sample Auth Plug-in which you can find in : <installdir>/samples/plug-ins. You would have paste below code in case E_PLAY section in MyFmsAuthorizeEvent::authorize() function and compile it. You would basically get AuthModule.dll which you need to place in modules/auth and restart FMS.
    // Set the Stream to be played back only for 10 seconds starting from 10 th second
                                  // Stream will play from 10th Second to 20th Second
                                     float fValue;
                                  char buf[1024];
                                  if (getFloatField(m_pAev, IFmsAuthEvent::F_STREAM_LENGTH, fValue))
                                            float fLength = fValue; // in seconds
                                            sprintf(buf,"Original Stream length value passed from player %f\n",fLength);
                    m_pFmsAuthServerContext->log(buf, IFmsServerContext::kInformation, false);
                                            fLength=10.0;
                                            sprintf(buf,"Modifying Stream length value passed from player %f\n",fLength);
                    m_pFmsAuthServerContext->log(buf, IFmsServerContext::kInformation, false);
                                            setFloatField(m_pAev,IFmsAuthEvent::F_STREAM_LENGTH,fLength);
                                  if (getFloatField(m_pAev, IFmsAuthEvent::F_STREAM_POSITION, fValue))
                                            float iPosition = fValue; // in seconds
                                            sprintf(buf,"Original Stream Position value passed from player %f\n",iPosition);
                    m_pFmsAuthServerContext->log(buf, IFmsServerContext::kInformation, false);
                                            iPosition=10.0;
                                            sprintf(buf,"Modifying Stream length value passed from player %f\n",iPosition);
                    m_pFmsAuthServerContext->log(buf, IFmsServerContext::kInformation, false);
                                            setFloatField(m_pAev,IFmsAuthEvent::F_STREAM_POSITION,iPosition);

  • Server-side authentication for web services

    I was hoping to use Azure's server-side authentication for a HTML/JS web app. Some things are a bit unclear. For example, if a new user authenticates via Facebook, I want to create an associated record on the server-side and associate extra data with the
    user, irrespective of the service used to log in. If they log in again, I want the client to be able to get this extra data (eg preferences) from the server. On the back-end, I also want to be able to update particular fields of this record that the user cannot
    change themselves. I know how to go about this in a plain Node.js backend, but not sure how some of these basic things map to using Azure's services.

    Once the user logs in, you will have their information available to your server scripts. So one option is to use a custom API (or a Mobile Services Table) to insert/read/update the user data. You would protect this endpoint so that only logged-in users can
    access it, and then access the
    user object to obtain an ID an associate it in a table row. Lookups could be performed by similarly querying for the ID.
    In terms of some fields being restricted, you could remove these from the update request itself.
    Some pointers that might be helpful:
    http://azure.microsoft.com/en-us/documentation/articles/mobile-services-html-get-started-data/
    http://azure.microsoft.com/en-us/documentation/articles/mobile-services-html-call-custom-api/
    http://azure.microsoft.com/en-us/documentation/articles/mobile-services-html-authorize-users-in-scripts/

  • [svn:osmf:] 13828: 1. Add MBR + DRM support for http streaming

    Revision: 13828
    Revision: 13828
    Author:   [email protected]
    Date:     2010-01-27 14:56:10 -0800 (Wed, 27 Jan 2010)
    Log Message:
    1. Add MBR + DRM support for http streaming
    2. Fix unit TestManifestParser.as to reflect the changes
    Modified Paths:
        osmf/trunk/framework/OSMF/org/osmf/manifest/ManifestParser.as
        osmf/trunk/framework/OSMF/org/osmf/net/NetStreamPlayTrait.as
        osmf/trunk/framework/OSMF/org/osmf/net/httpstreaming/HTTPNetStream.as
        osmf/trunk/framework/OSMF/org/osmf/net/httpstreaming/f4f/HTTPStreamingF4FIndexHandler.as
        osmf/trunk/framework/OSMF/org/osmf/video/VideoElement.as
        osmf/trunk/framework/OSMFTest/org/osmf/manifest/TestManifestParser.as

    Hello Alex,
    I don't have an answer for you.
    But, can you try to use http://drmtest2.adobe.com:8080/Content/anonymous.f4v with locally hosted OSMF player? This content doens't require user/pass info.
    I'm wondering that Google TV's flash player doesn't support prompt dialog.
    http://drmtest2.adobe.com/AccessPlayer/player.html requires flash player 11. That's why it won't be loaded with flash player 10.x.
    Thanks,
    -- Hiroshi

  • [svn:osmf:] 16045: To fix bug FM-760, add a test suite for http streaming video.

    Revision: 16045
    Revision: 16045
    Author:   [email protected]
    Date:     2010-05-11 16:35:52 -0700 (Tue, 11 May 2010)
    Log Message:
    To fix bug FM-760, add a test suite for http streaming video.
    Ticket Links:
        http://bugs.adobe.com/jira/browse/FM-760
    Modified Paths:
        osmf/trunk/framework/OSMFIntegrationTest/org/osmf/OSMFIntegrationTests.as

    (Removed)

  • [svn:osmf:] 13754: Restore ability for HTTP streaming index handler to send /receive arbitrary context associated with an index, per Matthew's feedback .

    Revision: 13754
    Revision: 13754
    Author:   [email protected]
    Date:     2010-01-25 10:56:31 -0800 (Mon, 25 Jan 2010)
    Log Message:
    Restore ability for HTTP streaming index handler to send/receive arbitrary context associated with an index, per Matthew's feedback.
    Modified Paths:
        osmf/trunk/framework/OSMF/.flexLibProperties
        osmf/trunk/framework/OSMF/org/osmf/events/HTTPStreamingIndexHandlerEvent.as
        osmf/trunk/framework/OSMF/org/osmf/net/httpstreaming/HTTPNetStream.as
        osmf/trunk/framework/OSMF/org/osmf/net/httpstreaming/HTTPStreamingIndexHandlerBase.as
        osmf/trunk/framework/OSMF/org/osmf/net/httpstreaming/f4f/HTTPStreamingF4FIndexHandler.as
    Removed Paths:
        osmf/trunk/framework/OSMF/org/osmf/net/httpstreaming/URLLoaderWithContext.as

    Remember that Arch Arm is a different distribution, but we try to bend the rules and provide limited support for them.  This may or may not be unique to Arch Arm, so you might try asking on their forums as well.

  • Video NetConnection connect(null) also for http streams

    Just found out that nc.connect(null) is for both local files
    and also
    http:// based video files .
    Documentation states connect(null) is for local files and use
    connect(URL) ; for rtmp and http based streams.
    However after some testing I found that for http (e.g
    http://www.mysite.com/videos/myvideof.flv)
    you need to use also connect(null). connect('rtmp://host/stream')
    is only used with streaming servers with rtmp ..
    FYI
    Yoav

    Yoav,
    Can you file a bug in the Flex Bug base at
    http://bugs.adobe.com/flex/
    and somebody from Adobe can take a look. Also, if you can provide
    some sample code, that would help us out a lot.
    Thanks,
    Peter

  • Apache or Windows server for HTTP streaming

    Does is matter what HTTP server I use?
    In the process of upgrading from FMS 3.0 on Windows using IIS 5 to FMS 4.0. Will dynamic HTTP Streaming work from a Windows server?

    Hi,
    Thanks for your interest in HDS.
    HTTP Dynamic Streaming only works with Apache web server. The basic Apache web server is already bundled along with FMS from the 4.0 versions where the HTTP Dynamic streaming modules are loaded by default. Alternatively, any external apache installation also can be used, by copying the required module files and changing the configuration apache files to enable them..

  • Unable to use RAS SDK for server-side printing for XI 3.1

    Hi all,
    I am using RAS SDK for server-side printing.  Here are my codes:
    ISessionMgr sessionMgr = CrystalEnterprise.getSessionMgr();
    IEnterpriseSession enterpriseSession = sessionMgr.logon("Administrator", "", "cdi5boe", "secEnterprise");
    IInfoStore iStore = (IInfoStore) enterpriseSession.getService("InfoStore");
    //out.println("Current User is = " + enterpriseSession.getUserInfo().getUserName());
    //out.println ("<br>");
    IInfoObjects infoObjects = iStore.query("SELECT * FROM CI_INFOOBJECTS WHERE SI_Kind='CrystalReport' AND SI_NAME = 'Sales Print'");
    IInfoObject infoObject = (IInfoObject)infoObjects.get(0);    
    IReportAppFactory reportAppFactory = (IReportAppFactory) enterpriseSession.getService("RASReportFactory");
    ReportClientDocument rcd = new ReportClientDocument();
    rcd = reportAppFactory.openDocument(infoObject,0, java.util.Locale.US);
    //Create print options to use when printing.
    PrintReportOptions printOptions = new PrintReportOptions();
    printOptions.setPrinterName("
    cdi5boe
    HPLaserJ");
    printOptions.setJobTitle("Test Printer Job");
    printOptions.setPrinterDuplex(PrinterDuplex.horizontal);
    printOptions.setPaperSource(PaperSource.auto);
    printOptions.setPaperSize(PaperSize.paperLetter);
    printOptions.setNumberOfCopies(1);
    printOptions.setCollated(false);
    PrintReportOptions.PageRange printPageRange = new PrintReportOptions.PageRange(1,1);
    printOptions.addPrinterPageRange(printPageRange);
    //Print report.
    rcd.getPrintOutputController().printReport(printOptions);
    When I run the report, I got the following errors:
    com.crystaldecisions.sdk.occa.report.lib.ReportSDKPrinterException: com.businessobjects.crystalreports.printer.bean.ReportPrinter---- Error code:-2147215357 Error code name:internal
    I consult the Diamond Technical Community and I found the issue related to printer name:
    https://boc.sdn.sap.com/node/498
    However, I did check the printer name, it is accessible via Windows Explorer.
    Anyone knows how to resolve this?
    Regards,
    Derek

    It doesn't appear to be listed as a dependency in the developer docs, but would you try putting the ReportPrinter.jar in your RAS app?
    Sincerely,
    Ted Ueda

  • FMS 4.5.2 Release - Support for HTTP Streaming Failover

    Here is the documentation for the new HTTP Streaming Failover feature in FMS 4.5.2
    http://help.adobe.com/en_US/flashmediaserver/configadmin/WS418c3323187a5d5740d39080135d559 3e08-8000.html

    Blog post from Jens Loeffler on the new features in 4.5.2
    http://blogs.adobe.com/digitalmedia/2012/04/flash-media-server-4-5-2-released-with-robust- http-streaming-failover/

  • Server Side Includes for Apache and parsing text files

    I have an old website I used to do zipped up and I decided to set it up on my personal webserver in OS X . I got apache configured to allow server side includes (edited the httpd.conf to all them:
    <Directory />
    Options FollowSymLinks Indexes MultiViews Includes
    AllowOverride None
    </Directory>
    But I can't get the pages to come up. See I have this .shtml page which loads fine and a part of it has this line:
    <!--#include file="news/news.txt" -->
    But it won't parse that txt file and show the html that its formatted in.
    Anyone have any ideas on how to get it to parse that txt file? Even if I load just that txt file it shows raw code not it formatted. Please help.

    Ignore that first reply. I thought I was dealing with server.
    As usual, I fogot to make sure that Includes was in the Options directive for the DOCUMENT_ROOT or VirtualHost. After 10 years, you'd think I'd remember that. I just configged one of my macs to do SSI. Here's the 3 lines that I changed:
    Line 399 (the DOCUMENT_ROOT definition): Options Indexes FollowSymLinks MultiViews Includes
    Line 887 (To use server parsed HTML): AddType text/html .shtml
    Line 888: AddHandler server-parsed .shtml
    apachectl restart
    and off it went!
    Roger

  • Steps to Publish Live Audio for HTTP Streaming

    I wanted to confirm some steps in order to stream Live Audio from FMS to a mobile device using HTTP Streaming and HTML 5 audio/video tags.  I have a system setup like below:
    Lets say my application which recieves the live audio is called CLASSROOM.
    Lets say my application instance is called "TEST"
    So I have application code like:
    In "onAppStart()"
    this.broadcast_live_stream = Stream.get("f4f:livestream");
    this.broadcast_live_stream.liveEvent = "TEST";
    this.broadcast_live_stream.record("record");
    To play the incoming audio:
    application.broadcast_live_stream.play(streamName); // name of the stream sending audio to the server
    Thus, I have a folder:
    Flash Media Server 4.5\applications\CLASSROOM\streams\TEST\livestream
    which contains a bootstrap, control, meta, f4f, and f4x files.
    Since I specified the Event name as "TEST", I also created the folder:
    Flash Media Server 4.5\applications\livepkgr\events\_definst_\TEST
    Which contains event.xml:
    <Event>
    <EventID>TEST</EventID>
    - <Recording>
    <FragmentDuration>4000</FragmentDuration>
    <SegmentDuration>400000</SegmentDuration>
    <DiskManagementDuration>3</DiskManagementDuration>
    </Recording>
    </Event>
    and manifest.xml:
    <manifest xmlns="http://ns.adobe.com/f4m/1.0">
    <media streamId="livestream" bitrate="100" />
    </manifest>
    Should I then be able to create a video tag and hear the live audio:
    <video id='slide1' controls='controls'><source src='http://fms-dns/hls-live/livepkgr/_definst_/Test/livestream.m3u8'></video>
    I am not sure what other steps are needed, or a good way to test.  I don't understand how the Live Media Encoder would be needed in this situation.

    So I implemented the above change, using code from the livepkgr.
    My custom application is called Unity3, and the instance is Test, and I am trying to  publish to an event called "Test".
    I now have:
    applications\Unity3\streams\Test\livestream
    Which contains segment files, which update when I send audio in my application.
    I have:
    C:\Program Files\Adobe\Flash Media Server 4.5\applications\Unity3\events\Test\Test
    Which contains my event.xml (EventId Test), manifest.xml (StreamId livestream).  I also have a ".stream" file in this folder.  The contents of which are:
    <?xml version="1.0" encoding="UTF-8"?>
    <stream xmlns="http://ns.adobe.com/liveevent/1.0">
    <type>
    f4f
    </type>
    <name>
    livestream
    </name>
    <path>
    C:\Program Files\Adobe\Flash Media Server 4.5\applications\Unity3\streams\Test\livestream
    </path>
    </stream>
    So everything there seems to be good.  I try to use:
    <video id='live' controls='controls'><source src='http://[fms-dns]/hls-live/Unity3/Test/Test/livestream.m3u8'></video>
    or
    <audio id='live' controls='controls'><source src='http://[fms-dns]/hls-live/Unity3/Test/Test/livestream.m3u8'></audio>
    I don't hear audio, the controls don't seem to respond as though they recognize a source.  Are there certain browsers which can be confirmed work?  Any other mistakes stand out?
    Thanks.

  • How to get the publish method with server side actionscript?

    We publish this way at client side:
    ns.publish(name, howToPublish);
    How to get this howToPublish at server side?
    application.onPublish = function(){
        //how to know whether the stream's publishing method(live,record,append) here?

    I am not sure whether you can know mode of publish via SSAS, best way would be to use Authorisation Plug-in which can intercept you publish request and get the information which you need - in this case mode of publishing.

  • How to configure server side discovery for email account configuration as an email provider ?

    Hello,
    I would like to know if there is any way to provide configuration settings for a regular (not Exchange) email account on server side (email provider side) ?
    iPhone is supporting autodiscover for Exchange but doesn't seem to support it for regular POP or IMAP mail accounts.
    I would like to avoid going through Profiles.
    Regards,

    A further restriction of team workspaces and their inbox is that you cannot write mails on behalf of the tws's address.
    Also, you cannot define aliases on the inbox of a tws. There is an open ER 8824582: CREATE AN ALIAS FOR A TEAM WORKSPACE'S EMAIL ADDRESS
    Furthermore, you need to wait for 2.1 to have IMAP access on tws's (we definitely hope 2.1 will bring this feature).
    All this brought us to the decision of not using tws's inboxes at all (not defining mail addresses for them), and use (pseudo) personal workspaces and delegation for functional inboxes.
    HTH, Thomas

  • Problem in SQL Server 2000 Driver for Java Database Connectivity

    Hi,
    I have problem with MS SQL 2000 JDBC driver. I am using Type-4 driver for my application. I can able to connect through DSN. If I use Type-4 Driver to connect database means it gives the following exception.
    java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
         at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
         at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
         at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
         at com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
         at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
         at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
         at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
         at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
         at java.sql.DriverManager.getConnection(Unknown Source)
         at java.sql.DriverManager.getConnection(Unknown Source)
         at test.TestDB.main(TestDB.java:17)
    My Java Code :
    String driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
    Class.forName(driver);
    Connection con = DriverManager.getConnection("jdbc:microsoft:sqlserver://192.168.48.90:1433;User=sa;Password=sa;DatabaseName=GWCANADA");
    Statement st = con.createStatement();
    ResultSet rs = st.executeQuery("select * from emp");Do we have any other jdbc driver to connect MS SQL 2000 aprt from the Microsoft JDBC driver.
    Plese help me to resolve this problem
    Thanks
    ---Suresh

    Same problem is here: http://forum.java.sun.com/thread.jspa?threadID=419214&tstart=135
    Check that your server is running (telnet <hostname> 1433)
    --Xapp                                                                                                                                                                                                                                                                                                                   

Maybe you are looking for

  • Problem using ant 1.6.2 scripts for weblogic 8.1

    hai, i downloaded ant 1.6.2 and started writting ant scripts. these ran fine when i am doing jobs related to websphere application server but they are failing when i am running the same targets in weblogic. i know that this problem is mainly due to t

  • Custom Cell Renderer containing JCheckBox

    Hi, I have a JTable..and I have the following cell renderer      private class MyCellRenderer extends JCheckBox implements TableCellRenderer {                     public DeleteCellRenderer() {           public Component getTableCellRendererComponent(

  • Work processes in SM50 showing yellow

    Dear all, We are facing one issue in SM50 where some dialog work processes are turned to yellow status one after the other. This yellow status means i believe trace level problem which is getting changed to 2 instead of 1(default value). In order to

  • What pdf tag should I use for footnotes?

    I get involved in generating fully accessible tagged pdf's for asisstive technologies and the like. I have a doc in InDesign which uses footnotes. When I tag the document, should I map the footnotes (paragraph) style to a particular predefined pdf ta

  • AppleTV Screen Mirroring API

    Hi, Is there any documenation of how AppleTV Screen Mirroring can be used from custom application and other platforms. It can be a great thing to make other products work with AppleTV device. Thank you, Dmitry.