J'ai deux ordinateurs, A Desktop Dans mon bureau (avec A webcam ci-joint) et a ordinateur portable ailleurs sur le réseau.
Habituellement, je regarde mon bureau à travers ma webcam en cours d'exécution
ssh Office -Y "mplayer tv://device=/dev/video0"
de mon ordinateur portable. Je n'aime pas Xforwarding MPlayer, alors pourquoi ne puis-je pas tunnel /dev/video
à mon pc en exécutant ceci sur mon ordinateur portable?
Sudo mkfifo /dev/video1
ssh Office 'dd if=/dev/video' | Sudo dd of=/dev/video1'
et ensuite regarder la webcam (sur mon ordinateur portable)
mplayer tv://device=/dev/video1
Quelque chose comme:
dd if=/dev/video0 | mplayer tv://device=/dev/stdin
travaille pour moi (SOA # 1) localement. Il en va de même:
ssh localhost dd if=/dev/video0 | mplayer tv://device=/dev/stdin
Aussi bien que
mkfifo test
dd if=/dev/video0 of=test &
mplayer tv://device=test
D'où:
Aussi - comment fonctionne non fonctionne (écran d'affichage noir, se plaint d'un appareil inconnu, etc.)?
Si vous avez une bande passante basse, je vous recommande la compression du flux vidéo:
ssh USER@REMOTEHOST ffmpeg -an -f video4linux2 -s 640x480 -i /dev/video0 -r 10 -b:v 500k -f matroska - | mplayer - -idle -demuxer matroska
où
-an
désactive le codage audio. Si vous voulez audio, remplacez -an
avec -f alsa -ac 1 -i hw:3
(où HW: 3 pourrait aussi être HW: 0 ou HW: 1, ... Voir arecord -l
pour votre appareil). Si vous voulez uniquement audio (pas de vidéo), tilisez ceci )-s 640x480
est la taille de votre vidéo en X et Y dimension-r 10
Est-ce que le framerer que vous voulez recevoir (plus bas fait de meilleures images à des débits bas, mais semble plus à Bumby))-b:v 500k
est un bitrate de 500 kilobit/sVous avez besoin de FFMPEG sur l'hôte distant et Mplayer sur la machine locale installée.
Le projet Videolan existe en grande partie à faire ce que vous désirez.
Je n'ai pas utilisé ses capacités de diffusion de streaming, mais dans sa seule machine à utiliser, elle a montré une roche solide pour moi.
La réponse acceptée ne fonctionne pas pour moi. dd
_ il suffit de le lire. nc
est mauvais si vous ne pouvez pas épargner un autre port (je n'ai pas reçu cela pour travailler de toute autre manière). cat
n'a pas fonctionné pour moi non plus.
Ce qui a fini de travailler pour moi, c'est ceci à la fin de la réception:
ssh user@Host "ffmpeg -r 14 -s 640x480 -f video4linux2 -i /dev/video0 -f matroska -" | mplayer - -idle
Cela en a bénéficié d'être codé, de sorte que vous économisez la bande passante en tant que bonus. Rien d'autre sur un forum/site Web ne travaillait pour moi sur une machine debian.
Combinez avec TEE et vous pouvez regarder et enregistrer en même temps:
ssh user@Host "ffmpeg -r 14 -s 640x480 -f video4linux2 -i /dev/video0 -f matroska -" | tee $(date +%Y-%m-%d_%H-%M-%S)_recording.mkv | mplayer - -idle
Cela ouvrira MPlayer pour la diffusion en direct et l'enregistrera dans un fichier contenant la datetime actuelle en même temps (exemple nom de fichier: 2018-11-22_01-22-10_recording.mkv
).