3 puan yazan GN⁺ 2023-11-21 | 1 yorum | WhatsApp'ta paylaş

HandBrake 1.7.0 yükseltme duyurusu

  • HandBrake'i güncellemeden önce bekleyen bir kodlama işi olmadığından emin olunması ve özel ön ayarlarla uygulama tercihlerinin yedeklenmesi önerilir.
  • Windows kullanıcılarının mutlaka Microsoft .NET Desktop Runtime sürüm 6.0.x kurması gerekir; .NET 7 kurulu olsa bile .NET 6 kurulumu gereklidir.

HandBrake 1.7.0 sürüm notları

  • İyileştirmeler ve hata düzeltmelerinin tam listesi GitHub'daki sürüm notlarında görülebilir.

Sorun bildirme ve geri bildirim gönderme

  • Yeniden üretilebilen bir hata ya da sorun bulunursa veya geri bildirim vermek istenirse, bunun GitHub issue takipçisi üzerinden iletilmesi isteniyor.
  • IRC topluluk destek kanalı üzerinden de iletişime geçilebilir.
  • HandBrake uygulaması, boş zamanlarında çalışan küçük bir gönüllü ekip tarafından geliştirildiği için anında yanıt vermek zor olabilir; ancak tüm görüşler incelenir ve yapıcı geri bildirim memnuniyetle karşılanır.

Teşekkürler ve katkılar

  • Bu sürümdeki bazı özellikler HandBrake kullanıcıları veya şirketler tarafından sağlandı; çeviriler ise dünya çapındaki gönüllü topluluğun aktif katılımıyla yapıldı.
  • Katkıda bulunmakla ilgilenip henüz katılmamış olanların katkı rehberini okuması önerilir.
  • Geliştirici olmasanız da katkıda bulunmanın çeşitli yolları vardır.

GN⁺ görüşü

  • HandBrake 1.7.0 yükseltmesi, özel ayarların yedeklenmesini ve yeni .NET runtime kurulumunu gerektiriyor.
  • Bu güncelleme iyileştirmeler ve hata düzeltmeleri içeriyor; ayrıca kullanıcılar ve şirketlerin katkılarıyla yürütülen topluluk tabanlı bir proje.
  • Bu yazı, açık kaynak bir video transcoder'ı olan HandBrake'in yeni sürümünün çıktığını duyuruyor ve teknoloji topluluğu içinde iş birliği ile katkının önemini vurguladığı için ilgi çekici.

1 yorum

 
GN⁺ 2023-11-21
Hacker News yorumları
  • HandBrake'te nihai dosya boyutunu belirtince geri kalanını otomatik hesaplamamasına üzülüyorsanız, hesabın kendisi aslında basit
    Ortalama bitrate [kbps] = hedef boyut [kilobit] ÷ süre [saniye]
    Örneğin 2 saat 48 dakikalık bir dosyayı 5GB altına indirmek istiyorsanız, 2 saat 48 dakika 10.080 saniyedir ve 5GB da 40.000.000kb olduğundan ortalama bitrate 40.000.000kb ÷ 10.080 saniye = 3.968kbps olur
    Ses 256kbps ise ortalama video bitrate'inin 3.712kbps veya altında olması gerekir

    • Bu hesap yalnızca sabit bitrate ile encode ederken doğrudur
      Genelde sabit kaliteyle encode edilir ve çıktı boyutu büyük ölçüde giriş videoya bağlıdır
      Bu yüzden HandBrakeCLI çıktısını parse eden ve tamamlanma oranı ile mevcut çıktı dosyası boyutuna göre nihai boyutu tahmin eden bir Python wrapper'ı yaptım
      Dosya fazla büyüyecek gibi görünürse veya çıktı kalitesi çok kötü olup kalite katsayısını artırmak gerektiği anlaşılırsa erken durdurulabilir
  • “Put that cocktail down. Your HandBrake encode is complete!” mesajının yıllar geçse de hâlâ duruyor olması hoşuma gidiyor

    • Bu tür detayları seviyorum. Makineye biraz ruh ya da hayalet gibi bir şey geri koyuyormuş hissi veriyor, o yüzden hoşuma gidiyor
  • Eskiden HandBrake hattı 10-bit olduktan sonra bile filtrelerin önemli bir kısmı 8-bit kalmıştı; bu yüzden yanlış filtreyi seçerseniz fark etmeden encode kalitesini düşürmek kolaydı
    Şimdi filtrelerin çoğu, belki de hepsi, 10-bit destekliyor gibi görünüyor
    Ayrıca FDK-AAC lisansı yüzünden paketlenemediği için yayın sürümündeki AAC codec'i zayıftı, ama bugünlerde o codec'in eskisi kadar kötü olmadığını duydum
    Bu iyi uygulamanın mevcut sürümünde hâlâ büyük tuzaklar olup olmadığını merak ediyorum

    • 1.6'dan beri tüm filtreler yüksek bit derinliğini destekliyor. AAC encoder kalitesi de artık gayet iyi ve macOS'ta Apple'ın AAC encoder'ı kullanılabildiği için sorun olmuyor
      Yine de asıl mesele insan gücü eksikliği. Olması güzel olur denilen pek çok özellik isteği hâlâ özellik cennetinde bekliyor
      Gerçi tüm açık kaynak projelerde durum benzerdir
  • Bu günlerde ChatGPT'den ffmpeg terminal komutu istemeyi tercih ediyorum
    Herhangi bir uygulamadan çok daha hızlı ve istediğim gibi ayarlanabiliyor

    • Dosyaya tıklayıp “open with handbrake” deyin ve “convert” düğmesine basın, hepsi bu. Bunun nasıl daha hızlı olabileceğini hayal edemiyorum
    • “İstediğim gibi ayarlanabiliyor” demek, aslında ffmpeg seçeneklerini ve bunların etkileşimlerini anlıyorsunuz demektir
      Deneme yanılma yapmak veya man sayfalarını okumak, HandBrake'te preset seçip kutucuk işaretlemek ya da slider oynatmaktan “çok daha hızlı” sayılmaz
    • Ama ChatGPT dosya biçimini bilmiyor. Prompt'a ffprobe çıktısını da koymazsanız öyle
      Kaynak DVD ise en-boy oranı sorunları, deinterlacing, altyazı işleme gibi dikkate alınacak çok şey vardır
    • ffmpeg, tam da görsel no-code uygulanmış olmasını istediğim tek program
      Artık herhangi bir man sayfasını gezebileyim diye --help benzeri bir --chatgpt seçeneği arar oldum
    • Daha hızlıdır ama hata yapması da daha kolaydır. Uygulamalar da istediğiniz gibi ayarlanabildiği için o kısım berabere
  • Özellik listesi güzel görünüyor. Özellikle arm64 / aarch64 / Apple Silicon mimarisindeki performans iyileştirmeleri, güncel FFmpeg ile daha hızlı HEVC decode ve %30 hızlanan bwdif filtresi, yeni SVT-AV1 assembly optimizasyonlarıyla 4 kata kadar performans artışı, gereksiz frame kopyalarını kaldırarak bellek verimliliğini artırıp video dönüştürme hızını iyileştirmesi umut verici

  • HandBrakeCLI ile ilgili tek şikâyetim, stdin üzerinden pipe edilen girdiyi encode edememesi
    FFmpeg bunu destekliyor, HandBrake'in de içeride FFmpeg kullandığını sanıyordum

    • HandBrake, FFmpeg kütüphanelerinin bir kısmı olan libavformat, libavcodec, libavfilter kullanıyor
      Yine de tamamen farklı bir uygulama. Decoder'lar, bazı demuxer'lar ve bazı filtreler aynı olsa da bunları birbirine bağlama biçimi FFmpeg komut satırı uygulamasından tamamen farklı
    • Named pipe olmaz mı?
      Ya da handbrake-cli -i <(cat video-file.mp4) gibi Bash sihri işe yarar mı bilmiyorum
      HandBrakeCLI'yi hiç kullanmadım, yalnızca GUI kullandım, o yüzden emin değilim
    • HandBrake'i ilk öğrendiğimde şaşırmıştım; sadece FFmpeg kullanmak yerine birçok bileşeni kendisi yapıyor
      Elbette başka bölümlerde FFmpeg kütüphanelerini geniş ölçüde kullanıyor
      Sadece bir FFmpeg wrapper'ı olmanın ötesine geçen az sayıdaki transcoder'dan biri; bu da hem avantajı hem dezavantajı
  • HandBrake'in neden hedef dosya boyutu seçeneğini uygulayamadığını söylediğini basitçe açıklayabilecek biri var mı?
    Android video sıkıştırma uygulamalarında bu özellik epey iyi çalışıyor, ama HandBrake GitHub'daki ilgili özellik isteğinde bakımcılardan biri bunun pratikte zor olduğunu söylemişti

    • Bu, kelimenin tam anlamıyla alttaki encoder'ların hepsinin sağladığı bir özellik. Egzotik ffmpeg/vapoursynth filtre zincirlerinde bile mümkün
      Bu yüzden neden yapılamadığını anlamak zor
      Windows kullanıyorsanız doğrudan Staxrip öneririm: https://github.com/staxrip/staxrip
      Linux için vapoursynth tabanlı bir uygulama da var ama adını hatırlamıyorum
      Ya da AV1an GUI'lerinden biri olabilir. Bu araçların hepsi, HandBrake'ten çok daha fazla özellikle birlikte hedef dosya boyutunu destekliyor
  • Neden hâlâ “video X'i dosya boyutu Y ile sınırla” gibi basit bir özellik yok?
    Ben sadece 5GB'lık bir video dosyası istiyorum, ama HandBrake sanki benim pek anlamadığım 50 Vimeo preset'inden biriyle daha çok ilgileniyormuş gibi geliyor

    • Neden özellikle 5GB sınırı istediğinizi anlamıyorum. Doldurmanız gereken 5GB USB bellekler çekmece dolusu mu var?
      5GB, CD'den kesinlikle büyüktür ve Blu-ray'e tam 10 tane sığdırmaya çalışmıyorsanız Blu-ray için fazla küçüktür
      Vimeo preset'leri size ne kadar tuhaf görünüyorsa, kullanım senaryonuz da dünyanın geri kalanına o kadar tuhaf görünüyor
  • HDR videolarla uğraşmak dışında her zaman HandBrake yerine ffmpeg'i tercih ederim
    Giriş kaynağından çıktıya HDR metadata kopyalayan uygun bir ffmpeg komutu bulamamıştım
    En son kontrol ettiğimde bu mümkün değildi; MediaInfo gibi bir araçla metadata'yı elle çıkarıp sonra her değeri ffmpeg argümanı olarak vermek gerekiyordu
    Hâlâ durum böyle mi bilen var mı?

    • -movflags ve use_metadata_tags kullandın mı?
      ffmpeg -i $input_file -movflags use_metadata_tags -crf 22 $output_file
      Kaynak: https://video.stackexchange.com/a/26076
    • Evet, görünüşe göre metadata'yı hâlâ doğrudan çıkarıp elle eklemek gerekiyor
      Biraz daha açarsak, yaygın iki HDR video standardı Dolby Vision ve HDR10. İkisi de kodlayıcının içinde ayrı destek gerektiriyor; bu da libavformat/ffmpeg'den çok libx265 tarafına yakın bir mesele
      Neyse ki kaynak video HDR10 ise, küresel olarak değişmeyen aktarım fonksiyonu ve ton eşlemeyi çıkarıp doğrudan çıktı metadata'sına uygulayabilirsin. FFmpeg bu değerleri kodlayıcıya iletebilir, ama varsayılan olarak kaynaktan hedefe kopyalamaz
      Yöntemi anlatan yazı burada: https://codecalamity.com/encoding-uhd-4k-hdr10-videos-with-f...
      HDR10 olarak kodlanmış bir videoyu metadata'yı koruyarak başka bir biçime yeniden kodladığım oldu; shell geçmişimde kalan son komut kabaca şuydu: ffmpeg -i Movie-with-HDR.mkv -c:v libx265 -map_metadata:s:0 0:s:0 -map_metadata:g:0 0 -x265-params crf=21:master-display="G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(10000000,50)":max-cll=1000,240 Movie-output.mkv
      Buradaki master-display ve max-cll ayarları, ilk videodan başka araçlarla çıkarmam gereken renk aktarım fonksiyonuydu. Bu ayarlar libx265 parametre belgelerinde yer alıyor: https://x265.readthedocs.io/en/master/cli.html
      Dolby Vision daha zor. Metadata dinamik olduğu için bunu kaynaktan nasıl alabileceğinden emin değilim, ama komut satırı argümanları üzerinden libx265'e verilebiliyor. Ne yazık ki yalnızca komut satırında erişilebilir ve API'de yok; bu yüzden ffmpeg henüz bunu senin yerine halledemiyor
      İlgili referanslar olarak, aktarım fonksiyonunu çıkarıp ffmpeg'e verme süreci https://medium.com/@yllanos/how-to-encode-a-4k-hdr-movie-usi... ve https://codecalamity.com/encoding-uhd-4k-hdr10-videos-with-f... içinde var; birkaç kişinin aynı işi derlediği yazı da burada: https://www.reddit.com/r/ffmpeg/comments/g3uucr/how_do_i_enc...
      Dolby Vision'dan HDR10'a dönüşüm ile HLG ve PQ hakkında ise https://www.reddit.com/r/ffmpeg/comments/nkxbay/how_to_conve... bağlantısına bakılabilir; Dolby Vision'ın incelikleri de https://www.reddit.com/r/ffmpeg/comments/a32yv4/deleted_by_u... içinde var
  • Sürüm notunun kendisi daha iyi bir bağlantı olurdu
    Çoğu kişinin görmek isteyeceği değişiklik günlüğü orada var
    https://github.com/HandBrake/HandBrake/releases/tag/1.7.0