mp3DirectCut is a frame-based editor for MPEG audio. You can cut, copy and paste or change the volume without having to decode and re-encode the file! This makes mp3DirectCut very fast and prevents loss of audio quality. You can easily navigate through even large files and mp3DirectCut gives you a visualisation of the MP3 audio data. The program supports Cue sheets and allows to split files at cue positions.
Author and Links
Copyright (c) 2000-2005 Martin Pesch
Note: Be sure to read the list of Frequently Asked Questions! (not uploaded)
Portions modifed by fmg are Copyright (c) 2000-2005 Martin Pesch (except the errors)
At first to be able to playback files the program needs an MP2/3 decoder. This can be either a system installed MP3 ACM Codec (XP should contain it by default) or the mpglib.dll which needs to be in the program's or Windows' folder. The mpglib.dll (available at the homepage) makes mp3DirectCut more independent (if you don't have an ACM) and supports Layer 2. But it takes more cpu than ACM.
Switch to your prefered decoder in the Devices settings (Settings->Configure->Devices). In the Output device section you can select a Wave device and adjust the amount of frames being decoded to each play buffer between 'fast' (1 frame) and 'reliable' (8 frames). On slower machines set a higher value. For a fast response of the graphics select a lower value. The default is 4.
(When you first run mp3DirectCut, you will be asked to specify the language)
The program language can be adjusted at the Operation Tab (Settings->Configure->Operation). In the list, select your language if present. The language you specify must have a corresponding file in the sub directory "Languages" of the mp3DirectCut folder (e.g., lanDeutsch.ini). If you make a translation, please contact me.
Because mp3DirectCut is designed to handle large files (but see limitations), there are many ways to reach a position:
Scrollbar (A Box)
With the slider you can move along a file. The arrow buttons (or keys: Shift+Left/Right) move a single MPEG frame backwards or forward.
[<<<] [<<] [>>] [>>>] (B Box)
(or keys: Left/Right and Page up/down)
You can configure the number of frames these buttons move - see Settings->Operations->Navigation.
You can set the amount of frames to skip back/forward in the configuration window between 10 and 10.000 for [<<<] and [>>>] and between 1 and 1.000 for [<<] [>>].
Mouse (H Box)
You can directly jump to any file position by left clicking into the map area below the audio graph (this does NOT affect the selection, if present).
CTRL+Mouse (D Box)
If you hold down the CTRL key while clicking into the audio graph the cursor jumps to the shown audio position (this does NOT affect the selection, if present).
[I...<<] [>>...I] (C Box)
These buttons set the play cursor to the beginning or the end of the selection, if present.
List Menu and [I<] [>I] (E Box)
Let you choose the active edit point and set the play cursor to it's beginning.
Position field (F & G Boxes)
You can enter a position by time (F Box) or percentage (G Box) into the edit field and apply the value by pressing Enter or Tab.
Changing Visual Scale
When selecting, it is often very handy to be able to "zoom in" to be able to precisely place the points. Do this by clicking on the "In" button (marked with red arrow, below). To "zoom out", click the "Out" button instead. While only four (4) zoom "levels" are available, they are more than adequate to do the job.
Editing a file or compilation of file fragments means to create different parts of audio content. Each time you cut, paste or set a cue, a new part will be created at that point. (Note: There is a limit of 498 parts in any one session - see limitations)
Like in other editors editing, begins by making a selection. A selection can be an audio range or only a single position. Ranges can be used to cut, save that section to a file, or copy/paste. A position selection is for creating cues or points of volume change.
You have a choice (Buttons, Mouse, or Selection field):
Buttons [Set begin] and [Set end]
These buttons set the beginning or the end of the selection to the current position.
You can point/drag a selection by using the left and the right mouse button. How the buttons behave can be set in the preferences:
Method 1: Left button sets the beginning of the selection (by clicking or dragging), the right button sets the end.
Method 2: Left button makes a new selection and enlarges it. The right button moves beginning or end (depending on which is nearer).
Note: to make a large selection you should at first point to one end of the selection and then jump to where the other end should be and set it there. It is not possible to drag a long selection by moving the mouse over the windows boarders.
You can enter the beginning, end or length of the selection directly by entering the numbers and applying by pressing Enter or Tab.
Note: Do not delete the symbols ("'" and ".", e.g., "2'08.84") or mp3DirectCut may not be able to read your entry.
At each edit point begins an independent audio part. Parts can even be from different audio files. Each part can have information about a volume change or whether it is a cue.
If you cut a selection the range disappears and is not longer known by the program. But an edit point remains at the cut position and you can restore the cut range every time by using the edit button.
The Cut button splits the current audio part into two parts. If there was a selection range it will be cut. If the selection had a length of zero the Cut function only splits the part. The split point can be used to create a volume change or a cue.
To let a split be a cue you must set its cue flag e.g. by pressing CTRL+Q or checking the 'Cue' checkbox in the part properties dialog (Edit menu). Edit points with cue flag are shown as dotted line.
With the Edit button you can remove existing edit points. This means that two parts will be joined. If the edit point was a cut the removed audio range will be restored. Note: editing a point is not possible if it was created by paste. In this case the audio data between two parts is not continouus and there is noting to restore. To remove such insertions select them and use the function 'Remove selected elements' in the Edit menu.
While the Cut button does not copy the cut range to the clipboard Cut and Copy from the Edit menu do. The copied information can be pasted to any new position (current or selection). Copy and Paste can handle multiple files and parts and work completely non-destructive. This means that no audio data is copied but only access informations.
To change the volume simply create one or more edit points (usually from a zero length selection). Then you can directly change the gain by dragging the gray grips. Alternatively the gain of the highlighted edit point can be changed by the keys CTRL+Up/Down
Audio ranges with a modified volume are shown in the color of edit points. The gain sign of the edit point shows the volume change in dB. Note: Volume change works only with Layer 3. As the data remains encoded volume changes can only be made in a resolution of 1.5 dB steps.
To create a fade or a silence for a selection you can use the gain dialog in the Edit menu. A gain area can also be created by the Normalize function in the Edit menu.
First highlight a point by moving to its position (see 'Navigation' section). After pressing [Edit] the cut range or the split point will become the selection and will be deleted (!). So after changing positions you must hit [Cut] again. More in the Edit button section above.
Prelisten and output
Normal play ist already a prelisten mode because every cut and every gain modification is played as it will be saved. In addition there are some buttons to prelisten the selection boundaries before cutting:
[=>I..] / F5 - play 2 seconds to the selection beginning
[I=>..] / F6 - play 2 seconds from the selection beginning
[..=>I] / F7 - play 2 seconds to the selection end
[..I=>] / F8 - play 2 seconds from the selection end
[=>I...I=>] / F9 - play the selection as cut (2 secs before and after)
After finishing prelisten the cursor returns to the previous position.
While normal play two of the prelisten buttons change their function to provide Fast Play. The buttons show the symbols [>> -] and [>> +] and can be used to adjust the speed of Fast Play in small steps. For faster operation it's recommended to use the keys F7 and F8.
A created audio file can either be the whole shown data ('Save all...') or only the range of the selection ('Save selection...'). You can also save multiple pieces at once with the 'Save split...' function. It creates seperate files for every range between two cues. Note: You should always check the output file(s) before deleting the original.
This function sets cues or cuts to gaps of definable length and level. The settings must be adjusted carefully because the results can be very different.
The Level and the Duration sliders adjust at which audio level and gap duration thresholds a pause will be detected. Offset is the number of frames at the pause end which the cut end or the cue will be shifted to the left or right. Cut whole pause means that not only a cue at the pause end will be created but a cut over the whole pause (beginning of cut slightly right shifted) if the pause is long enough. Don't use this option for creating Cue sheets!
The value of 'After a pause detection skip' can be used to speed up the detection process. If a pause is found the program jumps further the entered amount of seconds. E.g. if you know that all of the tracks of your CD image are 3 minutes or longer you could set this value to 150 seconds.
For recording an MP3 directly you need either an ACM Codec with encoding capability or the Lame Encoder DLL (available through the homepage of the Lame project). It is important to choose a base filename. Your recordings will be saved under this name. Note that there will be no query for overwriting existing files! If you select 'Add date & time' each recorded file will have a date and time stamp in its filename.
To initialize recording press [Rec]. Then you can see the audio input level on the VU meter. After pressing [Play] the file starts being written. With selected 'Append data' in the recording settings an existing file will not be deleted and you can make multiple recordings to one file. But take care not to use different bitrates or samplerates in one file.
While recording you can set up to 40 cues by pressing [Set begin]. The number and position of the last cue is shown in the range field.
The value of 'Buffer' shows how much data is waiting to be encoded by the codec. If it grows the codec is not fast enough to encode MP3 in realtime. The unencoded buffer portion should not be over 10% for more than some seconds. On modern systems it should be always 0%.
If you launch mp3DirectCut with '/r' in the command line it will start the recording immediately with the encoding settings of your last session. You can use this option for automated recordings. See more under Command line options.
Project files and Cue Sheets
An mp3DirectCut project file (*.mpd) contains a complete edit state with every part and their volume, cut and cue information. Note: If you work with large files and make a lot of cuts you should frequently save your work to a project file (CTRL+S).
Note: mp3DirectCut 2.0 can't open project files of older program versions!
Cue Sheets (*.cue) contain a link to an audio file and time indexes (cues). The CUE standard does not allow the saving of Cut and gain information - only the MPD (*.mpd) files can be used for that. A Cue sheet can't even be saved if the audio file has been edited in the length at the same time.
When loading a cue sheet, mp3DirectCut reads in all the titles and artist names and shows them in the graph area. If you split a file, by using a Cue sheet, you can configure it to create filenames with titles and ID3v1.1 tags for each file. However, see some important limitations when reading CUE files.
|Page up/down||Move back/forward defineable large step (<<< / >>>)|
|Arrow left/right||Move back/forward defineable small step (<< / >>)|
|Arrow up/down||Jump to beginning/end of selection|
|Ctrl+Left/Right||Jump to previous/next part|
|Ctrl+Up/Down||Change gain of current part|
|Shift+Left/Right||Move one frame backwards/forward|
|Home||Jump to track beginning|
|End||Jump to track end|
|Ctrl+P||Enter position field|
|Ctrl+L||Enter selection field|
|Ctrl+Q||Toggle Cue flag|
|Ctrl+S||Save Project or Cue sheet|
|F5...F9||Prelisten modes (jump to chapter)|
|F7, F8||While play: Fast Play speed (dec/inc)|
|F12||Encoding settings quick access|
More shortcuts are shown in the tooltips and in the menus.
Command line parameters
Files and Projects
Every file type known by mp3DirectCut (MP3, MP2, project files, cue sheets) can be loaded via the command line or Drag and Drop. If you add mp3DirectCut to these file types you can open the program directly from the Explorer.
'/r' starts the recording immediately. You can use this feature for timer recordings. In the Windows scheduler you can also set a duration time after which the program will be terminated.
For multiple timer recordings be sure to check 'Add date and time' OR 'Append data' in the recording settings, otherwise previous recordings will be overwritten. Don't forget to specify the filename by clicking on the "Recording" button.
Settings->Configure->Encoder OR F12
Limits and workarounds
Use fixcue.pl script (needs ActivePerl installed). It will split CUE file into chunks
of (by default) 300 tracks/chunk but you can specify the number with
--cuesplit number argument (run with --help to see all the options).
Note: Don't make the number too close to 498 or you won't have "space" to edit the file!
If you managed to split the MP3 file into chunks, you still have a problem because the CUE file references
from the start of the original file. If that's the case, you can split the CUE file to correspond with
the MP3 chunk and then use the fixcue.pl script (needs ActivePerl installed) with the
--downshift min:sec option to downshift each CUE file to line up with the chunks. (run with --help to see all the options).
Note: You can avoid this problem by using the --analyze argument to fixcue.pl - it will try to figure out how to split up the MP3 and CUE file for you!
Assorted Tips and Hints
Smooth fade between tracks (e.g., after a cut)
Note: As there is no UNDO, it's a good idea to save your project before doing anything that can mess up your file. If you don't select and bound the fades, you can fade your whole file (which can be undone but may startle you!).
Assuming you just made a cut in a file (e.g., snipped out a bad track):
First, you want to "zoom in" as much as you can:
Then, select a bit before the cut (play with it until you figure out a good amount):
And put a new cut there (click on "Cut" button):
Now, select from a bit after the cut right up to the cut:
And bring up the fade dialog (CTRL+G) or Edit->Gain.
Assuming you like the "lowest gain" value (33 to 25 is ok, play to
find happy number), click on "Fade In" button and then "Ok" to perform the fade:
Same but "zoomed out":
Note: there is a bug in 2.01 related to fades - they stop working ABOVE part 255. (the "flag" shows a fade but it's not faded)
Below 255, it works as expected:
On the border (half in 255, other half above 255) it screws up:
And above 255, it just fails: