Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MIDI Format 2 files do not play sequentially #1366

Closed
spessasus opened this issue Aug 8, 2024 · 3 comments
Closed

MIDI Format 2 files do not play sequentially #1366

spessasus opened this issue Aug 8, 2024 · 3 comments

Comments

@spessasus
Copy link
Contributor

FluidSynth version

Execute fluidsynth --version and provide the output.

$ fluidsynth --version
ALSA lib pcm_dsnoop.c:567:(snd_pcm_dsnoop_open) unable to open slave
ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm.c:2722:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2722:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2722:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_oss.c:404:(_snd_pcm_oss_open) Cannot open device /dev/dsp
ALSA lib pcm_oss.c:404:(_snd_pcm_oss_open) Cannot open device /dev/dsp
ALSA lib pcm_a52.c:1036:(_snd_pcm_a52_open) a52 is only for playback
ALSA lib confmisc.c:160:(snd_config_get_card) Invalid field card
ALSA lib pcm_usb_stream.c:481:(_snd_pcm_usb_stream_open) Invalid card 'card'
ALSA lib confmisc.c:160:(snd_config_get_card) Invalid field card
ALSA lib pcm_usb_stream.c:481:(_snd_pcm_usb_stream_open) Invalid card 'card'
ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) unable to open slave
FluidSynth runtime version 2.3.6
Copyright (C) 2000-2024 Peter Hanappe and others.
Distributed under the LGPL license.
SoundFont(R) is a registered trademark of Creative Technology Ltd.

FluidSynth executable version 2.3.6
Sample type=double

Describe the bug

Provide a clear and concise description of the current situation, e.g. how the bug manifests.
test-2-tracks-type-2.zip

The provided MIDI file plays notes simultaneously when it shouldn't.

Expected behavior

Provide a clear and concise description of what you expected to happen.
This MIDI file should play sequentially (like indicated in the text events)

Steps to reproduce

Please explain the steps required to duplicate the issue, esp. if you are able to provide a sample application. E.g. how to start fluidsynth, what shell commands to enter, what midi events to send, etc.

fluidsynth test-2-tracks-type-2.mid

Hear the 2 scales simultaneously

Additional context

  • TiMidity++ works fine
  • Falcosoft MidiPlayer works fine
  • spessasynth works fine
@spessasus spessasus added the bug label Aug 8, 2024
@derselbst
Copy link
Member

I looked through the code. Format 2 is currently not supported, and the code doesn't check for it.

@hikari-no-yume
Copy link

Standard MIDI File format 2 is a pretty obscure feature that I don't think is commonly used. In a format 2 file, I believe that the different tracks are intended as different "arrangements" of a piece, rather than being intended to play simultaneously (like in format 1). It's not obvious to me what the correct way to play those back is for a MIDI player: playing them back sequentially makes sense, but letting the user pick which to play also makes sense.

Simply choosing not to support format 2 would be a reasonable option.

derselbst added a commit that referenced this issue Aug 18, 2024
Addresses issue #1366
@derselbst
Copy link
Member

Ok, thanks for the feedback. I have implemented a check.

@derselbst derselbst closed this as not planned Won't fix, can't repro, duplicate, stale Aug 18, 2024
derselbst added a commit that referenced this issue Aug 18, 2024
Addresses issue #1366
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants