saeidk نوشته است:[نمایش]سلام دوستان ببخشید اینجا سوالم رو میپرسم گفتم شاید دوستان حرفهای بتوانند جواب بدهند. یک فایل ts داریم که بیتریت ۳ مگ است آن را با هندبریک با vbr و بیت ریت ۳ مگ و 2 pas و اینها انکد میکنم حالا همین را با پریمیر انجام میدهم. کیفیت پریمیر بسیاری جاها بد است و شطرنجی میشود درحالی که کیفیت هندبریک عالی است. دلیلش چیست؟ ممنون
سعید جان همونطور که ارژنگ عزیز گفت مساله کدک یک خرده بحث پیچیده ای ولی به ساده ترین شکل ممکن شما چند تا متغیر اصلی دارید.
۱. بیت ریت: میزان حجم دیتایی که میتونید اختصاص بدید به هر ثانیه از ویدیو، بدون شک با بالا رفتن اش کیفیت بهتری دارید و حجم بالاتر، ولی بعضی جاها از یک جایی به بعد دیگه فقط حجم هدر دادنه و کیفیت خیلی ارتقا نمیکنه.
۲. single pass or Multi pass : شما حتما دیدید که وقتی انکد میکنید همونطور که اشاره کردید تصویر شطرنجی میشه، مزیت مولتی پس به سینگل پس اینکه که شما زمانی که فقط یک بار دارید انکود میکنید هر چی شد شده، هر خطایی به وجود بیاد مثل همون موزایک شدن یا شطرنجی شدن شده و دیگه همونه که هست اما زمانی که مولتی پس هست بار دوم خود نرم افزار میاد خطا ها رو برررسی میکنه جاهایی که شطرنجی شده یا مشکل داره رو درست میکنه و محاسبات رو یا از اول انجام میده یا ترمیم میکنه.
۳. زمان خروجی یا همون زمان رندر: بزرگترین موهبت هند بریک به نسبت بقیه از مدیا انکودر تا پریمیر تا حتی کامپرسور اپل اینکه شما میتونید زمان برای نرم افزار تعیین کنید که چه قدر وقت بزاره برای انکود. هر چی زمان بیشتری داشته باشه کیفیت بالاتری خواهد داشت به دلیل اینکه هی میاد بررسی میکنه که کجای تصویر نیاز به دیتای اضافه داره و کجا رو میشه با حجم کمتری رد کرد و میزان جزییات تصویر، حرکت و ... کمه و نیاز به دیتای اضافه نیست و رنگ و تصویر تکراریه و میشه از دیتای قبلی استفاده کرد.
۴. فریم ریت: هر چه شما فریم ریت بالاتری داشته باشید میزان حجم بالاتری هم نیاز هست مثلا ۶۰ فریم در ثانیه خیلی دیتا بیشتری میخواد تا ۲۴ تقریبا همون ۲.۵ برابر چون هر ثانیه شما فریم های بیشتری داره و طبیعتا دیتا بیشتری نیاز داره.
حالا نکته جالب اینه زمانی که شما میگی فریم ریت متغیر میاد بررسی میکنه که حرکت ها توی کجا ها زیاده کجا ها کم و بر اساس اون میزان فریم ریت رو خودش کم و زیاد میکنه. این نکته بسیار جالبه ولی دو تا موضوع بسیار مهم پیش میاد.
اولا زمان انکودینگ رو باید حتما بیشتر کنید که نرم افزار زمان داشته باشه درست تشخیص بده کجا ها از چی بزنه و کجاها نزنه و فریم ریت رو بالا ببره
نکته دوم که خیلی حیاتی هست، این خروجی فقط برای دیدن مناسبه و فقط برای پخش هست و اصلا نباید برای تدوین روش حساب کرد، شما این رو توی نرم افزار تدوین ببرید اذیت میشه و حتی ممکنه کلی ایرادات بی ربط پیش بیاد.
۵. بیت ریت متغیر یا variable bitrate: بدون شک این هم مزیت بزرگیه که بعضی نرم افزارها دارند و شما میتونید برای حد متوسط و سقف تعیین کنید و بین این دو بنا به نیاز در حال نواسان باشه. طبیعتا باز زمان بیشتر برای انکودینک کیفیت خیلی بهتری به شما میده ولی سعی میکنه به اون میزان متوسط وفادار بمونه و حجم رو خیلی بالا نبره.
ببخشید اگه خیلی طولانی شد ولی اینا دیگه تقریبا اصول کلی انکودینگ هستند و دیگه ستون های اصلی اش همینا هست.
حالا جدای از این بحث ها بعضی ساختار ها مثلا مثل NVIDIA که خودش اومده یک تکنیک انکودینگ گذاشته که توی هندبریک هم هست، مزیت اش سرعت بسیار بالاشه، مشکل اش کیفیت بسیار پایینه شه. شما اگه گیر باشید و بخواید سریع یک چیزی رو فقط برای تایید بفرستید اوکیه ولی برای کار نهایی نه، خطا خیلی زیاد داره و شما باید اینقدر میزان بیتریت رو بالا ببرید که دیگه حجم نابود میکنه. چون با یک سرعت ثابت کار میکنه و مولتی پس هم نداره و میزنه و میره.
یا مثلا Adobe Media Encoder برای بیتریت های بالا به نسبت خوبه مثلا شما بیت ریت تون دیگه حدود ۴ مگ به بالا باشه و حتما مولتی پس روشن باشه، اونجور جاها خوبه ولی تو بیتریت های پایین فاجعه است و همینطور که گفتید ضریب خطاش خیلی خیلی بالاست و تصویر هی شطرنجی میشه.
این مشکلی که خطا پیش میاد رو خوشبختانه Hand Brake میتونه درست کنه و مولتی پس و زمان بندی رندر اش عالیه برای حل مشکل درست کردن خطا ها و علتی که شما میگید کیفیت بالایی داره دقیقا برای همینه که میاد توی پس دوم ایراد های پس اول رو حل میکنه.
حرف اخر اینکه توی هند بریک یک تنظیم داره که تصویر شما چیه؟ Animation Film or....اون رو حتما تنظیم کنید چون به انکودر کمک زیادی میشه توی تشخیص رنگ ها و تا جایی که میتونید اون زمان رندر رو هم بیشتر کنید، اگه وقت دارید برای رندرش. چون شما با زمان زیاد رندر و بیت ریت مثلا ۳.۸ بهتر نتیجه میگیرد تا زمان رندر پایین و حتی بیت ریت ۶ شاید.
امیدوارم توضیحاتم خیلی گنگ و داغون نبوده باشه چون موضوع از یک جایی به بعد به شدت به nerdism میکشه و جا داشت اولش یک NERD ALERT میزدم