View Issue Details

IDProjectCategoryView StatusLast Update
0001254OpenMPT[All Projects] Feature Requestpublic2019-08-26 06:39
Reporterkinnikinnick Assigned To 
PrioritynoneSeverityfeatureReproducibilityunable to reproduce
Status newResolutionopen 
Product Version 
Target VersionFixed in Version 
Summary0001254: Removing dead silence at the end of samples
Description

I thought about this, and I think either Cleanup or the Automatic Sample Trimmer should be able to remove dead silence at the end of samples, perhaps at the beginning of samples too, perhaps as a popup asking you whether or not you want to remove the silence at the beginning of samples with Cleanup, and the silence at the end of samples with the Automatic Sample Trimmer.

I don't know how hard that is to implement, since I don't know C++ (only JavaScript.)

TagsNo tags attached.
Has the bug occurred in previous versions?
Tested code revision (in case you know it)

Activities

Saga Musix

Saga Musix

2019-08-25 10:39

administrator   ~0004024

It sounds easy but there are some inherent consequences that may not be that common to be found in modules but they do exist (I have made use of that trick more than once): Sometimes there is silence at the end of the sample just so that it keeps playing and making it possible to retrigger it (in IT the sample will not retrigger if it has stopped playing). In this case the Automatic Sample Trimmer will then do the only right thing that it can do in that situation: It recognizes that the silence is being played, and doesn't trim it. In MOD there could be similar consequences due to the on-the-fly sample swapping mechanics. Hence I'm rather inclined not to have this optimization. Too many things can go wrong without the user realizing it before it's too late.

Saga Musix

Saga Musix

2019-08-25 11:34

administrator   ~0004025

Also, trimming silence at the start of the sample will obviously change the sound of the module because now the sampled sound will be heard earlier than intended. This is also found in real-world modules e.g. in pre-shifted claps (clap samples that have a fade-in before the actual clap is being heard, with silence at the beginning to make them align properly to the beat grid). This is something that absolutely shouldn't be decided automatically.

kinnikinnick

kinnikinnick

2019-08-26 06:32

reporter   ~0004026

Oh, I didn't realize that. I realized that trimming silence at the start shouldn't be done automatically, which is why I said it could be included in the Cleanup as a popup. Perhaps make trimming silence at the end as a popup asking you whether you want to or not?

But I do agree now that there are many things that can go wrong with this.

Saga Musix

Saga Musix

2019-08-26 06:39

administrator   ~0004027

The cleanup dialog is simply the wrong place for this. Its intention is to never modify the module in an audible way - it just cleans up the module, it doesn't optimize the last bits out of it. The peresence of 100% silence is also only really relevant for 8-bit samples most of the time - because quite often, you will find that what looks like total silence is in fact still a bit of noise in 16-bit samples. I'd say that in either case it's still best if the musicians goes through the samples one by one to make their decisions. However, that doesn't mean that there's nothing that OpenMPT can help with - for example there could be a sample editor tool that detects and selects silence - then you can do with that selection whatever you want.

Issue History

Date Modified Username Field Change
2019-08-25 06:43 kinnikinnick New Issue
2019-08-25 10:39 Saga Musix Note Added: 0004024
2019-08-25 11:34 Saga Musix Note Added: 0004025
2019-08-26 06:32 kinnikinnick Note Added: 0004026
2019-08-26 06:39 Saga Musix Note Added: 0004027