Видеокодер и сегментатор для HLS VoD низкого качества

440
Murilo

Я пытаюсь кодировать и сегментировать видео для HLS по требованию (VoD). Я использую следующий код для таких:

ffmpeg -i 20170706_174314.mp4 -c 24 \ -vcodec libx264 -acodec aac -ac 1 -strict -2 -b:v 128k \ -profile:v baseline -maxrate 400k -bufsize 1835k \ -hls_time 10 -hls_playlist_type vod -vsync 1 \ video_chunks/index1.m3u8 \ -c 24 -vcodec libx264 -acodec aac -ac 1 -strict -2 -b:v 128k \ -profile:v baseline -maxrate 700k -bufsize 1835k \ -hls_time 10 -hls_playlist_type vod -vsync 1 \ video_chunks/index2.m3u8 

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

Я пробовал этот другой код также только для сегментации, но у меня была та же проблема:

ffmpeg -i 20170706_174314.mp4 \ -c:a libmp3lame -ar 48000 -ab 64k -c:v libx264 -b:v 128k -flags \  -global_header -map 0 -f segment \ -segment_list video_chunks/test.m3u8 -segment_time 10 -segment_format mpegts \ video_chunks/segment_%05d.ts 

Этот код отлично работал на некоторых видео, но вчера я записал видео на телефон Samsung J7 Prime для тестирования, так как видео будет сгенерировано телефоном, и это видео было плохо закодировано. Качество отстой, и некоторые части видео стали черно-белыми.

Еще одна вещь, которую я заметил в этом видео, заключается в том, что следующее сообщение продолжало появляться в цикле до конца процесса кодирования и сегментации.

Прошлая длительность Х слишком велика

Где X - десятичное число, очень близкое к

0.675316

Ссылка на видео ниже:

Dropbox Link

Моя версия FFmpeg:

ffmpeg --version ffmpeg version N-86482-gbc40674 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 7.1.0 (GCC) configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib libavutil 55. 66.100 / 55. 66.100 libavcodec 57. 99.100 / 57. 99.100 libavformat 57. 73.100 / 57. 73.100 libavdevice 57. 7.100 / 57. 7.100 libavfilter 6. 92.100 / 6. 92.100 libswscale 4. 7.101 / 4. 7.101 libswresample 2. 8.100 / 2. 8.100 libpostproc 54. 6.100 / 54. 6.100 

ТАК: Windows 10

1

0 ответов на вопрос

Похожие вопросы