Ogg/Flac/Mp3 Support working in 3rd party player

Posted by: grgcombs

Ogg/Flac/Mp3 Support working in 3rd party player - 03/09/2002 23:16

Dave (of RioPlay) got the Xiph Ogg encoder working for rioplay. I've added my porting changes for it to run on the empeg and built a new binary.

http://www.swampzombie.com/empegreceiver.tgz

give it a try and see what you think. The keys have been modified since last time to more closely match the behavior of our current software.

Menu on the remote now opens a menu as well as selects a menu item ... if you hit cancel, it backs out of the menu system. Volume up and down on the remote scroll through the menu. Shuffle now randomizes the playlist. Holding down the source button (or 'power' on the player) for varying lengths will either power down the player or halt the application. This needs more work.

The display has regressed temporarily while we figure out a better way to merge the receiver and empeg code into a happy family. Some menu items may be off screen. The track info screen is less than optimal as a couple of items are hidden behind the clock and other items. This will get better.

You should probably have JReceiver running in order to see flac and ogg files ... I don't think the currently available windows RioReceiver server software supports transmitting codec information for these files yet.

Greg
Posted by: tfabris

Re: Ogg/Flac/Mp3 Support working in 3rd party player - 04/09/2002 10:55

Just to be clear on this...

This is just the Rio Receiver client software at the moment, right? Not yet a player that will play what's on the empeg's hard disk?
Posted by: grgcombs

Re: Ogg/Flac/Mp3 Support working in 3rd party player - 04/09/2002 11:25

Correct, but hopefully soon it'll play off the hard disk. Hopefully Dave and I can work out some basic stuff soon, and we'll have it hosted off sourceforge with his stuff.

Greg
Posted by: jcoalson

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 04/09/2002 11:47

In reply to:

Correct, but hopefully soon it'll play off the hard disk. Hopefully Dave and I can work out some basic stuff soon, and we'll have it hosted off sourceforge with his stuff.



For those who don't know me, I'm the FLAC developer... I've only recently discovered this board but I check regularly now. The recent progress on FLAC and Vorbis is pretty cool. Feel free to post questions FLAC here or over on flac-dev

Josh
Posted by: tfabris

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 04/09/2002 11:51

Too cool. Welcome.
Posted by: grgcombs

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 04/09/2002 15:53

I want to personally thank you for coming up with such a great product. I don't have to touch my CDs at all from now on. I've got them stored as FLACs with proper tags. From here on out, I just run scripts to re-encode them as mp3's (and soon to be ogg's).

But since we're getting FLAC support via RioPlay, I'm going straight to the source for my home player.

Wonderful stuff!

Greg
Posted by: loren

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 05/09/2002 11:16

So let me get this straight... You've ripped all your CD's to FLAC format... and stored them on a massive drive or something. So now when you want to compress to a new format like Ogg, you just run some scripts and bam, there ya go.

That's simple and genius.

What's the average compression ratio for FLAC compared to straight WAV rips? I'm definitely considering doing the same thing you have... it just makes sense.
Posted by: BartDG

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 05/09/2002 11:39

I've tought about doing that too, but I would need at least 400gigs of diskspace.
OK, so diskspace isn't all that expensive anymore. I guess I just don't want to go through the hassle of two months of ripping CD's. (that's about how long it took me the first time)
So I guess I'm just lazy.
Posted by: loren

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 05/09/2002 11:43

Yeah, that's why i was asking what the compression ratio is. I just looked on the FLAC site and it seems to be about .5. So given a way high estimate of 400megs/CD... yeah, i'd need a butt-load of storage. Maybe when we hit 1cent/GB ratio, i'll do it. =]
Posted by: grgcombs

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 05/09/2002 12:00

I've been getting about .3-.4 compression. It depends on the music I guess. But I've got a moving box full of CDs that I don't have to touch anymore. I got a couple of 120 gig drives at Fry's for about $90/ea. They don't have to be fast ATA133 or have big caches, so I just got the biggest cheapest drives I could afford. I started out doing it with just the CDs I liked the most for "archival" purposes. One's I knew would be the first to get moved to ogg or something better. Then after the drive upgrade I did the rest.

Right now I've got 2517 tracks in 68 Gigs ... That's about 37 tracks a Gig. I think that works out to about 27 megs per track.

If I inherit a closet full of CDs from someone, flac may be insufficient for all of them, but as it is, when ogg becomes a reality for my car half of my total song collection currently on my empeg gets moved over to ogg automatically, with no tag mucking. The other half will probably stay as mp3's because I don't have the CDs for them yet.

As for my home player ... I don't have to hear one single bit of compression as of right now for all my flac'ed files.

Greg
Posted by: johnmcd3

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 05/09/2002 13:19

wow you must listen to a type of music that is very compressible to get 30% to 40% compression. the study on flac's page got an average compression of 0.5458.

I haven't used FLAC but I'm interested in it for the advantages listed in this thread. I'm not really interested (as much) in the ability to play the files, but thats cool too) just to archive them.

I'm cuious about a few things though. if you FLAC a wav and then reconvert it back to a wav will you get the identical file (bitwise) or will it just be "acoustically" identical?

If it really is the same file, how is FLAC so much more efficient than conventional compression algorthyms? is it just really well tuned to compress wav audio?

John
Posted by: grgcombs

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 05/09/2002 13:32

I'm pretty sure the pre/post flac'ed files are identical. I don't think there's anything keeping you from using FLAC for compressing any binary data other than the fact that it's tuned for audio compression. The developer would be able to answer this much better than I could hope to guess though.

Greg
Posted by: jcoalson

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 05/09/2002 14:01

In reply to:


I want to personally thank you for coming up with such a great product. I don't have to touch my CDs at all from now on. I've got them stored as FLACs with proper tags. From here on out, I just run scripts to re-encode them as mp3's (and soon to be ogg's).



Thanks.

FYI I'm planning to do a 1.0.4 beta release in the next couple of weeks with a lot of new stuff (and better API docs). I'll post on the board here when it's ready.

Josh
Posted by: jcoalson

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 05/09/2002 14:13

In reply to:


I'm cuious about a few things though. if you FLAC a wav and then reconvert it back to a wav will you get the identical file (bitwise) or will it just be "acoustically" identical?



FLAC only stores the 'fmt' and linear uncompressed PCM 'data' subchunks. If you have other subchunks in there it will skip them with a warning. If the input is "canonical WAVE", i.e. one fmt chunk followed by one data chunk and nothing else, WAV->FLAC->WAV will be identical. All input WAVEs in the FLAC comparison page are in canonical form.

In reply to:


If it really is the same file, how is FLAC so much more efficient than conventional compression algorthyms? is it just really well tuned to compress wav audio?



FLAC first does inter-channel decorrelation for stereo input (removing spatial redundancy, roughly, removing components of the signal that are duplicated in both channels). This is specific to stereo audio. Then it does intra-channel decorrelation to remove the kind of temporal rendundancy that is found in sampled audio (this is with a linear digital filter (FIR)). After that the residual signal is Huffman-coded which is common to general purpose codecs.

Josh
Posted by: Liufeng

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 05/09/2002 19:43

In reply to:


From here on out, I just run scripts to re-encode them as mp3's (and soon to be ogg's).




Could you please post some of your scripts for examples. And a list of the software needed to make a system like this happen? That is a really awesome idea and I'd like to see how you implemented it.

Tom
Posted by: grgcombs

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 05/09/2002 22:30

Here's the two very simple, short scripts I use to take my existing flac directories and build mp3's from them ... oggs will come later on. Who knows if this bbs will eat the code ... if you have problems, let me know.

dir2mp3 take a flac directory as an argument.
flac-to-mp3.sh is run by the above script, but can also be manually run with a flac file as an argument.

#######################
#dirtomp3.sh:
#!/bin/sh
for i in `find "$1" -name '*.flac' -print | sed 's/ /\\\\040/g'` ;
do
fullpath=`echo -e $i`
#echo "File: $fullpath"
/share/flac/flac-mp3.sh "$fullpath"
# important to enclose any operations
# on the file in double-quotes
done

#######################
#flac-to-mp3.sh:
#!/bin/sh
i=$1
o=/share/music/xfer/${i%.flac}.mp3
echo Converting $i
echo to $o ...
mkdir -p "$o"
rm -r "$o"
flac -c -d "$i" | lame --vbr-mtrh --nohist -V 3 -k - "$o"
id3cp -2 "$i" "$o"
Posted by: jcoalson

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 06/09/2002 09:50

In reply to:

Here's the two very simple, short scripts I use to take my existing flac directories and build mp3's from them ... oggs will come later on.



FYI in the upcoming version of flac there will be a simple way to copy tags from flac -> ogg, like so:

metaflac --no-utf8-convert --export-vc-to=- file.flac | vorbiscomment --raw -c -w file.ogg


A spec for handling embedded newlines in comment data is still being worked out, so no multi-line comments yet.

Josh
Posted by: grgcombs

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 06/09/2002 15:43

Fantastic! I was a little worried about conversion to ogg with it's wacky info tags. This will make it hella easy.

g
Posted by: loren

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 06/09/2002 15:50

No offense, as i have no clue of your age... but going by your picture alone, i'd say your the oldest person i've ever heard (read) say "hella". I've noticed that "hecka" has now replaced "hella" as the slang of choice of Bay Area kids these days. You might think about upgrading.

(seriously, not making fun of you... i say it myself, though i catch hell from my Louisiana boys)
Posted by: grgcombs

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 06/09/2002 20:27

Hecka, eh? I'll definitely put this in the queue for new vocabulary. Sad, but I just added hella a month or so ago!

Next you're probably going to tell me that newfangled no longer is, and hogshead isn't a valid form of measurement anymore!


Greg
Posted by: Burgin

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 10/09/2002 16:18

I've been playing with FLAC for a couple of months. Maybe I'm not looking in the right place. How are you all tagging flac files? I didn't see anything in the documentation on this unless you are putting it in the OGG wrapper and subsequently tagging the Ogg file with some Tagging tool.

(I should probably be posting these kinds of questions in the Sourceforge but I'm a little lazy at the moment.)
Posted by: jcoalson

Re: Ogg/Flac/Mp3 Support working in 3rd party play - 10/09/2002 16:52

In reply to:


I've been playing with FLAC for a couple of months. Maybe I'm not looking in the right place. How are you all tagging flac files? I didn't see anything in the documentation on this unless you are putting it in the OGG wrapper and subsequently tagging the Ogg file with some Tagging tool.



Use metaflac to add Vorbis comments to a native FLAC file. Do "metaflac --help" to get a list of commands.

There is no tagging mechanism at the Ogg layer (the transport layer). Vorbis comments are part of the FLAC and Vorbis stream layers.

Josh

P.S. Note that metaflac can not deal with Ogg FLAC files yet, only native FLAC. I don't know of anyone using Ogg FLAC though, as its only advantage is likely to be in streaming through Ogg-aware tools.