Recorded FLV files contain corrupt timestamps
Howdy -
I'm running FMS 4.5.3 r2005 on standard AWS Linux box. I'm recording the streams using NetStream.publish("appendWithGap") from a small custom Flash app running on IE+Windows.
Usually, the generated .flv file is fine. However, I've found a number of cases where the .flv file generated was corrupt. By using ffprobe -show_packets I'm able to see that the presentation timestamp (PTS) of sequential packets occasionally remain the same. This happens for both audio and video at times. For example, consider the output of the command:
$ ffprobe -show_packets saved.flv | egrep -e '(pts=|codec)'
codec_type=video
pts=0
codec_type=video
pts=0
codec_type=video
pts=0
codec_type=video
pts=0
codec_type=video
pts=0
codec_type=video
pts=0
...
codec_type=video
pts=3912
codec_type=video
pts=3944
codec_type=video
pts=3944
codec_type=video
pts=3944
codec_type=video
pts=3944
codec_type=video
pts=3944
codec_type=video
pts=3944
codec_type=video
pts=3944
codec_type=video
pts=3944
I really don't know much about the internals of the FLV format, but I assume that invalid timestamps like these make for a non-playable (corrupt) video.
Any idea what may cause FMS to record such a video?
What kind of information would be helpful to debug this?
Obviously, my client expects every video recorded to be one that an be played back, and so these corrupt videos are alarming to say the least.
FYI, due to privacy restrictions I can't share the recorded video without a signed NDA. If it would help, I can provide the entire output of ffprobe.
Thanks,
Ben
