Convert multiple flac files to mp3

for file in *.flac; do $(flac -cd "$file" | lame -h - "${file%.flac}.mp3"); done
make sure that flac and lame are installed sudo apt-get install lame flac

2
By: schmiddim
2010-03-08 13:37:25

These Might Interest You

  • cd to the folder containing the wav files, then convert them all to flac. yeah baby! in ubuntu, to get the flac program just: sudo apt-get install flac flac file input formats are wav, aiff, raw, flac, oga and ogg Show Sample Output


    3
    flac --best *.wav
    nickleus · 2009-11-11 14:17:24 1
  • Converts a single FLAC file with associated cue file into multiple FLAC files. Takes two arguments: the name of the FLAC file and and the name of the cue file. Example: flacAlbumToFiles foo.flac foo.cue Requires: - cuetools - shntools


    5
    cuebreakpoints "$2" | shnsplit -o flac "$1"
    photraip · 2009-03-07 21:04:45 2
  • Split flac or ape file to track with filename from cuetag file. Show Sample Output


    0
    shnsplit -o flac -t "%n - %t - %a" -f sample.cue sample.flac
    MrTux · 2012-05-30 13:34:39 0
  • Converts all monkey audio files below currently directory to FLAC. For only current directory, use `for f in *.ape; do avconv -i "$f" "${f%.ape}.flac"; done` To remove APE files afterward, use `rm */*.ape`


    0
    for f in */*.ape; do avconv -i "$f" "${f%.ape}.flac"; done
    qdrizh · 2014-10-10 12:33:00 0

What Others Think

Is there some reason for using process substitution here? Couldn't you just do: for file in *.flac; do flac -cd "$file" | lame -h - "${file%.flac}.mp3"; done
eightmillion · 428 weeks and 6 days ago
It iisn't. On second tought I think its because I really like brackets^^
schmiddim · 428 weeks and 6 days ago
When encoding from flac, I try and keep the highest quality. I use the V0 encoding routine which averages between 226 and 256kbps vbr. The-h switch results in 128kbps streams which I now avoid at all costs. Try the command with the V0 switch instead and hear the difference. for file in *.flac; do flac -cd "$file" | lame -V0 - "${file%.flac}.mp3"; done
LoganPhyve · 425 weeks and 1 day ago
Made a slight mistake in my syntax, figured I'd update it so others don't process the batch wrong. There's supposed to be a space between V and 0. for file in *.flac; do flac -cd "$file" | lame -V 0 - "${file%.flac}.mp3"; done
LoganPhyve · 409 weeks ago

What do you think?

Any thoughts on this command? Does it work on your machine? Can you do the same thing with only 14 characters?

You must be signed in to comment.

What's this?

commandlinefu.com is the place to record those command-line gems that you return to again and again. That way others can gain from your CLI wisdom and you from theirs too. All commands can be commented on, discussed and voted up or down.

Share Your Commands



Stay in the loop…

Follow the Tweets.

Every new command is wrapped in a tweet and posted to Twitter. Following the stream is a great way of staying abreast of the latest commands. For the more discerning, there are Twitter accounts for commands that get a minimum of 3 and 10 votes - that way only the great commands get tweeted.

» http://twitter.com/commandlinefu
» http://twitter.com/commandlinefu3
» http://twitter.com/commandlinefu10

Subscribe to the feeds.

Use your favourite RSS aggregator to stay in touch with the latest commands. There are feeds mirroring the 3 Twitter streams as well as for virtually every other subset (users, tags, functions,…):

Subscribe to the feed for: