Aktuelle Version |
Dein Text |
Zeile 15: |
Zeile 15: |
| | | |
| == Streams == | | == Streams == |
− | Zum Öffnen von Streams gibt es zwei mögliche Szenarien: Zum einen die möglichkeit das ein einzelner Stream erzeugt werden soll (einmalig), oder das eine Reihe von Streams erzeugt werden soll, wie bei einem Player als Beispiel, der mehre Lieder nacheinander abspielt.
| + | ... |
− | | |
− | Zunächst behandeln wir den Fall das nur ein Stream verwendet werden soll:
| |
− | Hier zu gibt es die Funktion ''roar_vio_simple_stream()'' welche lediglich ein VIO Objekt uns erzeugt über welches wir auf den Stream zugreifen können.
| |
− | | |
− | Beispiel:
| |
− | if ( roar_vio_simple_stream(&vio, rate, channels, bits, ROAR_CODEC_DEFAULT, NULL, ROAR_DIR_PLAY, "MyApp") == -1 ) {
| |
− | return -1;
| |
− | }
| |
− | | |
− | Im Beispiel wird eine Verbindung zum Standard Server (''NULL'') aufgebaut, dort ein PCM Stream im nativen Format mit Daten den aus ''rate'', ''channels'' und ''bits'' erzeugt. Unser Klient heißt "MyApp".
| |
− | | |
− | Im zweiten Fall das wir mehre Streams hinter einander verwenden möchten verbinden wir zu erst wie oben gezeigt zum Server und verwenden dann die Funktion ''roar_vio_simple_new_stream_obj()''.
| |
− | | |
− | Beispiel:
| |
− | struct roar_stream stream;
| |
− |
| |
− | if ( roar_vio_simple_new_stream_obj(&vio, &con, &stream,
| |
− | rate, channels, bits, ROAR_CODEC_DEFAULT,
| |
− | ROAR_DIR_PLAY) == -1 ) {
| |
− | return -1;
| |
− | }
| |
− | | |
− | Hier wird Prinzipiell das selbe wie oben getan nur mit folgenden Erweiterungen:
| |
− | # Es wird die bereits bestehende Verbindung ''con'' verwendet.
| |
− | # Es wird ein Stream Objekt ''stream'' angelegt. Dieses können wir verwenden für die Übertragung von zum Beispiel Meta Daten oder Ignorieren.
| |
− | | |
− | Beide Varianten erzeugen uns ein VIO Objekt (''vio'') über das wir auf unseren Stream Zugriff nehmen können.
| |
| | | |
| == Dateien Abspielen == | | == Dateien Abspielen == |
− | libroar bietet neben den Standard Funktionen zum abspielen von Daten noch noch spezielle Funktionen zum abspielen von Dateien. Bei der einfachsten handelt es sich um ''roar_simple_play_file()''. Diese Funktion baut eine Verbindung zu einem Server auf und sendet eine Datei an diesen.
| + | ... |
− | | |
− | Beispiel:
| |
− | if ( roar_simple_play_file("music.ogg", NULL, "MyApp") == -1 ) {
| |
− | return -1;
| |
− | }
| |
− | | |
− | Soll ein Prozess oder [[Thread]] mehre Dateien abspielen so kann eine Verbindung zum RoarAudio Sound Server aufgebaut werden (wie oben beschrieben) und dann ''roar_file_play()'' verwendet werden.
| |
− | | |
− | Beispiel:
| |
− | if ( roar_file_play(&con, file[idx], 0) == -1 ) {
| |
− | return -1;
| |
− | }
| |
− | | |
− | Das Beispiel spielt die Datei mit dem Namen im Array ''file'' und dem Index ''idx'' ab.
| |
| | | |
| == Siehe Auch == | | == Siehe Auch == |