How to keep timestamp in the file recorded from RTSP source

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

How to keep timestamp in the file recorded from RTSP source

Laurence
Hi all,
I create two applications for "record files from ipcam", and "play the files". The two application are worked.
The pipelines are as follows:
record: rtspsrc ! identity ! rtph264depay ! filesink
play:    filesrc ! typefind ! rtph264pay ! identity ! fakesink

In the "record" application, I use "GST_BUFFER_TIMESTAMP()","GST_BUFFER_DURATION", "GST_BUFFER_TIMESTAMP_IS_VALID","GST_BUFFER_GST_BUFFER_DURATION_IS_VALID" in identity, and print messages as follows:
...
timestamp:3218 valid:1 duration:4294967295 valid:0
timestamp:3218 valid:1 duration:4294967295 valid:0
timestamp:3333 valid:1 duration:4294967295 valid:0
timestamp:3333 valid:1 duration:4294967295 valid:0
timestamp:3333 valid:1 duration:4294967295 valid:0
...
(print format: timestamp,duration=> unsigned int, valid=>int)

It looks like the value of timestamp is vaild,but the value of duration is invaild.

Then,I use the "play" application to play the file, and print messages in identity. The messages are as follows:
...
timestamp:4294967295 valid:0 duration:4294967295 valid:0
timestamp:4294967295 valid:0 duration:4294967295 valid:0
timestamp:4294967295 valid:0 duration:4294967295 valid:0
timestamp:4294967295 valid:0 duration:4294967295 valid:0
timestamp:4294967295 valid:0 duration:4294967295 valid:0
timestamp:4294967295 valid:0 duration:4294967295 valid:0
...

In the recorded file,timestamp and duration are invalid.

I have two questions:
1. In the "record" application,timestamp is existed, but I can't read it in "play" application. I guess that "rtph264depay" don't keep timestamp, so there is no timestamp in the recorded file. What do you think of this?
2. I would like to write a "timestamp control function" for recorded files playing. So I have to get timestamp in the recorded file. Is there any way to keep timestamp in the recorded file?

Thanks in advance!
Reply | Threaded
Open this post in threaded view
|

Re: How to keep timestamp in the file recorded from RTSP source

Marco Ballesio
Hi,

On Mon, Oct 25, 2010 at 12:01 PM, Laurence <[hidden email]> wrote:

Hi all,
I create two applications for "record files from ipcam", and "play the
files". The two application are worked.
The pipelines are as follows:
record: rtspsrc ! identity ! rtph264depay ! filesink

I'd suggest you to try with a muxer between the depayloader and the sink (e.g. mp4mux).

Regards
 
play:    filesrc ! typefind ! rtph264pay ! identity ! fakesink

In the "record" application, I use
"GST_BUFFER_TIMESTAMP()","GST_BUFFER_DURATION",
"GST_BUFFER_TIMESTAMP_IS_VALID","GST_BUFFER_GST_BUFFER_DURATION_IS_VALID" in
identity, and print messages as follows:
...
timestamp:3218 valid:1 duration:4294967295 valid:0
timestamp:3218 valid:1 duration:4294967295 valid:0
timestamp:3333 valid:1 duration:4294967295 valid:0
timestamp:3333 valid:1 duration:4294967295 valid:0
timestamp:3333 valid:1 duration:4294967295 valid:0
...
(print format: timestamp,duration=> unsigned int, valid=>int)

It looks like the value of timestamp is vaild,but the value of duration is
invaild.

Then,I use the "play" application to play the file, and print messages in
identity. The messages are as follows:
...
timestamp:4294967295 valid:0 duration:4294967295 valid:0
timestamp:4294967295 valid:0 duration:4294967295 valid:0
timestamp:4294967295 valid:0 duration:4294967295 valid:0
timestamp:4294967295 valid:0 duration:4294967295 valid:0
timestamp:4294967295 valid:0 duration:4294967295 valid:0
timestamp:4294967295 valid:0 duration:4294967295 valid:0
...

In the recorded file,timestamp and duration are invalid.

I have two questions:
1. In the "record" application,timestamp is existed, but I can't read it in
"play" application. I guess that "rtph264depay" don't keep timestamp, so
there is no timestamp in the recorded file. What do you think of this?
2. I would like to write a "timestamp control function" for recorded files
playing. So I have to get timestamp in the recorded file. Is there any way
to keep timestamp in the recorded file?

Thanks in advance!
--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/How-to-keep-timestamp-in-the-file-recorded-from-RTSP-source-tp3009950p3009950.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Nokia and AT&T present the 2010 Calling All Innovators-North America contest
Create new apps & games for the Nokia N8 for consumers in  U.S. and Canada
$10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing
Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store
http://p.sf.net/sfu/nokia-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel


------------------------------------------------------------------------------
Nokia and AT&T present the 2010 Calling All Innovators-North America contest
Create new apps & games for the Nokia N8 for consumers in  U.S. and Canada
$10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing
Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store
http://p.sf.net/sfu/nokia-dev2dev
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel