Help - Search - Members - Calendar
Full Version: Mirror a FLAC-archive to an MP3-archive
Hydrogenaudio Forums > CD-R and Audio Hardware > CD Hardware/Software
Brent
With MP3 being supported by each and every hardware/software player out there, I have thought out a solution for the problem of keeping a lossless archive.

I have an amount of MP3's and an amount of FLAC's which I consider my 'mastertapes' (which are backupped completely seperate from what I am proposing here ofcourse). Because
1) I have an iPod
2) a MacBook with OSX for which there is no good software to playback FLAC's in a way that suits me
3) lots of friends that don't know what FLAC is and would have the same problems I have, but I still want to share a bit of music every now and then.

I'm coming to the conclusion that an all MP3 mirror of each and every FLAC, + the MP3's I already had, would make for a portable and universally accesible library of music (lets call this the 'playback set'). I could just convert the whole lot into MP3's at once (which is what I have been doing every now and again) but this is not ideal. The trouble is that the 'mastertapes' change over time. Albums get added, I spot and correct little errors in tagging, I decide to get rid of tracks or albums altogether and whatnot. And having made these changes, I want them reflected in the actual set of music I'm listening to, the 'playback set'. Now, I can manually track the changes and reconvert/retag/remove, i.e.: commit the changes, to the playback set (which is just too much of a hassle) or delete the entire playback set and reconvert the whole library from the mastertapes again (which just takes too long, few days worth at this point).

So, the solution I seek is this: is there software out there that somehow can automagically keep this 'playback set' current, against the changes I make to the original 'mastertapes'? Preferably something multiplatform and portable, as I use different computers with different operating systems (Windows, OSX, Linux) and I'd like to be able to use the software in any OS (of course, the Wine project could help out here, but anyway).

Anyone else that has this problem and/or maybe the solution?
Teknojnky
Well I can't help you with a specific application, let alone something multi-platform, but I would simply suggest that instead of attempting to keep a mirror mp3 archive, to look for a program which can playback/sync/transcode your flac collection to an mp3 player on the fly.

Converting on the fly automatically is alot less hassle than trying to find or keep up with maintaining a separate mp3 archive (and alot less wasted space).

Of couse the obvious downside is that transcoding on the fly can be a bit slower than simply copying from an existing mp3 archive, but I would suspect that time is still overall less involved than the problems that accompany trying to keep up an up to date mirror archive.

Isn't there a mac flac plugin for mactunes?
tycho
Write a recursive GNU make script. I may do that myself.
patmcg
I have a bash script that does exactly just this. If you think it would help, I can post it here.
Brent
Thanks for all your responses!
QUOTE(Teknojnky @ May 8 2008, 22:20) *

Of couse the obvious downside is that transcoding on the fly can be a bit slower than simply copying from an existing mp3 archive
I thought of this and while this fixes the synching with the iPod problem, it doesn't fix the other problems and I'd like to keep the solution as simple as possible.
QUOTE

Isn't there a mac flac plugin for mactunes?

Yep, but that one doesn't read tags, so is useless to me.

QUOTE(tycho @ May 8 2008, 23:24) *

Write a recursive GNU make script. I may do that myself.

But how would I make it keep track of changes? I can't really rely on timestamps (as using different OSes with the same filesystem makes this unreliable) nor filesizes (padded tag spaces) nor checksums (this would be to slow).

QUOTE(patmcg @ May 9 2008, 00:30) *

I have a bash script that does exactly just this. If you think it would help, I can post it here.

Please do smile.gif The good thing is I could alter it and port is to different environments.

QUOTE(spies @ May 9 2008, 02:55) *

Although a clear description is missing, I gather this is just a script to (blindly) recursively convert a directory with FLAC's to MP3. Is this assumption correct?
Teknojnky
QUOTE(flac2mp3 webpage)
store flac MD5 checksum as tag in mp3 file. This is used to determine whether or not the flac file needs transcoding or not.


Oww, that looks hot. Thanks for the link.
gnypp45
QUOTE(Brent @ May 10 2008, 00:51) *


QUOTE(spies @ May 9 2008, 02:55) *

Although a clear description is missing, I gather this is just a script to (blindly) recursively convert a directory with FLAC's to MP3. Is this assumption correct?


No, "flac2mp3.pl" will only convert a file if it is missing from the target (mp3) directory, or if the flac MD5 checksum doesn't match the corresponding tag inside the target mp3. It will also update all target file tags for which the flac tags have been changed. Although the latest release doesn't support album art yet, there are versions which do (see ticket #96, for example).

(I agree that the information on the home page is somewhat sparse.)

The only thing it will NOT do is deleting files in the target (mp3) directory if the corresponding flac files have been removed or renamed.

I find this an excellent tool for keeping an image mp3 directory of my flac files. smile.gif
chromium
Linux has a solution for this: http://mp3fs.sourceforge.net/
The idea is that you only have and maintain a flac collection. Then, you use a file system that reads and converts these flac data to mp3 files whenever you access them through the file system.
patmcg
Here is the bash script I mentioned before. I made it really quickly, so the functionality is not very polished. Right now it does a FLAC->OGG conversion, but it should not be too hard to add MP3 support. I guess in the future I might look into making something easier to use. The features are:

1. mirrors directory of FLAC files to OGG files in new directory
2. uses built-in FLAC tag copying feature of 'oggenc' to write tag data
3. uses time stamps on source and dest files to only re-encode out of date dest files
4. supports multiple simultaneous encodings to maximize mult-core CPUs
5. mirrors all non-FLAC files in directory by direct copy (except *.md5 files)
6. scans DEST directory, and deletes any files/dir that do not exist in the FLAC location
7. can be easily extended to support other audio compression routines

Pre-conditions:
The flac files must be located under a directory called 'flac'
e.g. /my/music/flac/.../.../...
The output ogg files will be placed in a directory called 'ogg'
e.g. /my/music/ogg/.../.../...
The script must be run at the working directory where 'flac' is residing
e.g. /my/music

Usage:
cd /my/music/
./convert.sh

convert.sh
loophole
QUOTE(chromium @ May 10 2008, 06:56) *

Linux has a solution for this: http://mp3fs.sourceforge.net/
The idea is that you only have and maintain a flac collection. Then, you use a file system that reads and converts these flac data to mp3 files whenever you access them through the file system.


This works on OS X too (using FUSE) - the only problem is this only creates CBR mp3 files, as the resulting filesize needs to be predictable for it to properly emulate a filesystem.
cabbagerat
QUOTE(chromium @ May 10 2008, 06:56) *

Linux has a solution for this: http://mp3fs.sourceforge.net/
The idea is that you only have and maintain a flac collection. Then, you use a file system that reads and converts these flac data to mp3 files whenever you access them through the file system.
Wow, that's really cool. FUSE is really clever and useful - a kind of natural extension of the Unix "everything is a file" concept.
collector
QUOTE(Teknojnky @ May 9 2008, 14:54) *

QUOTE(flac2mp3 webpage)
store flac MD5 checksum as tag in mp3 file. This is used to determine whether or not the flac file needs transcoding or not.

Oww, that looks hot. Thanks for the link.

But, that should be the md5 form the flac as such, not the md5 from the music part.
The way backup programs check for new or changed files to backup is by reading the archive bits of the files. These bits get set when something has changed in the files and deleted after the backup process.
So a script could read the archive bit of your masters. Changed ? Then convert to a new mp3 again. And back up, and write report to a list. That is what I would want.
xmixahlx
yep. mp3fs is your only answer...
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.