[Patch] Echo Cancellation dauerhaft einschalten

sion

Neuer User
Mitglied seit
18 Sep 2004
Beiträge
129
Punkte für Reaktionen
0
Punkte
0
Hallo,

bekanntlich habe ich das Problem, daß sich die "Echo Cancellation" des zap-devices für ausgehende Anrufe (ISDN->Asterisk->SIP) nicht einschalten läßt, egal was in der zapata.conf steht. Bei Eingehenden Anrufen (POTS(SIP)->Asterisk->ISDN) war es jedoch immer aktiv!

Nachdem mir niemand weiterhelfen konnte, und ich auch nicht der einzige hier mit dem Problem bin, habe ich mich mal des Quelltextes angenommen, und eine zugegebenerweise unschöne Lösung erarbeitet: Jedes mal, wenn das ISDN-Telefon abgehoben wird, wird die Echounterdrückung aktiviert (bzw. nur beim 1. mal, weshalb auch immer...). Dies kann mit dem Befehl "zap show channel 1" kontrolliert werden.

Habe den Patch erst mit einem Anruf getestet, das Echo war deutlich leiser (wenn auch nicht vollständig verschwunden), Nachteile konnte ich noch keine feststellen. Wer also das Problem hat, kann das ja gerne mal ausprobieren... und mir die Ergebnisse schicken.

Die zu patchende Datei ist übrigens im Verzeichnis bri-stuff.0.1.0-RC4a/asterisk/channels/

Viel Spaß, Sion
 

Anhänge

Dirk_

Neuer User
Mitglied seit
23 Okt 2004
Beiträge
2
Punkte für Reaktionen
0
Punkte
0
Hallo,

erst mal vielen Dank fuer Deinen Patch, er hat mich dem Problem sehr viel naeher gebracht. Leider scheint es bei mir so zu sein, das EC immer auf dem 1 channel eingeschaltet wird, das Gespraech aber auf dem 2. channel laeuft - ohne ec... Vielleicht hast Du ja noch eine Idee.

Gruss,
Dirk
 

sion

Neuer User
Mitglied seit
18 Sep 2004
Beiträge
129
Punkte für Reaktionen
0
Punkte
0
Dirk_ schrieb:
Hallo,

erst mal vielen Dank fuer Deinen Patch, er hat mich dem Problem sehr viel naeher gebracht. Leider scheint es bei mir so zu sein, das EC immer auf dem 1 channel eingeschaltet wird, das Gespraech aber auf dem 2. channel laeuft - ohne ec... Vielleicht hast Du ja noch eine Idee.

Gruss,
Dirk
Also bei mir läuft das Gespräch immer auf Kanal 1, und da ist auch sicher das EC an. Du benutzt schon den bristuff rc4, oder? Ließ sich der Patch fehlerfrei einpflegen?

Gruß
 

Dirk_

Neuer User
Mitglied seit
23 Okt 2004
Beiträge
2
Punkte für Reaktionen
0
Punkte
0
Also bei mir läuft das Gespräch immer auf Kanal 1, und da ist auch sicher das EC an. Du benutzt schon den bristuff rc4, oder? Ließ sich der Patch fehlerfrei einpflegen?
Ja, das Patchen war kein Problem. Wenn ich das richtig sehe, wird die Stelle an der Du die zt_enable_ec einspielst nur einmal durchlaufen, wenn das erste mal der D Kanal gebraucht wird. Ich hab mal noch ein bisschen weitergesucht und bei rc04 in der Funktion pri_find_empty_chan in Zeile 6490 zt_enable_ec(pri->pvts[x]) eingefuegt, was dafuer sorgt, das EC jedesmal angeschaltet wird, wenn ein freier B Kanal gebraucht wird. (Bei 0.2.0 rc1 Zeile 6840) Das behebt das Problem fuer mich zuverlaessig.
Was mich sehr wundert, ist das wir Beide scheinbar die einzigen sind die Probleme damit haben (hatten) :)
 

wrrdlbrrmpft

Mitglied
Mitglied seit
17 Jul 2004
Beiträge
263
Punkte für Reaktionen
0
Punkte
0
Dirk_ schrieb:
Was mich sehr wundert, ist das wir Beide scheinbar die einzigen sind die Probleme damit haben (hatten)
Nö, hier ist das auch so. Nur hab ich keine Probleme mit Echo. Mich würde auch mal interessieren, ob es Versionen gibt, wo das Problem nicht vorhanden ist. Ansonsten könnte man mal nachsehen, ob es diesbezüglich schon eine Bug-Meldung gibt. Vielleicht kann das jemand machen, der davon mehr Ahnung hat als ich. Siehe auch hier:
http://www.digium.com/bugtracker.html
 

bjunix

Neuer User
Mitglied seit
18 Apr 2004
Beiträge
192
Punkte für Reaktionen
0
Punkte
0
so hab den patch auch mal drauf gemacht.

ich merk allerdings keine verbesserung.
mir kommt es vor als ob sich das echo problem sogar weiter verschlechtert hat.
naja vieleicht bild ichs mir auch nur ein.
 

sion

Neuer User
Mitglied seit
18 Sep 2004
Beiträge
129
Punkte für Reaktionen
0
Punkte
0
Dirk_ schrieb:
[..]Wenn ich das richtig sehe, wird die Stelle an der Du die zt_enable_ec einspielst nur einmal durchlaufen, wenn das erste mal der D Kanal gebraucht wird. Ich hab mal noch ein bisschen weitergesucht und bei rc04 in der Funktion pri_find_empty_chan in Zeile 6490 zt_enable_ec(pri->pvts[x]) eingefuegt, was dafuer sorgt, das EC jedesmal angeschaltet wird, wenn ein freier B Kanal gebraucht wird. (Bei 0.2.0 rc1 Zeile 6840) Das behebt das Problem fuer mich zuverlaessig.
Was mich sehr wundert, ist das wir Beide scheinbar die einzigen sind die Probleme damit haben (hatten) :)
Du hast vollkommen recht, der Patch schaltet nur 1x beim 1. Abheben des ISDN-Telefons EC ein - bei mir bleibt es jedoch danach über Tage eingeschaltet! (Dann muß ich auch diversen Gründen Asterisk, die Treiber oder das ganze System neu starten)
Mir scheint es auch so, als ob viele Leute dieses Problem überhaupt nicht kennen, was mir ein noch größeres Rätsel ist, da meines Erachtens ohne Patch EC garnicht eingeschaltet werden kann...Wenn mit deinem Patch es also besser läuft, kann ich nur sagen: Laß' es so! ;-)

Hat eigentlich schonmal jemand die 0.2.0rc1 ausprobiert; braucht man da auch noch den Patch, bzw. läßt er sich überhaupt anwenden?

Sion
 

ecco

Neuer User
Mitglied seit
28 Okt 2004
Beiträge
174
Punkte für Reaktionen
0
Punkte
0
Patches für 0.2.0-rc2

Ich habe die beiden Vorschläge von oben mal zusammen gefasst und mit bristuff-0.2.0-rc2 getestet, funktioniert.

Nebenbei noch ein Patch, damit man Asterisk nicht als root laufen lassen muss , enthält Modifikationen für den Makefile und safe_asterisk
:arrow: diese Änderung im Makefile steht schon in einem Wiki, die Rechte für die Konfigurations-Dateien müssen entsprechend noch angepasst werden, steht aber im Wiki (Edit: http://www.voip-info.org/wiki-Asterisk+non-root )

Und zu guter letzt für alle, denen das zap-Module auch beim entladen den Rechner parkt, noch ein patch dass ich aus einer Mailing-liste gezogen hab'. Bei der 0.1.0-RC4a war's noch notwendig, bei der 0.2.0-rc2 läuft es auch ohne Warnungen, allerdings ist es evtl. nicht mehr nötig.
 

Anhänge

sion

Neuer User
Mitglied seit
18 Sep 2004
Beiträge
129
Punkte für Reaktionen
0
Punkte
0
Re: Patches für 0.2.0-rc2

ecco schrieb:
Ich habe die beiden Vorschläge von oben mal zusammen gefasst und mit bristuff-0.2.0-rc2 getestet, funktioniert.

Nebenbei noch ein Patch, damit man Asterisk nicht als root laufen lassen muss , enthält Modifikationen für den Makefile und safe_asterisk
:arrow: diese Änderung im Makefile steht schon in einem Wiki, die Rechte für die Konfigurations-Dateien müssen entsprechend noch angepasst werden, steht aber im Wiki.

Und zu guter letzt für alle, denen das zap-Module auch beim entladen den Rechner parkt, noch ein patch dass ich aus einer Mailing-liste gezogen hab'. Bei der 0.1.0-RC4a war's noch notwendig, bei der 0.2.0-rc2 läuft es auch ohne Warnungen, allerdings ist es evtl. nicht mehr nötig.
Danke für diese nette Zusammenstellung von Patches. Leider bin ich bisher nicht dazu gekommen, den bristuff-0.2 zu testen, aber jetzt freue ich mich darauf. Besonders gefällt mir die Vorstellung, Asterisk als "normalen" Nutzer starten zu können! In welchem Wiki kann man das denn nachlesen?
Danke & Gruß,
Sion
 

sion

Neuer User
Mitglied seit
18 Sep 2004
Beiträge
129
Punkte für Reaktionen
0
Punkte
0
lo4dro schrieb:
diese Änderung im Makefile steht schon in einem Wiki, die Rechte für die Konfigurations-Dateien müssen entsprechend noch angepasst werden, steht aber im Wiki (Edit: http://www.voip-info.org/wiki-Asterisk+non-root )
Danke, das Wiki habe ich bereits gefunden. Allerdings muß man nach wie vor Asterisk "global" installieren, und kann es nicht in ein selbstgewähltes Verzeichnis im Home-Dir installieren. Das erschwert es unnötig, gefahrlos ein 2. Asterisk in einem neuen Verzeichnis zu testen, ohne das alte zu überschreiben. Natürlich kann man Sicherheitskopien machen oder im Verzeichnis der alten Version das install.sh neu aufrufen; aber es sollte ja eigentlich reichen, Asterisk aus einem anderen Verzeichnis heraus aufzurufen...
 

smartbyte

Neuer User
Mitglied seit
21 Dez 2004
Beiträge
35
Punkte für Reaktionen
0
Punkte
0
Hallo,
super der echo-patch!!!! Endlich funktioniert das bei mir auch. Ich habe es immer bemerkt, aber nie einstellen können. Mit zap show channel konnte ich das erstmals nachweisen, dass die EC nicht funktioniert, und schnell Deinen Patch eingepflegt, und jetzt geht alles.... Danke, danke, danke!!!!

Aber eine Frage habe ich noch: ich fahre den neuen 0.2.0rc3. Geht ganz gut. Konnte Deinen Patch auch von Hand einpflegen... Aber: Die Version macht nach jedem Auflegen einen EC-Off. Ist ja nicht so schlimm, denn Dein Patch macht bei jedem Start einen EC-On, also funktionieren tut es. Aber bei mir steht jetzt channel 1 ständig auf on, was laut sion zu abstürtzen führt. Deswegen wollte ich Dich bitten für die 0.2.0rc3 den Patch so zu verändern, dass es nur bei Bedarf eingeschaltet wird.... Wenn das möglich ist.

Danke.
(Wahrscheinlich müsste ich nur eine der beiden Patch-Zeilen löschen, aber ich weiss leider nicht welche... *schaem*)
 

lo4dro

Mitglied
Mitglied seit
14 Okt 2004
Beiträge
656
Punkte für Reaktionen
0
Punkte
0
@smartbyte
ist es schwer den patch anzupassen?
 

smartbyte

Neuer User
Mitglied seit
21 Dez 2004
Beiträge
35
Punkte für Reaktionen
0
Punkte
0
@lo4dro

Noe, eigentlich nicht. Musste auch leider feststellen, dass mein Wunsch die echo cancelation nur im Betrieb anzuschalten nicht funktioniert hat. Habe mal testweise eine der beiden Patch-Zeilen aus meiner Datei auskommentiert, danach ging zuerst alles, wie gewünscht, doch nach einiger Zeit war die EC dann doch wieder aus. Ich kann ja mal einen Patch bereitstellen.

Der Patch ist aber nur für die bristuff-0.2.0-rc3, und ich übernehme keine Garantie. Der Source-Code ist der von oben, eben nur mit anderen Zeilen, so dass er in die neuste bristuff passt.
(Zur Beruhigung: Bei mir läuft er.)

Ciao, Jörn.
 

Anhänge

smartbyte

Neuer User
Mitglied seit
21 Dez 2004
Beiträge
35
Punkte für Reaktionen
0
Punkte
0
Hier der Patch für die RC3a.

*Sion: Kannst Du bitte nocheinmal im Sourcecode nachgucken, ob man das nicht an anderer Stelle einsetzen kann. Vielleicht könnte man dann ja auch das echotraining aktivieren?

... Ach ja, und weiss jemand wo man im Zaptel-Treiber die Wartezeit einstellt, bevor er versucht die erste am Telefon eingegebene Nummer zu erkennen?

Ciao.
 

Anhänge

S

stefanmoench

Guest
oben stand was von anpassen makefiles und rechten.
wenn ich * als root laufen habe brauch ich das beides nicht zu machen und kann den patch ohne sonst was zu tun einspielen?
 

ecco

Neuer User
Mitglied seit
28 Okt 2004
Beiträge
174
Punkte für Reaktionen
0
Punkte
0
Den echo-cancel-patch auf jeden fall, nur für asterisk ohne root-rechte, müssen der makefile und die rechte verändert werden.
 

smartbyte

Neuer User
Mitglied seit
21 Dez 2004
Beiträge
35
Punkte für Reaktionen
0
Punkte
0
stefanmoench schrieb:
oben stand was von anpassen makefiles und rechten.
wenn ich * als root laufen habe brauch ich das beides nicht zu machen und kann den patch ohne sonst was zu tun einspielen?
Nein, brauchst Du nicht. Der Patch ist für die "Normalversion". Die non-root-Variante, hat Asterisk, soviel wie ich weiss mitlerweile schon integriert, so dass Du dafür nichts mehr patchen musst. Das größere Problem ist die Echo-Cancellation, die ist nämlich, trotz dass der Fehler schon bei der bristuff 0.1.0 bekannt war, immer noch nicht integriert. :-(
-> Kann irgendwer den BriStuff-Programmierer erreichen, oder kennt ihn persönlich, ich nämlich leider nicht.
 

smartbyte

Neuer User
Mitglied seit
21 Dez 2004
Beiträge
35
Punkte für Reaktionen
0
Punkte
0
Der neuste bristuff-0.2.0-RC5 - Patch

Hallo, und hier wieder einmal der neuste EC-Patch zur neusten bristuff.
Wieder ins bristuff-0.2.0-RC5/asterisk/channels - Verzeichnis kopieren und dann mit "patch < ec-patch.txt" patchen.
Viel Spass damit. 8)
 

Anhänge

NeoMagic

snom-Mitarbeiter
Mitglied seit
19 Jul 2004
Beiträge
82
Punkte für Reaktionen
0
Punkte
0

3CX PBX - GRATIS
Linux / Win / Cloud

Neueste Beiträge

Statistik des Forums

Themen
233,338
Beiträge
2,032,969
Mitglieder
351,906
Neuestes Mitglied
hforstner