کدک‌ها و فرمت‌های مختلف ویدیو

نرخ دیکد ویدیو به این معنی است که ویدیو با چه سرعت و چه رزولوشنی توسط دیکدر سخت‌افزاری، دیکد می‌شود. به عنوان مثال ۱۰۸۰p@30 به این معنی است که دیکدر سخت‌افزاری می‌تواند ویدیویی با رزولوشن ۱۰۸۰p و سرعت ۳۰ فریم بر ثانیه را دیکد کند و رزولوشن‌های بالاتر به دیکدر نرم‌‎افزاری که بهینه نیست، سپرده می‌شود.

اینکد ویدیو چیست و چرا به آن نیاز داریم؟ آشنایی با مفهوم کدک

اینکد واژه‌ای با کاربرد بسیار گسترده است. نوع خاص آن اینکد ویدیو است که گاهی به صورت فشرده کردن ویدیو ترجمه می‌شود ولیکن ممکن است ویدیویی با حجم بیشتر حاصل شود!

اینکد کردن (encode) ویدیو به معنی تبدیل اطلاعات خام ویدیوی معمولی و در حقیقت فشرده نشده یا خام به اطلاعاتی با حجم کمتر است. درست مثل پردازش یک فایل عکس با فرمت RAW و تبدیل آن به فایلی با پسوند jpg که به مراتب کوچک‌تر است و می‌تواند از نظر بصری، زیباتر هم باشد.

دقت کنید فرمتی که در DVDها و دیسک‌های بلوری به کار می‌رود هم به ترتیب MPEG2 و H.264 است، هر دو از جمله استانداردهای معروف فشرده‌سازی ویدیو هستند و در حقیقت ویدیویی با فرمت Lossless (بدون افت کیفیت) در کار نیست هر چند ممکن است حجم ویدیو بسیار زیاد به نظر برسد.

اینکد ویدیوی H.264 به صورت MPEG2 حجم آن را افزایش می‌دهد، به همین علت ترجمان اینکد به صورت فشرده‌سازی، کاملاً غلط است!

اینکد کردن ویدیو با نرم‌افزار و همین‌طور سخت‌افزار خاص انجام می‌شود، درست مثل دیکد کردن نرم‌‎افزاری و سخت‌افزاری و البته حالت ترکیبی هم وجود دارد. در ادامه به این موارد اشاره می‌کنم.

اینکد کردن برای کاهش حجم ویدیو

و اصحاب حساب و کتاب، بد نیست محاسبه‌ای کوتاه داشته باشیم که حجم شگفت‌انگیز ویدیوهای فشرده‌نشده که در صنعت سینما کاربرد دارد، آشکار شود:

ویدیوی فشرده نشده بسیار حجیم است و به عنوان مثال ۱ دقیقه ویدیوی ۱۰۸۰p با سرعت معمولی ۲۴ فریم بر ثانیه و عمق رنگ معمولی ۸ بیت، شامل ۶۰ ثانیه ضربدر ۲۴ فریم و ضربدر ۲ میلیون پیکسل است، هر پیکسل با سه ساب-پیکسل ۸ بیتی تعریف می‌شود و سه بایت داده نیاز است. بنابراین ۲۴ ضربدر ۲ میلیون ضربدر ۳ بایت داده برای ۱ دقیقه ویدیو نیاز داریم که حدود ۹ گیگابایت است.

یک دقیقه ویدیو، حجم ۹ گیگابایت، به این ترتیب یک فیلم معمولی ۱۰۰ دقیقه‌ای، ۹۰۰ گیگابایت حجم دارد و به هیچ عنوان روی دیسک‌های بلوری جا نمی‌شود!

و سه هدف encode کردن ویدیو که هر یک بخشی از اهمیت آن را توصیف می‌کند:

اینکد کردن برای افزایش سرعت فیلم‌برداری

در یک گوشی رده اول، حافظه‌ی داخلی بسیار سریع است اما بیت‌ریت ویدیوهای فشرده نشده، بسیار بالاست و طبعاً نمی‌توان با رزولوشن ۱۰۸۰p و نرخ ۲۴ فریم بر ثانیه فیلم‌برداری کرد.

باز هم اگر از اصحاب محاسبه هستید بخوانید:

1080p یا دو میلیون پیکسل (مگاپیکسل) در یک فریم، ۲۴ فریم در هر ثانیه، ۳ بایت داده برای یک پیکسل و در نهایت اگر ضرب کنید، بیت‌ریت ۱۵۰ مگابایت در ثانیه (معادل ۱۲۰۰ مگابیت در ثانیه) به دست می‌آید. حافظه‌های میکرواس‌دی U3 شاید در بهترین حالت چنین سرعتی داشته باشند اما دیگر انواع میکرواس‌دی فقط کسری از این سرعت عجیب را در اختیار گوشی قرار می‌دهند.

اینکد برای افزایش سرعت دیکد، کاهش مصرف باتری و …

فرآیند معکوس اینکد، دیکد است. برای دیکد اگر از روش نرم‌افزاری استفاده شود، هسته‌های پردازنده‌ی اصلی وارد عمل شده و الگوریتم‌های پیچیده‌ی خواندن داده و سپس ایجاد فریم‌های متوالی ویدیو را انجام می‌دهند. این روش اصلاً بهینه نیست.

روش سخت‌افزاری استفاده از دیکدر سخت‌افزاری است که محدودیت‌های زیادی دارد. به عنوان مثال دیکدر سخت‌افزاری از تمام فرمت‌ها پشتیبانی نمی‌کند و بنابراین برای پخش شدن روان ویدیو و جلوگیری از خالی شدن سریع باتری و همین‌طور داغ نکردن تراشه‌ی مرکزی گوشی و تبلت، بهتر است ویدیو با کدک خاصی مثل H.264 که تقریباً هر تراشه‌ای دیکدر سخت‌افزاری آن را در اختیار دارد، استفاده شود.

به این نوع اینکد، اصطلاحاً کانورت کردن یا تبدیل فایل هم گفته می‌شود و هدف آن سازگار کردن ویدیو با محصولات موردنظر است.

دیکد کردن ویدیو و اینکدر و دیکدر سخت‌افزاری

منظور از دیکد کردن (decode) همان‌طور که اشاره شد تبدیل داده به چیزی مثل فریم‌های یک ویدیو است. البته اینکد و دیکد صرفاً در مقال ویدیو و صدا کاربرد ندارند و تعریف دیکد گسترده‌تر از آن است که بگوییم دیکد یعنی از حالت فشرده خارج کردن و پخش ویدیو.

در دیکد نرم‌افزاری، الگوریتم‌ها و در واقع مجموعه‌ی مراحلی که داده به فریم‌های ویدیو تبدیل می‌شود، توسط پردازنده‌ی اصلی (عمومی) صورت می‌گیرد. روش دیگر استفاده از دیکدر سخت‌افزاری است که همان مراحل را با پردازنده‌ای اختصاصی که در اینتوتک تحت عنوان دیکدر سخت‌افزاری به آن اشاره می‌کنیم، به پایان می‌رساند. اینکد کردن هم می‌تواند به صورت نرم‌افزاری و همین‌طور سخت‌افزاری مثل شدوپلی انویدیا صورت گیرد. روش ترکیبی هم قابل استفاده است.

دیکد ویدیو با کمترین مصرف باتری و کمترین گرما.

دیکدر سخت‌افزاری برای دیکد کردن ویدیوهایی با کدک خاص طراحی شده و کاملاً بهینه است. به همین جهت ممکن است بخش زیادی از مساحت تراشه‌ی مرکزی گوشی را اشغال کند و حتی بزرگ‌تر از هسته‌های پردازشی باشد ولیکن هنگام پخش ویدیو، بار زیادی را از دوش پردازنده‌ی اصلی برداشته و با کمترین مصرف باتری و همین‌طور بیشترین سرعت ممکن، ویدیو را دیکد و پخش می‌کند. نتیجه‌ی دیگر این است که تراشه گرمای کمتری تولید کرده و داغ نمی‌شود. دیکدر سخت‌افزاری می‌تواند فرآیندهای پردازشی دیگری مثل افزایش وضوح لبه‌ها را هم انجام دهد.

تصویر زیر تفاوتی که استفاده کردن یا نکردن از دیکدر سخت‌افزاری کوئیک سینک اینتل در تبدیل ویدیو ایجاد می‌کند را نشان می‌دهد. دقت کنید که قبل از تبدیل، ویدیو دیکد هم می‌شود. خط آبی پررنگ حالت کاملاً سخت‌افزاری است که نشان می‌دهد تبدیل ویدیو در زمانی بسیار کوتاه‌تر و با مصرف انرژی کمتر، خاتمه یافته است. خط قهوه‌ای (میانگین ۳۰ وات) دیکد نرم‌افزاری و اینکد سخت‌افزاری است که طبعاً بیشتر طول می‌کشد و در مجموع انرژی بیشتری مصرف می‌شود؛ و نکته‌ی جالب این است که با استفاده از سخت‌افزار کوئیک سینک اینتل، پردازنده‌ی اصلی تقریباً بی کار است!

توان مصرفیاستفاده از پردازنده‌ی اصلی
توان مصرفی در تبدیل نرم‌افزاری و سخت‌افزاری ویدیو

توان مصرفی در تبدیل نرم‌افزاری و سخت‌افزاری ویدیو

استفاده از پردازنده‌ی اصلی در تبدیل نرم‌افزاری و سخت‌افزاری ویدیو

استفاده از پردازنده‌ی اصلی در تبدیل نرم‌افزاری و سخت‌افزاری ویدیو

تفاوت بهینه‌ترین روش‌های نرم‌افزاری و سخت‌افزاری دیکد و اینکد ویدیو

قبلاً بررسی جالب در مورد میزان مصرف انرژی سیستم حین پخش ویدیو به روش‌های مختلف تهیه کرده بودم:

دنیای کدک‌های صوتی و تصویری

کدام پلیر مصرف باتری کمتری دارد؟ کدام تنظیمات برای پخش ویدیو بهتر است؟

در این مقاله که قسمت ۵ نگاهی به دنیای کدک‌های صوتی و تصویری است، به بررسی پخش ویدیو پلیرهای معروفی مثل PowerDVD، PotPlayer و VLC و مقایسه با پلیر اصلی ویندوز می‌پردازم و تنظیمان بهینه‌ی پخش ویدیو را معرفی می‌کنم.

مقاله‌ی دیگری نیز در باب مقایسه روش نرم‌افزاری و سخت‌افزاری تبدیل ویدیو تهیه شده:

دنیای کدک‌های صوتی و تصویری

مقایسه x264 و x265 با بهترین روش‌های فشرده‌سازی ویدیو به کمک شتاب‌دهی سخت‌افزاری

در قسمت ششم سری مقالات نگاهی به دنیای کدک‌های صوتی و تصویری، به مقایسه x264 و x265 با بهترین روش‌های فشرده‌سازی ویدیو به کمک شتاب‌دهی سخت‌افزاری یعنی CUDA و NVENC انویدیا و Quick Sync اینتل می‌پردازم.

در نهایت برای چندمین بار توصیه می‌کنم که در اندروید از پلیرهایی مثل MX Player و در ویندوز از پلیر قدرتمند PotPlayer با قابلیت انتخاب روش دیکد ویدیو و حتی انتخاب انواع دیکدر نرم‌افزاری و سخت‌افزاری استفاده کنید. دقت کنید که PotPlayer نسخه‌ی بروزتر و پیشرفته‌تر KMP معروف است:

دیکدرهای نرم‌افزاری و سخت‌افزاری مختلف در PorPlayer

دیکدرهای نرم‌افزاری و سخت‌افزاری مختلف در PorPlayer

موتور مالتی‌مدیا چیست؟

موتور مالتی‌مدیا، بخشی بزرگ و اساسی در تراشه‌های امروزی.

در تراشه‌های امروزی، بخشی به اسم موتور مالتی‌مدیا وجود دارد. موتور مالتی‌مدیا همان‌طور که از نامش پیداست، انواع فایل‌های صوتی و ویدیویی را دیکد و پردازش می‌کند و در حقیقت شامل چند دیکدر سخت‌افزاری برای کدک‌های معروف و استاندارد است. بخش دیکدر سخت‌افزاری با نام Video Decode Processor در تراشه‌ی قدیمی تگرا ۲ انویدیا را در تصویر زیر مشاهده می‌کنید، مساحت این بخش بیش از یک هسته‌ی Cortex-A9  و چند برابر بیشتر از Cortex-A7 است حال آنکه این روزها دیکدرهای سخت‌افزاری پیچیده‌تر شده‌اند:

دیکدر سخت‌افزاری در تراشه‌ی تگرا 2 انویدیا

دیکدر سخت‌افزاری در تراشه‌ی تگرا ۲ انویدیا

دقت کنید که دیکدر سخت‌افزاری صرفاً برای دیکد کردن ویدیو طراحی نمی‌شود، ممکن است دیکدرهای سخت‌افزاری برای رمزگشایی سایر انواع داده و فایل کاربرد داشته باشد.

در مقاله‌ای دیگر اشاره‌ای به کدک‌های ویدیویی H.264 و H.265 پرداخته و آنچه در فرآیند فشرده‌سازی ویدیو رخ می‌دهد را بسیار خلاصه و کوتاه، مرور می‌کنیم.

بازگشت به دانش‌نامه
0 votes, average: 0٫00 out of 50 votes, average: 0٫00 out of 50 votes, average: 0٫00 out of 50 votes, average: 0٫00 out of 50 votes, average: 0٫00 out of 5 (0 نظر، امتیاز: 0٫00 از 5)
برای نظر دادن ابتدا باید ثبت نام کنید.
Loading...
لينک کوتاه:

FacebookTwitterGoogle


دیدگاه بگذارید

اطلاع از
wpDiscuz

تبلیغات

تبلیغات

تبلیغات

×