The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Можно ли заставить VLC или Mplayer писать в /dev/video0 ?"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на рабочей станции (Видео)
Изначальное сообщение [ Отслеживать ]

"Можно ли заставить VLC или Mplayer писать в /dev/video0 ?"  +/
Сообщение от xintrea (ok) on 13-Дек-12, 00:03 
Здравствуйте!


Файл /dev/video0 традиционно создается WEB-камерой. Из него берут видеопоток такие программы как kopete или skype.

Теперь представим задачу: мы хотим показать видеоролик собеседнику через skype.

WEB-камеры у нас нет, файл /dev/video0 не сущетсвует (но мы его можем создать).

Вопрос. Какие команды можно дать, чтобы Mplayer/VLC начали писать в /dev/video0?


Я пытался сделать так:

# Создаем символьный файл /dev/video0 
# Вроде у пользователей WEB-камер создается именно
# символьный файл а не блочный
=> mknod /dev/video0 c 81 0

# Поставим ему максимальные права, чтоб не заморачиваться с правами
=> chmod 777 /dev/video0

# Попробуем что-нибудь записать в /dev/video0
# (По-идее, данный файл должен скушивать все, как /dev/null?)
=> cat "Это видеопоток"> /dev/video0
bash: /dev/video0: Нет такого устройства или адреса

# Хм, странно. А ну посмотрим:
=> ls -l /dev | grep video
crw-rw---T+ 1 root video     252,   1 Дек 12 23:43 fw1
crw-rw----+ 1 root video     195,   0 Дек 12 22:39 nvidia0
crw-rw----+ 1 root video     195, 255 Дек 12 22:39 nvidiactl
crwxrwxrwx  1 root root       81,   0 Дек 13 00:53 video0

Файл /dev/video0 на месте, но при попытке записать в него, система сообщает что файл не существует.

Наверное, я что-то принципиально не так делаю. А как правильно?

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Можно ли заставить VLC или Mplayer писать в /dev/video0 ?"  +/
Сообщение от xintrea (??) on 13-Дек-12, 09:16 
В общем, немного разобрался. Нужно запустить модуль ядра v4l2loopback (ранее он назывался vloopback).

После этого можно заставить mplayer гнать видео в файл /dev/video0:

mplayer movie.mp4 -vf scale=320:240 -vo yuv4mpeg:file=/dev/video0

Проблема в том, что не могу подобрать формат. Изображение, получаемое через смотрелку веб-камеры, зеленое в вертикальную полоску, с каким-то полупрозрачным наложением увеличенной в два раза копии основного изображения.

Как бы мне узнать, в каком формате обычные WEB-камеры передают данные на /dev/video0?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

8. "Можно ли заставить VLC или Mplayer писать в /dev/video0 ?"  +/
Сообщение от megatorr (ok) on 11-Апр-13, 22:23 
> В общем, немного разобрался. Нужно запустить модуль ядра v4l2loopback (ранее он назывался
> vloopback).
> После этого можно заставить mplayer гнать видео в файл /dev/video0:
>
mplayer movie.mp4 -vf scale=320:240 -vo yuv4mpeg:file=/dev/video0

> Проблема в том, что не могу подобрать формат. Изображение, получаемое через смотрелку
> веб-камеры, зеленое в вертикальную полоску, с каким-то полупрозрачным наложением увеличенной
> в два раза копии основного изображения.
> Как бы мне узнать, в каком формате обычные WEB-камеры передают данные на
> /dev/video0?

незнаю

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

9. "Можно ли заставить VLC или Mplayer писать в /dev/video0 ?"  +/
Сообщение от polya_bor (ok) on 25-Июл-13, 14:54 
> В общем, немного разобрался. Нужно запустить модуль ядра v4l2loopback (ранее он назывался
> vloopback).
> После этого можно заставить mplayer гнать видео в файл /dev/video0:
>
mplayer movie.mp4 -vf scale=320:240 -vo yuv4mpeg:file=/dev/video0

> Проблема в том, что не могу подобрать формат. Изображение, получаемое через смотрелку
> веб-камеры, зеленое в вертикальную полоску, с каким-то полупрозрачным наложением увеличенной
> в два раза копии основного изображения.
> Как бы мне узнать, в каком формате обычные WEB-камеры передают данные на
> /dev/video0?

http://sv27.com/

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

2. "Можно ли заставить VLC или Mplayer писать в /dev/video0 ?"  +/
Сообщение от John (??) on 13-Дек-12, 17:32 
У gstreamer есть элемент v4l2sink.
Если еще v4l2loopback - тоже может быть полезен для Вашей задачи.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Можно ли заставить VLC или Mplayer писать в /dev/video0 ?"  +/
Сообщение от John (??) on 13-Дек-12, 17:32 
> Если еще v4l2loopback - тоже может быть полезен для Вашей задачи.

s/Если/Есть/

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Можно ли заставить VLC или Mplayer писать в /dev/video0 ?"  +/
Сообщение от xintrea (ok) on 13-Дек-12, 22:19 
>> Если еще v4l2loopback - тоже может быть полезен для Вашей задачи.

Таки вы случайно не знаете, в каком формате обычные WEB-камеры передают данные на /dev/video0?

Если у вас есть вебкамера, можете открыть /dev/video0 в VLC или в Mplayer, и посмотреть информацию о потоке?


Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Можно ли заставить VLC или Mplayer писать в /dev/video0 ?"  +/
Сообщение от John (??) on 15-Дек-12, 00:43 
>>> Если еще v4l2loopback - тоже может быть полезен для Вашей задачи.
> Таки вы случайно не знаете, в каком формате обычные WEB-камеры передают данные
> на /dev/video0?
> Если у вас есть вебкамера, можете открыть /dev/video0 в VLC или в
> Mplayer, и посмотреть информацию о потоке?

вообще V4L2 поддерживает разные форматы

mplayer говорит - "RAW Uncompressed Video"

для gstreamer фильтр подобный такому
"video/x-raw-yuv,width=640,height=360,framerate=30/1,format=(fourcc)I420"

наиболее эффективный формат V4L2 например, для детектирования движения
V4L2_PIX_FMT_YUV420

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Можно ли заставить VLC или Mplayer писать в /dev/video0 ?"  +1 +/
Сообщение от xintrea (ok) on 15-Дек-12, 01:42 
>[оверквотинг удален]
>> Таки вы случайно не знаете, в каком формате обычные WEB-камеры передают данные
>> на /dev/video0?
>> Если у вас есть вебкамера, можете открыть /dev/video0 в VLC или в
>> Mplayer, и посмотреть информацию о потоке?
> вообще V4L2 поддерживает разные форматы
> mplayer говорит - "RAW Uncompressed Video"
> для gstreamer фильтр подобный такому
> "video/x-raw-yuv,width=640,height=360,framerate=30/1,format=(fourcc)I420"
> наиболее эффективный формат V4L2 например, для детектирования движения
> V4L2_PIX_FMT_YUV420

Я все это спрашивал для того, чтобы подключить DV-камеру в виде WEB-камеры, чтобы по Skype можно было говорить.

По результатам написал статью:

Как в Linux превратить DV-камеру в WEB-камеру
http://webhamster.ru/site/page/index/articles/comp/252

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

7. "Можно ли заставить VLC или Mplayer писать в /dev/video0 ?"  +/
Сообщение от megatorr (ok) on 11-Апр-13, 22:22 
>[оверквотинг удален]
> Дек 12 23:43 fw1
> crw-rw----+ 1 root video     195,   0
> Дек 12 22:39 nvidia0
> crw-rw----+ 1 root video     195, 255 Дек 12
> 22:39 nvidiactl
> crwxrwxrwx  1 root root       81,
>   0 Дек 13 00:53 video0
> Файл /dev/video0 на месте, но при попытке записать в него, система сообщает
> что файл не существует.
> Наверное, я что-то принципиально не так делаю. А как правильно?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру