Jinzora
Jun 2 2005, 10:08
Hello all,
Sorry if this is a dumb question but is there a way to get oggdec (on Windows for now) to decode an ogg file and send the output to standard out? I need to do this so I can then pipe the output into Lame to transcode on the fly to MP3. This will be used in our streaming media application, Jinzora (http://www.jinzora.com). We already do this with MP3/Flac/Musepack/Wavpack and would love to be able to resample OGG's on the fly too.
I read a post where someone had hacked this into their oggdec but I can't find that version anywhere...
Thanks,
Ross
You want my oggdec on Rarewares.
Jinzora
Jun 2 2005, 12:39
Thanks a ton, i grabbed it but am having some trouble with it (but I think it's my fault not the app...)
But, is there a linux version? I see the "sources" file, but there's no make or configure file in there, I have no idea to do with it...
Thanks,
Ross
QUOTE(Jinzora @ Jun 2 2005, 06:39 PM)
Thanks a ton, i grabbed it but am having some trouble with it (but I think it's my fault not the app...)
But, is there a linux version? I see the "sources" file, but there's no make or configure file in there, I have no idea to do with it...
Thanks,
Ross
Sorry, no can help. I'm a linux virgin!!
Jinzora
Jun 2 2005, 17:57
Well I realized that's a Visual Studio package, so no recompiling it on Linux anyway...
Thanks guys,
Ross
Shade[ST]
Jun 2 2005, 18:49
QUOTE(Jinzora @ Jun 2 2005, 05:57 PM)
Well I realized that's a Visual Studio package, so no recompiling it on Linux anyway...
Thanks guys,
Ross
you could get someone with VS to export a makefile for you.. I think..
But oggdec can do pipes, can't it?
oggdec -o - in.ogg | lame - out.mp3
kjoonlee
Jun 3 2005, 04:25
Does this mean that xiph.org's oggdec doesn't support decoding to standard output?
http://www.die.net/doc/linux/man/man1/oggdec.1.html
I've never tried it, but looking at the code, yes, it does.
Jinzora
Jun 4 2005, 15:24
Thanks for all the replies guys. There are a few issues from what I can tell...
I can get the command line to work (piping from oggdec to stdout to lame to stdout) but for some reason it is SO SLOW that it won't work for my application. That's kinda odd since Wavpack, Flac, Musepack, and Lame all work perfectly...
So, the real thing I'm trying to get at here is can you resample ogg files on the fly to ease streaming? Lame will let you specify an MP3 as an input file so it handles it quite well. Doesn't look like oggenc can do that.
Any other ideas? Also is there an oggdec for Linux?
Thanks,
Ross
xmixahlx
Jun 5 2005, 23:06
YES (look up)
it's in vorbis-tools
later
Jinzora
Jun 6 2005, 01:01
Yeah, but the problem is pipe starvataion. Oggdec can't decode fast enough to give data to lame so it won't work...
Any other ideas? I think I'm just stuck and this can't be done...
Ross
kjoonlee
Jun 6 2005, 01:42
Vorbis decoding shouldn't be *that* slow. It should be more or less on par with MP3 decoding.
http://www.foobar2000.org/foospeed/BTW, have you tried hacking Xiph.org's oggdec in Linux?
I wonder what john33 meant by "yes, it does". I haven't gotten round to testing it myself.

1. Yes, it does mean it doesn't support stdout.
2. yes, it does support stdout.
I suspect the second is correct, because he smiled. At least I hope so.
QUOTE(kjoonlee @ Jun 6 2005, 07:42 AM)
Vorbis decoding shouldn't be *that* slow. It should be more or less on par with MP3 decoding.
http://www.foobar2000.org/foospeed/BTW, have you tried hacking Xiph.org's oggdec in Linux?
I wonder what john33 meant by "yes, it does". I haven't gotten round to testing it myself.

1. Yes, it does mean it doesn't support stdout.
2. yes, it does support stdout.
I suspect the second is correct, because he smiled. At least I hope so.
Yes to No. 2.

Edit: And, BTW, the decoding speed should far exceed the encoding speed of LAME, so I would think there is some other factor at play here.
Jinzora
Jun 7 2005, 01:11
Well if there is something else I just can't find it. I did read a lot about piping while trying to work this out and since the commands work just fine if I pipe them to a file but NOT if I pipe them to stdout the only thing I can conclude is that is the issue.
And oggdec on Linux does NOT work with piping to stdout. If it does I can't get it to work. As for hacking, sorry a bit beyond me...
So if you've got an idea of what this could be I'd be very grateful. If I didn't say this does work great with:
Flac > Lame > stream
Musepack > Lame > stream
Wavpack > Lame > stream
MP3 > Lame > stream
So I can only conclude that it's something with oggdec. BTW I also did try this with ogg123 (piping to stdout) and that didn't work either (but again creating the file did). The main issue is I MUST do this by piping to stdout to achieve what I want...
Any other ideas???
Oh, and BTW guys, THANKS A TON for all the assistance here, I really appreciate it!!!
Ross
Hm, piping from both oggdec and ogg123 to lame works for me on linux. Speed is comparable to piping from flac.
You could probably make use of named pipes, if stdout doesn't work?
Jinzora
Jun 7 2005, 18:49
D'oh! It was me, it was the way we were sending data to the media player. Not only did I got Ogg to work, we added Wav as well.
So we now support real time on-the-fly transcoding and streaming of:
Flac
Musepack
Wavpack
Wav
MP3
Ogg
All to MP3 at a user selected bitrate :-)
Woo Hoo!!!
Thanks again for your help guys, I really appreciate it. If you're interested we'd love to have the feedback over at
http://www.jinzora.comThanks,
Ross
xmixahlx
Jun 8 2005, 00:31
in the same fashion, you can add support for AAC with faad2 and just about any format with a linux binary (except for monkey's audio, which is an example of the worst possible frontend)
later
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please
click here.