audiorecord

___ qstnhdr ___ Android aktive Geräuschunterdrückung ___ tag123android ___ Android ist das mobile Betriebssystem von Google, das zum Programmieren oder Entwickeln von digitalen Geräten (Smartphones, Tablets, Automobile, Fernseher, Wear, Glass, IoT) verwendet wird. Verwenden Sie für Themen rund um Android Android-spezifische Tags wie android-intent, nicht intent, android-activity, nicht activity, android-adapter, nicht adapter usw. Bei anderen Fragen als der Entwicklung oder Programmierung, aber im Zusammenhang mit Android Framework, verwenden Sie Der Link: https://android.stackexchange.com. ___ answer20156280 ___

Auch wenn Sie etwas gegen die Latenz unternehmen konnten, ist das ein schwieriges Problem, da Sie nicht wissen, wie weit das Telefon vom Ohr entfernt ist. Außerdem gibt es die Tatsache, dass die Entfernung nicht festgelegt ist (da der Benutzer die Maus bewegt) Telefon), plus die Tatsache, dass Sie kein Mikrofon für jedes Ohr haben (so können Sie nicht wissen, was die Welle an einem Ohr sein wird, bis es da ist, selbst wenn Sie keine Latenz haben)

Nachdem Sie das gesagt haben, können Sie möglicherweise etwas tun, das stark periodische Wellenformen abbrechen könnte. Alles was Sie tun können, ist es dem Benutzer zu ermöglichen, die Zeitverzögerung für jedes Ohr manuell einzustellen. Da Sie keine Mikrofone in der Nähe der Ohren haben, können Sie in Ihrem Code nicht wissen, ob Sie es sind das Problem besser oder schlechter machen.

    
___ tag123signalverarbeitung ___ AKA digitale Signalverarbeitung (DSP). Ein Signal ist ein Information tragendes Änderungsattribut einer Entität, aber im digitalen Sinn bezieht sich "Signal" entweder auf empfangene oder übertragene Datenströme / Datenblöcke, die üblicherweise reale Größen wie Audiopegel, Helligkeit, Druck usw. darstellen Zeit oder Entfernung. "Verarbeitung" ist die Handlung des Änderns, Analysierens oder Charakterisierens der Daten, um Informationen, die dem fraglichen Signal innewohnen, abzurufen / zu modifizieren. ___ answer28763323 ___

Bevor Sie einen NoiseSuppressor hinzufügen, müssen Sie prüfen, ob einer verfügbar ist:

%Vor%

Ein weiterer interessanter Punkt ist AcousticEchoCanceler

Die Audiolatenz sollte seit KitKat behoben sein. Sehen Sie sich dieses und dies .

    
___ qstntxt ___

Ich arbeite an einem etwas ehrgeizigen Projekt, um eine aktive Lärmreduzierung auf Android mit Ohrhörern oder Kopfhörern zu erreichen.

Mein Ziel ist es, Umgebungsgeräusche mit dem Android-Phone-Mikrofon aufzunehmen, die Phase zu invertieren (eine einfache * -1 auf dem Short-Value aus der Audioaufnahme?) und die invertierte Wellenform über die Kopfhörer wiederzugeben. Wenn die Latenz und die Amplitude nahe beieinander liegen, sollte es eine gute Menge an mechanisch strukturiertem Rauschen in der Umgebung aufheben.

Folgendes habe ich bis jetzt:

%Vor%

Ich war momentan aufgeregt, als ich feststellte, dass die Android-API bereits einen NoiseSuppression-Algorithmus hat (Sie werden sehen, dass er oben kommentiert wurde). Ich habe es getestet und festgestellt, dass NoiseSuppressor nicht viel getan hat, um konstante Töne zu eliminieren, was mich zu der Annahme verleitet, dass es nur einen Bandpassfilter bei nicht-vokalen Frequenzen durchführt.

Also, meine Fragen:

1) Der obige Code benötigt etwa 250-500ms von der Mikrofonaufnahme durch die Wiedergabe in Kopfhörern. Diese Latenz ist schlecht und es wäre großartig, sie zu reduzieren. Irgendwelche Vorschläge würden geschätzt.

2) Ungeachtet dessen, wie eng die Latenz ist, ist mein Verständnis, dass die Wiedergabesignalform einen Phasenoffset von der tatsächlichen Umgebungsrauschwellenform aufweist. Dies deutet darauf hin, dass ich eine Art Wellenformvergleich durchführen muss, um diesen Offset zu berechnen und zu kompensieren. Gedanken darüber, wie das berechnet wird?

3) Wie sieht das aus, wenn es um die Latenzkompensation geht? Ich habe eine Reihe von Shorts in jedem Zyklus, also wie würde eine 30ms oder 250ms Latency aussehen?

Ich bin mir der grundsätzlichen Probleme bei diesem Ansatz bewusst, dass der Ort, an dem das Telefon nicht neben dem Kopf ist, wahrscheinlich einen Fehler verursacht, aber ich bin hoffnungsvoll mit einer dynamischen oder festen Latenzkorrektur, die vielleicht möglich ist um es zu überwinden.

Danke für Anregungen.

    
___ tag123audio ___ Sound und Programmierung von Audio-Hardware und den verschiedenen Audio-Formaten oder Containern. Bei speziellen Fragen zur Tonwiedergabe verwenden Sie [Tonwiedergabe]. Für spezielle Fragen zur Tonaufnahme verwenden Sie [Tonaufnahme] oder [Tonaufnahme]. ___ tag123noisereduction ___ Alles, was mit Techniken und Werkzeugen zur Rauschreduzierung zusammenhängt. Diese Markierung kann für Fragen zu Algorithmen (und entsprechenden Implementierungen) verwendet werden, die verwendet werden, um Rauschen in digitalen Daten und Signalen zu reduzieren. ___ tag123audioorecord ___ AudioRecord-Klasse in der Standard-Android-API zum Aufnehmen von Rohaudio. ___
4
Antworten

Aufnahme .Wav mit Android AudioRecorder

Ich habe viele Seiten über den AudioRecorder von Android gelesen. Sie können eine Liste von ihnen unter der Frage sehen. Ich versuche Audio mit AudioRecorder aufzunehmen, aber es funktioniert nicht gut. %Vor% Es wird eine WAV-Datei erstel...
19.06.2013, 13:16
2
Antworten

Kann nicht auf das Mikrofon zugreifen, wenn es in Android von einer anderen App verwendet wird

Ich verwende Code von der folgenden URL, um Sound-Daten vom Mikrofon mit AudioRecord zu erhalten: Ссылка Das Problem, das ich sehe, ist, dass, wenn eine andere App auch das Mikrofon verwendet, ich einen Fehler (Status -3) von AudioRecord be...
11.06.2014, 18:34
2
Antworten

Android aktive Geräuschunterdrückung

Ich arbeite an einem etwas ehrgeizigen Projekt, um eine aktive Lärmreduzierung auf Android mit Ohrhörern oder Kopfhörern zu erreichen. Mein Ziel ist es, Umgebungsgeräusche mit dem Android-Phone-Mikrofon aufzunehmen, die Phase zu invertieren (...
22.11.2013, 20:03