Musical Instrument Digital Interface (MIDI) to standardowy sposób komunikacji elektronicznej instrumentów muzycznych, sprzętu i komputerów. Interfejs Web MIDI API umożliwia witrynom sterowanie wirtualnym syntezatorem, automatami perkusyjnymi i innymi instrumentami przez połączenie z klawiaturą lub kontrolerem MIDI użytkownika.
Ze względu na problemy z bezpieczeństwem dotyczące swobodnego dostępu do urządzeń MIDI za pomocą interfejsu Web MIDI API organizacja W3C Audio Working Group zażądała wymogu uzyskania konkretnych uprawnień w przypadku całego korzystania z interfejsu MIDI API w specyfikacji Web MIDI. Ta zmiana, wcześniej stosowana tylko do zaawansowanego korzystania z MIDI (wiadomości SysEx) w Chrome, obejmuje teraz też standardowe interakcje MIDI.
Oznacza to, że cały interfejs Web MIDI API jest obecnie ograniczony po wyświetleniu prośby o przyznanie uprawnień. Tę zmianę będziemy wprowadzać stopniowo, począwszy od Chrome 124.
Poniższy kod pokazuje, jak postępować z prośbą o przyznanie uprawnień, która została wywołana przez wywołanie navigator.requestMIDIAccess()
, gdy użytkownik nie przyznał jeszcze dostępu.
try {
// Prompt user to access MIDI devices.
const access = await navigator.requestMIDIAccess();
// Get lists of available MIDI controllers...
} catch (error) {
if (error.name === "SecurityError") {
// The website is not allowed to control and reprogram MIDI devices.
}
}
Zgłaszaj się do zespołu pomocy ds. wiadomości SysEx navigator.requestMIDIAccess({ sysEx: true })
tylko tylko wtedy, gdy Twoja witryna absolutnie potrzebuje tej funkcji. Ciągi tekstowe o uprawnieniach w Chrome mogą w przyszłości ulec zmianie.
Testowanie
Tę zmianę wprowadzamy stopniowo w Chrome 124. Aby włączyć go lokalnie na urządzeniu, konieczne może być uruchomienie Chrome przy użyciu przełącznika wiersza poleceń --enable-features=BlockMidiByDefault
.
Przetestuj tę zmianę na stronie https://permission.site, klikając przyciski „MIDI” i „MIDI + SysEx”.
Obsługiwane przeglądarki
Dostęp do urządzeń MIDI wymaga zgody użytkownika w przeglądarkach Chrome i Firefox.
Prześlij opinię
Zespół Chrome i społeczność ds. standardów internetowych chcą poznać Twoje wrażenia związane z tą zmianą. Przekaż nam swoją opinię, komentując istniejące lub zgłaszając nowe problemy z GitHubem.
Przydatne linki
Podziękowania
Dziękujemy Michaelowi Wilsonowi za przeczytanie tego posta.