Hello everybody, I've put some functions/modifications into the Ogg Vorbis encoder source. (The new functions are in the first 500 lines of the oggenc.c, some definitions are in the oggenc.h) I hope, you can use it. Here is the full source (same source on 3 locations): http://www.geocities.com/mpxplay/oggenc.zip http://www.tar.hu/mpxplay/oggenc.zip http://www.extra.hu/galileog/oggenc.zip what's new or modified: - wav-header and wav-data-len handling - multichannel encoding - header update (after encoding) with an average bitrate value (into the vi.bitrate_nominal variable) - 64bit floating point precision (maybe you say that it is not important, but I'd like to compare with the 32bit verision) what's missing: - stream support (stdin/stdout) And I have a small request too: If somebody has a little time, please make an executable from this source with the same compiler witch was used to the beta3 encoder (for Win9x), because it seems my Watcom C compiler doesn't like some parts of the encoder (but the decoder works properly), and the compiled program makes a bad quality ogg file (sounds like a bad mp3 file (underwater effect) on 128 kbit/s) ... And please send that compiled program (exe) to me... incerely Attila Padar ps. I hope the program doesn't contain too many bugs --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to 'vorbis-dev-request@xiph.org' containing only the word 'unsubscribe' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
At 12:48 AM 12/11/00 +0100, you wrote:>Hello everybody, >I've put some functions/modifications into the Ogg Vorbis encoder source. >(The new functions are in the first 500 lines of the oggenc.c, some >definitions > are in the oggenc.h) >I hope, you can use it.This is obviously unusable, at least as is. You've put the entirety of libvorbis into a single file, along with the encoder. Why? You've also removed copyright information from some of the files within this, which is NOT GOOD. I'd also appreciate it if you renamed your program - there's already an oggenc in wide use. Giving another program with similar functionality the same name invites confusion.>what's new or modified: >- wav-header and wav-data-len handlingOggenc already does this, except it does so portably and correctly.>- multichannel encodingThis is useful. Oggenc doesn't do that mostly because I've never seen a wav file with more than 2 channels in it. I suppose I should make the relevent changes anyway.>- header update (after encoding) with an average bitrate value (into the > vi.bitrate_nominal variable)There's a reason why this isn't done. If the encoder doesn't know an average/nominal bitrate, this field doesn't get filled. Changing it afterwards isn't helpful, since it's never going to be a reliable indication of average bitrate (think, for instance, of a truncated file. Still works perfectly, but this bitrate value is wrong). Basically there's no point in doing this.>- 64bit floating point precision (maybe you say that it is not important, > but I'd like to compare with the 32bit verision)Not useful. The algorithms are specifically designed to NOT need the extra precision. Adding it just makes the memory usage much greater, and the program significantly slower.>what's missing: >- stream support (stdin/stdout)That's a pretty major thing to be missing. So's portability to different compilers, cpu architectures, and operating systems. Once you've rewritten stuff to be portable (and to not lug around the entire source in a single file - that's just stupid), some of it might be useful to other people. Michael --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to 'vorbis-dev-request@xiph.org' containing only the word 'unsubscribe' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
> Hello everybody,> what's new or modified:Umm... first off, is there a reason you collapsed every source module into a single file, or did you just not understand how to use it the way it was? This change alone makes the source impossible to compare to any other revision. That's not mentioning the scattered ad-hoc changes in your newly-monolithic encoder that for which I don't see a coherent rationale. If you'd like to submit changes, please do so in patches. Leave the structure of the source alone. If you don't know how, please ask.> - wav-header and wav-data-len handlingWhat about the preexisting support was inadequate?> - multichannel encodingAlso exists in oggenc.> - header update (after encoding) with an average bitrate value (into the > vi.bitrate_nominal variable)This breaks streaming, and the average bitrate value will be incorrect if the file is edited (which potentially renders it even less useful than 'absent'.)> - 64bit floating point precision (maybe you say that it is not important, > but I'd like to compare with the 32bit verision)Doubles are totally superfluous. Play with it and you'll see it makes zero difference and seriously degrades computational performance (not because doubles are slower than floats, because they're bigger and suddenly you're thrashing the L1 cache on virtually any processor).> And I have a small request too: > If somebody has a little time, please make an executable from this source > with the same compiler witch was used to the beta3 encoder (for Win9x), > because it seems my Watcom C compiler doesn't like some parts of the > encoder (but the decoder works properly), and the compiled program > makes a bad quality ogg file (sounds like a bad mp3 file (underwater > effect)Finding and fixing the problem is the correct answer here, not sticking to a single compiler. Either the original source has a compiler dependant bug (which I'd like to find) or you've introduced a compiler dependant bug. Until we establish which, I'd not consider the changes for inclusion (aside for the other problems I've mentioned).> ps. I hope the program doesn't contain too many bugsNot entirely reassuring... Monty --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to 'vorbis-dev-request@xiph.org' containing only the word 'unsubscribe' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.