[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnash-dev] iPlayer using gnash

From: Rob Savoye
Subject: Re: [Gnash-dev] iPlayer using gnash
Date: Sat, 12 Sep 2009 19:00:24 -0600
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv: Gecko/20090814 Fedora/3.0-2.6.b3.fc11 Thunderbird/3.0b3

On 09/11/09 08:55, Matthew Spencer wrote:

Firstly, I am getting a huge number of 'UNIMPLEMENTED' messages in the log
for 'LocalConnection.send' of the form:
   13979:1] 14:46:44: DEBUG:  ***** The send function is called *****
   13979:1] 14:46:44: DEBUG: STOP! No memory allocated!!
   13979:1] 14:46:44: UNIMPLEMENTED: LocalConnection.send unimplemented
[string:emp], [string:traceIt], [string:{72} 14:46:44 [system_event]],
[string:Confirm IplayerLiveStats sent]

LocalConnection::send() was mostly implemented by one of the student interns that worked on Gnash this summer. The part that needed to be finished was having the notifications work so a movie being player can get an event when data is written.

This looks to me to be a debug interface in the swf file that is not
currently connected to anything, my feeling is that this is safe to ignore
for the moment?

Very likely, yes, as the real streaming doesn't have anything to do with LocalConnection.

The second question.  YouTube streaming seems to be working fine (although
not through the XL interface at  Looking at the logs again,
it seems that youtube is using http rather than rtmp streaming.  I notice

Yes, YouTube just uses HTTP, although at one time we noticed they were testing RTMP support for a pay-for-view service. RTMP is considered a form of DRM for streaming. (or was... :-) )

there is a lot of rtmp code in place in gnash, but an rtmp packet is never
sent.  Looking at the code in NetConnection_as.cpp, I also note that there
is only an HTTPRemotingHandler created (line 846), if I want to get RTMP
working, do I need to implement an RTMPRemotingHandler interface?

I can send you my version of NetConnection_as.cpp, which has rewritten RTMPT support, and most of the client side of RTMP. Al the low level code is done, tested, and works. I just hadn't had time to glue it all into trunk. Remoting isn't really used for just RTMP based streaming like the BBC, that's more for video conferencing types of things. I recently checked in most of my latest RTMP improvements a few days ago, including an improved client side API, so NetConnection_as.cpp can now be simplified somewhat. At one time I had utilities/rtmpget working for the BBC. All you really need is the initial handshake and NetConnection packets, (look in libnet/rtmp_client.*), and sending the NetStream::play() INVOKE, also already supported by the client side API.

All the RTMP code is in libamf and libnet, and works fine. Test cases are in testsuite/libamf.all, libnet.all, and network.all. The Network.all tests require a working RTMP server, Cygnal, Red5, or FMS all work fine. I was really hoping to get all this done by the release, but working with the student interns took more of my time than I had hoped it would.

I may be going on vacation after the release, so for better response, hit me with questions now, :-) I'm working on the release, and hope to push it out next week.

        - rob -

reply via email to

[Prev in Thread] Current Thread [Next in Thread]