Arka fon
FFmpeg, 2014-2-12'den beri libx265 ile HEVC / H.265 kodlamasını desteklemektedir. Şimdi, ffmpeg'i doğrudan HEVC'yi kodlamak için kullanabilirsiniz ya da başka bir enkoder kullanın, ardından FFmpeg kullanarak .mp4, .mov veya .mkv'ye manuel olarak mux.
Mevcut Enkoderler
Güncel H.265 / HEVC kodlayıcılar:
Gelişim süreleri ve güvenilirliklerinden dolayı yalnızca MulticoreWare ve DivX önerilmektedir.
İki x265'in
Bir karışıklık, her ikisi de "x265" olarak adlandırılan ve biri Çinli bir kolej öğrencisi tarafından diğeri pratik olarak ölü, diğeri ise MulticoreWare adlı ticari bir şirket tarafından iki bağımsız proje olduğu. Birincisi ilk olarak başlamış olmasına rağmen, şu anda neredeyse ölü ve ikincisi aktif olarak geliştiriliyor ve VideoLAN (x264 geliştiricisi) tarafından onaylanıyor.
FFmpeg HEVC Kodlama Desteği Zaman Çizelgesi
- 2013-10-12 .mov muxing desteği eklendi
53f903b
.
- 2014-02-12 libx265 kodlama desteği eklendi
bb6b173
.
- 2014-03-09 HEVC için daha eksiksiz Matroska muxing desteği eklendi
38aee64
.
- 2014-03-09 Daha eksiksiz .mov ve yeni .mp4 muxing desteği eklendi
9563e67
.
tl; Dr.
Her neyse, bunlar benim tavsiyem sırasına göre HEVC'yi kodlamanın tam bir mevcut olasılıkları kümesi:
MulticoreWare libx265'i FFmpeg ile doğrudan kullanma. Bu, Zeranoe'nun en son yapılışı ile bunu şimdi yapabilirsiniz:
ffmpeg -i INPUT -c:v libx265 -an -x265-params crf=25 OUT.mov
# With audio
ffmpeg -i INPUT -c:v libx265 -c:a copy -x265-params crf=25 OUT.mov
Not: FFmpeg 2014-03-09'dan daha yeni bir sürüm oluşturuyor, HEVC'yi şimdi .mp4 dosyalarına dönüştürmenize olanak tanıyor (9563e67'yi tamamla):
ffmpeg -i INPUT -c:v libx265 -an -x265-params crf=25 OUT.mp4
Ayrıca Matroska (.mkv) 'ya kopyalayabilirsiniz:
ffmpeg -i INPUT -c:v libx265 -an -x265-params crf=25 OUT.mkv
Bağımsız MulticoreWare x265'i kullanın ve sonra elde edilen dosyayı FFmpeg veya MP4Box ile karıştırın . Bu, libx265 desteği olmayan daha eski FFmpeg yapılarıyla çalışacaktır.
# Decode input using FFmpeg and encode using x265 using pipe
ffmpeg -i INPUT -f yuv4mpegpipe -pix_fmt yuv420p - | \
x265 --y4m -o encoded.265 -
# Mux the resulting encoded .265 file into an .mp4 or .mov
# Using ffmpeg: only works with newer builds that support muxing HEVC
# Muxing to .mp4 supported since 03-09-2014
ffmpeg -i encoded.265 -c copy out.mp4
# With audio
ffmpeg -i encoded.265 -i INPUT -map 0 -map 1:a -c copy out.mp4
# Using MP4Box
MP4Box -add raw.265 out.mp4
# With audio
MP4Box -add {INPUT}#audio -add raw.265 out.mp4
@Duvrai'ye teşekkürler.
DivX HEVC Encoder kullanarak ve daha sonra sıkın.
Kullanmanın yolu, bağımsız x265 kullanmaya benzer (yukarı bakın).
Güncelleme: FFmpeg şimdi MulticoreWare libx265 kullanarak HEVC kodlama desteğine sahip.
Güncelleme 2: FFmpeg şimdi HEVC'yi mp4 AND mov'a takma desteğine sahip .
crf=25
Örnek komutlarda neyin temsil edildiğini bilmeyenler için , işte bir CRF rehberi: slhck.info/articles/crf