[omniORB] CORBA A/V Strems service - how to

Gary Duzan gduzan@bbn.com
Wed Apr 2 17:48:02 2003


In Message <Pine.LNX.4.51.0304020927310.14211@skipstjori.ifi.uio.no> ,
   Doru-Catalin Togea <doru-cat@ifi.uio.no> wrote:

=>Hi!
=>
=>I am reading the Audio / Video Strems Specification from the OMG group. It
=>lists what they call the "Complete OMG IDL" in Appendix A. I wonder though
=>how to compile and use it.
=>
=>1) Is it OK to have it all in a ".idl" file? The most obvious name
=>would be "AVStreams.idl" but:

   TAO has AVStreams.idl. You may need to add something like

TAO_ORBSVCS+=AV

to your platform_macros.GNU file to get it compiled.

=>2) Why do they have  an "#include AVStreams.idl" just about halfway in
=>their listing?

   It looks like they were assuming the "Full Profile" IDL would
be in a separate file which would need the definitions from the main
IDL file. It is a separate compliance point, so it sort of makes sense.
TAO's AVStreams.idl only has the AVStreams module, not the AVStreams_Full
module. omniORB doesn't have either one.

=>3) The first thing they do in the specification is to import
=>"PropertyService.idl". Who defined this file and is it available with
=>every ORB?

   TAO and omniORB both call it "CosPropertyService.idl".

=>4) Are there any examples of distributed applications which use the
=>A/V Stream module with TAO ORB / OmniORB respectively? Preferably
=>explained tutorials.

   We do some video and still image streaming with TAO's AVStreams
support, which you can read about and fetch from here:

  http://www.dist-systems.bbn.com/projects/AIRES/UAV/index.shtml

Note that this also uses some TAO extensions to facilitate the actual data
transport since the AVStreams specification only talks about negotiating
the connection, not the details of setting it up and using it. omniORB
doesn't have an AVStreams implementation, so you'd have to build it
from scratch.

   BTW, I don't see this as a particular fault of omniORB. My personal
sense, which seemed to be shared by the majority of the folks at the
recent OMG meeting, is that nobody really likes the A/V Streaming spec,
so nobody implements it. It specifies too many of the wrong things and not
enough of the right ones, which makes it a pain to work with. If you are
interested in this area, you might want to keep an eye on developments
in "Streams for CCM", which is still in the Draft RFP stage, but might
provide a better API.

  http://www.omg.org/cgi-bin/doc?mars/03-01-16.pdf
  http://www.omg.org/cgi-bin/doc?mars/03-01-17.pdf

   (As an aside, omniORB will need to grow at least some basic
ValueType support before it will be able to play in the CCM arena,
since CCM events are ValueTypes.)

=>5) Is it OK to cross-post to these groups? I need answers for both ORBs
=>not just any one of them. Should I rather start a thread in each group?

   I'm not an autority on the matter, but I don't see why questions
which address both can't be cross-posted. Topics specific to one or
the other should be kept to the separate lists, of course.

					Gary Duzan
					BBN Technologies
					A Verizon Company