MiniAudio-Wrapper WASAPI MP3 RECORDING
Übersicht BlitzMax, BlitzMax NG Codearchiv & Module
MidimasterBetreff: MiniAudio-Wrapper WASAPI MP3 RECORDING |
Di, Apr 27, 2021 9:35 Antworten mit Zitat |
|
---|---|---|
Mit der Audio-Library MiniAudio wird ein modernerer Zugriff auf Audio-Devices möglich. Ich stelle hier mal die Möglichkeiten vor und hänge die benötigen File gleich unten dran.
MiniAudio Audio-Library Wrapper für BlitzMax NG Diese Schnittstelle ermöglicht ... - Audiowiedergabe mit geringer Latenz von 30 ms über WASAPI - Echtzeit-Samples Zugriff in bereits gestartete Sounds - MP3-Dekodierung - Full Duplex: gleichzeitig Aufnahme und Wiedergabe - Leicht zu bedienende Audioaufnahme mit geringer Latenz - Konvertierung von TAudioSamples in signed-32bit oder float32bit Samples - der Wrapper ist als Module geschrieben MiniAudio ist eine C-Bibliothek für verschiedene Betriebssysteme: Mac, Linux, Windows, ... Alle Informationen und den Quellcode findet Ihr hier: https://miniaud.io/index.html Für BlitzMax benötigt Ihr nur das Modul mima.miniaudio, das Ihr auf diesem GitHub-Account findet: https://github.com/MidimasterS...io-Wrapper Das Module enthält 3 Dateien: - MiniAudioWrapper.c - MiniAudio.bmx - MiniAudiox.h - Duc-Ordner für ausführliche BlitzMax-Hilfe Außerdem findet Ihr dort viele Code-Beispiele und die dazu passenden Audiodateien zum Testen. Dies ist Version 1.25 vom 2021-06-08. Dies sind die Funktionen, die bereits funktionieren: - Wiedergabe MONO STEREO, 3-32 Channels - MP3- und FLAC-Dateien wiedergeben mit PlaySound() - Recording aufnehmen MONO, STEREO oder 3-32 Channels - Alle Hardwaregeräte auf allen Plattformen werden akzeptiert inkl. WASAPI unter Windows - Formate: 8bit, 16bit, 32bit und 32bit-float - Abtastraten von 8000-192000Hz - Geringe Latenz von 30 ms - jetzt auch problemlos im DEBUG mode nutzbar - Konvertierung von TAudioSamples - CallBack-Access, Multithread - eigene Audios als WAV-Datei speichern, auch Streams! - USB-Hardware Audio-Devices nutzen bis 32 Channels Inhalt der ZIP-Datei: MiniAudio.bmx der BlitzMax-Teil des Wrappers. Die BlitzMax-Hilfe zeigt alle verfügbaren Funktionen an MiniAudioWrapper.c der C-Teil des Wrappers. Ändere dort nichts. MiniAudiox.h die eigentliche Bibliothek von David Reid - mackron@gmail.com. Sie musste an 6 Stellen leicht modifiziert werden, damit sie auch unter BlitzMax DEBUG-mode funktioniert. Ändere dort nichts. OpenClose.bmx Erste Demo-App. Öffnet das Gerät für die Wiedergabe und zeigt einige Informationen an. Schließen Sie es dann sofort. PlayNoise.bmx Zweite Demo-App. Erzeugt nur Geräusche, wenn die Maus gedrückt wird. MiniAudioTestLatency.bmx Ermöglicht das Erkennen der Latenz des Geräts. Höre auf die Zeitverzögerung zwischen dem rhythmischen Knistern und Deinem Mausklick an StereoSinus Demonstriert, wie man Audio-Samples in Echtzeit erstellt. Verwendet STEREO, um zwei verschiedene Wellenformen zu erstellen. FreeAudioMove.bmx (einschließlich Test.ABC.ogg) Demonstriert, wie ein vorhandenes Audiofile einfach wiedergegeben wird. Verwendet 16-Bit-MONO und 12-kHz sowie Standard-SHORTs ohne Vorzeichen. Reverb.bmx (einschließlich Test.ABC.ogg) Demonstriert, wie ein vorhandenes Audiofile in Echtzeit bearbeitet wird. Verwendet 16-Bit-MONO und 12-kHz, aber interne 32-Bit-Int-Samples mit Vorzeichen CaptureRecording.bmx (einschließlich Test.ABC.ogg) Demonstriert, wie ein 16-Bit-MONO-INPUT-Device mit 48 kHz erfasst und die Samples in einem TAudioSample gespeichert werden. Außerdem wird DUPLEX aktiviert, um das eingehende Signal sofort abzuhören. LoadMP3.bmx (einschließlich Test.ABC.mp3) Demonstriert das Öffnen einer MP3-Datei für TAudioSample und TSound, PlaySound. ConvertAudioSample.bmx (einschließlich Test.ABC.ogg) Demonstriert das Konvertieren eines TAudioSamples in moderne 32bit-float-Samples (Werte von -1.00 bis +1.00) SaveTAudioSample.bmx (einschließlich Test.ABC.ogg) Demonstriert, wie ein BlitzMax AudioSample in einer WAV-Datei gespeichert wird. Dies funktioniert mit MONO und STEREO, 8 Bit und 16 Bit und beliebiger SampleRate. WriteWavFile.bmx Demonstriert, wie ein TBank-Inhalt in einer WAV-Datei gespeichert wird. Dies funktioniert mit 1-32 Kanälen, 8-Bit- und 16-Bit-32-Bit- und 32-Bit-Float und beliebiger SampleRate. Kann auch zum kontinuierlichen Speichern von Audio-Streams verwendet werden. CaptureRecording_II.bmx Demonstriert, wie Capture in höchster Qualität vom STEREO IN mit 48 kHz 32bit-FLOAT erfasst wird, sofort via DUPLEX-Monitoring auf die Computerlautsprechern umgeleitet wird. Am Ende werden die Audio-Daten als WAV-Datei gespeichert. CaptureRecording_III.bmx Demonstriert, wie 8 IN-Kanäle eines USB-Audio-Interfaces mit 48 kHz erfasst, die Samples modifiziert und auf STEREO reduziert werden, um sofort DUPLEX-Monitoring auf den Computerlautsprechern zu haben. Alle Eingänge werden in hoher Qualität in eine 8-Spur WAV-Datei mit 32bit-INT gespeichert. Hier findet Ihr ab sofort immer die aktuelle Version des Wrapper und allen Code-Beispielen: https://github.com/MidimasterS...io-Wrapper |
||
- Zuletzt bearbeitet von Midimaster am Mi, Jun 09, 2021 12:58, insgesamt 3-mal bearbeitet
MidimasterBetreff: MiniAudio jetzt als Module erhältlich |
Mi, Mai 12, 2021 18:58 Antworten mit Zitat |
|
---|---|---|
Ich habe die neueste Version vom MiniAudio-Wrapper hochgeladen. Jetzt ist das ganze als Module in BlitzMax nutzbar. Inclusive Dokumente für die BlitzMax-Hilfe.
Neu dazugekommen ist jetzt: DUPLEX-Audio was gleichzeitiges Recording und Wiedergabe ermöglicht TAudioSample-Konvertierung, um 16bit-Samples in 32bit-float-Samples umzuwandeln als nächstes werde ich wohl mal die Equalizer-Möglichkeiten des MiniAudio für BlitzMax vefügbar machen. |
||
Gewinner des BCC #53 mit "Gitarrist vs Fussballer" http://www.midimaster.de/downl...ssball.exe |
MidimasterBetreff: USB Audio Device Capture and WAV Saving FLAC |
Fr, Mai 21, 2021 16:50 Antworten mit Zitat |
|
---|---|---|
Die neueste Version des MiniAudio-Wrapper ist online. Ab jetzt kann man:
FLAC und WAV-Dateien laden auch mit 24bit und 32bit samples und auch bis zu 32 channels. Audio-Daten als WAV-Dateien speichern. Es lassen sich die alten BlitzMax-Formate speichern. Aber natürlich auch die neuen Multi-Channel-Formate 1-32 channels mit 32bit-int und 32bit-float Formaten. Ebenso ist es jetzt möglich mit MiniAudio Hardware-USB-Audio Devices mit bis zu 32-Spuren für Capture (Recording) und Playback ohne nennenswerte Latenzzeit zu verwenden. |
||
Gewinner des BCC #53 mit "Gitarrist vs Fussballer" http://www.midimaster.de/downl...ssball.exe |
MidimasterBetreff: Jetzt auf GitHub und mit erweitertem ExTaudioSample Type |
Mi, Jun 09, 2021 13:12 Antworten mit Zitat |
|
---|---|---|
Ab sofort findet ihr das MiniAudio-Modul in eime eigenen GitHub-Account. Dort ist aber sofort die Version 1.25 zum Download bereit.
Hier mal drei Möglichkeiten, wie man mit Capture Audio-Recording über das MiniAudio-Modul machen könnte: (Den vollständigen code findet Ihr auf dem GitHub und im MOD-Ordner) Einfaches Capture in das alte BlitzMax TAudioSample BlitzMax: [AUSKLAPPEN] SuperStrict STEREO Capture mit hoher Qualität 32bit-Float und Speicherung als WAV-Datei BlitzMax: [AUSKLAPPEN] SuperStrict 8 Kanal Capture vom USB-Hardware-Device und Speicherung als 8-Track-WAV-Datei BlitzMax: [AUSKLAPPEN] ' example to demonstrate MULTI-CHANNEL capturing audio with miniaudio |
||
Gewinner des BCC #53 mit "Gitarrist vs Fussballer" http://www.midimaster.de/downl...ssball.exe |
Übersicht BlitzMax, BlitzMax NG Codearchiv & Module
Powered by phpBB © 2001 - 2006, phpBB Group