crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Ответить в данную темуНачать новую тему
> [РЕШЕНО] Получилось сделать захват с web камеры, а как быть с tv-тюннером?
Revil
  опции профиля:
сообщение 12.10.2010, 5:45
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 9
Регистрация: 12.10.2010
Пользователь №: 2106

Спасибо сказали: 0 раз(а)




Репутация:   0  


Я уже, как две недели начал изучать QT и то из-острой необходимости, в последний раз кодил наверное 6-7 лет назад и мое кунг-фу может быть не таким хорошим :). Собственно сабж. В качестве Бэкенда использую Phonon-backend-vlc, ОС Ubuntu 10.10.
в системе стоит веб-камера (/dev/video0) и тв-тюннер (/dev/video1).
видео с веб камеры получаю вот так вот :

QString url("v4l2://///dev/video0");
void MainWindow::on_pushButton_clicked()
{
    ui->Player_1->play(Phonon::MediaSource(url));
}


при QString url("v4l2://///dev/video1"); получаю помехи. Ну еще бы, ведь в тюнере несколько входов.

Вопрос в том, как получить картинку с входа s-video, и указать стандарты PAL/SECAM ...думаю есть такая возможность. В самом VLC получается получить картинку с любого входа тюнера, а как быть в этом случае?
Обещаю, что если тут кого то задел своим быдлокодерством, то больше не буду. Но в данный момент очень нужна ваша помощь.

думаю нужно, как то параметры вскормить v4l2 драйверу, но как?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Revil
  опции профиля:
сообщение 12.10.2010, 6:55
Сообщение #2


Новичок


Группа: Новичок
Сообщений: 9
Регистрация: 12.10.2010
Пользователь №: 2106

Спасибо сказали: 0 раз(а)




Репутация:   0  


если терминале vlc v4l2:///dev/video1 :v4l2-input=2, vlc захватывает виде с канала s-video, а в программе не могу так как проблема с пробелом..его как то можно экранировать?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 12.10.2010, 8:56
Сообщение #3


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 108 раз(а)




Репутация:   23  


Revil,
попробуй это
Цитата
QUrl::QUrl ( const QString & url, ParsingMode parsingMode )
This is an overloaded function.

Parses the url using the parser mode parsingMode.


Цитата
enum QUrl::ParsingMode
The parsing mode controls the way QUrl parses strings.

Constant Value Description
QUrl::TolerantMode 0 QUrl will try to correct some common errors in URLs. This mode is useful when processing URLs entered by users.
QUrl::StrictMode 1 Only valid URLs are accepted. This mode is useful for general URL validation.
In TolerantMode, the parser corrects the following invalid input:

Spaces and "%20": If an encoded URL contains a space, this will be replaced with "%20". If a decoded URL contains "%20", this will be replaced with a single space before the URL is parsed.
Single "%" characters: Any occurrences of a percent character "%" not followed by exactly two hexadecimal characters (e.g., "13% coverage.html") will be replaced by "%25".
Reserved and unreserved characters: An encoded URL should only contain a few characters as literals; all other characters should be percent-encoded. In TolerantMode, these characters will be automatically percent-encoded where they are not allowed: space / double-quote / "<" / ">" / "[" / "" / "]" / "^" / "`" / "{" / "|" / "}"

ну либо попробуй заменить пробел на "%20" вручную :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Revil
  опции профиля:
сообщение 12.10.2010, 15:06
Сообщение #4


Новичок


Группа: Новичок
Сообщений: 9
Регистрация: 12.10.2010
Пользователь №: 2106

Спасибо сказали: 0 раз(а)




Репутация:   0  


kwisp
вечером буду дома, попробую :)

когда
QString url("v4l2://///dev/video1 :v4l2-input=2");

по логам видно, что идет преобразование в "v4l2:///dev/video1%20:v4l2-input=2", что не есть гуд...то есть приемник его считает одним целым. Если писать слитно без пробела то плеер работает, так же как и без параметра :v4l2-input=2. Уже не воспринимает параметр.
Для проверки переменную url вставляю в label
т.е
ui->label->setText(url);

то label показывает все как есть...даже слэши не урезает.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 12.10.2010, 15:19
Сообщение #5


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 108 раз(а)




Репутация:   23  


Revil,
вишь в чем дело у MediaSource есть конструкторы:
Цитата
MediaSource ( const QString & fileName )
MediaSource ( const QUrl & url )

ты задаешь первый, по-моему. Может явно указать что ты передаешь QUrl ?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Revil
  опции профиля:
сообщение 12.10.2010, 15:25
Сообщение #6


Новичок


Группа: Новичок
Сообщений: 9
Регистрация: 12.10.2010
Пользователь №: 2106

Спасибо сказали: 0 раз(а)




Репутация:   0  


kwisp
вроде я пробовал оба варианта....но все же еще раз попробую когда буду дома. Кто его знает может, что то упустил т. к. не спал до 9 утра :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Revil
  опции профиля:
сообщение 13.10.2010, 17:49
Сообщение #7


Новичок


Группа: Новичок
Сообщений: 9
Регистрация: 12.10.2010
Пользователь №: 2106

Спасибо сказали: 0 раз(а)




Репутация:   0  


чета не разобрался я ... уже мысли настроить модули для тв-тюннера так чтоб работал только S-video или создать видео устройство к примеру /dev/svideo0 откуда можно будет напрямую схватит видео со входа S-video тюнера. мля...уже гоняю.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 13.10.2010, 17:52
Сообщение #8


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 108 раз(а)




Репутация:   23  


Revil,
если получится, выложи код и описание действий сюда, интересная штуковина.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Revil
  опции профиля:
сообщение 14.10.2010, 5:06
Сообщение #9


Новичок


Группа: Новичок
Сообщений: 9
Регистрация: 12.10.2010
Пользователь №: 2106

Спасибо сказали: 0 раз(а)




Репутация:   0  


kwisp
к счастью не пришлось прибегнуть к тем выше мною описанным извращениям...все оказалось намного проще, настолько просто, что мне щас стыдно показывать решение :)


QString url("v4l2://///dev/video1:input=2");
void MainWindow::on_pushButton_clicked()
{
ui->Player_1->play(Phonon::MediaSource(url));
}

А я как в терминале для vlc пытался пихнуть параметр в виде :v4l2-input=2 и то через пробел. :)

Теперь можно смело покупать Video Capture card AVer-EZCapture для захвата видео. Думаю чем использовать целый комбайн типа тюнера, лучше юзать плату с двумя видеовходами тем более она том же чипе BT-878 (хотя и устаревшем), что и мой тюнер.

Если можно добавь пожалуйста в названии темы [РЕШЕНО]...возможно тема, чем нибудь поможет новичку. Спасибо
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
sibmail
  опции профиля:
сообщение 28.3.2011, 17:55
Сообщение #10


Студент
*

Группа: Участник
Сообщений: 63
Регистрация: 20.3.2009
Пользователь №: 626

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(Revil @ 14.10.2010, 5:06) *
kwisp
к счастью не пришлось прибегнуть к тем выше мною описанным извращениям...все оказалось намного проще, настолько просто, что мне щас стыдно показывать решение :)


QString url("v4l2://///dev/video1:input=2");
void MainWindow::on_pushButton_clicked()
{
ui->Player_1->play(Phonon::MediaSource(url));
}

А я как в терминале для vlc пытался пихнуть параметр в виде :v4l2-input=2 и то через пробел. :)

Теперь можно смело покупать Video Capture card AVer-EZCapture для захвата видео. Думаю чем использовать целый комбайн типа тюнера, лучше юзать плату с двумя видеовходами тем более она том же чипе BT-878 (хотя и устаревшем), что и мой тюнер.

Если можно добавь пожалуйста в названии темы [РЕШЕНО]...возможно тема, чем нибудь поможет новичку. Спасибо


подскажите под windows такое будет работать? и что писать в url?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V   1 2 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 18.12.2017, 21:35