musescore / MuseScore

MuseScore is an open source and free music notation software. For support, contribution, bug reports, visit MuseScore.org. Fork and make pull requests!
https://musescore.org
Other
12.39k stars 2.68k forks source link

[MU4 Issue] Mixer settings are ignored when exporting a midi file #16312

Open s09bQ5 opened 1 year ago

s09bQ5 commented 1 year ago

Describe the bug When exporting a score as midi file, the volume settings in the mixer are ignored. This is different from what MuseScore 3.x did and is not in line with export as .wav file.

To Reproduce Steps to reproduce the behavior:

  1. Open a score
  2. Reduce the volume of all instruments except one
  3. Export as midi file
  4. Play the midi file

Expected behavior The volume of all instruments except the one should be lower when playing the midi file. I would have expected that MuseScore adds Change Control 7 messages to the midi file to set the volume for each used channel, but it no longer does since version 4.

Platform information

dmland commented 8 months ago

Moreover, MIDI exports ignore hidden instruments in Part exports.

  1. Open an SATB + Piano score
  2. Click "Parts" in toolbar, select "Soprano", click "Open Selected"
  3. In the Soprano part: From the menu, choose "View > Instruments" and unhide Piano
  4. Play the part as shown
    • Expected & Actual: Sporano and Piano instruments play
  5. From the menu, choose "File > Export…"
    • Expected: "Select parts to export" shows only the active part, "Soprano"
    • Actual: "Select parts to export" confusingly shows all parts and "Main score"
  6. Choose Format: "MIDI file"
  7. Tick "Main score" ("Soprano" exports without accompaniment) and click "Export…"
  8. Play the resulting MIDI file
    • Note: File may not be playable: see #19643)
    • Expected: The file contains and plays only Soprano + Piano
    • Actual: The file contains and plays SATB + Piano
  9. Open the MIDI file in MuseScore
    • Expected: The file contains only Soprano + Piano instruments
    • Actual: The file contains all instruments