[Red5] Streaming real-time generated content (not capturedvideo)
Ignacio Lopez
ignacio.lopez at gmail.com
Tue Apr 1 05:22:03 PST 2008
Another approach would be to "record" a binary representation of the
drawings that your app is generating (ie a binary array of pixels, or
something like that), and then transmit that binary representation one by
one in the correct sequence to a Flash Player using red5....more like and
event notification system. But then, the Flash player should be capable of
regenerating the drawing using the binary representation....
On Mon, Mar 31, 2008 at 8:41 PM, Andy <bowljoman at hotmail.com> wrote:
> Hello,
>
>
> 'But how do you "draw" on it from, let's say, Java? (or even AS3 for that
> matter). Won't the output always go the standard graphical output (the
> screen?).'
>
> I use interprocess communication, either named pipes, shared memory, or
> simple socket and loop back connection.
>
> AS3 can connect to local host sockets. Java , I believe, can use both
> named pipes and sockets.
>
> Basically, think outside of the box for this....
>
> Your virtual device device will call you for an image, and you can choose
> whatever you want to convert to raw ARGB pixel bytes, and copy the buffer
> over to the other process.
>
> From what I understand, making a device driver for this in Linux is
> easier, but I do not know where to even begin.
>
> VFL 'video for Linux , from what I can tell, is probably 10 years behind
> Directshow.
>
> VFW 'video for windows' and ActiveMovie are no longer used for new
> applications by anyone and was replaced by Directshow long ago.
> It may be noted that the new windows API for multi-media does not nor will
> it replace 'capture drivers' in Directshow any time soon, or in any
> foreseeable future.
>
> Now, to provide you with a cross platform solution idea......
>
> 1. Create Java client that can connect to red5 and publish a stream.
> 2. Create a means to compress raw pixel buffers to a flash/red5 compatible
> format.
> 3. Using a timer, make as accurate nano-resolution-clock as you can make.
> 4. Using this timer, trigger image acquisition, compression , and then
> start issuing Video and Audio Events over rtmp.
>
> 5. Play the stream in a regular flash subscriber.
>
>
>
> -----Original Message-----
> *From:* red5-bounces at osflash.org [mailto:red5-bounces at osflash.org] *On
> Behalf Of *Rui Pereira
> *Sent:* Monday, March 31, 2008 4:08 PM
> *To:* red5 at osflash.org
> *Subject:* Re: [Red5] Streaming real-time generated content (not
> capturedvideo)
>
> Andy, thanks for the suggestion.
> I'm going to read a bit more into it to get the details, but at first
> thought, one thing I don't get: using a virtual capture device as a video
> source of a Flash broadcaster app is clear. But how do you "draw" on it
> from, let's say, Java? (or even AS3 for that matter). Won't the output
> always go the standard graphical output (the screen?).
>
> Btw, any suggestions for a similar approach in Linux?
>
> Cheers,
> Rui
>
> On Mon, Mar 31, 2008 at 11:47 PM, Andy <bowljoman at hotmail.com> wrote:
>
> > Hello,
> >
> >
> >
> > What I have done is created a windows WDM capture driver
> > 'video capture device' which is loaded to flash player for the broadcasting.
> >
> >
> >
> > I then feed it images which I compost in either another
> > flash application, c++ or whatever I happen to dream up via cross-process
> > communication (named pipe/socket).
> >
> >
> >
> > For instance, I can easily take a 'Video' object in AS3 and
> > draw the BitmapData into the WDM driver for compression and broadcast.
> >
> >
> >
> > I can point you to the base code that everyone uses for the
> > WDM driver if you want...
> >
> > 'Vcam'
> >
> >
> >
> > http://tmhare.mvps.org/
> >
> >
> >
> > In addition to that wonderful resource, I would advise
> > seeking answers to WDM programming and Virtual Device Streaming at this
> > level to...
> >
> >
> >
> >
> > http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=129&SiteID=1
> >
> >
> >
> > The direct show development forum.
> >
> >
> >
> > Andy Shaules
> >
> >
> >
> >
> >
> > -----Original Message-----
> > *From:* red5-bounces at osflash.org [mailto:red5-bounces at osflash.org] *On
> > Behalf Of *Rui Pereira
> > *Sent:* Monday, March 31, 2008 11:45 AM
> > *To:* red5 at osflash.org
> > *Subject:* [Red5] Streaming real-time generated content (not captured
> > video)
> >
> >
> >
> > Hi all,
> >
> > I just started playing around with Red5, so I apologize in advance if
> > I'm missing something...
> >
> > I went through the docs, got my first sample app running, and I
> > understand how to stream FLVs and even the ideas behind publishing a web
> > camera video stream from the Flash client to the server (so that others can
> > subscribe).
> >
> > But I have a different scenario in mind, and I'm stuck on how to do it.
> > Suppose I have a Java application that generates graphics and sound by
> > itself (for instance, using Java2D). I would like to publish this through
> > Red5 so that anyone with the Flash client could subscribe and watch it live.
> > How would this be achieved?
> >
> > I figure that there are two possibilities:
> >
> > 1) The code that generates the graphics and sound is built into the Red5
> > application directly
> > 2) Do it on a separate application, and publish it to Red using RTMP
> > (same way a Flash client would do using a webcam)
> >
> > For both approachs, the main problem is how to "video stream" something
> > that is not video in the first place (like FLVs or capture cards, etc...).
> > For instance, I know that FFMPEG can be used to generate FLV, but in this
> > case, I have no file to serve as input. And even if that was possible, how
> > to "grab" the output in such a way that could be streamed real time in Red5?
> >
> > For approach 2 (which seems better because it doesn't put extra load on
> > Red5 itself), the problem is that I can't seem to find any RTMP client
> > (except for Flash itself).
> >
> > Any tips or ideas would be great.
> >
> > (Btw, congratulations on Red5 - this is one cool project ;)
> >
> > Thanks,
> > Rui
> >
> > _______________________________________________
> > Red5 mailing list
> > Red5 at osflash.org
> > http://osflash.org/mailman/listinfo/red5_osflash.org
> >
> >
>
> _______________________________________________
> Red5 mailing list
> Red5 at osflash.org
> http://osflash.org/mailman/listinfo/red5_osflash.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://osflash.org/pipermail/red5_osflash.org/attachments/20080401/e2438969/attachment-0001.html
More information about the Red5
mailing list