Ergebnis 1 bis 15 von 301

Thema: multimon (der Vorgänger des monitord) auf Raspberry Pi

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registriert seit
    02.01.2002
    Beiträge
    105
    So mache ich das auch.
    Aber mit tee scheint es noch besser zu laufen.
    Aber vielleicht findest Du ja auch den Fehler.


    Sent from my iPhone using Tapatalk

  2. #2
    Registriert seit
    18.03.2015
    Beiträge
    67
    Also bin leider noch nicht zum testen gekommen, aber hab nachgeschaut, das Loopback Device ist da, von daher gehe ich davon aus das es so gehen würde.

    Wie machst du es denn mit tee?

    Gruß

  3. #3
    Registriert seit
    02.01.2002
    Beiträge
    105
    Zitat Zitat von Schrolli Beitrag anzeigen
    Wie machst du es denn mit tee?
    So vom Bash:
    Code:
    sudo rtl_fm$ID -d 0 -f XXX.XXXM -M fm -s 22050 -l 15 -p 12 -E DC -F 0 -g 32 | tee >(sudo multimon-ng -a XXXXX -f alpha -t raw - | python /install/py-scripte/raspoc/multimon-filter.py) >(AUDIODEV=plughw:Loopback,0 play -t raw -r 22050 -e signed-integer -b 16 -c1 -V1 -q -) > /dev/null
    Das Pythonscript "multimon-filter.py" sieht dann so aus:
    Code:
    import sys
    reload(sys)
    sys.setdefaultencoding("UTF-8")
    
    try:
        line = sys.stdin.readline()
        while line:
            
            line = sys.stdin.readline()
            .......
    Du brauchst die ganzen SubProzesse für rtl_fm und multimon-ng nicht starten.
    Der Rest ist dann gleich.

    Gruß

    Marcel

  4. #4
    Registriert seit
    02.11.2014
    Beiträge
    5
    Hi,

    Bei meinen Tests (meist FMS und 5-Ton) hat sich herausgestellt, dass die Dekodierung zuverlässiger wird, wenn man auf das NF (Audio)-Signal noch einen lowpass und highpass-Filter anwendet. Die Frequenzen, die zur Modulation verwendet werden, sind ja bekannt. Muss natürlich noch Rechenleistung dafür übrig sein.

    Beispiel für's Dekodieren, wenn die Demodulation von gqrx gemacht wird (und das Audiosignal per UDP weitergegeben wird):
    Code:
    nc -l -u -p 7355 | sox -t raw -esigned-integer -b16 -r 48000 - -esigned-integer -b16 -r 22050 -t raw - highpass 1k lowpass 2500 | multimon-ng -t raw -a ZVEI2 -a fmsfsk -
    Wenn ihr im Python-Programm eh schon mit tee und virtuellen ALSA-Karten arbeitet, sollte das aber auch einfach in den bestehenden Signalfluß einzubauen sein.

  5. #5
    Registriert seit
    18.03.2015
    Beiträge
    67
    Wie würde das wohl aussehen, wenn man statt Python einfach mal zu C greift?
    Kaum Erfahrung mit C unter Linux, aber daran sollte es nicht scheitern.
    Hätte echt Lust ne Rahmensoftware um Multimon zu erstellen.
    Schön mit übersichtlicher Konfigurationsfile usw.

    -variable Datenquelle (rtl_fm, soundkarte, ...)
    - Ausgaben Parsen
    - diese dann Filtern, nach gewünschten Kriterien
    - nach belieben MySQL
    - nach belieben Audio Record
    - HTTP-Request
    - weiß-der-Geier-wohin-mit-den-Daten-Modul

    Würde das Performance mäßig überhaupt was bringen?

    Gruß

  6. #6
    Registriert seit
    02.11.2014
    Beiträge
    5
    Ich würde keine großen Performanceunterschied erwarten, Python kann auch verdammt performant und effizient sein (siehe https://www.paypal-engineering.com/2...rprise-python/ ). Zugegebenermaßen bin ich eher der C++/Qt4-Typ, Python kann ich nur rudimentär. Aber ich gehen davon aus, dass die meisten Sachen die du beschreibst (MySQL, HTTP, Filtern, Parsen, ...) mit Python einfacher und mit weniger Code zu erreichen sind als in reinem C. Mit Qt sind so Sachen auch nicht kompliziert, ist halt eine andere Philosophie als Python.

  7. #7
    Registriert seit
    18.03.2015
    Beiträge
    67
    Ok, angesichts dessen, macht es wohl der einfachheit halber schon Sinn, bei Python zu bleiben.

    Aber die Idee mit der schön zu konfigurierbaren, modularen Rahmen Software würde mir trotzdem schmecken :-D

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 2 (Registrierte Benutzer: 0, Gäste: 2)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •