Il 2016-04-08 21:20 Ross Finlayson ha scritto:
Unfortunately I am a bit confused by your explanation of what you are
trying to do.

From what I can tell, you are trying to receive a H.264 video
RTSP/RTP stream - using a RTSP client -  then, somehow, convert this
H.264 video stream into a MPEG Transport Stream.  What you then want
to do with the resulting Transport Stream (play it? re-stream it? just
save it to a file?) is not clear to me.

In any case, you should start by using our demo applications,
*unmodified*.  Only once you have gotten these to work should you
think about modifying code.

I suggest starting by doing the following:
1/ Run “openRTSP” to receive your H.264 video RTSP/RTP stream.  This
will write the resulting H.264 video data into a file, whose name
begins with “video-“.
2/ Rename this video file to “in.264”
3/ Run our “testH264VideoToTransportStream” demo application.  This
should give you a MPEG Transport Stream file named “out.ts”.

If you do all of this, is the file “out.ts” useful to you?  (What do
you want to do with this?)

If (and only if) you reach this point successfully, we can then talk
about how you can streamline steps 1/ to 3/ by making a (small)
modification to our “testH264VideoToTransportStream” code. As


Ross Finlayson
Live Networks, Inc.
http://www.live555.com/


_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel



Thank you for the quick reply. That is correct, I am trying to receive a H.264 video RTSP/RTP stream - using a RTSP client - then, I convert this H.264 video stream into a MPEG Transport Stream. Successively, I would like to send those packets via TCP to a server as live streaming but primarily I want to make sure I can play the video. Therefore, what a would like to do is to output the packet to stdout and pipe them into vlc like so: ./testRTSPClient | vlc -. Your suggestions are also correct, I did all the three points you mentioned already and all of them worked fine, however, I absolutely need to work with the frame directly and not via files or pipes. I managed to modify the testRTSPClient.cpp in order to obtain MPEG2-TS packets in the array fReceiveBuffer correctly but when I output them to stdout and pipe them to vlc there is a problem, vlc do not recognize the stream. Without modifying the testRTSPClient and by putting the header \0\0\0\1 in front of each frame I am able to play the stream with VLC without problems.

Hope the question is more clear.
Bests
Leonardo Citraro


_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

Reply via email to