У меня есть два компьютера, рабочий стол в моем офисе (с подключенной веб-камерой ) и ноутбук где-то еще в сети.
Обычно я смотрю на свой офис через веб-камеру, запустив
ssh Office -Y "mplayer tv://device=/dev/video0"
с моего ноутбука. Мне не нравится Xforwarding mplayer, так почему я не могу подключиться /dev/video
к своему компьютеру, запустив это на своем ноутбуке?
sudo mkfifo /dev/video1
ssh Office 'dd if=/dev/video' | sudo dd of=/dev/video1'
а затем смотреть веб-камеру (на моем ноутбуке )
mplayer tv://device=/dev/video1
ssh
video
ssh-tunneling
Стефан
источник
источник
dd if=/dev/video0 | mplayer tv://device=/dev/stdin
он говорит мне, что ресурс занят. В противном случае это работает (я вижу видео), даже когда я бегуmplayer tv://device=/dev/null
mplayer
будетmplayer tv:// -tv device=/dev/stdin
или подобен, но это не работает (символьные устройства более специфичны, чемdd
могут обрабатывать должным образом). Когда вы запускаете,mplayer tv://device=/dev/stdin
он не видит спецификацию устройства и, таким образом, обращается к нему/dev/video0
напрямую, создавая иллюзию «работы». Но это не будет работать вообще, когда веб-камера иmplayer
процесс разделены сетью.ssh localhost dd if=/dev/video0 | mplayer tv://device=/dev/stdin
при использовании двух разных компьютеров?mplayer tv://device=/dev/stdin
на OSX?Если у вас низкая пропускная способность, я рекомендую сжатие видеопотока:
где
-an
отключает кодирование звука Если вы хотите аудио, замените его-an
на-f alsa -ac 1 -i hw:3
(где hw: 3 также может быть hw: 0 или hw: 1,… Смотритеarecord -l
для вашего устройства). Если вы хотите только аудио (без видео), используйте это )-s 640x480
это размер вашего видео в х и у измерения-r 10
частота кадров, которую вы хотите получить (чем ниже, тем лучше изображения при низких битрейтах, но выглядят более громоздкими)-b:v 500k
это битрейт 500 килобит / сВам нужен ffmpeg на удаленном хосте и mplayer на локальном компьютере.
источник
Проект VideoLAN существует в значительной степени, чтобы делать то, что вы хотите.
Я не использовал его возможности потоковой передачи, но при его использовании на одной машине он показался мне очень надежным.
источник
Принятый ответ не работает для меня.
dd
просто не буду читать это.nc
плохо, если вы не можете сэкономить другой порт (я так или иначе не работал).cat
у меня тоже не сработало.То, что закончило работать для меня, было этим на получающем конце:
Преимущество кодирования заключается в том, что вы экономите пропускную способность в качестве бонуса. Ничто другое ни на одном форуме / сайте не работало для меня на машине с Debian.
Совместите с тройником, и вы сможете одновременно смотреть и записывать:
Это откроет mplayer для прямой трансляции и сохранит его в файл, содержащий одновременно текущую дату и время (например, filename:)
2018-11-22_01-22-10_recording.mkv
.источник
Я не знаю, есть ли причина, по которой вы не можете этого сделать, но одна проблема, которую я вижу с вашей реализацией, заключается в том, что удаленная система будет искать / dev / video1 в своей системе, но не сможет найти ее, потому что вы создали его в своей локальной системе.
Что бы я сделал, это что-то вроде следующего
а затем попробуйте что-нибудь, сказав, чтобы перейти на TCP-порт вашей локальной системы 12345.
источник