ffmpeg живое транскодирование, более быстрая альтернатива?
Вопрос
Есть ли альтернатива с открытым исходным кодом? ffmpeg
и VLC
для перекодирования живого видео из потоковой передачи HTTP в RTMP или другое?
ffmpeg
из-за того, что мой процессор (AMD 4,0 ГГц, 8 ядер) загружен на 100% только с 8 потоками SD.
Спасибо за помощь.
ПС.Я думаю, мне не нужно перекодировать видео, я также могу транслировать его с помощью чего-то вроде http-прокси-видео.Исходник в потоковом формате HTTP, также я работаю под Linux.
Решение
Ваш вопрос должен быть:«Есть ли альтернатива с открытым исходным кодом быстрее, чем ffmpeg».
И ответ нет.
Если вам не нужно перекодировать, добавьте -acodec copy -vcodec copy
в вашу командную строку
Другие советы
ffmpeg
это гибкий кодировщик, вы можете настроить его так, как вам нравится, все зависит от алгоритма кодирования и соотношения размера И качества, я думаю, что сейчас дни X264 более эффективны, чем это было раньше, важными изменениями с ffmpeg для ускорения кодирования являются -preset
значение по умолчанию равно medium
вы можете использовать fast
или faster
и следите за качеством вашего выходного видео .У меня есть видео с приготовлением на пару в прямом эфире, и я использую эту команду
ffmpeg -loglevel 0 -thread_queue_size 32768 -re -i "http://sorce" -vcodec libx264 -preset fast -break_non_keyframes 1 -profile:v high444 -x264-params "nal-hrd=cbr" -b:v 260k -acodec aac -b:a 32k -map_metadata -1 -s 480x360 -f flv rtmp://localhost/hls/live
Это для видео очень низкого качества ,
ffmpeg -loglevel 0 -thread_queue_size 32768 -re -i "http://source" -vcodec libx264 -preset fast -break_non_keyframes 1 -b:v 665k -profile:v high444 -x264-params "nal-hrd=cbr" -acodec aac -b:a 32k -map_metadata -1 -s 854x480 -f flv rtmp://localhost/hls/live
вы получите более качественное и видимое изображение при увеличении -b:v
ценность .таким образом, в зависимости от вашей предпочтительной сети вы можете получить гораздо более высокое качество видео при меньшей загрузке процессора.