LINUX.ORG.RU

Изменение rtsp видеопотока без перекодирования.

 , ,


0

1

Имеется аппаратный кодировщик, он берет видео по hdmi и выдает видео поток ужатый h.264 посредством (rtsp или udp) vlc прекрасно показывает, и все бы ничего, но задача стояла немного иная. Цель загнать этот видеопоток к провайдеру кабельного телевидения, и вот тут незадача. Когда сисадмин провайдера глянул на это поток спец программой анализатором то сказал, что VIDEO PID и PCR PID разные, PCR внешний, а нужен внутри видео! (потом я это увидел в настройках) Посоветовали указать VIDEO PID и PCR PID одинаковыми может быть железка провайдера схавает нормально, но в данном кодере этого сделать нельзя! можно указывать только разные пиды!

отсюда родились вопросы: 1) можно ли с помощью FFmpeg,cvlc - получить поток - внести изменения - и отдать обратно в сеть! и желательно без перекодирования! 2) если нет то возможно есть иной механизм сделать из hdmi подходящий ip поток



Последнее исправление: Amirk3d (всего исправлений: 1)

https://wiki.videolan.org/Documentation:Streaming_HowTo/Command_Line_Examples/
Там по wiki походи, тебе нужны параметры для --cout.

Например:
cvlc Откуда:Порт -vvv --live-caching 0 --sout «#dst='transcode{vcodec=theo,vb=2000,acodec=none,ab=0,channels=0,height=384,scodec=none}:rtp{dst=127.0.0.1,port=1234,sdp=rtsp://127.0.0.1:5554/video}'»

Эта штука слушает Откуда:Порт и делает rtsp://127.0.0.1:5554/video без звука с перекодированием в теору. Поиграйся с параметрами, добавь звук, копирование видеопотока и т.д. Там есть ещё на wiki таблица совместимостей потоков, контейнеров и кодеков. Просто так в лоб скорее всего работать не будет.

imul ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.