![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Revil |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 12.10.2010 Пользователь №: 2106 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Я уже, как две недели начал изучать QT и то из-острой необходимости, в последний раз кодил наверное 6-7 лет назад и мое кунг-фу может быть не таким хорошим
![]() в системе стоит веб-камера (/dev/video0) и тв-тюннер (/dev/video1). видео с веб камеры получаю вот так вот :
при QString url("v4l2://///dev/video1"); получаю помехи. Ну еще бы, ведь в тюнере несколько входов. Вопрос в том, как получить картинку с входа s-video, и указать стандарты PAL/SECAM ...думаю есть такая возможность. В самом VLC получается получить картинку с любого входа тюнера, а как быть в этом случае? Обещаю, что если тут кого то задел своим быдлокодерством, то больше не буду. Но в данный момент очень нужна ваша помощь. думаю нужно, как то параметры вскормить v4l2 драйверу, но как? |
|
|
Revil |
![]()
Сообщение
#2
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 12.10.2010 Пользователь №: 2106 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
если терминале vlc v4l2:///dev/video1 :v4l2-input=2, vlc захватывает виде с канала s-video, а в программе не могу так как проблема с пробелом..его как то можно экранировать?
|
|
|
kwisp |
![]()
Сообщение
#3
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
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 |
![]()
Сообщение
#4
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 12.10.2010 Пользователь №: 2106 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
kwisp
вечером буду дома, попробую ![]() когда по логам видно, что идет преобразование в "v4l2:///dev/video1%20:v4l2-input=2", что не есть гуд...то есть приемник его считает одним целым. Если писать слитно без пробела то плеер работает, так же как и без параметра :v4l2-input=2. Уже не воспринимает параметр. Для проверки переменную url вставляю в label т.е
то label показывает все как есть...даже слэши не урезает. |
|
|
kwisp |
![]()
Сообщение
#5
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
Revil,
вишь в чем дело у MediaSource есть конструкторы: Цитата MediaSource ( const QString & fileName ) MediaSource ( const QUrl & url ) ты задаешь первый, по-моему. Может явно указать что ты передаешь QUrl ? |
|
|
Revil |
![]()
Сообщение
#6
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 12.10.2010 Пользователь №: 2106 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
kwisp
вроде я пробовал оба варианта....но все же еще раз попробую когда буду дома. Кто его знает может, что то упустил т. к. не спал до 9 утра ![]() |
|
|
Revil |
![]()
Сообщение
#7
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 12.10.2010 Пользователь №: 2106 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
чета не разобрался я ... уже мысли настроить модули для тв-тюннера так чтоб работал только S-video или создать видео устройство к примеру /dev/svideo0 откуда можно будет напрямую схватит видео со входа S-video тюнера. мля...уже гоняю.
|
|
|
kwisp |
![]()
Сообщение
#8
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
Revil,
если получится, выложи код и описание действий сюда, интересная штуковина. |
|
|
Revil |
![]()
Сообщение
#9
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 12.10.2010 Пользователь №: 2106 Спасибо сказали: 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 |
![]()
Сообщение
#10
|
Студент ![]() Группа: Участник Сообщений: 63 Регистрация: 20.3.2009 Пользователь №: 626 Спасибо сказали: 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 (хотя и устаревшем), что и мой тюнер. Если можно добавь пожалуйста в названии темы [РЕШЕНО]...возможно тема, чем нибудь поможет новичку. Спасибо подскажите под windows такое будет работать? и что писать в url? |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 11.3.2025, 13:07 |