Muitos já devem ter notado que o formato MIDI deixou de ser usado à anos atrás e para Web somente o Internet Explorer ainda suporta.
Pois bem, durante esse tempo todo apareceram vários desenvolvedores Web com alternativas, mas nenhum que permitisse usar as MIDIs que conhecemos, e como fariamos isto então?
Bem um site com um API em JAVASCRIPT baseada em
W3C Web Audio (https://www.w3.org/TR/webaudio/) apareceu com uma ferramenta que realmente faz sentido e permite interpretar e repassar para o navegador qualquer arquivo midi. :*-*:
Veja aqui os exemplos usando MIDIS de jogos de SUPERNINTENDO (Super Famicom):
https://rpgmaker.000webhostapp.com/webmaster/midi/ (https://rpgmaker.000webhostapp.com/webmaster/midi/)
Site oficial: http://www.midijs.net (http://www.midijs.net)
Mas fica a pergunta, "dependeremos de um site sempre?", claro, não é um simples javascript que vai resolver tudo, existem mais de 100 arquivos além do JS principal, bem, foi fácil baixar todos os arquivos de uma única vez, mas descobrir seus nomes e diretórios (PASTAS) não, enfim estão salvos na minha máquina.
Todos os arquivos JS necessários:
(https://rpgmaker.000webhostapp.com/webmaster/midi/html5-mid-1.png)
Todos os arquivos PAT necessários:
(https://rpgmaker.000webhostapp.com/webmaster/midi/html5-mid-2.png)
(https://rpgmaker.000webhostapp.com/webmaster/midi/html5-mid-3.png)
O melhor de tudo, roda em vários navegadores e Smartphones.
Por que não passei os arquivos todos para Download, pelo simples motivo que respeito o trabalho desse cara, e quero ver a possibilidade de pagar uma licença para usar o recurso, eu apenas baixei para testar no modo OFFLINE, como usa requesições funcionou somente no FF e IE em modo offline (file:///).
Tudo bem, todos os arquivo da API juntos pesam 80Mb, mas se levar em consideração ainda sim é menos da 1/2 (metada) dos arquivo padrões de áudio da RTP e permite o uso de várias músicas clássicas dos consoles antigos, claro que isso dependeria de um PLUGIN ou modificação do RpgMV para funcionar, mas ainda sim, ninguém conseguiu fazer antes e é perfeito pro meu novo sistema:
http://www.condadobraveheart.com/forum/index.php?topic=2522.0 (http://www.condadobraveheart.com/forum/index.php?topic=2522.0)
Compatibilidade:Navegadores que foram feitos os testes, segundo o desenvolvedor nem todos os navegadores foram testados, por que é bem provavelmente que os navegadores afrentes dos listados funcionaram.
Os que funcionaram:Microsoft Windows
- Chrome 30, 31, 54
- Firefox 24 (fallback)
- Firefox 25, 26, 50
- Internet Explorer 7, 8, 9, 11 (fallback)
- Microsoft Edge 38
MacOS
- Safari 5.1.10 (fallback)
- Safari 6.2.8
- Safari 10.0.2
- Google Chrome 56
- Firefox 50
Linux
- Firefox 25 on Ubuntu 13
- Firefox 50 on Ubuntu 16
- Chromium 30 on Ubuntu 13
- Chromium 53 on Ubuntu 16
Android
- Google Chrome 31 on Android 4.1.1
- Google Chrome 31 (Standard Browser) on Android 4.4
- Google Chrome 32 (Standard Browser) on Android 4.4
- Mozilla Firefox 26.0.1 on Android 4.1.1
iOS
- Safari on iPhone and iPad on iOS 7
- Google Chrome 31 on iOS 7
Os que não funcionaramWindowsAndroid
- Standard browser on Android version 4.3 and previous versions
- Chrome 26 on Android 4.1.2 on Galaxy S3, probably a Samsung specific Problem
(Vale lembrar que navegadores de ANDROID com WebView antigos podem executar MIDI sem essa API, através da tag aposentada "EMBED")
MacOSiOS
- Safari on iOS 6, due to very limited Web Audio Api support and no available fallback
Pessoal, eu praticamente não mexi neste sistema, apenas o obtive de maneira informal, ainda estou tentando solucionar o problema da falta de looping.