Низкое качество изображения и высокая загрузка процессора при потоковой передаче в высоком разрешении с использованием веб-камеры и VLC в Linux

Низкое качество изображения и высокая загрузка процессора при потоковой передаче в высоком разрешении с использованием веб-камеры и VLC в Linux

Я пытаюсь вести трансляцию с веб-камеры, но пока результаты не очень хорошие: все, что я транслирую в разрешении 320x240, выглядит хорошо, но как только я выбираю более высокое разрешение, качество изображения становится ужасным, а загрузка процессора зашкаливает.

Я использую камеру Logitech C525, которая, как утверждается, поддерживает формат HD и имеет собственное разрешение 1280x720.

Если 1280x720 — это родное разрешение, то почему качество такое ужасное?

Я использую VLC для потоковой передачи и следующий файл конфигурации vlm:

new camNumber2 broadcast enabled
setup camNumber2 input v4l2:///dev/video2:width:320:heigth:240
setup camNumber2 output #transcode{vcodec=mpeg4,acodec=none,vb=1000}:standard{access=http,mux=ogg,dst=0.0.0.0:8080}
control camNumber2 play

Как я уже сказал, как только я увеличиваю разрешение, качество падает до большого блочного беспорядка.

Я подозреваю, что что-то не так с настройками входного видеосигнала, и VLC просто пытается масштабировать изображение до запрошенного мной разрешения, вместо того чтобы захватывать изображения в запрошенном разрешении.

решение1

У меня есть пара замечаний и предложений. Я не вижу ничего обязательно неправильного в ваших командах, но давайте попробуем найти решение.

  1. Похоже, вы используете mpeg4, я бы рекомендовал взглянуть наЭТОТсписок поддерживаемых кодеков VLC. Я рекомендую вам попробовать h265 или mp4v. При более близком рассмотрении я не вижу mpeg4 в этом списке, так что это может быть вашей проблемой.
  2. Какой процессор вы используете? Возможно, ваша система недостаточно мощная для потоковой передачи 1280x720. Вы не указали, какой компьютер используете, и я просто хочу убедиться, что вы не пытаетесь сделать это на Raspberry Pi или чем-то подобном.
  3. Попробуйте заставить его работать с помощью GUI. Я понимаю, что GUI может не быть конечным решением, но если мы сможем заставить его работать там, то мы будем знать, что это возможно, и сможем продолжить с аргументами CLI.
  4. Попробуйте на другой ОС и компьютере. Можете ли вы заставить его работать на Windows и Linux, что работает лучше? Опять же, это поможет устранить некоторые переменные о том, где проблема.
  5. Маловероятно, но возможно, что ваша шина USB перегружена, возможно, используется только порт USB 1, или у вас на той же шине подключен внешний жесткий диск, который занимает всю полосу пропускания.

Попробуйте некоторые из вариантов выше, если вы разберетесь, напишите, какие решения сработали для вас. Если это все еще не работает, напишите, что вы обнаружили.

Связанный контент