Erschließung von Saraswati für den Betrieb auf einem Industrie PC, mit Upload per SSH+rsync auf Synology NAS

bsoering@Bienenstand:~$ sudo pip3 install saraswati --upgrade
[sudo] Passwort für bsoering:         
Collecting saraswati
  Downloading saraswati-0.6.0.tar.gz (31 kB)
Requirement already satisfied, skipping upgrade: appdirs<2,>=1.3 in /usr/local/lib/python3.8/dist-packages (from saraswati) (1.4.4)
Requirement already satisfied, skipping upgrade: click<8,>=7.1.2 in /usr/local/lib/python3.8/dist-packages (from saraswati) (7.1.2)
Requirement already satisfied, skipping upgrade: cloup<0.9,>=0.8.0 in /usr/local/lib/python3.8/dist-packages (from saraswati) (0.8.2)
Requirement already satisfied, skipping upgrade: teetime<0.1,>=0.0.3 in /usr/local/lib/python3.8/dist-packages (from saraswati) (0.0.3)
Building wheels for collected packages: saraswati
  Building wheel for saraswati (setup.py) ... done
  Created wheel for saraswati: filename=saraswati-0.6.0-py3-none-any.whl size=28415 sha256=48aea257891abe19d4191587265df0c5e02150a2a72dc4a3c07056e5e44252dd
  Stored in directory: /root/.cache/pip/wheels/64/ad/c4/f6a1fe7703cfa942ce2ebd8d41c8f8ea878cf0eddfb0d5f923
Successfully built saraswati
Installing collected packages: saraswati
  Attempting uninstall: saraswati
    Found existing installation: saraswati 0.5.0
    Uninstalling saraswati-0.5.0:
      Successfully uninstalled saraswati-0.5.0
Successfully installed saraswati-0.6.0
bsoering@Bienenstand:~$ sudo saraswati setup --systemd
WARNING: /etc/default/saraswati already exists, skip copying
cp: Aufruf von stat für '/usr/local/lib/python3.8/dist-packages/saraswati/setup/systemd/saraswati.path' nicht möglich: Datei oder Verzeichnis nicht gefunden

Saraswati unit enabled successfully. The service will start when /dev/bus/usb is not empty.

bsoering@Bienenstand:~$ 

Anschliesend ich natürlich noch die Config, um die fehlende Optionen ergänzt.

cd /etc/default
sudo nano saraswati

und dort dann die Zeilen hinzugefügt.

# Configure audio recording container
# SARASWATI_CONTAINER_FORMAT=matroska
# SARASWATI_CONTAINER_FORMAT=ogg

Scheint auf dem Bienenstand und auch bei dem Test-Rechner, wo das Problem bis dahin noch nicht behoben wurde jetzt problemlos zu laufen.

Nur der sonic Visualiser in Windows scheint das flac im .ogg Container immer noch nicht zu mögen.

mit .wav oder flac ohne Container bin ich momentan auf dem Testrechner am testen.
flac sollte da aber theoretisch Probleme machen.

gst-launch-1.0 autoaudiosrc ! splitmuxsink location=output_%d.wav muxer=wavenc max-size-time=60000000000

bzw.

gst-launch-1.0 autoaudiosrc ! splitmuxsink location=output_%d.flac muxer=flacenc max-size-time=60000000000

Edit:
Beide Files laufen im Sonic Visualiser da wir ja momentan nicht direkt über W-Lan Streamen
werde ich meinen Testserver mal auf Flac ohne container umstellen.

1 Like

Da ich die Umstellung “quickanddirty” manuell auf dem Linux gemacht habe, hab ich es nochmal auf meiner Gabel aus der Hüfte nachgepflegt. Bitte den Pullrequest #14 vorher genau prüfen.

Muß noch rausfinden wie ich eine Git-Gabel über pip installieren kann.

1 Like

Das klappt zum Beispiel so:

pip install git+https://github.com/MKO1640/saraswati.git@dev-MKO1640
2 Likes

Habe saraswati auf dem live server auf Flac umgestellt und es läuft jetzt wieder seit einem Tag stabil.
Auch Stromausfälle nimmt er achtlos entgegen.
Der SonicVisualiser nimmt diese Daten jetzt auch problemlos.
wir sollten bei Gelegenheit noch überprüfen, ob was mit der OGG - Flac Kombination nicht stimmt.

Ich überlege wie ich die vorher aufgezeichneten Daten jetzt am besten ebenfalls auf Flac umzuwandeln bzw. aus den Containern auspacken kann. Das NAS baut auf Unix auf und hat einen 1,2MHz Prozessor. Hatte daher überlegt das mit GStreamer direkt auf dem NAS zu machen. Leider ist es kein Debian-Linux, daher funktioniert apt-get nicht. Ich suche derzeit noch das Pendant für Unix.

Ansonsten heißt es, 110Gb runterzuladen, zu entpacken und wieder hochzuladen. :roll_eyes:

1 Like

Hi Michael,

vielen Dank für Deine Arbeiten und Beiträge zu diesem Thema.

Wunderbar!

Bei jenem Aspekt, der Einrichtung der Benutzerkonfiguration für die Datenübertragung per rsync, wollte ich noch einmal nachhaken, damit wir nicht vergessen, alle gewonnenen Erkenntnisse für zukünftige Installationen optimal umzusetzen.

  1. Die Essenz hieraus wäre, der Doku von Saraswati noch einen Abschnitt zu spendieren, wie man eine Synology NAS entsprechend konfiguriert. Darin gehören die wesentlichen Inhalte von

    – richtig?

  2. Wie oben geschrieben, würde mich interessieren, ob nun "sudo saraswati setup --systemd" vollständig ausreichend ist und dann alles out-of-the-box funktioniert, ohne noch an irgendwelchen Dateien händisch rumfummeln zu müssen. Vielleicht kannst Du das bei Gelegenheit noch einmal mit einer frischen Installation testen?

Viele Grüße,
Andreas.

Richtig, habe hier auch noch ein Ready NAS Duo, bei dem jedoch eine Festplatte das zeitliche gesegnet hat. wenn ich das zum laufen bekommen habe werde ich das auch nochmal testen und schauen, ob man damit ähnlich arbeiten kann.

Ja funktioniert, habe ich bei meinem test-Rechner bereits gemacht. Den SSH Schlüssel musste ich aber selbst reinkopieren, was auch sicherlich so gedacht ist. Die Rechte waren aber glaube ich richtig gesetzt. Werde das die Tage aber nochmal Testen.

Habe auch schon versucht Saraswati auf einem Raspberry Pi Zero W mit OS lite zu Installieren, was aber leider nicht geklappt hat. Obwohl ich einiges zusätzlich nachinstalliert habe, habe ich nicht rausfinden können, was mir noch fehlt. gst-device-monitor-1.0 | grep gst-launch zeigt mir keine verfügbaren audio Geräte an. ALSA, Pulseaudio und div. plugins dafür habe ich bereits ausprobiert. Alsa und Pulseaudio funktionieren aber sonst problemlos.

Außerdem habe ich es auf meinen Testrechner auch mal mit ubuntu-20.04.2-live-server-amd64 ohne GUI probiert, wo ich auch teile von ALSA und Pulseaudio nachinstallieren musste, es dann schlussendlich lief. Rsync habe ich bisher dort aber noch nicht probiert.

2 Likes

Wunderbar. Danke!

Schade.

Damit ist das Problem wohl “out of scope” von Saraswati selbst? Mich würde aber trotzdem interessieren, was hier genau hakt.

a) Was sagt denn $ gst-launch-1.0 --version bei Dir?
b) Was ist denn OS lite genau? Im Endeffekt auch nur ein Debian? Welches?
c) Findet $ gst-device-monitor-1.0 (ohne grep gst-launch) überhaupt irgendwelche Audiogeräte oder zeigt andere Dinge an? Hast Du es sicherheitshalber auch als root Nutzer versucht?

Wunderbar. Welche Pakete mussten denn noch nachinstalliert werden? Hierbei schiele ich auf eine Verbesserung der Dokumentation bei Install prerequisites » Debian-based systems.

Muß ich leider nochmal von Grund auf neu durchspielen, Ich bin mit einem blanken OS ohne Mediapaket und GUI gestartet und musste so praktisch alles nachinstallieren wie aplay Alsa und Pulseaudio. bin mir aber nicht sicher, ob alles benötigt wurde. Habe teilweise dabei die große Keule rausgeholt.

Sicherlich “out of scope” in der Beschreibung von Raspberry OS steht z.B., das sie in sachen Alsa und Pulseaudio einen neuen weg gehen. Sicherlich muß man etwas ich den Configfiles händisch umstellen.

Leider habe ich die SD bereits gelöscht, um einen neuen versuch zu starten.
werde es wohl mit einem anderen OS probieren “DietPi” allerdings spinnt die SD jetzt und bricht immer mitten beim image erstellen ab.
zu c. nein gar nicht, nur 3 x Video source

Habe es jetzt nochmal die Installation auf ubuntu-20.04.2-live-server-amd64 durchgespielt.
ab den 2. Punkt ist es genau so wie bei installation-von-saraswati-auf-einem-raspberry-zero-w-mit-raspberry-pi-os-lite
Da es eine Live-USB-Stick Installation ist, wird man durch ersten Punkte durch eine Menu-Geführte-Installation, mit Abfrage der einzelnen Punkte wie Netzwerk, Tastatur und Installationsort usw. geführt.

Theoretisch kann man es, auf allen von mir bisher getesteten Installationen, also gleich machen.

Alles klar. Ich habe versucht, die Dokumentation entsprechend umzustrukturieren, siehe Basisinstallation Raspberry Pi OS Lite vs. Installation von Saraswati auf SBC-Systemen (Debian), mit Upload per rsync oder FTP.

1 Like

Sehr schön, so oder so ähnlich hab ich es mir auch schon überlegt. Ich denke das dieses so auf längere Sicht viel besser zu warten und auf den aktuellem Stand zu halten ist.