Question
Prerecorded Video Stream Playback Problem
Hello everyone, I'm hoping that someone can help me out with
this problem.
I'm trying to stream a prerecorded video from FMS2 to the Flash Player that's about 4.5 seconds long, and what I'd really like to do is preload the whole video. The problem is that if I set the buffer length to longer than 4.5 seconds the video plays back in what looks to be fast forward. After the entire video has buffered, it begins playing but skips tons of frames and runs from the beginning to the end in less than a second. I'm thinking that maybe it's only displaying the keyframes that have been encoded into the flv using Flash Video Encoder. Does anyone know why this happens? Is it possible to buffer the entire duration of a video stream?
I've tried several other buffering strategies, including having a very small buffer (the result being that the video plays fine until the buffer runs out, then pauses while the buffer refills, and then basically skips the rest of the animation and ends up at the end.) I've also tried a double-buffering technique which seems more reliable, but if the buffer runs out half-way through the video the same thing happens as with the very small buffer - the video stops (which is fine) but then skips to the end (which is not fine.)
I really don't mind if the video pauses while the buffer is reloading, but it's very important for my animation that the video continue playing with smooth video from exactly where it left off.
I've never had any other streaming videos drop frames like this which is why I'm really puzzled. To add to the confusion, most of the time when it happens I don't even get the "NetStream.Buffer.Empty" message.
I can't tell if this is a buffering issue, a keyframe issue, an FPS issue or an FLV issue. If anyone has any suggestions or comments I would greatly appreciate it.
Thanks very much,
Graham
Maybe a progressive download is the way to go in this scenario?
I'm trying to stream a prerecorded video from FMS2 to the Flash Player that's about 4.5 seconds long, and what I'd really like to do is preload the whole video. The problem is that if I set the buffer length to longer than 4.5 seconds the video plays back in what looks to be fast forward. After the entire video has buffered, it begins playing but skips tons of frames and runs from the beginning to the end in less than a second. I'm thinking that maybe it's only displaying the keyframes that have been encoded into the flv using Flash Video Encoder. Does anyone know why this happens? Is it possible to buffer the entire duration of a video stream?
I've tried several other buffering strategies, including having a very small buffer (the result being that the video plays fine until the buffer runs out, then pauses while the buffer refills, and then basically skips the rest of the animation and ends up at the end.) I've also tried a double-buffering technique which seems more reliable, but if the buffer runs out half-way through the video the same thing happens as with the very small buffer - the video stops (which is fine) but then skips to the end (which is not fine.)
I really don't mind if the video pauses while the buffer is reloading, but it's very important for my animation that the video continue playing with smooth video from exactly where it left off.
I've never had any other streaming videos drop frames like this which is why I'm really puzzled. To add to the confusion, most of the time when it happens I don't even get the "NetStream.Buffer.Empty" message.
I can't tell if this is a buffering issue, a keyframe issue, an FPS issue or an FLV issue. If anyone has any suggestions or comments I would greatly appreciate it.
Thanks very much,
Graham
Maybe a progressive download is the way to go in this scenario?
