Thread: RE: [GD-Windows] MP3 Playback under Windows
Brought to you by:
vexxed72
From: Brian H. <pu...@py...> - 2001-09-24 20:00:12
|
> Or you could use Ogg Vorbis which works fine for us. There > should be sample apps available at http://www.vorbis.com. I've just started looking into this today, oddly enough. What are your experiences with it (good, bad, in-between)? So far I'm finding the documentation lacking, so I'm just going off of the encoder sample file (*shudder*). Are any of your shipping products using it? Brian |
From: Brian H. <pu...@py...> - 2001-09-24 21:45:48
|
> basically boils down to calling ov_open and ov_read. You You're using their file handling stuff? Doesn't that kind of mess up the ability to play data out of archived pak files? I was planning on loading a full song into memory then decompress sections on the fly while playing into a streaming sound buffer. Brian |
From: Daniel V. <vo...@ep...> - 2001-09-24 22:13:42
|
> You're using their file handling stuff? Doesn't that kind of mess up > the ability to play data out of archived pak files? I think you are able to tell ov_open where you want to start in the file (after all you have to pass in an already opened file pointer) and it should know how big the stream is so in theory it should work though I haven't tested it myself. Jack, heeeeeeeeeeeeeeelp :) > I was planning on loading a full song into memory then decompress > sections on the fly while playing into a streaming sound buffer. I'm not sure whether you are able to use vorbisfile in this case. At the moment I'm streaming from disk in a seperate thread so using vorbisfile was a no- brainer. - Daniel Vogel, Programmer, Epic Games Inc. |
From: Brian H. <pu...@py...> - 2001-09-25 00:30:18
|
> I think you are able to tell ov_open where you want to start > in the file (after all you have to pass in an already opened > file pointer) and it should know how big the stream is so in > theory it should work though I haven't tested it myself. What I meant is that FILE assumes a regular streamed file a la fopen/fread style of operation. Most games eventually ship with a single large archive file (sometimes compressed) such as the various PAK, PK2, PK3 and WAD files that id has used. Unless you decompress the data into the file system at installation, you're not going to be able to use a regular FILE oriented interface to stream data. Now, the _right_ thing that Ogg Vorbis should have done is to use a callback system instead of manipulating a FILE pointer directly. That way you could stream data out of any source -- network, filesystem or archive file -- transparently to the decoding layer. Brian |
From: Daniel V. <vo...@ep...> - 2001-09-25 00:53:15
|
> Now, the _right_ thing that Ogg Vorbis should have done is to use a > callback system instead of manipulating a FILE pointer directly. http://www.xiph.org/ogg/vorbis/doc/vorbisfile/ov_open_callbacks.html If you want to use them Ogg Vorbis actually provides callbacks that can be used for all sorts of things :) I guess to get real answers you should try the vorbis mailing lists as the people there know what they are talking about (as opposed to me ;)). - Daniel Vogel, Programmer, Epic Games Inc. |
From: Brian H. <pu...@py...> - 2001-09-25 00:59:06
|
DOH! How the hell did I miss that?! One thing I will say -- their documentation is seriously in need of some work. =/ Brian |
From: Daniel V. <vo...@ep...> - 2001-09-24 21:33:45
|
> I've just started looking into this today, oddly enough. What are your > experiences with it (good, bad, in-between)? So far I'm finding the > documentation lacking, so I'm just going off of the encoder sample file > (*shudder*). The examples and documentations aren't the best but it didn't take much code to get it up and running smoothly. It basically boils down to calling ov_open and ov_read. You should contact Jack Moffit [ja...@xi...] or Monty [xip...@xi...] when you need help. Jack helped me fix some (very) stupid bugs in my code when I integrated it into our engine :) http://www.xiph.org/ogg/vorbis/doc/vorbisfile/example.html is very close to what my implementation looks like. > Are any of your shipping products using it? We haven't shipped a title using it and neither have any of our licensees AFAIK. Support for it is currently in the engine and at the moment we are happy with it. Not saying that this might not change in the future but so far we haven't run into any problems using it for streaming background music. Operation Flashpoint is a shipping title that uses Ogg Vorbis more extensively IIRC. - Daniel Vogel, Programmer, Epic Games Inc. |