|
|
Up |
|
|
  |
Author: Sascha RetzkiSascha Retzki Date: Sep 15, 2006 03:40
Hi fans,
I have written an OGG/Vorbis player and put it online at:
/n/sources/contrib/sascharetzki/src/ls-dj.tgz
Get your soundblaster 16, dust it, and bind #A! Let's get this party started.
You may find it dirty inside, yes it is.
|
| |
|
| | 11 Comments |
|
  |
Author: Russ CoxRuss Cox Date: Sep 15, 2006 05:33
Where does one find the vorbis library port?
On 9/15/06, Sascha Retzki wrote:
>
> Hi fans,
>
> I have written an OGG/Vorbis player and put it online at:
>
> /n/sources/contrib/sascharetzki/src/ls-dj.tgz
>
> Get your soundblaster 16, dust it, and bind #A! Let's get this party started.
>
>
> You may find it dirty inside, yes it is.
>
>
|
| |
|
| | 1 Comment |
|
  |
Author: Sascha RetzkiSascha Retzki Date: Sep 15, 2006 05:41
> Where does one find the vorbis library port?
There are two I am aware of, cnielsen got the libraries at sources, and anyrhine got them in the Internets. ( http://www.cs.helsinki.fi/u/anyrhine/p9/ ). I used anyrhines for development and testing, and put some notes about the installation process of the libraries in the file '9OGG-Vorbis' in ls-dj.tgz.
>
> On 9/15/06, Sascha Retzki wrote:
>>
>> Hi fans,
>>
>> I have written an OGG/Vorbis player and put it online at:
>>
>> /n/sources/contrib/sascharetzki/src/ls-dj.tgz
>>
>> Get your soundblaster 16, dust it, and bind #A! Let's get this party started.
>>
>>
>> You may find it dirty inside, yes it is.
>>
>>
|
| |
| no comments |
|
  |
Author: erik quanstromerik quanstrom Date: Sep 16, 2006 00:22
you may get by adding this line:
/n/sources/plan9//sys/src/cmd/file.c:8011,808 - file.c:800,801
".\\\"", "troff input", 3, "text/plain",
".de", "troff input", 3, "text/plain",
".if", "troff input", 3, "text/plain",
".nr", "troff input", 3, "text/plain",
".tr", "troff input", 3, "text/plain",
+ "OggS", "ogg", 4, "application/ogg",
0,0,0,0
};
|
| |
| 8 Comments |
|
  |
Author: Sascha RetzkiSascha Retzki Date: Sep 16, 2006 00:29
> you may get by adding this line:
Another problem is that OGG is just a container format. The file may not be a single vorbis stream, but several, or a video stream, etc. Container formats are pretty neat - at least that one tells you what is in the OGG. Your code will just tell the user that it is really an ogg, but not much more :(
>
> /n/sources/plan9//sys/src/cmd/file.c:8011,808 - file.c:800,801
> ".\\\"", "troff input", 3, "text/plain",
> ".de", "troff input", 3, "text/plain",
> ".if", "troff input", 3, "text/plain",
> ".nr", "troff input", 3, "text/plain",
> ".tr", "troff input", 3, "text/plain",
> + "OggS", "ogg", 4, "application/ogg",
> 0,0,0,0
> };
|
| |
| 5 Comments |
|
  |
Author: Skip TavakkolianSkip Tavakkolian Date: Sep 16, 2006 00:51
>> you may get by adding this line:
>
> Another problem is that OGG is just a container format. The file may not be a single vorbis stream, but several, or a video stream, etc. Container formats are pretty neat - at least that one tells you what is in the OGG. Your code will just tell the user that it is really an ogg, but not much more :(
there are many (asf, quicktime, realmedia). each has a mime type, but
the mime types do not identify the internal contents. it is enough to
decide what handler to give it to. that's adequate for file.
|
| |
| no comments |
|
  |
Author: erik quanstromerik quanstrom Date: Sep 16, 2006 01:13
sure you could add a new function to file to handle the 15 or so codecs
that ogg supports, but i'm not sure you gain anything. do you expect to
have a lot of non-audio ogg that your player can't handle?
i disagree with skip. i don't see the advantage to container formats.
they mostly encourage yet-another-(audio|video)-codex with some
neeto property that is inevitably less useful than standardization.
- erik
|
| |
| 3 Comments |
|
  |
Author: Skip TavakkolianSkip Tavakkolian Date: Sep 16, 2006 01:48
> i disagree with skip. i don't see the advantage to container formats.
> they mostly encourage yet-another-(audio|video)-codex with some
> neeto property that is inevitably less useful than standardization.
how did i encourage that?
it's reasonable for 'file' to return something one can map to a
handler, that can further crack it open. containers may be ugly
but they're not the real problem - most if not all are described
somewhere. the main issues is proprietary codecs.
proprietary formats are marketing devices to protect turfs.
|
| |
| 1 Comment |
|
  |
Author: Harri HaatajaHarri Haataja Date: Sep 16, 2006 02:03
On Sat, Sep 16, 2006 at 03:13:12AM -0500, erik quanstrom wrote:
> sure you could add a new function to file to handle the 15 or so
> codecs that ogg supports, but i'm not sure you gain anything. do you
> expect to have a lot of non-audio ogg that your player can't handle?
>
> i disagree with skip. i don't see the advantage to container formats.
> they mostly encourage yet-another-(audio|video)-codex with some
> neeto property that is inevitably less useful than standardization.
There's also .ogm[0] and .spx[1] that I believe are the same container
but with different internals. FLAC[2] is also seen in ogg wrappers as
well as in its own container[3].
Then there's also Matroska[4] that has .mkv / .mka split. I've only seen
that used as a "better .avi/.asf/.mov".
|
| Show full article (1.63Kb) |
| no comments |
|
  |
|
|
  |
Author: Russ CoxRuss Cox Date: Sep 16, 2006 07:27
I think you're overreacting. Since one must use the
Ogg library to play the files anyway, it is entirely reasonable
to ask the Ogg library whether it is capable of playing
the file, rather than shelling out to some external
program that might or might not make the same
decisions.
The suggestion to use file(1) instead was predicated
on ov_open somehow cozying up to stdio and making
it break, an accusation that has turned out to be false.
In reality ov_open is perfectly well documented
( http://www.xiph.org/vorbis/doc/vorbisfile/ov_open.html)
and does exactly what is called for without any extra work.
Just use that.
Also, the MIME type should be application/x-ogg unless
ogg has actually been registered with the MIME people.
Russ
|
| |
| 1 Comment |
|
|
|
|