Thanks to Jessman for this!
Pcutmp3
How to properly cut large mp3's in to individual tracks using the cue sheet. For windows there is only one possibility and that is using pcutmp3. It's the only program that allow you to split the mp3 gapless.
This app analyzes the source mp3 file and its Xing/Info/LAME tag and allows cutting it at *any* positions through the use of the LAME tag's encoder_delay/padding fields. It generates for each track you crop out of the large source file a new Xing/Info/LAME tag frame filled appropriately and resolves the problem of missing bitreservoir data via a "silence frame" (holding the missing data) that directly follows the Xing/Info/LAME tag frame. This additional delay (due to this "silence frame") is also compensated via the encoder_delay setting which explains the high values it produces (576...2879). It should be possible to rejoin files losslessly (not yet implemented).
Thread on hydrogen audio forum about this program http://www.hydrogenaudio.org/forums/index....showtopic=35654 Open source project page http://code.google.com/p/pcutmp3/downloads/list
This program is written in java so can be used with windows, mac and linux. The program itself is command line only but don't panic, there are several solutions. You should download "pcutmp3.jar" and "jid3.jar " from the project page and store them in the same folder.
Using the command line
Only for people who have ever used a command prompt before. If you navigate to the folder where you've stored pcutmp3.jar and type "java -jar pcutmp3.jar" you'll see the following description for the program
CODE PCutMP3 -- Properly Cut MP3 v0.97.1
Description: This tool is able to do sample granular cutting of MP3 streams via the LAME-Tag's delay/padding values. A player capable of properly interpreting the LAME-Tag is needed in order to enjoy this tool.
Syntax: java -jar pcutmp3.jar [<options>] [<source-mp3-filename>] (Default operation is scanning only)
Available options: --cue <cue-filename> split source mp3 via cue sheet mp3 source can be omitted if it's already referenced by the CUE sheet --crop t:s-e[,t:s-e[..]] crop tracks manually, t = track# s = start sample/time (inclusive) e = end sample/time (exclusive) Time is specified in [XXm]YY[.ZZ]s for XX minutes and YY.ZZ seconds --out <scheme> specify custom naming scheme where %s = source filename (without extension) %n = track number (leading zero) %t = track title (from CUE sheet) %p = track performer (from CUE sheet) %a = album name (from CUE sheet) Default is "%n. %p - %t" --dir <directory> specify destination directory Default is the current working directory --album <albumname> set album name (for ID3 tag) --artist <artistname> set artist name (for ID3 tag)
Note: Option parameters which contain space characters must be enclosed via quotation marks (see examples).
Examples: java -jar pcutmp3.jar --cue something.cue --out "%n - %t" java -jar pcutmp3.jar --crop 1:0-8000,2:88.23s-3m10s largefile.mp3
Developed by Sebastian Gesemann. ID3v2 Support added by Chris Banes using the library JID3. http://jid3.blinkenlights.org/
So its use is pretty simple : java -jar pcutmp3.jar --cue something.cue
Using a java gui for the program
There is a simple gui avaible in java, so that you can use it on every os. You have the download the gui from here. You can best store it with the other 2 files. To acces it you can write a shortcut like java -jar c:/path to/pcutmp3gui-0.3.jar
Making a batch file for windows
If you make a batch file, than you can simply drag a cue file to the batch file and it will automatically split the cue file. This was my preferred way when using windows. Just put batch file next to the start menu and drag those cue files.
Make a new text file and name it pcutmp3.bat Write the following code:
CODE @echo off title pcutmp3 cd /d "C:\change this to your path\pcutmp3" java -jar pcutmp3.jar --cue %1 --out "%%s %%n" --dir "%~dp1 pause exit
Using it with foobar
Foobar doesn't need an introduction, it's the greatest audio player ever! You'll need the foo_run plugin. Just make a new command for cutting the cue file and give it the following command. (Asuming that you have the files in your foobar folder, please change to the correct folder) cmd /k "java.exe -jar "C:\Program Files\foobar2000\pcutmp3.jar" --cue "%path%" "$directory_path(%path%)\%__referenced_file%" --dir "$directory_path(%path%)\%album%" --out "%%n %%p - %%t"
Using bash script for linux
Linux users will now what to do by now i think. But here is a simple bash file i use.
CODE for ARG in "$@" do echo "$ARG" | while read path; do [ -n "$path" ] && java -jar /home/user/.pcutmp3/pcutmp3.jar --cue "${path}" --out "%s.%n" --dir "`dirname "$path"`" done done
The thing about this script is that it works with multiple cue files at the same time. So you can easily make a link to the bash script in your bin. Our better making pcutmp3 an option in your file browser. In my case, using kde4 that would be making a file named pcutmp3.desktop in /home/user/.kde4/share/kde4/services/ServiceMenus
CODE [Desktop Action send] Exec=/home/user/bin/pcutmp3 Name=pcutmp3
[Desktop Entry] Actions=send; MimeType= ServiceTypes= Type=Service X-KDE-ServiceTypes=KonqPopupMenu/Plugin,,application/x-cue X-KDE-Priority=TopLevel |