Coder Social home page Coder Social logo

loopingaudioconverter's Introduction

LoopingAudioConverter

This application acts as a frontend to other programs and libraries, and allows conversion between the Wii .brstm format and a variety of other formats.

Supported input formats:

WAV (with or without "smpl" chunk to denote looping audio)
MP3, using madplay
M4A/AAC, using faad
VGM/VGZ, using vgm2wav
Any audio format supported by SoX
Any audio format supported by vgmstream (including BRSTM and BCSTM)

Supported output formats:

WAV (with "smpl" chunk if the audio should loop; vgmstream can read these loops)
MP3, using lame
FLAC or Ogg Vorbis, using SoX
RSTM (.brstm) and CSTM (.bcstm), using RSTMLib, a subset of BrawlLib

See LoopingAudioConverter/About.html for more information.

Note: Each project in this repository has different license terms. See the individual folders for details.

loopingaudioconverter's People

Contributors

gabehxd avatar ilazoja avatar libertyernie avatar struggleton avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

loopingaudioconverter's Issues

Issue with .wv6 files

hello! I had to convert 800+ wv6 audio files from an old pc game. At first I downloaded the zip from the master branch - Vgstream supports the format, and I had no issue converting a few of them into wav by dragging and dropping each one into test.exe.
This was of course very tedious so I downloaded the latest (2.2.1) windows release to open the user interface, but it keeps refusing to open the files - probably because it doesn't recognize the format. And in fact if I try to drag and drop the wv6 files in the test.exe found in the 2.2.1 release, it won't convert them.
By replacing the whole vgstream folder with the one I found in the master release, things... sort of work? But not quite.
Whenever I try to convert from the user interface, I still get the "could not read X" error message, but when I look in the audios' folder, I do actually find a converted wav file! So test.exe actually runs. I still cannot control the output format, but if I just dismiss an error message for each sound file, I can "convert" 128 tracks at a time (by modifying the number of simultaneous tasks) before LoopingAudioConverter.exe crashes.

MSU-1 output sample rate

MSU-1 files are defined as always being 44.1kHz, so when outputting to MSU-1, the output sample rate should always be set to that. By default, it's not setting the output sample rate, so it just outputs the samples in their original rate, which leads to songs getting played back either to fast or too slow.

Error in the Ask option in version 2.1.

The method of creating brstm or bcstm by BrawlLib mode is not working correctly.
The sample rate setting procedure is not working, even if the sample rate is set, the file does not reproduce the created settings. the music plays from start to finish, without performing sample rate settings.

Support For NSF Input

What is a feasibility of adding support for converting from NSF (NES) format?

I just spent a few hours researching how to convert NSFs and the app workflows seem pretty awful. The main issue is that NSFs are just one file that has all of the games tracks.

I found a random site with a load of NSFs and M3U files that show when each song ends. Would this be useful? I also found a commandline converter for NSFs. NSF2WAV (http://nezplug.sourceforge.net/)

Are you planning on adding support for NSFs?

Possible Addition of SPC support-

Could it be possible to program in SPC support for snes music files? I reckon it could be doable with SPCPlay, sorta like how you integrated VGM support.

BCSTMs from LoopingAudioConverter do not work in-game in some cases

Whenever I convert any format to BCSTM format, the BCSTM doesn't work with Mario Kart 7. When the BCSTM is supposed to play, no music plays. I suspect that BCSTMs from LoopingAudioConverter will also not work for some games other than Mario Kart 7. I want to use LoopingAudioConverter to efficiently amplify the volume of multiple custom BCSTMs at a time, but this issue makes this not possible. Yes, I have tried converting one file at a time, and it does not change anything.

I can't use amplitude ratio

I would like to set my files to 75% of their original amplitude by setting "Amplify (amplitude ratio)" to 0.75. However, when I enter that number and click somewhere else, it updates to 75 instead.

Since I am German, and the value defaults to 1,000 (with a comma) I thought I might have to use a comma instead of a decimal point. But if I enter 0,75 and try converting, the program locks up at "Applying effects" and I have to close the Progress window with Task Manager. So I assume the tool isn't meant to handle commas there.

Although deamplifying by entering negative values for "Amplify (dB)" does work, I can only set it to a whole number, like -2 or -3, instead of -2.5 like I would like to.

Dependencies on GNU/Linux for LAC

Hello. I am trying to get Looping Audio Converter (LAC) not crashing on my Trisquel (Ubuntu-based) distro, and I have been hatching away at some dependency issues.

I needed to make sure libso, libvorbis and mono-complete were installed, however I am still having an issue where it seems some Mono related dependencies are missing on my machine.

Here is part of the error I am seeing:

[xcb] Too much data requested from _XRead
[xcb] This is most likely caused by a broken X extension library
[xcb] Aborting, sorry about that.

Do you need any more information in order to know what this issue may be and how to fix it?

I really, really love this program and have found it very useful is helping me convert lots of VGMs and VGZ files I have into FLACs. I have not found a program that is more easy to use. The problem is, I am a GNU/Linux user and would like to reap the benefits of your software on my main computer.

Please advise.

Regards,

David

Ask for loop information broken with multi-channel audio files

The option "ask" and "ask for all files" for files with no looping information doesn't work with audio files (I tested with wav), that have more then 2 channels.
I want to convert a 6 channel track for Zelda Botw and while I normally just convert a .ogg with existing loop information, it doesnt bother me. But the official .ogg converter, that Audacity is using, corrupts the 6th channel (apparantly a feature). So I really hope this can be resolved

BWAV Support

I was wondering if it would be possible to add support for converting from/to bwav? (If it's not already planned) It is used in Super Mario Maker 2 and Animal Crossing: New Horizons.

Files converted from .hps loop/end too early

When I convert .hps files to .brstm, the final few seconds of the file are missing. This happens on both normal and custom looped .hps files. The .hps files in question are made with dsp2hps, and I've tested them to make sure they sound right in .hps.

I've attached two conversions: the first is a file converted from .hps (which was converted from .wav), and the second is the same song converted directly from .wav.

output.zip

Update ?

You will post updates to the application ?

Missing programs

As soon as I open this, it gives me an error where it says that some programs are missing which causes malfunctions. It says to open some console for more details but how to do that is completely unclear and it happens on two different computers two. What should I do?

2019-08-16_18-09-21

VGZ conversion crashes

Can't seem to get all my VGZ files to convert.It happens with wav, flac, mp3, etc.It usually starts of fine then locks up after a couple of files.Anybody else running into this issue?

(Feature Request) MSF support.

MSF is a format that's used by the PS3 with several games like Skyrim and Under Night in Birth Exe Late for example LoopingAudioConverter can already convert from this format but not into it and that's what I would like to be added into this fantastic program mainly because a converter did exist at one point and trying to find a link to the thing is almost next to impossible.

If needed I can provide a sample.

Thanks.

BCSTM output doesn't allow specific Sample Rate

Specifically for MK7 music, that game requires that race music be 32728 Hz. When I try to output with this sample rate (using the 'New sample rate' feature, LAC instead outputs at 32000 Hz, rather than the sample rate I specified.

[Feature Request] Tempo and pitch editing

First, thank you for fixing the amplitude ratio issue. It works just like it should.

I use my BRSTMs for Mario Kart Wii tracks. The track music in MKWii gets 1 semitone higher and 20% faster when you're in the last lap, so I think it would be nice to have a built-in feature to change the input's pitch and tempo. Switching back and forth between this program and stuff like Audacity is a bit of a hassle.

[Feature Request] Add command line conversion

It would be great to be able to use Looping Audio Converter as part of a batch without learning how to use several different tools. As a starting point, Looping Audio Converter could just support one parameter (which would be the input file) and it would default simply to converting to brstm format. This simple design would also allow dragging a single file onto the exe for direct conversion to the same filename but with the brstm file extension.

After this first iteration of fulfilling this request, then other parameters/command line options could be added as desired.

On a related note, at this time, I'm not aware of a command line exe that will convert directly from a wav with smpl chunk to brstm format. Is there a solution for the time being already available?

BCSTM as Input for Output

I was only trying to just reduce the sample rate of my BCSTMs but the Program Didn't work for outputting BCSTMs.

TXTP files' mixing instructions not obeyed

I have a txtp file that mixes down all channels in a file to stereo. I wanted to convert it to another format, but the result is always a conversion of the original files without any of the modifications I made in the txtp file.

.bwav files don't seem to work properly

I'm trying to work with Mario Maker 2's .bwav files for the edit tracks and I used the latest build, but still coming up with an error saying they couldn't be read.

GUI Appearance Could Be Refined

I'm using Trisquel 7 (based on Ubuntu 14.04) ... When I run the app, the GUI looks less refined than on Windows. Please observe the following screenshot. Thank you for LAC. It's a very useful app!

screenshot from 2017-06-07 21 43 48

If there is a way for me to improve this, please advise.

Regards,

David

Problem with Wii game music

I made a music for my game. I use LoopingAudioConverter. But the game music stops after 1 minute. What should I do?

[Feature Request] AAC as Output

I wanted to Change the Music of Pokemon X and Y. 3DS games usually use BCSTM, but this one use AAC instead. I just want to convert BCSTMs to AACs format.

Progress indicator bar doesn't work correctly

The indicator bar doesn't show up when you go to convert a brstm into a looping wav. Can someone take a look into why it's not working as it should? This happens in the latest version.

Request: Regarding loop processing.

$It is a request for additional options.

Encode only if loop chunks are present,
Files that did not have a loop are kept in the file list.

$2Pass Fade Out
2Pass Fade-out time [Num]

make a natural fade-out by making 2 passes.
For example, if the first pass is 10 seconds and the second pass is 2.5 seconds,
Fade out for 7 seconds, then 3 seconds from behind
Fade out.

ex. - is fadeout
1Pass [----------]
2Pass [_______---]

$Silence section after fading out
Currently, there is no silence after fading out and it leads to the next song, so it is a little unnatural compared to a general CD.
Silence after Fade-out time [Num]

Limit CPU usage of the program.

Not an issue but more a feature, would there be a way to limit how much CPU is being used by the program even at the cost of time? For example it only uses 50% of the CPU at any one time, instead of the default where it uses as much CPU as possible.

[Feature Request] Add import/export support for MSU-1 PCM audio

There have been many MSU-1 looping audio packs created for SNES games (http://www.zeldix.net/f45-msu-1-hacking). These packs could be used as a source for easily creating other looping audio formats for use in other games or audio players. In addition, looopable audio on Smash Custom Music could be used as a source to go the opposite direction, acting as a source for new MSU-1 hacks for SNES games.

There are already command line tools with source code that handle importing from and exporting to this format:

By incorporating these two tools, I believe it would be low effort for somebody to add import/export support for this format.

Feature Request: Selecting certain channels for conversion

I came across this program the other day when looking to convert a few files. But I noticed the channel splitting options are limited. Would it be possible to add a feature that allows the user to choose whichever channels he or she wants for the converted file?

Request: Lossless OGG to OGG?

Long story short, I have software already that converts to ogg format and I was wondering if there was a way to add the looping metadata without having to re-sample the file (as that never ends well for the sound quality due to the differing sample rates...). I know it stems from SoX, at the moment, as the same issue arises when using the bcstm format to convert from other formats SoX uses and even the ogg I made with my other program. I'm just wondering if the conversion/re-sampling process can be bypassed entirely when using the same file type.

Edit: While this feature would be nice, I found a workaround: avoid ALL file types SoX touches and the sound quality problem vanishes. >.> Would be nice to have looping ogg files, but apparently it's not entirely needed.

AST Support

Add support for ast files from galaxy 1 and 2

odd numbered chunk sizes in WAV headers cause errors

I had this problem coming from rstmcpp, and I see that the c# version of it looks very similar. The problem on my end was that some chunk sizes in data or other types of chunk headers for metadata cause the reading to become misaligned, and the chunks are no longer correctly being read. There is probably some padding bytes after the chunk so that it aligns correctly, but I fixed it like this: https://gitlab.com/beelzy/rstmcpp/-/commit/36928e95bcdb477b9324bde38432df90d9c966b1#142fb1a31fbbc3dca44066cd354a542baf0e63dd_111_111

And some more background information about how this happens: mono/taglib-sharp#101

I know there's not a whole lot of interest in rstmcpp on your end, but I also fixed a minor issue with 8 bit file conversion to 16 bit, which you can also see in my commit.

[Feature Request] Nus3Bank

I have one last request, Sm4sh modding is using for music and sound a Nus3bank format. Sure i can easily use the tool i need to do this but its too long and the ending loop always do a crackled sound. Your tool is so well organized so i really need this format to work with also a fixed end loop. You can check the Easy Nus3bank Editor With GUI to see what i mean. Nus3bank can be read with VGMStream (an add-on for foobar2000).

Feature request: Criware AAX encoding/decoding support

Current options for AAX encoding are very limited. I believe it's just ADX with a different header? It supports segments. My current dilemma is making an AAX file with 1 segment loop from start-to-end; this isn't possible with current tools.

Feature request: support for "sf" formats.

I'd like to request the ability to convert from "sf" formats such as 2sf, ncsf, psf, etc to streamed formats. This isn't an easy feature to implement because "sf" formats are sequenced, not streamed so if you can, please try to implement this feature.

[request] BCSTM

Many people use this tool to convert MP3 / WAV to BRSTM just to convert it to BCSTM afterwards, to use them in 3DS Themes.
If its possible (it is for sure...), could you please add the possibility to convert to BCSTM directly?
Would be appreciated. Thanks in advance.

--auto Command Line Option Hangs

I tried using the --auto command line option to convert an mp3 to brstm from the command line but the application seems to hang, I don't get this issue when running the program normally. Tested on Windows 10.

"File already exists" not properly handled

When you try to convert to a file that already exists, it results in the generic "exe has stopped working". Maybe add proper handlers so an error prompt opens up instead?

Freezing in process.

Hello. During the decoding process, it freezes and stops working. Windows 10 user.

converting from kns

when I try to convert from a kns file to a bcstm file, it instead creates a file full of static. (try updating VGMStream)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.