[Live-devel] Streaming with Sensoray 2250 encoded data

Jordan Shelley jps330 at psu.edu
Mon Jul 16 12:33:43 PDT 2007


I am sorry to have to bother everyone, but I have read through so much of
the archives and tried so many things, I would really like to get this
working so I need a little help if anyone has a moment.

 

I am trying to stream video from a platform that has a Sensoray 2250 encoder
installed on it. I have already verified that all of the hardware works and
that data produced from it can be streamed using the live library by doing
the following:

*         Created a process that grabs MPEG2 frames from the encoder and
dumps them to a named pipe

*         Modified testMPEG1or2VideoStreamer to look at this pipe for data,
and stream it to a specified IP address

*         Works fine, except that, as you can image, there is some major
delay in the video which I cannot have due to the nature of what this video
stream is being used for.

 

I decided to move on and write a FramedSource subclass that encapsulates my
encoder, and deliver this object directly to a MPEG1or2VideoRTPSink. I have
attached 3 files, my Encoder2250 class (subclass of FramedSource), its
header file, and my version of testMPEG1or2VideoStreamer (I have just been
changing the original test application).

 

The issue that is occurring is that after I start my version of
testMPEG1or2VideoStreamer I get the following output:

 

Beginning streaming...

Opening connection to Video Encoder

Setting video standard to NTSC

Setting video input

Setting Chip Settings

Beginning to read from file...

Right before scheduler...  

 

And that's it, it seems like it is sending data over the network at this
point, but it isn't. VLC doesn't see anything on an rtp connection on port
8888 and there isn't any network traffic. 

 

The thing that is very odd is that it seems like my implementation of
doGetNextFrame() is never executed since this printf statement in it's body
never shows up on the command line:

 

printf("Getting Frame...\n");

 

I don't understand why this is since all printf's from my encoder class's
constructor show up and no error messages show up from the live library. Is
the MPEG1or2VideoRTPSink not executing/seeing my implementation of
doGetNextFrame()? Is it some other problem? Thanks so much everyone.

 

-Jordan

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.live555.com/pipermail/live-devel/attachments/20070716/1830f586/attachment-0001.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Encoder2250.hh
Type: application/octet-stream
Size: 538 bytes
Desc: not available
Url : http://lists.live555.com/pipermail/live-devel/attachments/20070716/1830f586/attachment-0001.obj 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: Encoder2250.cpp
Url: http://lists.live555.com/pipermail/live-devel/attachments/20070716/1830f586/attachment-0002.ksh 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: testMPEG1or2VideoStreamer.cpp
Url: http://lists.live555.com/pipermail/live-devel/attachments/20070716/1830f586/attachment-0003.ksh 


More information about the live-devel mailing list