HandBrake 1.7.0 अपग्रेड गाइड
- HandBrake को अपडेट करने से पहले यह सुनिश्चित करें कि कोई pending encoding न हो, और custom presets तथा app preferences का बैकअप लेने की सिफारिश की जाती है.
- Windows उपयोगकर्ताओं को अनिवार्य रूप से Microsoft .NET Desktop Runtime version 6.0.x इंस्टॉल करना होगा, और .NET 7 इंस्टॉल होने पर भी .NET 6 की इंस्टॉलेशन आवश्यक है.
HandBrake 1.7.0 रिलीज़ नोट्स
- सुधारों और bug fixes की पूरी सूची GitHub के release notes में देखी जा सकती है.
समस्या रिपोर्ट और फ़ीडबैक
- यदि आपको कोई reproducible bug या समस्या मिलती है, या आप फ़ीडबैक देना चाहते हैं, तो GitHub issue tracker के माध्यम से बताने का अनुरोध है.
- IRC community support channel के माध्यम से भी संपर्क किया जा सकता है.
- HandBrake app को एक छोटी volunteer team अपने खाली समय में विकसित करती है, इसलिए तुरंत जवाब मिलना कठिन हो सकता है, लेकिन सभी राय देखी जाती हैं और constructive feedback का स्वागत है.
धन्यवाद और योगदान
- इस रिलीज़ की कुछ सुविधाएँ HandBrake उपयोगकर्ताओं या कंपनियों से प्राप्त हुई हैं, और अनुवाद दुनिया भर के volunteer community की सक्रिय भागीदारी से किए गए हैं.
- जो लोग योगदान में रुचि रखते हैं लेकिन अभी तक शामिल नहीं हुए हैं, उन्हें contribution guide पढ़ने की सिफारिश की जाती है.
- developer न होने पर भी योगदान देने के कई तरीके हैं.
GN⁺ की राय
- HandBrake 1.7.0 अपग्रेड के लिए custom settings का बैकअप और नए .NET runtime की इंस्टॉलेशन आवश्यक है.
- इस अपडेट में सुधार और bug fixes शामिल हैं, और यह उपयोगकर्ताओं तथा कंपनियों के योगदान से बना एक community-driven project है.
- यह लेख open source video transcoder HandBrake के नए version release की खबर देता है, और इस कारण रोचक है कि यह tech community में collaboration और contribution के महत्व को रेखांकित करता है.
1 टिप्पणियां
Hacker News की राय
अगर आपको यह कमी लगती है कि HandBrake में अंतिम फ़ाइल साइज़ तय करने पर बाकी चीज़ें अपने-आप calculate नहीं होतीं, तो calculation खुद काफी आसान है
औसत bitrate
[kbps] = target size [kilobit] ÷ duration [seconds]उदाहरण के लिए, 2 घंटे 48 मिनट की फ़ाइल को 5GB से कम बनाना हो, तो 2 घंटे 48 मिनट 10,080 सेकंड होते हैं और 5GB 40,000,000kb होता है, इसलिए औसत bitrate 40,000,000kb ÷ 10,080 सेकंड = 3,968kbps होगा
अगर audio 256kbps है, तो औसत video bitrate 3,712kbps या उससे कम होना चाहिए
आम तौर पर लोग constant quality पर encode करते हैं, जहां output size input video पर बहुत निर्भर करता है
इसलिए मैंने एक Python wrapper बनाया जो HandBrakeCLI output parse करता है और completion percentage व current output file size के आधार पर final size का estimate लगाता है
अगर लगता है कि फ़ाइल बहुत बड़ी हो जाएगी, या output quality बहुत खराब है और quality factor बढ़ाना पड़ेगा, तो इसे जल्दी रोक सकते हैं
“Put that cocktail down. Your HandBrake encode is complete!” संदेश इतने सालों बाद भी बना हुआ है, यह देखकर अच्छा लगता है
पहले HandBrake pipeline 10-bit हो जाने के बाद भी कई filters 8-bit ही रह गए थे, इसलिए गलत filter चुनने पर अनजाने में encoding quality गिराना आसान था
अब लगता है कि ज्यादातर, शायद सभी filters 10-bit support करते हैं
साथ ही FDK-AAC license की वजह से उसे bundle नहीं किया जा सकता था, इसलिए release version का AAC codec कमजोर था; सुना है आजकल वह codec पहले जितना खराब नहीं है
सोच रहा हूं कि current version की इस बेहतरीन app में अब भी कोई बड़ा trap है क्या
खैर, मुख्य समस्या manpower की कमी है। बहुत सारी अच्छी feature requests feature heaven में अटकी हुई हैं
शायद सभी open source projects के साथ ऐसा ही है
आजकल मैं ChatGPT से
ffmpegterminal command मांग लेता हूंयह किसी भी app से कहीं तेज़ है और जैसा चाहें वैसा adjust कर सकते हैं
trial-and-error करना या manual pages पढ़ना, HandBrake में preset चुनने और checkbox दबाने या slider हिलाने से “कहीं तेज़” है, ऐसा कहना मुश्किल है
ffprobeoutput भी न डालेंअगर source DVD है, तो aspect ratio issue, deinterlacing, subtitle handling जैसी कई चीज़ें consider करनी पड़ती हैं
अब तो किसी भी manual page को explore करने के लिए
--helpजैसा--chatgptoption ढूंढने लगता हूंfeature list अच्छी है। खासकर arm64 / aarch64 / Apple Silicon architecture performance improvements, latest FFmpeg की तेज़ HEVC decoding और 30% तेज़ bwdif filter, नए SVT-AV1 assembly optimizations से performance में 4x तक improvement, और unnecessary frame copies हटाकर memory efficiency बढ़ाने व video conversion speed सुधारने वाली बातें उम्मीद जगाती हैं
HandBrakeCLI से मेरी एकमात्र शिकायत यह है कि यह stdin से pipe किए गए input को encode नहीं कर सकता
FFmpeg इसे support करता है, और मुझे लगा था HandBrake भी internally FFmpeg ही इस्तेमाल करता है
libavformat,libavcodec,libavfilterइस्तेमाल करता हैफिर भी यह पूरी तरह अलग app है। decoder, कुछ demuxers, और कुछ filters समान हैं, लेकिन उन्हें जोड़ने का तरीका FFmpeg command-line app से बिल्कुल अलग है
या शायद
handbrake-cli -i <(cat video-file.mp4)जैसा Bash magic भी संभव होमैंने HandBrakeCLI इस्तेमाल नहीं किया, सिर्फ GUI इस्तेमाल किया है, इसलिए ठीक से नहीं जानता
बेशक दूसरी जगहों पर यह FFmpeg libraries का काफी व्यापक उपयोग करता है
यह उन गिने-चुने transcoders में से एक है जो सिर्फ FFmpeg wrapper नहीं है, इसलिए यह इसकी ताकत भी है और कमजोरी भी
कोई आसान भाषा में समझा सकता है कि HandBrake क्यों कहता है कि वह target file size option implement नहीं कर सकता?
Android video compression apps में यह feature काफी अच्छी तरह काम करता है, लेकिन HandBrake GitHub की संबंधित feature request में एक maintainer ने कहा था कि practically मुश्किल है
ffmpeg/vapoursynthfilter chain में भी यह संभव हैइसलिए समझ नहीं आता कि वे क्यों कहते हैं कि यह नहीं हो सकता
Windows पर हों तो मैं बस Staxrip recommend करूंगा: https://github.com/staxrip/staxrip
vapoursynth-based Linux counterpart भी है, लेकिन नाम याद नहीं आ रहा
या शायद AV1an GUI में से कोई एक हो। ये tools सभी HandBrake से कहीं ज्यादा features के साथ target file size support करते हैं
अब तक “video X को file size Y तक limit” करने वाला simple feature क्यों नहीं है?
मुझे तो बस 5GB video file चाहिए, लेकिन HandBrake को लगता है जैसे मुझे उन 50 Vimeo presets में से किसी एक की चिंता है जिनके बारे में मैं ठीक से जानता भी नहीं
5GB, CD से निश्चित तौर पर बड़ा है, और अगर आप Blu-ray में ठीक 10 files डालने की कोशिश नहीं कर रहे, तो Blu-ray के लिए बहुत छोटा है
आपको Vimeo presets जितने अजीब लगते हैं, बाकी दुनिया को आपका use case उतना ही अजीब लगता है
HDR वीडियो को संभालने के अलावा, मैं हमेशा HandBrake की तुलना में ffmpeg को प्राथमिकता देता/देती हूँ
इनपुट source से output में HDR metadata copy करने के लिए कोई सही ffmpeg command नहीं मिली
आखिरी बार जब चेक किया था, तब यह संभव नहीं था, और MediaInfo जैसे tool से metadata को manually extract करके हर value को ffmpeg argument के तौर पर देना पड़ता था
क्या किसी को पता है कि अभी भी ऐसा ही है?
-movflagsऔरuse_metadata_tagsइस्तेमाल करके देखा है?ffmpeg -i $input_file -movflags use_metadata_tags -crf 22 $output_fileस्रोत: https://video.stackexchange.com/a/26076
थोड़ा विस्तार से कहें तो, आम HDR video standard दो हैं: Dolby Vision और HDR10. दोनों को encoder के अंदर अलग support की ज़रूरत होती है, और यह
libavformat/ffmpeg की तुलना मेंlibx265की तरफ़ का issue ज्यादा हैअच्छी बात यह है कि अगर source video HDR10 है, तो globally न बदलने वाले transfer function और tone mapping को extract करके output metadata पर सीधे apply किया जा सकता है. FFmpeg इन values को encoder तक भेज सकता है, लेकिन default रूप से source से target में copy नहीं करता
तरीका समझाने वाला लेख https://codecalamity.com/encoding-uhd-4k-hdr10-videos-with-f... पर है
मैंने HDR10 में encoded video को metadata बनाए रखते हुए दूसरे format में re-encode किया है, और shell history में बची अंतिम command लगभग
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जैसी थीयहाँ
master-displayऔरmax-cllsettings वे color transfer functions हैं जिन्हें पहले video से किसी दूसरे tool से extract करना पड़ा था. ये settingslibx265parameters documentation https://x265.readthedocs.io/en/master/cli.html में दी गई हैंDolby Vision ज्यादा कठिन है. Metadata dynamic होता है, इसलिए यह पक्का नहीं कि source से इसे कैसे लिया जा सकता है, लेकिन command-line arguments के जरिए इसे
libx265को दिया जा सकता है. अफसोस की बात है कि यह सिर्फ command line में expose है, API में नहीं, इसलिए अभी ffmpeg इसे अपने-आप handle नहीं कर सकतासंबंधित reference के तौर पर, transfer functions extract करके ffmpeg को देने की प्रक्रिया https://medium.com/@yllanos/how-to-encode-a-4k-hdr-movie-usi... और https://codecalamity.com/encoding-uhd-4k-hdr10-videos-with-f... में है, और कई लोगों ने इसी काम कोまとめ किया है https://www.reddit.com/r/ffmpeg/comments/g3uucr/how_do_i_enc... पर
Dolby Vision से HDR10 में conversion, HLG और PQ से जुड़ी बातें https://www.reddit.com/r/ffmpeg/comments/nkxbay/how_to_conve... में देखी जा सकती हैं, और Dolby Vision की बारीकियाँ https://www.reddit.com/r/ffmpeg/comments/a32yv4/deleted_by_u... में हैं
Release खुद शायद बेहतर link होता
इसमें changelog शामिल है, जिसे ज्यादातर लोग देखना चाहेंगे
https://github.com/HandBrake/HandBrake/releases/tag/1.7.0