Re: File_Vorbis Latest... [FOLLOWUP]

From: Date: Wed, 13 Aug 2003 08:08:52 +0000
Subject: Re: File_Vorbis Latest... [FOLLOWUP]
References: 1 2  Groups: php.pear.dev 
Request: Send a blank email to pear-dev+get-19640@lists.php.net to get a copy of this message
On 2003.08.13 01:02, Stefan Neufeind wrote:
Does your class take multiple "streams" in consideration yet? (If yes, I didn't say anything *g*)
Nope, not yet. It is (currently) based on the concept of a single stream.
Maybe it would be wise to also implement functions in the ogg-class to "read streaminfos from file XXX". This way File_Ogg might recognize e.g. an audio-stream (to be more specific: vorbis in your case - in contrast to speex) and get information from that stream using File_Ogg_Vorbis.
So File_Ogg would (by default) read ALL data streams in the Ogg container (by passing down to implementing classes), whereas File_Ogg_Vorbis (when called directly) would read only Vorbis streams when called from anywhere else? Naturally, if more than one specific type of stream exists, the user should be given the option of which one they would like to retrieve.
Maybe if you use File_Ogg the return could be something like Array( filename, filesize streams=Array( [0]=Array(
          type="audio"
          encoding="vorbis"
          ...
              )
) )
I assume that File_Ogg_Vorbis would return the same, but with only type="audio" and encoding="vorbis" elements, right? I think the user should be given the option to examine the Ogg container, and extract only what they want, e.g. listStreams() might return: Array (
    [0] = "vorbis"
    [1] = "tarkin"
    [2] = "vorbis"
    ...
) I'm not sure if it is necessary to include the medium, as each encoding type only supports either audio or video.
This way you could as well support multiple audio/video-streams.
This is a far better way of looking at Ogg (and provides far more work :P), so thanks again for your proposals! Regards, David

« previous php.pear.dev (#19640) next »