Capitolo 7. Trasmettere in stream da una scheda di codifica MPEG

Nota

Questo è possibile solo su GNU/Linux.

VideoLAN supporta due schede di codifica MPEG-2:

La scheda Hauppauge WinTV-PVR-250 offre risultati migliori ed è più economica della Visiontech Kfir.

7.1. Trasmettere in stream con la scheda Hauppauge WinTV-PVR-250

7.1.1. Installare i driver

Per prima cosa è necessario applicare al proprio kernel una patch per supportare le API v4l2 (Video 4 Linux versione 2). La patch è disponibile su Video4Linux HQ.

Una volta che il proprio kernel è pronto, installare la versione CVS dei driver Linux per la Hauppauge WinTV-PVR-250. Questi sono disponibili su ivtv.sourceforge.net. Dopo, sarà necessario creare i device e caricare i moduli; per questo, fare riferimento alla documentazione fornita con i driver.

7.1.2. Trasmettere in stream con VLC

Nota

Bisogna aggiungere --enable-pvr a ./configure per usare questa caratteristica. Si potrebbe cambiare il valore di CR_MAX_AVERAGE_COUNTER a 1000 nel file src/input/input_clock.c per aggirare un problema con la scheda.


					% vlc -vvv pvr:/dev/video0:norm=secam:size=720x576:frequency=576250:
					bitrate=3000000:maxbitrate=4000000 --sout udp:192.168.0.42 --ttl 12
				

dove:

  • /dev/video0 è il device file corrispondente alla scheda di codifica;

  • norm=secam è il nome dello standard del segnale analogico (i possibili valori sono pal, secam e ntsc);

  • size=720x576 è la dimensione del video che si vuole trasmettere in stream;

  • frequency=567250 è la frequenza in kHz del canale che si vuole trasmettere in stream;

  • bitrate=3000000 è il bitrate medio dello stream;

  • maxbitrate=4000000 è il bitrate massimo dello stream;

  • 192.168.0.42 può essere:

    • l'indirizzo IP della macchina cui si vuole trasmettere in unicast;

    • il nome DNS della macchina cui si vuole trasmettere in unicast;

    • un indirizzo IP multicast;

  • 12 è il valore del TTL (Time To Live - Tempo di vita) dei pacchetti IP (ovvero lo stream sarà in grado di attraversare 11 router).

7.1.3. Trasmettere in stream con VLS

Al momento non esiste un'interfaccia a riga di comando per questo input, dunque sarà necessario usare il file di configurazione.

Non è possibile configurare i parametri dei driver (norm, dimensioni, frequenza,bitrate, ecc...) con VLS: per farlo bisognerà usare il programma ptune.pl che viene fornito con i driver. Riferirsi alla documentazione allegata ai driver per informazioni su come usare questo programma.

Quello che segue è un file vls.cfg di configurazione tipico per eseguire VLS con una scheda di codifica Hauppage WinTV-PVR-250:


# vls.cfg (file di configurazione di VLS)
# Esempio del VideoLAN HOWTO per la scheda di codifica Hauppauge WinTV-PVR-250

BEGIN "Inputs"

	pvr			 = "video"

END

BEGIN "pvr"

	# device Hauppauge WinTV-PVR-250
	Device				= "/dev/video0"

	# Tipo di Stream
	Type					= "Mpeg2-PS"

END

BEGIN "Channels"

	channel1			 = "network"

END

BEGIN "channel1"

	# Indirizzo IP unicast o multicast
	DstHost = "192.168.0.42"

	# Porta di destinazione
	DstPort = "1234"

	# Se è un indirizzo IP multicast IP, scommentare la riga seguente
	#Type		= "multicast"

	# Se è un indirizzo IP multicast IP, specificare il "Time To Live" sotto
	#TTL		 = "12"

END

BEGIN "LaunchOnStartUp"

	command1 = "start video channel1 pvr"

END
				

Una volta adattato il file di configurazione di cui sopra, eseguire VLS:


					% vls -vv -f vls.cfg