I have this problem when I want to "skip" to a position while streaming an encrypted video
So what I have is:
An http streaming server (local, running on the Android device) the native android Media Player RC4 encryption utility
Basically, I'm storing an Encrypted video in the sdcard, and i want to stream it to the media player using my http streaming server. The server already does the encryption on-the-fly, which actually works, by transforming the bytes using the RC4 encryption utility before writing it out to the OutputStream.
Encrypting the file is no problem - just run the whole file against the generated bits of the encryption utility - which I just do over when trying to playback the video. The problem is when I want to "seek to" a position in the video, for example i want to view the middle part of a 2-hr movie. What I'm currently doing, which works, albeit very slowly, is to reset the RC4 encryption utility, feed it an amount equal to the duration of which i jumped to in the video.
Pardon me if I don't sound very clear in my explanation here, but if you actually worked with RC4 encryption with streaming, you should have encountered the same problem.
So the question is, is it possible, and if it is, how can I, "seek to" a position in my RC4 bit generator without passing through all the unnecessary bytes that I just skipped?
Each video is about 500mb or so in size, so if I seek to the near the end of the video, that's around 500,000,000 useless bit iterations to do before being able to stream the correct data.