Categories

Archives

Instantly Generate Flex App with Video Recording and Broadcast, Remote Shared Objects and Data Push

Flex provides many benefits and advantages over alternative client-side technologies. In my opinion one of the most powerful features available in Flex (and Flash) is the support for video streaming and recording. To make it easier for developers to include these (and many other RTMP-based) features, we added a very cool code generator into the latest releases of WebORB for Java and .NET. With a few mouse clicks the code generator can instantly create a complete Flex project containing all the ActionScript code enabling video recording, video broadcast, communication via remote shared objects and server-side data push. The video linked below provides an overview of this fantastic functionality. Enjoy!

12 comments to Instantly Generate Flex App with Video Recording and Broadcast, Remote Shared Objects and Data Push

  • Ray

    Great example !
    Got this Working on the iPad Simulator .
    Unfortunatly The .IPA deployed to my iPad2 Device comes up with an unsuccesful Connection?!
    The Server is Talking about “… red5.. Timeout..to Long handshake..”?
    Any hint ?
    $regs ray

  • When running on iPad, you need to make sure you’re using a valid hostname or IP address for the server. As for Red5, we have bundled it to leverage the RTMP protocol encoder.

  • ray

    Hi Mark,

    thanks for answering !

    What I did is I changed the connection string within the ConnectionManager :

    return “rtmpt://www.richinter.net:5013″ + “/weborb”;
    //return “rtmpt://localhost:8080″ + “/weborb”;

    The server is located on MAC A (MAMP) and I can succesfull run the console from MAC B and the app as simulator from MAC B.

    I can reach the console on the iPad with Safri as well BUT not the application ?!

    Any hint to a docu-path where I can read about it?

    Thanks in advance again for help.

    $regs ray

  • Could you check if it works if you run it on the default port (8080) ?

  • ray

    Hi Mark,

    Unfortunately it’s the same behavior. I even switched off MAMP and installed it directly into in Mac’s web root.
    It works with the simulator but not at the iPad.

    That’s what comes up at the web orb-terminal-console after pushing the “Connect” button :

    2011-09-01 11:11:12,237 [btpool0-14] ERROR org.red5.server.net.rtmpt.RTMPTServlet – Could not process message.
    java.lang.NullPointerException: null
    at org.apache.mina.core.buffer.AbstractIoBuffer.put(AbstractIoBuffer.java:1107) [mina-core-2.0.0-RC1.jar:na]
    at weborb.messaging.WebORBRTMPTHandler.rawBufferRecieved(WebORBRTMPTHandler.java:109) [weborb.jar:4.3.0]
    at weborb.messaging.WebORBRTMPTHandler.messageReceived(WebORBRTMPTHandler.java:133) [weborb.jar:4.3.0]
    at org.red5.server.net.rtmpt.RTMPTServlet.handleSend(RTMPTServlet.java:375) [red5.jar:na]
    at org.red5.server.net.rtmpt.RTMPTServlet.service(RTMPTServlet.java:457) [red5.jar:na]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) [servlet-api.jar:na]
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:367) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.handler.HandlerList.handle(HandlerList.java:49) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.Server.handle(Server.java:285) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:765) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:627) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:203) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:217) [jetty-6.1.0.jar:6.1.0]
    at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475) [jetty-util-6.1.0.jar:6.1.0]
    2011-09-01 11:11:16,985 [DefaultQuartzScheduler_Worker-10] WARN org.red5.server.net.rtmp.RTMPConnection – Closing RTMPTConnection from 88.206.132.158 : 46743 to 192.168.1.253 (in: 1537 out 0 ), with id 30432010 due to long handshake
    2011-09-01 11:11:17,481 [btpool0-14] WARN org.red5.server.net.rtmpt.RTMPTServlet – Null connection for clientId: 30432010
    2011-09-01 11:11:17,616 [btpool0-14] WARN org.red5.server.net.rtmpt.RTMPTServlet – Null connection for clientId: 30432010

    $regs ray

  • Hi Ray, we’ll have to look into it locally. Just to make sure I understand the use-case: you generated the mobile AIR project *with RTMPT support*, deployed it to iPad and simply tried establishing a connection. That’s when the error occurs.

  • Ray

    Mark,

    Exactly !

    Let me Know if you Need further Info .

    Thanks

    $regs ray

  • Barry

    Hi,

    I have the code working (thanks for the clear instructions), obviously the client code is generated from the download.

    Could you point me to the server-side souce code and config files (if any) please, particularly for the “Data Push from Server” example.

    Thanks,

    Barry

  • Ray

    Is there any progress ?
    I really want to know if This Kind off app is deployable on The physical iPad device to make it a “real usable Application” ?

    $regs ray

  • Hi Ray, we were able to duplicate the problem and are working on a fix.

  • Ray

    Thanks Mark,
    Will Be Patient and suspious to See this working.
    $regs ray

  • Please ping me at mark[at]themidnightcoders.com and I will set you up with a build.

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Spam protection by WP Captcha-Free