Audio Server selbst erstellen

ZoXlike

Mitglied
Moin Leute, ich weiß nicht so wirklich wie ich die Überschrift hier sinnvoll wähle :D

Es geht darum, ich habe in meiner Wohnung an einem PC meine komplett Anlage hängen, möchte aber gerne auch von meinen anderen Geräten (Laptop, Mac, Handys, Tablet, ...) Musik abspielen können ohne das Gerät immer extra an an die Anlage anzuschließen und für jeden Liederwechsel quer durch die Wohnung laufen.

Dann habe ich mir überlegt ob es nicht einfacher wäre sich einen Audio Server zu basteln der automatisch alles wiedergibt was ihm gesendet wird.

Heißt ich möchte auf dem PC (oder ggf. später mal ein PI) einen Server laufen lassen und jedes meiner Geräte kann diesem Server einfach seine komplette Audio rüber streamen ohne das ich noch irgendwas annehmen muss oder sonstigem.

Ich will im Grunde nurnoch das Programm auf meinem Laptop starten und dann läuft der gesamte Audio Ausgang auf den Server.


Ich kann mir gut vorstellen, dass es schon Programme für einen solchen Zweck gibt, aber ich möchte das gerne selbst verwirklichen.

Wie kann ich das am besten umsetzen, bzw. wie fang ich das am besten an?
Hat jemand Erfahrungen mit Audio Streaming über Java?

- ZoXlike
 

dayaftereh

Top Contributor
Audio wird meistens über UDP verschickt, da es dir egal ist falls mal ( 1 von 1e6) ein Paket verloren geht. Zudem ist der Overhead ziemlich klein. Ich würde ein Server bauen auf Basis der Netzwerk Bibliothek Netty. Für die Ausgabe der Audio bzw Sound würde ich auf die Java Sound API zurück greifen.

Ablauf:

Der Server wartet auf UDP Pakete, encodiert sie und schrieb sie weiter auf den Audio Output. Dazu benötigst du ein Client, der die Audio Daten liest, verpackt und dan an den Server schickt.
 
Also....
Du brauchst einen Server Soccet in deinem Progamm (in dem Fall auf deinem PC an dem alles hängt).
Dann braucht jedes deiner Geräte eine App/Programm, dass als Client fungiert.
Der Client muss sich dann über das lokale Netzwerk mit dem Soccet verbinden (siehe Server Programmierung Java, werd ich jetzt nicht alles hier vorprogrammieren).
Über eine Dateiauswahl (mit Swing relativ einfach zu verwirklichen) kann der Client nun die Datei an den Server Soccet senden und hier wirds dann knifflig.
Ich hab schon oft versucht Audios mit Java zu öffnen: das Problem: Java unterstützt - selbst mit Libarys - nur sehr wenige Audio Datei Formate. Also musst du alle gegebenenfalls in wav Dateien convertieren oder eine Libary für mp3 runterladen. Hast du das, kann der Server den empfangen Datenstrom, am besten lokal und vllt. temporär, speichern und direkt danach verwenden. Soweit die Theorie. Ist relativ umfangreich und - meiner Meinung nach - schwer zu verwirklichen. Falls du Hilfe im Code brauchst kannst du gerne nachfragen.
 
Inwiefern temporär auf meinen PC laden?
Der Client schickt die ganze Audio Datei an den Server. Dieser speichert sie in irgendeinen beliebigen Ordner und gibt sie direkt wieder. Über weitere Anweisungen des Clients kann die Datei vorgespult, zurückgespult und angehalten werden bzw. eine neue hochgeladen werden. Sollte die gleiche Datei später nochmals wiedergegeben werden sollen, hat sie der PC gleich. EVTL. kannst du nach der "Sitzung" also nach Beendigung der Verbindung die Dateien wieder vom Server löschen.
 

ZoXlike

Mitglied
Ich denke das du mich ein wenig missverstehst :D
Ich möchte jeglichen sound den meine Geräte wiedergeben (z.B. Deezer, InGame sound, SystemAlerts, ...) wiedergeben lassen.

Heißt Java muss sich den kompletten AudioOutput von meinem Gerät (was auch ein Handy sein könnte) krallen und fröhlich an den Server senden, der das einfach nur abspielt. Es wird wohl später darauf hinaus laufen, dass es nur noch ein PI ist, der irgendwo in der nähe der Anlage hängt.
 

ZoXlike

Mitglied
Wenns nur Dateien wären, wär das nicht weiter Problematisch :D
Es soll halt darauf hinauslaufen, dass ich jeden sound einfach (das installierte Programm /App vorausgesetzt) über meine Anlage abspielen lassen kann.
 
Ich hätts auch versucht mit UDP zu verschicken. Auf Android sollte das ganze kein Problem darstellen. Kenne mich mit System Audio von Windows etc. auch nicht so gut aus. Mit C++ oder C# sollte das auch etwas einfacherer sein, als mit Java..
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H 32Bit float Audio aufnehmen Spiele- und Multimedia-Programmierung 2
M Audio Track einer Musik CD abspielen mittels vlcj-Bibliothek Spiele- und Multimedia-Programmierung 0
P Audio Visualizer mit OpenGL in Java? Spiele- und Multimedia-Programmierung 4
G Audio-Datei analysieren Spiele- und Multimedia-Programmierung 3
L Audio-volume /w input Sound.sampled Spiele- und Multimedia-Programmierung 1
J Programm kann Audio Datei nicht finden Spiele- und Multimedia-Programmierung 7
C Problem mit Abspielen von Audio-Dateien Spiele- und Multimedia-Programmierung 3
J Audio Input mit Datei abgleichen Spiele- und Multimedia-Programmierung 11
A Audio-Datei auf Mikrofonausgang senden? Spiele- und Multimedia-Programmierung 2
T audio file splitten Spiele- und Multimedia-Programmierung 2
D Zeitangabe zu Audio-Bytestrom Spiele- und Multimedia-Programmierung 2
S Minecraft Server Status Abfragen Spiele- und Multimedia-Programmierung 9
Lord_Joker Minecraft Server Bat error Spiele- und Multimedia-Programmierung 2
N Minecraft Frage für einen Minecraft Server Spiele- und Multimedia-Programmierung 2
Joris Minecraft Minecraft Java Server Spiele- und Multimedia-Programmierung 6
Shanic Minecraft Minecraft Forge Server "Falsche Java Version" Spiele- und Multimedia-Programmierung 6
JeremyStarTM Minecraft Minecraft Spigot Server akzeptiert JAR-Version nicht Spiele- und Multimedia-Programmierung 8
L Minecraft 1.7.10 Server startet nicht Spiele- und Multimedia-Programmierung 1
G [Game-Multiplayer] Welt vom Server zum Client senden. Spiele- und Multimedia-Programmierung 0
T Minecraft Minecraft-Server pingt lange Spiele- und Multimedia-Programmierung 3
G [Java Server] Allgemeine Frage zum Thema Networking in Videospielen Spiele- und Multimedia-Programmierung 15
U Minecraft Mit Java auf Minecraft Server anmelden Spiele- und Multimedia-Programmierung 11
H Client-Server-Kommunikation Spiele- und Multimedia-Programmierung 9
A Minecraft Java Ubuntu Minecraft Server startet nicht - ERROR (SIGSEGV) Spiele- und Multimedia-Programmierung 7
R Minecraft Minecraft läuft nicht paralel mit minecraft server ? Spiele- und Multimedia-Programmierung 3
D Minecraft Spieleranzahl von Minecraft Server abfragen Spiele- und Multimedia-Programmierung 8
M Minecraft Bukkit Server VM Kann nicht Vergrößert werden Spiele- und Multimedia-Programmierung 20
c_sidi90 Server/Client Struktur Multiplayer Spiele- und Multimedia-Programmierung 9
C Minecraft Minecraft-Programm: Server anpingen Spiele- und Multimedia-Programmierung 2
M Browsergame Client Server Spiele- und Multimedia-Programmierung 4
Kr0e Red Dwarf Game Server Spiele- und Multimedia-Programmierung 5
R Minecraft Minecraft Server Spiele- und Multimedia-Programmierung 20
T Radio/TV-Server Spiele- und Multimedia-Programmierung 3
F Meine Aufgabe: Client-Server am Beispiel einer Implementation eines Tic-Tac-Toe Netzwerkspieles Spiele- und Multimedia-Programmierung 7
T Selbst-handelnde Objekte im Client-Server Betrieb Spiele- und Multimedia-Programmierung 9
Dit_ Server Monitor [Quake III] Spiele- und Multimedia-Programmierung 20
A Visuell darstellen ob Server verfügbar Spiele- und Multimedia-Programmierung 2
G Server und java Spiele- und Multimedia-Programmierung 3
T Kartenspiel mit Server Client Funktionen Spiele- und Multimedia-Programmierung 3
R Client/Server Spiele- und Multimedia-Programmierung 5
T MiniCraft - selbst nach Programmieren Spiele- und Multimedia-Programmierung 25
W Spiel-Grundlagen selbst austüfteln: Kollisionen? Spiele- und Multimedia-Programmierung 3
Waljakov Grafikfunktionen selbst schreiben? Spiele- und Multimedia-Programmierung 6

Ähnliche Java Themen

Neue Themen


Oben