frescobaldi / frescobaldi

Frescobaldi LilyPond Editor
http://www.frescobaldi.org/
GNU General Public License v2.0
745 stars 155 forks source link

MIDI Input doesn't work on Windows 10 - BROKEN #853

Open HeyItsJustMe opened 8 years ago

HeyItsJustMe commented 8 years ago

Sorry but MIDI input is not working on Windows 10 64bit. I've tried several MIDI keyboards, none work. But I can confirm MIDI is being transmitted correctly from these devices, but Frescobaldi will not do MIDI input. It just does nothing. Start and stop capture = completely broken on Win10. MIDI-OX shows perfectly fine MIDI data transfer FYI.

Can this be fixed please? It's such a hassle now. Thank you.

Note: I'm happy to report that the MIDI devices are working with MIDI INPUT in Frescobaldi on Windows 7 64. This is ONLY a problem with Windows 10 and 8.1 and Frescobaldi MIDI INPUT. Really hope you can fix this soon.

drydh commented 8 years ago

MIDI input doesn't work for me either (on Mac OS 10.10). MIDI output is fine. This is with Frescobaldi 2.19.0. I'll investigate this further when I've been able to get pyportmedia/pypm/pygame running under Python3 so I can debug (or I'll get the Python 2.x version running).

Migrating to mido (#579) or pyrtmidi would perhaps fix these issues but could involve quite some work.

HeyItsJustMe commented 8 years ago

But it works perfectly fine in Windows 7. What changed with Windows 10 that MIDI input is so terribly unusable? It is great in Win7.

Such a headache. I love Frescobaldi but this is a tough situation. Sorry you're having Mac MIDI issues as well.

drydh commented 8 years ago

I found the bug causing my problem: Frescobaldi has never honored the choice of the midi input device in the preferences due to a confusion between the prefixes 'midi.midi' and 'midi'! It therefore always uses the default input device. To check if this is also causing your problem, find the preferences for Frescobaldi (in the registry on Windows?) and change the key midi.midi.input_port to midi.input_port and see if this fixes your problem.

HeyItsJustMe commented 8 years ago

Would that have been really so different on Windows 7 where it only would cause a problem on 8.1 and Win10? Odd. I will try your suggestion and post my results here. Thank you for the tip!

Note: I can't find Frescobaldi entries anywhere in the Registry. They must be in the x86 Program Files folders? Do you know where it'd be? I see nothing like what you describe, sorry! I only see Preferences PY in the install DIR.

drydh commented 8 years ago

I don't have a Windows machine but looking at other issues, the key in the registry is probably (at least under Windows 8.1) called:

HHKEY_CURRENT_USER\software\Frescobaldi\frescobaldi\midi\midi\input_port

and should be changed to

HHKEY_CURRENT_USER\software\Frescobaldi\frescobaldi\midi\input_port

drydh commented 8 years ago

For further information on the location of Frescobaldi preferences, see QT Documentation.

unmostro commented 8 years ago

drydh, thanks a lot - your method works! I've opened the registry (on Windows 10), copied input_port item from HKEY_CURRENT_USER\SOFTWARE\frescobaldi\frescobaldi\midi\midi to HKEY_CURRENT_USER\SOFTWARE\frescobaldi\frescobaldi\midi, set it to correct value and voila - at last I can enjoy midi input right in Frescobaldi.

HeyItsJustMe commented 8 years ago

I hope this can be fixed in the next Frescobaldi update :) This registry trick was so genius thank you friends! I don't think a lot of users will want to (or feel safe doing) edit the Windows registry just to hack this. Maybe this will make it into the next build.

PS. unmostro is correct. I just tried it and it works finally!!!!!

drydh commented 8 years ago

Glad to hear that it worked out.

HeyItsJustMe commented 8 years ago

Do you think this could be fixed in the next release?

HughResnick commented 4 years ago

Running Frescobaldi on Win10. Not being very technical, I held my breath, and went into regedit. I was only able to dig down to HKEY_CURRENT_USER\SOFTWARE\frescobaldi\frescobaldi\midi where the choices I had were (Default), close_outputs, and polling_time.

Am I doing this right, and, if so, what are my next steps? Thanks.

19joho66 commented 4 years ago

I hvan't got a real midi device connected, but I've tried it with an virtual midi keyboard via loopMidi Port. The picture shows where to set the input port.

midi Setting I was then able to record midi notes. Hope this works for you

HughResnick commented 4 years ago

Thank you! Solved it.

wbsoft commented 4 years ago

Does Frescobaldi still need a fix? Or does it work correctly now? (Then this br can be closed)

HeyItsJustMe commented 4 years ago

The regedit hack above technically fixes the issue but it's more of a workaround than a true fix. The user must hack the registry in order for Frescobaldi to work. If you think this is ""fixed"" then sure, it's fixed I guess.

On 4/29/2020 4:58 PM, Wilbert Berendsen wrote:

Does Frescobaldi still need a fix? Or does it work correctly now? (Then this br can be closed)

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/frescobaldi/frescobaldi/issues/853#issuecomment-621460133, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFCTGUW64DNF76LI5L6RABTRPCIGPANCNFSM4CN6CRDA.

HughResnick commented 4 years ago

No. At least not due to my question. I was an idiot who was running 2.20 instead of the most recent version. As soon as I upgraded, the problem went away.