[Live-devel] Receiving MPEG4 stream from a video server and transport they out

Always Chen always.chen at gmail.com
Thu Oct 16 12:27:35 PDT 2008


Dear Ross, all,
  I'm new to live555. I have a video server that it can stream out video
data and the stream's format is use mpeg4. I can receive stream from that
device using openRTSP. And I also can see mpeg4 video in VLC using
testOnDemandRTSPServer. Now, I want to receive stream from the video server
using live555. And I also want to have a software video server. The software
video server's income stream is come from receive process. I already read
FAQ, but I still haven't any idea to do this. So, I try to find the answer
at the live-devel mail list and find some information. But I still have some
problem as follow:
  1. When I try to use the command as follow:openRTSP -s 0 -v rtsp://
admin:12345678 at 192.0.0.10:6000/udpstream | testOnDemandRTSPServer
     I can saw the video using VLC at other computer. But the video quality
is so bad enough(lots of mosaic, lose lots of frame, delay etc.).
     How should I improve the problem?
  2. I try to modified testMPEG4VideoStreamer and merge it into openRTSP.
Modifed place as follow:
          void play(void* clientData) {
               MediaSubsessionIterator MSIterator(*ClientMediaSession);
               MediaSubsession *ClientMediaSubsession = NULL;

               ClientMediaSubsession = MSIterator.next();
               FramedSource* videoES = ClientMediaSubsession->readSource();

               // Create a framer for the Video Elementary Stream:
               videoSource = MPEG4VideoStreamFramer::createNew(*env,
videoES);

               // Finally, start playing:
               *env << "Beginning to read from file...\n";
               videoSink->startPlaying(*videoSource, afterPlaying,
videoSink);
          }
     When I executed it. It had show lots of error message as follow:
          MPEG4VideoStreamParser::parseVideoObjectPlane(): Saw unexpected
code 000001E0
          MPEG4VideoStreamParser::analyzeVOLHeader(): marker_bit not set!
     And Sometime had error message as follow:
          MPEG4VideoStreamParser::parseVideoObjectPlane(): This appears to
be a 'short video header', which we current don't support
     Or
          MultiFramedRTPSource::doGetNextFrame1(): The total received frame
size exceeds the client's buffer size (152).  464 bytes of trailing data
will be dropped!
     I also used VLC debug mode to connect my modified program at other
computer. I can saw the first picture, but I can't saw any more on the next.
VLC's log message as follow:
          avcodec warning: cannot decode one frame (283 bytes)
          main warning: late picture skipped (138772)
          avcodec warning: cannot decode one frame (283 bytes)
          main warning: late picture skipped (231508)
          avcodec warning: cannot decode one frame (282 bytes)
          main warning: late picture skipped (371951)
          main warning: late picture skipped (462513)
          main warning: late picture skipped (917404)
          main warning: late picture skipped (97524)
          avcodec warning: cannot decode one frame (288 bytes)
          avcodec warning: cannot decode one frame (98 bytes)
          avcodec warning: cannot decode one frame (250 bytes)
          avcodec warning: cannot decode one frame (98 bytes)
          avcodec warning: cannot decode one frame (282 bytes)
          main warning: late picture skipped (1095917)
          avcodec warning: cannot decode one frame (283 bytes)
          main warning: late picture skipped (136277)
          main warning: late picture skipped (127051)
          avcodec warning: cannot decode one frame (283 bytes)
          avcodec warning: cannot decode one frame (282 bytes)
          live555 debug: tk->rtpSource->hasBeenSynchronizedUsingRTCP()
          avcodec warning: cannot decode one frame (98 bytes)
     What's problem in the process? And how should I fix the problem?

     Thanks for your help.
-- 
Best regards,

Always Chen
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20081017/53e9d89a/attachment.html>


More information about the live-devel mailing list