Wie kann ich eine Server / Client-Video- und Audio-Streaming-Anwendung codieren?

Ich muss ein Client / Server-System erstellen, um Video und Audio zu streamen. Es wäre sehr einfach. Wie im YouTube-Stil. Der Server sollte zuerst die Clients bedienen, die eine Liste der Medien bereitstellen, und darauf warten, dass jeder Client das Streaming der Medien startet. Bis ich einen Socket erstelle und eine einfache Liste zeige, bin ich drin;) Aber ich weiß nicht, mit welcher Klasse ich streamen kann. Das Beispiel ist im Grunde Youtube-Stil. Wie kann ich mit dem Streaming beginnen? Wie kann der Client die Wiedergabe anhalten? Wie kann er? Ich kann Text streamen, aber was ist mit Video? Kennen Sie eine Tutorial-Seite? Es unterscheidet sich sehr von diesem einfachen Server-Client-Beispiel?

import java.io.*; 
import java.io.*;
import java.net.*;

public class ThreadedEchoServer {

   public static void main(String[] args) {
      try {
         int i = 1;
         ServerSocket s = new ServerSocket(8189);

         while(true) {
            Runnable r = new ThreadedEchoHandler(incoming, i);
            Thread t = new Thread(r);
            t.start();
            i++;
         }
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

class ThreadedEchoHandler implements Runnable {
   private Socket incoming;
   private int counter;

   public ThreadedEchoHandler(Socket i, int c) {
      incoming = i;
      counter = c;
   }

   public void run() {
      try {
         try {
            InputStream inStream = incoming.getInputStream();
        ,    OutputStream outStream = incoming.getOutputStream();

            Scanner in = new Scanner(inStream);
            PrintWriter out = new PrintWriter(outStream);

            out.println("BYE to exit");
            boolean done = false;

            while (!done && in.hasNextLine()) {

               String line = in.nextLine()) {
               out.println("Echo: " + line);

               if (line.trim().equals("BYE"))
                  done = true;
               out.println("BYE to exit");
            }
         } finally {
            incoming.close();
         }
      } catch (IOException e) {
         e.printStackTrace();
      }
}

Hoffe du konntest meine Vorstellungen klären. Mit freundlichen Grüßen.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage