Closed ensonic closed 2 years ago
Can you please post the original errors you see in the log? It seems to me that there are 2 mono files which could be combined to a stereo one. Maybe it is actually the detection which is not working? Ignoring the note is not helpful since you would have 2 different mono files in the stereo file which would playback with different pitch
Analyzing: /home/ensonic/Samples/Sound Solutions/8-AnalogAge/d_seq-fx/tubular
Could not create multisample: Sample chunks are not identical.
then I do:
> cd /home/ensonic/Samples/Sound Solutions/8-AnalogAge
> for f in d_seq-fx/tubular/*.wav; do echo "$f"; python ~/projects/audio/riffinfo.py "$f"; done >/tmp/wav.txt
> strings /tmp/wav.txt | grep Manuf | sort
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 36, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 36, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 42, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 42, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 48, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 48, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 54, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 54, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 60, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 60, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 66, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 66, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 72, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 72, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 78, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 78, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 84, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
Manufacturer: 71, Product 72, Sample Period: 22676, MIDI Unity Note: 84, MIDI Pitch Fraction: 0, SMPTE Format: 30, SMPTE Offset: 0, Num Loops: 8, Data: 0
> strings /tmp/wav.txt | grep .wav
d_seq-fx/tubular/tub_c1_l.wav
d_seq-fx/tubular/tub_c1_r.wav
d_seq-fx/tubular/tub_c2_l.wav
d_seq-fx/tubular/tub_c2_r.wav
d_seq-fx/tubular/tub_c3_l.wav
d_seq-fx/tubular/tub_c3_r.wav
d_seq-fx/tubular/tub_c4_l.wav
d_seq-fx/tubular/tub_c4_r.wav
d_seq-fx/tubular/tub_c5_l.wav
d_seq-fx/tubular/tub_c5_r.wav
d_seq-fx/tubular/tub_f#1_l.wav
d_seq-fx/tubular/tub_f#1_r.wav
d_seq-fx/tubular/tub_f#2_l.wav
d_seq-fx/tubular/tub_f#2_r.wav
d_seq-fx/tubular/tub_f#3_l.wav
d_seq-fx/tubular/tub_f#3_r.wav
d_seq-fx/tubular/tub_f#4_l.wav
d_seq-fx/tubular/tub_f#4_r.wav
I've reviewed more of the and also found a few where Manufacturer
or Product
is not set consistently (and I can write a tool to patch the files). The smpl
chunk does not have any filed wrt number of channels and the sampel in this collection are all mono (with _l/_r in the filename).
Did you try to set "_l" for the Mono->Stereo conversion? If yes, could you please send me these files for testing?
Yep, I did set that. I share them in a minute via google drive (if that works for you).
Thanks. I did change it to only check for same pitch. It is checked in if you want to build it yourself.
Just tested and 4.0.1 was able to convert another 29 multisample. Thanks for the quick fix! Your tool also pointed me to some samples there badly named (from note names in the file-names)!
For a bunch of conversions that fail, I get this error: https://github.com/git-moss/ConvertWithMoss/blob/6b5e05f47da06fd7dac19fc93bc8c3a4a2155fe8/src/main/java/de/mossgrabers/sampleconverter/de/mossgrabers/sampleconverter/file/wav/WaveFile.java#L210
I wrote a little python tool to dump the wav file and get this report:
As you can see the
sampled note
is recorded to theMIDI Unity Note
field. What do you think about ignoring this field in the comparison?