ecasound Version > 2.91

In dieser Linux-Ecke dürfen nur Themen rund um Linux geschrieben werden.
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
jogo
Beiträge: 64
Registriert: 22.11.2020 20:05
Computerausstattung: 'ne Handvoll gebrauchte Laptops & PCs mit Mint Mate

ecasound Version > 2.91

Beitrag von jogo »

ich spiele mit den Gedanken, in meinem PB-Projekt auch Ecasound mit einzubinden und arbeite mich gerade ein wenig in diese Thematik ein.
Ecasound ist bei Mint 18.3 mit Vers. 2.9.1 in den offz. Paketquellen enthalten.
Ab Vers. 2.9.2 wurde ein Bug gefixt, damit der Alsa Doppelpuffer korrekt berechnet wird.
Würde deshalb lieber mit 2.9.2 oder höher arbeiten.
Meine Befürchtung ist, dass ab dieser Version vllt. auch neuere Paketversionen benötigt werden, die von Ecasound im System erwartet werden.
Hat jemand von euch vllt. mit ecasound gearbeitet und versucht, unter Mint 18 die Vers. 2.9.2 oder höher zu benutzen, ohne das System zu destabilisieren?
--
Ideen gibt es viele - man muss sie nur haben...
Mint 18.3/19.3/21.x/LMDE5 // PureBasic 5.73 / 6.02
jogo
Beiträge: 64
Registriert: 22.11.2020 20:05
Computerausstattung: 'ne Handvoll gebrauchte Laptops & PCs mit Mint Mate

Re: ecasound Version > 2.91

Beitrag von jogo »

hmm - so einfach, wie ich dachte, läuft die Sache nicht.
Habs nicht geschafft, das Teil wenigstens mit einen einfachen AbspielBefehl von einer Audiodatei oder in eine Audiodatei über PB via RunProgram() zu starten.
Im Terminal ist die Sache klar und auch erfolgreich getestet (zumindest für die Sachen, die ich vorhabe // Abspielen oder Aufnehmen)
Ecasound wird aber dann im Terminal weiter ausgeführt bzw. läßt sich im interactiven Modus im selben Terminal steuern bzw. beenden. Sind aber irgendwie keine klassischen KommandozeilenAufrufe, die man von einen externen Programm senden könnte.

Laut Doku gibt es zwar noch eine andere Schnittstelle, die ähnlich wie ein DLL-Aufruf funktioniert, aber da bin ich noch nicht hintergestiegen, wie ich das mit PB umsetzen könnte. Gehen wird's sicherlich..

Ok - solange ich nicht über diesem Punkt hinweg komme, ist die ursprüngliche Frage nach einer höheren Version nicht von Bedeutung (wenn überhaupt // diese Pufferberechnung läßt sich lt. Doku auch manuell anpassen)

Oder ich suche nach weiteren Möglichkeiten, wie ich ein Audiosignal über PB in eine Audiodatei speichern kann..
--
Ideen gibt es viele - man muss sie nur haben...
Mint 18.3/19.3/21.x/LMDE5 // PureBasic 5.73 / 6.02
jogo
Beiträge: 64
Registriert: 22.11.2020 20:05
Computerausstattung: 'ne Handvoll gebrauchte Laptops & PCs mit Mint Mate

Re: ecasound Version > 2.91

Beitrag von jogo »

hab erstmal weiter mit ecasound rungefummelt.
ich kann jetzt aus PB eine Aufnahme vom aktuell eingestellten Eingabegerät (zB. Monitor auf internes Audio) machen und in eine definierte Datei speichern:

Code: Alles auswählen

pnr = RunProgram("xterm", "-e ecasound -i:alsa -o:" + Chr(34)+"/home/jogo/Musik/test1.wav" + Chr(34))
Einen direkten Aufruf von ecasound hab ich nicht hingekriegt, aber wenn ich das Terminal und dann den ecasound Aufruf als Parameter mitgebe, wird tatsächlich eine Aufnahme gestartet.
(ecasound läuft dann im Terminal und schreibt auch seine Logs dort hinein)

Das Problem ist, ich kriege die Aufnahme nicht auf "normalen" Wege gestoppt. Auch nicht wenn ich das Terminal mit den Parameter #PB_Program_Open | #PB_Program_Read | #PB_Program_Write starte und zB. "q"+chr(13) sende.

Das einzige was hilft ist, wenn ich das Terminal, in dem ecasound läuft, mit

Code: Alles auswählen

KillProgram(pnr)
einfach abschieße.
Die Aufnahme läßt sich danach auch korrekt abspielen, also muß ecacound ja beim Abschuss noch Zeit haben, die Datei korrekt zu schließen.

Für eine weitere Aufnahme wiederhole ich den obigen RunProgram() Aufruf mit anderem Dateinamen.

Gibt es aber wirklich keinen "sauberen" Befehl, den ich an das Terminal senden kann, damit es sich beendet?

Ich mein, es funktioniert ja (in der Testphase), aber KillProgram() erscheint mir etwas brutal, wenn ich das zig-Mal wiederholen muß. Vllt. kann ja ecasound bei diesem Befehl nicht richtig aufräumen etc.
--
Ideen gibt es viele - man muss sie nur haben...
Mint 18.3/19.3/21.x/LMDE5 // PureBasic 5.73 / 6.02
Antworten