Vraag:
Manier om het lawaai te voorkomen wanneer 2 telefoons samen
Mark K
2020-05-21 19:04:03 UTC
view on stackexchange narkive permalink

Bij het gebruik van een app, bijvoorbeeld Wechat, om videochats te houden.

Twee Android-telefoons A en B zitten in dezelfde kamer. De twee gebruikers van A en B verklaarden videochatten met mobiele telefoons C en D in een andere stad, wanneer twee gebruikers van C en D ook in dezelfde kamer zitten.

Dat wil zeggen, telefoon A belt naar telefoon C; telefoon B belt naar telefoon D.

Toen de videochats begonnen en de telefoons A en B, C en D dicht bij elkaar staan, begonnen er scherpe geluiden te verschijnen.

Wat is het manier om deze geluiden in de videochats te voorkomen?

Bedankt.

enter image description here

Twee antwoorden:
Andrew T.
2020-05-21 19:43:14 UTC
view on stackexchange narkive permalink

Dit fenomeen wordt audiofeedback genoemd, dat meestal optreedt wanneer het geluid van de luidsprekers terug in de microfoon reikt en vervolgens wordt versterkt door de luidspreker-microfoonlus.

Gebruikelijke en algemene oplossingen zijn om de lus af te snijden, of op zijn minst de lusversterking te verminderen door:

  1. Oortelefoon of hoofdtelefoon te dragen (isoleer de luidspreker en de microfoon, voorkom de feedbacklus volledig)
  2. Demp de microfoon wanneer u niet hoeft te spreken (voorkom de kans op feedbacklus)
  3. Verlaag het luidsprekervolume (verlaag de volumeversterking)
  4. Neem enige afstand tussen de luidsprekers (verlaag de volumeversterking)
Aangezien dit een fysiek fenomeen is, weet ik niet zeker of er Android-specifieke oplossingen zijn, maar ik ben ook geïnteresseerd om te weten of er ... overweeg om het te posten als het antwoord!
De telefoon "kent" het geluid dat hij uit zijn luidsprekers voortbrengt en kan dat dus aftrekken van wat hij opneemt met de microfoon.Dit is vergelijkbaar met * echo-onderdrukking *.Dit zou iets zijn dat in software kan worden gedaan.Verder zijn de basistechnieken van "akoestische hygiëne" die u noemde het meest effectief.Er zijn geen complexe algoritmen voor het onderdrukken van feedback nodig als er geen feedback is om te onderdrukken!
@JörgWMittag Dergelijk aftrekken zou niet werken als er twee telefoons bij betrokken zijn.
Dmitry Grigoryev
2020-05-22 14:51:54 UTC
view on stackexchange narkive permalink

Voordat technieken voor het annuleren van feedback algemeen werden, zou een dergelijk effect zelfs optreden met één paar telefoons, bijv. telefoon A bellende telefoon C.Als beide telefoons op de luidspreker staan, gaat het signaal dat wordt uitgezonden door telefoon A in de microfoon van A en wordt het doorgestuurd naar telefoon C, waar dezelfde feedback tussen de luidspreker en de microfoon het weer terugzendt naar A, etc:

  SPK_A -> MIC_A -> SPK_C -> MIC_C  

Dit probleem wordt voorkomen door het luidsprekeruitgangssignaal voor de microfooningang af te trekken . Maar om een ​​dergelijke software-aftrekking te laten werken, moet telefoon A weten wat hij moet aftrekken: als A de enige telefoon in de kamer is, kan hij zijn eigen luidsprekeruitgang aftrekken en werkt feedbackonderdrukking zoals bedoeld.

Met een tweede paar telefoons mislukt het annuleren van feedback omdat het signaal van telefoon A in plaats daarvan wordt opgevangen door telefoon B. Omdat telefoon B niet weet welk signaal A uitzond, kan hij het niet van zijn microfooningang aftrekken en naar telefoon D sturen:

  SPK_A -> MIC_B -> SPK_D -> MIC_C 

Er is een tweede (symmetrische) feedbacklus die mogelijk is:

  SPK_B -> MIC_A -> SPK_C -> MIC_D  

Zoals je kunt zien, zijn de lussen gesloten en is er geen mogelijkheid voor de feedback-annuleringssoftware om deze te verbreken.

Om ruis te voorkomen, moet je de cross-phone lussen fysiek, bijv door beide luidsprekers te dempen (overschakelen naar oortelefoon) in een van de kamers (bijv. A en B), of in een van de oproepen (bijv. A en C).

Inderdaad, de microfoons dempen, gescheiden zijn kamers of een enkel telefoontje tegelijk zou ook helpen, maar ik neem aan dat dat geen echte opties zijn.

Dit hangt enigszins af van de implementatie van de feedbackonderdrukking - u kunt de versterking ook automatisch verminderen / een notch-filter aanpassen als een toenemende hoge frequentiecomponent wordt gedetecteerd, en zo werken eenheden zoals deze https://www.behringer.com/Categories/ Behringer / Signal-Processors / Feedback-Suppressors / FBQ100 / p / P0A3Q # googtrans (en | en) maar ik weet niet of die benadering is geïmplementeerd op 'phones.
@PeteKirkham Hoge toonhoogte onderdrukken met een filter werkt alleen als de feedbackvertraging vast en erg klein is (enkele milliseconden), zoals tussen een microfoon en luidsprekers op een podium.Mobiele telefoons kunnen audio honderden milliseconden vertragen, wat betekent dat u het hele audiobereik moet wegfilteren om de feedback te elimineren.
Het is lang geleden dat digitale signaalprocessors in staat waren om zowel de piekfrequentie van een spectrum te detecteren als een smal filter op elk punt in het audiobereik te implementeren.Beiden maakten deel uit van het cursuswerk toen ik eind jaren tachtig mijn eerste diploma elektronica behaalde.
@PeteKirkham Als u bijvoorbeeld 10 kHz eruit filtert, wat voorkomt dan dat de feedbacklus op 10,1 kHz werkt?Als het probleem zo gemakkelijk op te lossen is, waarom denk je dat fabrikanten van mobiele telefoons het dan nog niet hebben opgelost?
De professionele systemen zoals degene die ik heb gekoppeld om de gefilterde frequentie te veranderen wanneer ze een verandering detecteren, anders zouden ze nutteloos zijn omdat de frequentie verandert wanneer mensen op het podium komen.Als je aan het OP denkt, is het een situatie die alleen optreedt als er twee telefoons in de loop zijn, dus het ontwikkelingswerk zou de meeste klanten niet ten goede komen, daarom zie je de aanpak in opnameapparatuur en systemen voor conferentiegesprekken in plaats van telefoons,waar de aftrekkingstechniek goed genoeg werkt voor de meeste gevallen.


Deze Q&A is automatisch vertaald vanuit de Engelse taal.De originele inhoud is beschikbaar op stackexchange, waarvoor we bedanken voor de cc by-sa 4.0-licentie waaronder het wordt gedistribueerd.
Loading...