آموزشی

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و …

جهت آشنایی بیشتر با چگونگی پخش فایل‌های ویدویی و همچنین پیش‌گفتاری جهت مباحث آتی لازم دوستم چند مفهوم در بحث فایل ویدیویی را در این مطلب گردآوری کنم

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

استریم (Stream) و ترک track

ما می دانیم که یک ویدیو از چند تصویر ثابت تشکیل شده است. دیدن سریع و پشت سر هم تصایویر توهم حرکت را ایجاد می‌کند. به هر کدام از تصاویر فریم (Frame) می‌گویند

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

به غیر از تصاویر، یک فایل ویدیویی فعلی حاوی صوت و اطلاعات دیگر، مانند زیرنویس(subtitle) ، منو (Menu) و فصل‌بندی (Chapter) نیر می‌تواند باشد.

هر یک از این “قطعات” اطلاعات یک جریان(stream) یا مسیر (track) نامیده می‌شود. به این ترتیب، هر فایل ویدیویی شامل چندین استریم است که اغلب از همان نوع هستند.

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

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

 

کانتینر (Container) چیست؟

کانتینر به معنی ظرف می‌باشد کانتینرها فایل‌های هستند که ما می‌توانیم استریم‌های مختلف با پسوند‌های گوناگون را در داخل آن قرار داده و به عنوان یک فایل استفاده کنیم ( مانند یک ظرف)

فایل‌های با پسوند FLV، MKV ، MP4 ، AVI و… از جمله معروف‌ترین کانتینر‌ها هستند

در یک کانتینر می‌توانیم چندین استریم ویدیو ، چندین استریم صدا (دوبله‌ی فیلم به زبان‌های مختلف) چندین زیرنویس و منو‌ها و عناوین … را قرار دهیم

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

برای مثال وقتی می‌خواهیم زیرنویس و یا فایل صوتی دوبله را به فیلم MKV اضافه کنیم و یا آن را با برنامه MKvmerge باز می‌کینم میتوانیم استریم‌ها را ببنیم

طریقه حذف ، اضافه کردن موارد به فرمت MKV

آموزش قراردادن فایل صوتی دوبله بر روی فیلم |MKvmerge

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

جدول مقایسه امکانات و ویژگی‌های کانتینر‌ها

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

اسپلیتر (Splitter) چیست؟

اسپلیت کردن یا جداسازی در بحث پخش محتوای چند رسانه‌ای برای باز کردن یک کانتینر و مشاهده فایل‌های داخل آن و ارسال به دیکدرهای هر استریم می‌‌باشد. مانند کانتینر‌ها اسپلیتر‌ها هم انواع و نسخه‌های مختلفی دارند Matroska Splitter ، LAV Video filter ، FFmpeg  از معروف‌ترین اسپلیتر‌ها هستند

در استفاده از ADSL هم نام اسپلیتر رو شنیده‌ایم در آنجا هم کارکرد اسپلیتر جدا کردن صدا از دیتا، خط تلفن می‌باشد

کدک (Codec) چیست؟

Codec مخفف COmpressor-DECompressor است،به این معنی که هم فشرده می‌کند و هم از حالت فشرده خارج می‌سازد، هر فرمت ویدیویی یا صوتی، با اینکدری خاص کد شده است. برای باز کردن هم باید متناسب با اینکدر استفاده شده، دیکدر خاصی به کار گرفته شود

H.264 / MPEG-4 AVC ، MJPEG ، MPEG-2، H.264 / MPEG-4 AVC، WMV ، HEVC / H.265  از انواع کدک‌ها می‌باشد (در خیلی جاها به اشتباه ما به آنها فرمت می‌گویم)

 

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

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

 

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...
کدک‌ها

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

ابتدا برنامه پخش کننده کانتینر اجرا شده را با استفاده از اسپلستر باز می‌کند و با توجه به نوع کدک ‌آنها انکودر‌های خاص هر کدام را لود و استریم و محتویات را پخش می‌کند

 

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

در جدول زیر مقایسه کانتینر ها از لحاظ پشتیبانی استریم‌های مختلف نمایش داده شده استدرباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

به راحتی دلیل محبوبت Matroska (MKV) را می‌توانید ببنید

تقریبا همه نوع فرمتی را قبول می‌کند و با استفاده از سیستم XML به جای باینری باعث بهبود عملکرد و همچنین این طیف پشتیبانی شده است

همچنین MKV منبع باز می‌باشد

دقت کنید که عملیات تبدیل کردن (Convert) متفاوت است و هنگامی که استریم صدا یا ویدیو را با یک کدک خاص، از نو بسازیم تبدیل انجام گرفته است.

این کار جهت کاهش حجم فایل و یا ایجاد امکان پخش در پخش کننده با کدک خاص استفاده ‌می شود.

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

فشرده سازی با از دست دادن داده (Lossy Compression)

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

فشرده سازی با از دست دادن داده، استفاده از بالاترین کیفیت ممکن و فشرده سازی تا حد لازم برای کاربرد مورد نظر است. فشرده سازی در حقیقت راه رفتن بر روی لبه‌ی باریک حفظ کیفیت و تنظیم اندازه فایل است.

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

فشرده سازی بدون از دست دادن داده (Lossless Compression)

نحوه کار در فشرده سازی بدون از دست دادن داده بسیار شبیه الگوریتم فشرده سازی RAR و ZIP است که در آن فایل نهایی همان فایل اولیه است. با استفاده از یک الگوریتم هوشمند، کاهش کیفیتی در فایل ایجاد نمی‌شود اما این راه حل به دلیل عدم فشرده سازی قابل توجه، برای ذخیره سازی فایل‌های بزرگ مناسب نیست. علاوه بر این در انتقال فایل‌های آنلاین ویدئویی در اینگونه فشرده سازی نیاز به پهنای باند به مراتب بالاتر وجود دارد.

توجه به این نکته بسیار مهم است که کاربرد کدک‌ها فقط برای فشرده سازی فایل‌های صوتی و ویدئویی نیست. وقتی یک فایل با استفاده از کدک خاصی کدگذاری می‌شود، برای پخش آن در دستگاه‌های صوتی و تصویری، باید توسط همان کدک فایل را رمزگشایی کرد. عدم استفاده از کدک درست و یکسان، موجب ناسازگاری دستگاه‌ها یا مشکلات پخش ویدئو خواهد شد. این مشکلات در کانتِینرها یا بسته‌های ویدئویی جدید که شامل اغلب کدک‌های صوتی و تصویری مورد نیاز برای پخش فایل مورد نظر هستند تا حدود زیادی برطرف شده‌اند.

درباره فایل‌ ویدیویی،فشرده‌سازی‌،کانتینر،کدک‌ و ...

 

 

منابع : + + + + +‌ +

امیر فدائیان

عاشق تکنولوژی هستم،مشغول برنامه نویسی و همچنین پشتیبانی و نصب سیستم های نظارتی و حفاظتی هست، در اين وبلاگ علاوه بر اينكه دفترچه ياداشتي براي خودم هست ،تجربیات و دانسته‌هام در حوزه نرم‌افزار ،اينترنت ،تلفن همراه و ... را منتشر ميكنم. Programming languages: Delphi, Kotlin, Python, SQL Server

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا