|
1 / 1 / 0
Регистрация: 22.04.2016
Сообщений: 42
|
|
Воспроизведение видео с ip камеры22.04.2016, 15:21. Показов 61366. Ответов 80
Метки нет (Все метки)
Добрый день!
Решил написать программку, которая отображала бы в окне поток из сети (по протоколу http или rtsp). Главное, чтобы без задержки! Имеется обычная китайская ip камера 2mp. Программа Onvif отображает поток с этой камеры по rtsp без задержек. И я хочу также. Как это можно реализовать? И можно там, чтобы сделать цифровой zoom с интерполяцией!? Неделю перекапывал весь интернет и только закопался: 1 - Поставил плагин VLC в borland, но выдает с секундной задержкой. Вариант отпал( 2 - Попробовал вариант с DirectShow.. значит надо установить фильтр для ip камеры: - RTSP Client DirectShow Source Filter - не получилось добавить в область GraphEdit (М.б. из-за того что у меня Win7 x64) - IP Camera [JPEG/MJPEG] DirectShow Filter - виснет GraphEdit при добавлении в область (М.б. из-за того что у меня Win7 x64) - Onvif Filter (HappyTimeSoft) - Программой не удалось открыть поток с ip камеры(выдает ошибку что устройство не может открыть) 3 - Подумал о варианте использовать GStreamer, но не нашел простяцкого описания о реализации этого метода. (Ну этот вариант на крайняк, т.к. хочу, чтобы моя программа была самостоятельной без каких-либо дополнительных программ) И по всем этим причинам хочу узнать: Может где-то я что-то не дотянул? Как мне воспроизвести видео с ip камеры без задержки, в среде Borland, например!? И можно чтобы потом добавить цифровой zoom с интерполяцией!?
0
|
|
| 22.04.2016, 15:21 | |
|
Ответы с готовыми решениями:
80
Запись видео с веб камеры Захват видео с веб-камеры (C++) DirectShow: захват видео с веб-камеры, воспроизведение |
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,460
|
|
| 22.04.2016, 17:26 | |
|
FFMPEG после обработки напильником легко справляется с получением картинок из RTSP. Доставка на экран без проблем идёт через WM_PAINT. Сейчас не за ПК как будет время кину эскиз
Добавлено через 2 минуты Но есть особенность. Тут часть что общается с FFMPEG лично мне в 6-м билдере собрать не удалось - выносил в DLL которую собирал в студии
0
|
|
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,460
|
|||||||||||||||||||||
| 23.04.2016, 00:37 | |||||||||||||||||||||
|
Как и обещал выкладываю пример дружбы FFMPEG с Borland C++ Builder через DLL созданную в Visual C++
демонстрируется подключение к IP-камере (RTSP) для тех кто не хочет качать привожу текст заголовочный файл DLL Кликните здесь для просмотра всего текста
тело DLL Кликните здесь для просмотра всего текста
заголовочный файл формы Кликните здесь для просмотра всего текста
тело формы Кликните здесь для просмотра всего текста
для работы нужен ffmpeg-...-win32-shared и ffmpeg-...-win32-dev качаем здесь моменты настройки проектов описаны в файле ffmpeg_test_bcb/HELP/HELP.txt
4
|
|||||||||||||||||||||
|
1 / 1 / 0
Регистрация: 22.04.2016
Сообщений: 42
|
|
| 23.04.2016, 16:20 [ТС] | |
|
Ого! Спасибо! На неделе воспользуюсь материалом!
А что скажете на счет OpenCV!? Проще ли он!?
0
|
|
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,460
|
||
| 23.04.2016, 16:35 | ||
|
0
|
||
|
64 / 64 / 16
Регистрация: 07.05.2016
Сообщений: 304
|
|
| 15.05.2016, 00:38 | |
|
Мне интересно почему средствами opencv именно подавая поток в камеру не все камеры работают надлежайшим образом с rtsp? и еще зависит о камеры конкретной
0
|
|
|
0 / 0 / 0
Регистрация: 14.05.2016
Сообщений: 7
|
|
| 15.05.2016, 00:51 | |
|
Привет ребята. У меня тоже есть чем поделится с вами - надеюсь будет полезно, единственное, придется попотеть, т.к. там без перевода, но Человек открыл многие просторы, ( не буду начинать с Чего, но Одно скажу, с помощью его можно в ВК делать что хошь,,, только я не скажу где у него это написано, просто в реальную тему отвечу, что вы разрабатываете, у него имеется, но все ни так просто, кароче вот вам адрес, читайте: Naughter
0
|
|
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,460
|
|
| 15.05.2016, 07:03 | |
|
tibul, какого дьявола вы тут ребусы загадываете? Причём тут ВК? Вбивание указанного вами слова в Гугл даёт по теме ТС ноль.
0
|
|
|
1 / 1 / 0
Регистрация: 22.04.2016
Сообщений: 42
|
|
| 19.05.2016, 12:31 [ТС] | |
|
vxg, спамит tibul, походу...
А Ваши исходники с ffmpeg я запустил и был в восторге от быстродействия! Он заработал как с rtsp так и с http!! Скоро у меня появится камера с MJPEG и буду пытаться как-нибудь воспроизвести видео и с нее.. Еще раз спасибо огромное за исходнички!
0
|
|
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,460
|
||
| 19.05.2016, 13:16 | ||
0
|
||
|
0 / 0 / 2
Регистрация: 25.05.2015
Сообщений: 28
|
||||||
| 12.06.2016, 16:48 | ||||||
|
Привет. Вопрос к "vxg". Я начал только изучать с++ и многое мне еще не понятно. Как я понимаю ваш пример под Borland C++. Я же изучаю пользуюсь vs2015. Так вот сам вопрос... Как можно ваш пример переделать под winApi в visual studio? Целый день бьюсь и не получается. Гугл не помог тоже. Если у вас будет время и желание то пожалуйста приведите пример. С FFmpegom я разобрался(могу и декодировать и кодировать и сохранять в файл и читать из файла) а вот вывести на экран из потока камеры или видео не получается. Вот пример моего окна который читает файл .bmp и выводит на экран. Если можно то покажите на нем
0
|
||||||
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,460
|
|
| 12.06.2016, 21:25 | |
|
tiundv, все что написано на билдере в данном случае легко переносится на студию - просто воткните содержимое обработчика WM_PAINT в соответствующую секцию своей оконной процедуры
1
|
|
|
0 / 0 / 2
Регистрация: 25.05.2015
Сообщений: 28
|
|
| 12.06.2016, 21:33 | |
|
Да. я пытался но у меня не получается. постоянно какие то ошибки с классами и функциями. просто попробуйте сами если есть время. спасибо за ответ. для меня пока это все сложно но я буду копать
0
|
|
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,460
|
|
| 12.06.2016, 22:09 | |
|
tiundv, на днях попробую попробовать
1
|
|
|
0 / 0 / 2
Регистрация: 25.05.2015
Сообщений: 28
|
|
| 12.06.2016, 22:17 | |
|
vxg - Буду очень признателен
0
|
|
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,460
|
||||||
| 14.06.2016, 10:49 | ||||||
|
tiundv, как-то примерно так (обрабатывать изменение размеров окна не стал)
1
|
||||||
|
0 / 0 / 2
Регистрация: 25.05.2015
Сообщений: 28
|
|
| 14.06.2016, 18:08 | |
|
vxg - Большое спасибо вам. Завтра на работе проверю как камеру цепляет.
Добавлено через 9 минут vxg и еще вопрос если можно.... зачем в функциях указывать второй void - (void init(void)). Осмысленного ответа для новичка не нашел.
0
|
|
|
1 / 1 / 0
Регистрация: 22.04.2016
Сообщений: 42
|
|||||||
| 15.06.2016, 12:45 [ТС] | |||||||
|
если не void, то например как то так:
1
|
|||||||
|
Модератор
3409 / 2180 / 354
Регистрация: 13.01.2012
Сообщений: 8,460
|
|||
| 15.06.2016, 14:09 | |||
|
fademike, имелось ввиду следующее: обязательно ли указывать ключевое слово void что бы компилятор понял что функция не имеет параметров или можно оставить пустые скобки
tiundv, как то так
1
|
|||
|
0 / 0 / 2
Регистрация: 25.05.2015
Сообщений: 28
|
||||||||||||||||||||||||||
| 16.06.2016, 18:50 | ||||||||||||||||||||||||||
|
Спасибо ребята за обьяснение. Если можно то помогите еще.... Пытался вывести видео с камеры в дочернее окно... куча ошибок...Помогите пожалуйста. И вторая просьба...- Не могли бы вы обьяснить что за метод "static DWORD WINAPI proc(LPVOID arg)" что он делает ? И обязательно ли использовать "DECL_SPEC" ? Ниже мой код вывода дочерних окон и ошибки при запуске....
ffmpeg_test.h Кликните здесь для просмотра всего текста
main.cpp Кликните здесь для просмотра всего текста
При сборке выдает предупреждения: Кликните здесь для просмотра всего текста
При отладке без подключенной камеры ошибок нет но процесс попадает сразу в фоновые. При подключеной камере ошибки такие: Кликните здесь для просмотра всего текста
При остановке отладки уведомляет так: Кликните здесь для просмотра всего текста
Это малая часть ошибок... Прошу вас помочь !!! За ранее СПАСИБО !!! Добавлено через 16 минут Попробовал одно дочерное окно вывести и при отладке выскакивает окно где написано: Кликните здесь для просмотра всего текста
Вызвано исключение по адресу 0x0FEF665A (swscale-4.dll) в Win32Project2.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0x00000038.
Если для этого исключения имеется обработчик, выполнение программы может быть продолжено безопасно.
0
|
||||||||||||||||||||||||||
| 16.06.2016, 18:50 | |
|
Помогаю со студенческими работами здесь
20
Наложить видео с альфа каналом поверх картинки с камеры, чтобы видео не перекрывало картинку Обработка видео с камеры видео наблюдения (для экспертов) дырка для захвата видео с видео камеры Как сделать так что бы обычное видео из жесткого диска подавалось как видео с вэб-камеры? Воспроизведение видео Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|