Seek vs. play

I have a custom video player I’ve built and have been adding a seek function to it lately.

I ran into an issue where seeking backward in the timeline stalled my timecode. I could seek forward and my timecode updated as expected, but seeking backward, my timecode would stall at the current time before the seek was requested.

I run a function on netStream.time() in order to set my timecode.

This is a simplified version of how I solved the issue:

var stream:NetStream = new NetStream();;;

function streamStatus(evt:NetStatusEvent):void
	switch (
		case "NetStream.Seek.Notify":, seekToTime);

In a nutshell, I use seek to initialize the change in time, listen for “NetStream.Seek.Notify”, then tell the stream to play the same file at the requested seek time.

It works like a charm. However, I’m curious if there is a drawback to doing this? Also, seek only moves to keyframes. Play seems to be able to move directly to a time. Is this also true?