Anzeige:
Ergebnis 1 bis 3 von 3

Thema: einfacher Datenaustausch zw. 2 laufenden Programmen

  1. #1
    Gast

    Post einfacher Datenaustausch zw. 2 laufenden Programmen

    Hallo ich habe hier ein Soundrecorder (unter Console), der ganz normal Musik aufnimmt, und Daten wie z.B. Clips oder die bereits aufgenommene Zeit anzeigt.
    Diese Daten werden in den momentane Standard-Stream geschrieben.
    Ich möchte diese Daaten jetzt einem 2. selbstgeschriebenen Program übergeben. Wie könnte ich jetzt z.B. dafür sorgen, daß der Soundrekorder in den Eingabestream des 2. Progs schreibt?
    Idealerweise würde es weiterhin die Daten in den "normalen" Ausgabestream schreiben, damit man auch was sieht.
    Eine andere Möglichkeit wäre sicher, eine Text-Datei zu erstellen, die dann mein Prog ausließt. Da das ganze doch etwas zeitkritisch ist, sollte das möglichst im Arbeitsspeicher geschehen - wo also schreibe ich die Datei am besten hin?

    Sion

  2. #2
    Registrierter Benutzer
    Registriert seit
    25.12.1999
    Ort
    Stuttgart
    Beiträge
    259

    Post

    Hi

    versuchs mal mit sockets ueber tcp ( man socket )
    oder unix domain sockets...

    Gruß micha

  3. #3
    Gast

    Post

    Klingt nach einem klassischen Fall fuer Pipes.

    D.h. du wirst Dich wahrscheinlich mit fork(), exec??()-Varianten, dup2() und pipe() anfreunden muessen.

    Wenn es bei Dir installiert ist hilft dir eventuell
    info libc
    besonders Kapitel Pipes & FIFOs weiter.

    Vielleicht Dir reicht aber auch schon:
    FILE *fp=popen("recorder -a -b","r");

    Dies startet "recorder -a -b" und dessen Ausgabe kannst Du mit fp lesen als waers ein Stream.

    Damit man weiterhin "was sieht" muesste das 2. Programm halt mal schnell alle gelesen Daten auch an stdout schicken.


Lesezeichen

Berechtigungen

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