Looping Audio Converter 2.5
This application acts as a frontend to other programs and
libraries, and allows conversion between a variety of looping
audio formats.
Supported input formats:
File extension |
Container(s) |
Decoder |
Supports looping |
.wav
.lwav |
RIFF WAVE |
LoopingAudioConverter |
✓ |
.bfstm |
BFSTM |
VGAudio |
✓ |
.bcstm |
BCSTM |
✓ |
.brstm |
BRSTM |
✓ |
.brwav
.rwav |
BRWAV |
✓ |
.bcwav
.cwav |
BCWAV |
✓ |
.bfwav |
BFWAV |
✓ |
.bcstp |
BCSTP |
✓ |
.bfstp |
BFSTP |
✓ |
.dsp
.mdsp |
DSP (Nintendo) |
✓ |
.idsp |
Interleaved DSP (Nintendo) |
✓ |
.hps |
HPS (HAL) |
✓ |
.adx |
CRI ADX |
✓ |
.hca |
CRI HCA |
✓ |
.mp3 |
MP3 |
MP3Sharp |
|
.aac |
AAC |
faad |
|
.m4a |
MP4 |
|
.vgm
.vgz |
VGM |
VGMPlay |
✓ |
.pcm |
MSU-1 |
LoopingAudioConverter |
✓ |
.msf |
MSF (PlayStation 3) – PCM |
MSFContainerLib |
✓ |
.msf |
MSF (PlayStation 3) – MP3 |
MSFContainerLib + MP3Sharp |
✓ |
.msf |
MSF (PlayStation 3) – Other |
vgmstream |
✓ |
.ogg
.logg |
Ogg |
✓ |
.flac |
FLAC |
|
.* |
Miscellaneous |
✓ |
.*
|
Miscellaneous
|
ffmpeg
|
|
.* |
Miscellaneous |
SoX |
|
Supported output formats:
File extension |
Container(s) |
Codec(s) |
Encoder |
Supports looping |
.wav
.lwav |
RIFF WAVE |
16-bit PCM (little endian) |
LoopingAudioConverter |
✓ |
.bfstm
.bcstm
.brstm |
BFSTM
BCSTM
BRSTM |
ADPCM (Nintendo)
16-bit PCM
8-bit PCM |
VGAudio |
✓ |
.dsp |
DSP (Nintendo) |
ADPCM (Nintendo) |
✓ |
.idsp |
DSP (Nintendo) (interleaved) |
✓ |
.hps |
HPS (HAL) |
✓ |
.adx |
CRI ADX |
✓ |
.hca |
CRI HCA |
✓ |
.brstm
|
BRSTM
|
ADPCM (Nintendo)
16-bit PCM (big endian)
|
BrawlLib
|
✓ |
.bcstm
|
BCSTM
|
ADPCM (Nintendo) |
✓ |
.bfstm
|
BFSTM
|
✓ |
.brwav
|
BRWAV
|
✓ |
.mp3 |
MP3 |
lame |
|
.aac |
AAC |
AAC |
qaac |
|
.m4a |
MP4 |
|
.pcm |
MSU-1 |
16-bit PCM (little endian) |
LoopingAudioConverter |
✓ |
.msf |
MSF (PlayStation 3) |
16-bit PCM (big endian)
16-bit PCM (little endian) |
MSFContainerLib |
✓ |
.ogg |
Ogg |
Vorbis |
ffmpeg or SoX + VorbisCommentSharp |
✓ |
.flac |
FLAC |
ffmpeg or SoX |
|
The source code to Looping Audio Converter is released under the
GNU LGPL, version 3 or later.
Looping Audio Converter does not do any encoding or decoding
itself of any format besides WAV. Other formats are handled by
other applications or other .NET libraries, which do the bulk of
the work.
You will need write access to the folder that the application is
running in for it to store temporary WAV files.
Options available on the startup screen:
- Only files ending with: This option will remove any
file not ending with the given extension from the list when you
click Filter. Useful after you use the "add folder" button to
add all files in a folder, recursively.
- Input directory: Used in conjunction with the "Add
Folder" workflow; allows Looping Audio Converter to more
accurately mirror the structure of subdirectories under the
original input directory.
- Output directory
- To keep part of the original path, use one or more asterisks
in the output path.
For example, an input file of "C:\Music\The Golden
Bubbles\Seventy-Two\10 Mpls.m4a" and an output path of
"./output/*/*" will result in the file "./output/The Golden
Bubbles/Seventy-Two/10 Mpls.brstm". Since there are two
asterisks in this example, the last two directory names of the
original file's path are used.
- Audio effects
- Convert to mono: combines all audio channels into
one to save space
- New sample rate (Hz): a sample rate to downsample to
(unless the input file is at that rate or lower, in which case
it will not be changed); this also saves space but comes with
a noticeable reduction in audio quality
- Amplify (dB or amplitude ratio): changes the volume
of the audio. In dB, negative values reduce the volume. For
amplitude ratio, use 2 to double the volume or 0.5 to cut it
in half.
- Adjust pictch (semitones): adjusts the pitch up or
down without affecting the tempo. Twelve semitones = one
octave.
- Adjust tempo: makes the audio faster or slower
without affecting the pitch. (Lowering the tempo may also
result in a lower sample rate.)
- Options for files with no loop information (e.g. MP3, FLAC,
WAV without smpl)
- Force start-to-end loop: Any input files that are
non-looping or lack loop information will be looped start to
end in the output.
- Keep as non-looping: Any input files that are
non-looping (including some VGM, BRSTM, etc.) or lack loop
information (MP3, usually WAV) will result in a non-looping
output.
- Ask: The audio import dialog from BrawlCrate will be
shown for each input file without loop information after
decoding so you can specify your own loop point.
- Ask for all files: The audio import dialog from
BrawlCrate will be shown for all input files. For looping
files, the loop point will be pre-populated.
- Channel export options
- Put all channels in one file: keeps the channel count
as-is, even if there are more than two channels (left and
right).
- Put each pair of channels in its own file: In video
game music files, multiple channels sometimes correspond to
different parts of a level (e.g. Klonoa) - use this option to
export those parts separately. If the number of channels is
odd, the last channel will be exported on its own.
- Put each channel in its own file: With this option,
even stereo files will be split up.
- Output format: see above. Note that WAV files can have
a "smpl" chunk at the end of the file if the audio is looping;
most programs will simply ignore this data, but this program can
read it and loop the song appropriately.
- Options: Audio quality options for encoding. Only
available for Ogg Vorbis and MP3.
- BRSTM, BCSTM, and BFSTM will allow you to select an encoding
(ADPCM, PCM16, or PCM8.)
- Export whole song: exports from the beginning of the
track through at least one loop and with an optional amount of
fade-out time at the end. The text in "suffix" will be appended
to the filename.
- Write looping metadata: WAV, Ogg Vorbis, and the
Nintendo formats (e.g. BRSTM) all support looping, so by
default, the loop start and end points will be encoded in the
output file, and audio players (usually special apps or video
games) will be able to take advantage of this information. If
you don't want this information to be included (i.e.
you want the song to always loop a certain amount of times,
and not indefinitely), uncheck this box.
- Export segment before loop: exports the section from
the beginning of the track until the loop start point. The text
in "suffix" will be appended to the filename.
- Export loop segment: exports the section from the loop
start until the loop end. The text in "suffix" will be appended
to the filename.
- Skip re-encoding for similar formats when possible:
Choosing this option allows Looping Audio Converter to skip
re-encoding audio in certain circumstances:
- A BrawlLib B*STM output format is used and the input format
is also B*STM
- A VGAudio output format is used and VGAudio also supports
the input format
- An output format is used that uses ffmpeg / SoX as the
converter (such as Ogg Vorbis or MP3) and the input and output
file extensions match
- The "MP3" output format is used and the input file is an
MSF file with MP3 data
- Number of simultaneous encoding/decoding tasks: Audio
encoding can take a long time, so this program lets you run
several encoding processes in parallel. This number represents
the maximum amount of "threads," including the decoding
operation. The default value (recommended) is the number of
logical processor cores in your PC.
- Load Options and Save Options: These buttons
allow you to load and save the options listed above to an .xml
file. If there is a file in the current directory named
LoopingAudioConverter.xml when the program starts, it will try
to load options from this file automatically.
Command line arguments:
- Specify --auto to start the conversion automatically and close
the program when it is complete.
- Specify an .xml file to set the conversion settings. You can
export an .xml file from Looping Audio Converter with "Save
Options".
- All other command line arguments will be treated as input
files.
These command line arguments might be removed or modified in
future versions.
If you just want to convert between WAV and VGAudio-supported
formats like BRSTM, try VGAudioCli.
If your input files don't have loop
points, but they should, you can specify them in a file called loop.txt
in the folder you run the program from.
Each line should have the format:
{loop-start} {loop-end} {filename}
For example:
853168 5087322 41 Carefree Action.wav
Looping Audio Converter will pick up on this file if it exists.
To prevent a song from looping, use a negative number as the loop
start value.