HEVC bit akışını ffmpeg ile ayıklayın


4

Ham .265 bit akışını HEVC mkv dosyasından ayıklamak istiyorum. Bunu kullanıyorum:

ffmpeg.exe -i hevc.mkv -an -vcodec kopyası -f hevc bitstream.265

Bu hatayı aldım:

Talep edilen çıktı formatı 'hevc' uygun bir çıktı formatı değil

Ancak, HEVC dağıtıcısı zaten uygulandı ve sıkıştırılmamış ham YUV'ye çıkarabilirim. ffmpeg -formats:

 File formats:
 D. = Demuxing supported
 .E = Muxing supported
D  hevc            raw HEVC video

Burada yanlış olan ne?


1
Sadece ihtiyacın olduğunu düşünüyorum -f rawvideo. Codec kopyalandığından, bunu yapmalı.
slhck

Peki, bir şey yapar, ancak sonuç yanlış akış, yani HM kod çözücü 12.0 (TappDecoder.exe) ile çözülemez
Mark

Yanıtlar:


3

H.264 / H.265'in ham bit akımı tipik olarak Ek B formatı olarak adlandırılır. Bu dosyaları aşağıdaki FFmpeg komutlarıyla oluşturabilirsiniz:

H.265 ila Ek B

ffmpeg -i in.mkv -c:v copy -bsf hevc_mp4toannexb out.h265

hile ffmpeg ve H.265 / HEVC ile yapar.

H.264 ila Ek B

H.264 için biraz farklı:

ffmpeg -i in.mkv -c:v copy -bsf h264_mp4toannexb out.h264

1

Şimdiye kadar, en iyi çözüm MKVToolNix kullanmaktır .

mkvextract.exe tracks hevc.mkv -f 0:bitstream.265

1

Ffmpeg çözümünü Sebastian'dan denedim, ama benim için işe yaramadı. İşte sadece H.265 bit akışını elde etmek için yaptıklarım. Bazı kişilerin çıktı dosya uzantısını .bin olarak ayarlamayı önerdiğini gördüm, ancak h264 / h265'i bu dosyanın ne tür bir bit akımı içerdiğini daha açık hale getirdiği için seviyorum.

H.265 ila Ek B

ffmpeg -i test.mkv -c:v copy -bsf hevc_mp4toannexb -f hevc test.h265

H.264 ila Ek B

ffmpeg -i test.mkv -c:v copy -bsf h264_mp4toannexb -f h264 test.h264

NOT: Bu aynı zamanda .mov dosyaları ve muhtemelen diğer formatlar için de geçerlidir.


1
Öyleyse, cevabınız Sebastian Annies’in cevabı ile aynıdır, -hancak soruda olan seçeneğe geri eklemiş olmanız dışında ( dstob bunu dışarıda bırakmanızı tavsiye etse bile )? Cevabınızı başkasının cevabıyla karşılaştıracaksanız, cevabınızı diğer cevabı ile karşılaştırın (yani, bunun nasıl farklı olduğunu ve nedenini açıklayın).
Scott

Geri bildirim için teşekkürler, ancak -h olmadan denedim, ancak ffmpeg bir hata yapmaya devam etti. Bu sinir bozucu buldum bu yüzden benim için işe yarayan çözümü yayınladı.
arndtc

0

.binÇıktınız için bir dosya uzantısı kullanmanızı tavsiye ederim . Bu ham bir bit akış dosyası olduğundan yeterince iyi olması gerekir.

Bir video kopya yapıyorsunuz, bu yüzden -f hevcffmpeg'in format seçimini yapmasına izin vermeden bırakmanızı öneririm . HEVC sürümünüzde uygulandıysa çalışmalıdır.

Ayrıca gidiyor düşünün -c:v copyüzerinde -vcodec copyikinci kullanımdan kaldırıldı olarak.

H265 test modeli kodlayıcı ve ffmpeg kullanma konusunda çok fazla tecrübem var ama ffmpeg'deki HEVC muxer ile değil, bilgilerim yanlış olabilir.


-1

Yeni bir ffmpeg sürümüne sahip olup olmadığınızı kontrol etmek isteyebilirsiniz. Ses olmadan bir video dosyası istiyorsanız, şunu deneyin:

ffmpeg -y -i hevc.mkv -codec:v copy videostream.mkv

veya:

ffmpeg -y -i hevc.mkv -codec:v copy videostream.mp4

OP, ham akımın nasıl çıkarılacağını sordu, başka bir kaba nasıl karıştırılacağını değil.
slhck
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.