Re: File_Vorbis Latest... [FOLLOWUP]

From: Date: Wed, 13 Aug 2003 12:17:59 +0000
Subject: Re: File_Vorbis Latest... [FOLLOWUP]
References: 1  Groups: php.pear.dev 
Request: Send a blank email to pear-dev+get-19673@lists.php.net to get a copy of this message
On 13 Aug 2003 at 12:22, David Grant wrote: > > Using OGG_STREAM_VORBIS etc. internally is a good point. Maybe for > > decision if that stream is audio or video you could simply make up > > an array as a property in the class? Like > > > > $streamtypes=array( > > 'audio' => array(OGG_STREAM_VORBIS, OGG_STREAM_SPEEX), > > 'video' => array(OGG_STREAM_THEORA) > > ); > > > Using lowercase internally is really the best solution. I'd suggest > > to also avoid using spaces (substitute by an underscore) or any > > other "special characters" (like slashes etc.). Maybe you could make > > up an additional lookup-table which uses your constants as keys for > > lookup of the actual names (with upper-lower-class and also maybe > > with chars like spaces, slashes etc.) if a programmer wants to get > > the "correct names" for display on his webpages. > > I'm thinking back to your original point about each stream type having > it's own details. Perhaps I should've not been so hasty to reject it. > > Perhaps an array in the following format might be an idea: > > Array ( > OGG_STREAM_VORBIS => Array ( > 'pattern' => "vorbis", > 'mime' = "application/ogg", > 'type' = "audio", > ) > ) > > I'll hack something together this evening. But 'mime'? Are you sure? The stream itself doesn't have a real "mime"-type - only the container. > >> > While designing File_Ogg: > >> > a) be sure to implement some return for "stream-type unknown" b) > >> > maybe tell the type of a stream (e.g. theora, speex, ...) even > >> > though you haven't implemented them. This would allow full > >> > scanning an ogg container without actually being able to retrieve > >> > streaminfo for every stream. > >> > >> a) Shouldn't this throw an error? > > An error in an array? Hmm ... you could probably return an object of > > type PEAR_Error, okay - but scanning through an ogg container and > > finding one (of many) streams that is unknown doesn't necessarily > > mean that a real "error" occured, does it? > > I see. I misunderstood. So you were thinking along the lines of a > seperate OGG_STREAM_UNKNOWN constant? I thought you meant that the > user would request an unknown stream, in which case an error should > definitely be raised. I just meant that when you scan an ogg-container for streams there might be one stream (future implementation) you can digest from the others but which your class doesn't know yet. In this situation an OGG_STREAM_UNKNOWN would be useful and it should be taken into consideration at design-time. But as you proposed: At least if it's possible to digest flac, speex, theora etc. as well (but not retrieve information from those streams yet) I'd love to see a way to at least say which of these streams are in the container. Stefan

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