Foreword
I have been reading the ogg documents, particularly the framing part.
Of course I didn't understand much. But from what I did understand, an ogg file is made of a sequence of ogg page (64kB max). The "absolute granule position" determines the frame number of an ogg video in each page header.
Actual question
Suppose I have some large video files, e.g. security footages stored locally. Splitting the video files into ogg pages and store them in a web server's MySQL table with each page's corresponding timestamps. (Max Blob size of 64kB)
When requested to view the video from time A to time B, a php script would query the table and get the ogg pages in between that time span. And would increment the frame number from 0 to x and echo it out with proper mime type.
Is this plausible?
I'm absolutely not an expert about ogg files, but according to what you said, the video stream is in fact a sequence of ogg pages.
It seems rather interesting to store each page as a blob in your database, and dynamically reassemble those pages on request. As DevZerO suggested in a comment, you probably will have to reconstruct file header on request too.
From the client point of view, all will be like downloading a file (I don't think PHP is suitable for streaming?).
In fact I think this is a great idea, and if you achieve some preliminary steps on that way, I would be glad to have some feed-backs about it ;)