Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Видео и аудио: обработка и кодирование (http://forum.oszone.net/forumdisplay.php?f=45)
-   -   x262 - MPEG2 encoder от VideoLAN (http://forum.oszone.net/showthread.php?t=346242)

Vista-User 25-08-2020 04:08 2932053

x262 - MPEG2 encoder от VideoLAN
 
Оказывается, у VideoLAN есть MPEG2 кодировщик с детектором сцен
https://www.videolan.org/developers/x262.html
Очень забавно выполнен, в виде x264 кодера, который может сохранять и MPEG2, если задать специальный ключ. В MediaInfo это отображается так:
MediaInfo
Writing library : x264 - core 142 r2633 bb887aa - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - videolan.org/x264.html - options: cabac=0 ref=1 mpeg2=1 deblock=0:0:0 analyse=0:0 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=3 lookahead_threads=1 sliced_threads=0 nr=0 decimate=0 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=12 keyint_min=1 scenecut=40 intra_refresh=0 rc_lookahead=12 rc=crf mbtree=1 crf=1.0 qcomp=0.60 qpmin=1 qpmax=31 qpstep=4 vbv_maxrate=9500 vbv_bufsize=1835 crf_max=0.0 nal_hrd=none filler=0 ip_ratio=1.40 aq=1:1.00

Установка:
Код:

sudo apt install build-essential git yasm
git clone http://git.videolan.org/git/x262.git
cd x262
./configure --help
./configure --enable-static --disable-opencl --bit-depth=8 --chroma-format=all --enable-strip
make
sudo make install
cd /usr/local/bin
sudo mv x264 x262

Использование:
Код:

x262 --fullhelp
x262 --crf 1.0 --vbv-maxrate 9500 --vbv-bufsize 1835 --keyint 12 --sar 16:9 --fps 25 --bframes 0 --dc 10 --mpeg2 -o out.m2v in.y4m

По моему, все MPEG2 кодеры добавляют шум.

Update:
Импорт из ffmpeg:
Код:

ffmpeg -i input.mkv -f yuv4mpegpipe - | x262 --demuxer y4m --crf 2.0 --vbv-maxrate 9500 --vbv-bufsize 1835 --keyint 12 --sar 16:9 --bframes 0 --dc 10 --threads 3 --no-progress --mpeg2 -o output.mkv -
Выходной формат определяется по расширению, хотя, можно и указать --muxer mkv. Для mkv используется Haali Matroska Muxer (как и в x264). Независимо от указания m2v или mpg всегда выводится в Elementary stream (но MediaInfo знает продолжительность). --sar указывать нужно, несмотря на то, что формат yuv4mpegpipe содержит эту информацию. Вообще, я так понял, что там накосячено. --dar значения (привычные человеку) понимаются под --sar. Если не указать --sar и в y4m подать 720x576 4:3, то в выходном файле будет
aspect ratio 1:1
original aspect ratio 5:4
То есть, Haali муксер еще и путает квадратные пиксели (1:1) с квадратным соотношением сторон.

Если x262 собран с поддержкой ffms, lavf или lsmash, то он сам может декодировать многие форматы, но соответственно, возможность обработки ограничена.
Для это перед сборкой нужно установить:
Код:

sudo apt install libavcodec-dev libavformat-dev libavdevice-dev libavfilter-dev libffms2-dev

DJ Mogarych 31-08-2020 10:58 2932540

ffmpeg тоже умеет
Код:

-vf "select='gt(scene,0.4)'"
https://stackoverflow.com/questions/...-with-timecode

https://www.google.com/search?q=ffmp...ange+detection

deniums 04-02-2021 14:44 2948791

Сборка для Windows.


Время: 09:27.

Время: 09:27.
© OSzone.net 2001-