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