Come posso accedere a un server IPTV a livello di codice?
-
06-07-2019 - |
Domanda
La mia Università sta attualmente eseguendo una versione di prova IPTV. Per accedere al servizio, ti viene chiesto di installare VLC Media Player ed eseguire i file, scaricati dall'Intranet dell'Università, ognuno dei quali rappresenta un canale, attraverso di esso.
I file sono nel formato:
#EXTM3U
#EXTINF:0,ITV2
udp://@238.255.0.6:2001
Che riconosco come file di playlist M3U. Fortunatamente, il file indica l'indirizzo IP del server che ospita il servizio, la porta per accedervi e il protocollo, in questo caso l'UDP.
La mia domanda è: come posso ottenere l'accesso al servizio a livello di codice? Esiste una stretta di mano specifica che un client fa con il server? Visto che è accessibile così semplicemente tramite VLC Media Player, l'accesso ai dati sarà sicuramente banale in quanto non viene utilizzato alcun protocollo proprietario?
Non sono troppo informato sull'accesso a Internet a livello di codice; So che in Java è possibile costruire un Port
che modella l'UDP. Gradirei le risposte in Java, ma qualsiasi linguaggio simile è più che sufficiente.
Grazie!
Soluzione
Loro è una stretta di mano speciale a livello di switch, sta dicendo allo switch che fai parte del gruppo multicast in modo che tu possa ricevere anche i pacchetti.
Bellow è un esempio di registrazione e ricezione su un socket UDP in Java:
// join a Multicast group and send the group salutations
InetAddress group = InetAddress.getByName("228.5.6.7");
MulticastSocket s = new MulticastSocket(6789);
s.joinGroup(group);
// get their responses!
byte[] buf = new byte[1000];
DatagramPacket recv = new DatagramPacket(buf, buf.length);
s.receive(recv);
...
// OK, I'm done talking - leave the group...
s.leaveGroup(group);
Esempio tratto dalla j2ee guide .
Quello che devi fare è unirti al gruppo multicast, quindi ricevere i pacchetti e scriverli in un file, quindi suppongo che MPEG2, MPEG4 o comunque lo stream inviato sia un file sul tuo computer che dovrebbe essere giocabile attraverso un altro programma.
Altri suggerimenti
Potresti voler esaminare Java di VLC . Questo ti darà il controllo di VLC attraverso un'interfaccia di programmazione Java. Ottieni tutta la grandezza di VLC da Java! Inoltre, ci sono molti altri binding API e interfacce che puoi usare per giocare con VLC.