اینجا یه توضیح رو لازم دیدم. اونم تفاوت فرمتهای مختلف (Container Format) و فشردهساز (Video Codec) است.
این رو دارم برای آیندگان كه این مطالب رو میخونن مینویسم كه یك كم روشن بشه و این رو كه بعضیها به اشتباه فكر میكنن DivX خودش یجور فرمته از بین ببرم. (البته شركت DivX اومد برای خودش یجور فرمت هم اختراع كرد با پسوند DivX ولی خیلی كم كاربرده و معمولا هیچجا به كار نمیره. تمام این تبدیلات كه ما در موردش صحبت كردیم برای تبدیل DVD به فایلهای با فرمت AVI بود كه توش از فشردهسازی به اسم DivX استفاده شده بود.)
Container چیه؟
فرض كنید یه كیف دارین كه توش میتونیم كتاب و دفتر بزاریم. فرض میكنیم توی كیف دو سه تا خودكار وجود داره و یك كتاب انگلیسی. این كیف همون Container است،( كه اینجا همون فایلهای AVI ما نقش Container رو بازی میكنند) چون یه سری چیز توش قرارگرفته و اونها رو دربرگرفته. كتابی هم كه توش گذاشتیم چون به زبون انگلیسی است، تنها كسی میتونه از محتویاتش سر در بیاره كه زبون انگلیسی بدونه. این كتاب هم نقش اون Codec رو داره. (كه در بحث ما DivX است.). حالا اگه یكی دیگه اومد توی این كیف یه كتاب فارسی گذاشت، خوب معلومه كه یه فارسی زبون میتونه اون رو بخونه.
برای روشن تر شدن مثال میزنم:
تا حالا حتما با برنامه RealPlayer (یا نسخه جدیدش RealOne)، كار كردین. این برنامه فایلهای ویدیویی با فرمت RM رو پخش میكنه. ببینید وقتی میگم فرمتش RM است یعنی توی ویندوز هم از پسوند RM براش استفاده شده. (این فرمت RM همون Container ماست).
حالا شما میاین و یه فایل RM رو پخش میكنین. میدونید توش چی هست؟ چی نیست؟ خوب معمولا نمیدونیم دیگه. این فایلهای RM یجور فایل در برگیرنده هستن و فشرده ساز صدا و تصویر توش مشخص نیست چیه. بسته به كسی كه اون فایل رو درست كرده از یجور فشردهساز (مثل زبون اون كتاب تو مثال بالا) استفاده میكنه. مثلا خیلی از فیلمهای RM با فشردهساز RealVideo 8.0 فشرده شدن و خیلیهای دیگه با RealVideo 9.0. تازه بعضی از این فایلها هم با Codec شركت اینتل فشرده شدن.
یعنی ممكنه حتی شما یه فایل با فرمت RM گیر بیارین كه از فشردهساز DivX استفاده كرده باشه. (دیدین بعضی وقتها كه میخواهین با Real یه چیز پخش كنید، خود برنامه میگه كه باید وصل بشه به اینترنت و Codec مخصوصش رو دانلود كنه؟ این موقعی پیش میاد كه Codec رو نداشته باشین و برنامه بخواد اون فایل رو پخش كنه. اینجور مواقع برنامه سعی میكنه از اینترنت اون رو پیدا كنه و دانلود كنه.)
Codec چیه؟
Codec (یا كد كننده)، همون فشردهسازی است كه ما استفاده میكنیم تا اطلاعاتمون رو فشرده كنیم. مثلا همین فایلهای MP3 خودمون از فشردهساز Mpeg استفاده میكنن. میشه اینجوری تصور كرد كه مثل زبونهای آدمها میمونه. باید یه نفر اون رو بخونه كه اون زبون رو میدونه. پس فایلهای Mp3 رو برنامهای میتونه پخش كنه كه زبون Mpeg رو بدونه.
توی این فیلمهایی هم كه ما درست میكنیم، از فشردهسازی به اسم DivX استفاده میكنیم كه یجور فشرده ساز خیلی قوی و جدیده. این فشرده ساز از همون خانواده Mpeg است به نام Mpeg 4. ولی با كلی تغیرات برای فشردهكردن تصاویر ویدیویی بهینه شده. (شاید یكبار مفصل نشستیم و در مورد DivX هم بحث كردیم...)
برای اینكه قدرت Mpeg 4 رو بهتون نشون بدم همین رو بدونید بد نیست كه قراره از این به بعد شركتهای ماهوارهای، تصاویرشون رو بجای فشردهكردن با فشردهساز Mpeg 2 بیان و از فشردهساز Mpeg 4 استفاده كنن. پس احتمالا از یكی دو سال دیگه تمام ریسیورهای ماهوارهها رو باید عوض كرد و نوع Mpeg 4 پخش كنش رو خرید.
برای روشن شدن تفاوت Mpeg 4 با Mpeg 2 هم میتونید اینجوری تصور كنید كه هر دوشون یه زبون هستن (به خاطر اینكه اصول هر دوشون یكی است) ولی با لهجههای مختلفی صحبت میكنند. مثلا ممكنه یكی فارسی رو مثل بلبل حرف بزنه ولی وقتی بره رشت، یا بره قسمتهای لر نشین ایران هیچی از صحبتهاشون متوجه نشه، در صورتیكه هر دو فارسی هستن ولی خوب فارسی رشت كجا و فارسی لر كجا؟ (اینجور مواقع فكر كنم بهتره بگیم رشتی با كلمات فارسی و لری با لغات فارسی :)
چند Container متداول:
1- معروفترین Container امروز همون AVI است كه توی ویندوز ازش استفاده میشه. این AVI یه فرمت خیلی باحاله یعنی شما اصلا محدودیت ندارین كه توش چی بریزین. (مثال كیف رو یادتون میاد.). حتی محدودیت برای صدا و تصویر هم ندارین یعنی ممكنه یكی بیاد و توی یك فایل AVI اصلا تصویر قرار نده و یه فایل Mp3 رو بریزیه داخل AVI. حتی میشه یه فایل ویدویی با چندتا ترك صوتی درست كرد.
تنها محدودیت توی فایل AVI، پخش كنندهاون فرمت خاص است. یعنی اگه شما اومدین و توی یه AVI یه سری چیز عجیب و غریب ریختین، اونوقت به احتمال زیاد برنامههای معمول نمیتونن اون فایل رو پخش كنن. و شما باید خودتون یه پخش كننده خاص هم برای اون فایل بنویسین. (محصول شركت ماكروسافته) http://www.microsoft.com
2- Real Media. فرمت جالبیه، حتی میتونه داخل خودش از اسكریپت و كدهایی مثل HTML استفاده كنه. (محصول شركت Real Networks) فایلهایی با فرمت RM را شامل میشود. http://www.real.com
3- فرمتهای Windows Media كه شامل فایلهایی با فرمت ASF و WMV و ... میشه. این Container بیشتر برای فشرده سازی صدا و تصویر از Codec جدید ماكروسافت كه خیلی هم بهش افتخار میكنه (كه در اصل بازهم Mpeg 4 هست) استفاده میكنه. (محصول انحصاری Microsoft، برای این میگم انحصاری چون ماكروسافت اومده یه قرارداد استفاده (License Agreement) برای این فرمت درست كرده كه دست شما رو از همه جهت بسته، مثلا شما اجازه ندارین این فرمت رو تغییر بدین، حتی اجازه ندارین یه برنامه پخش كننده - كه از پخشكنندههای غیر ماكروسافت استفاده كنه - درست كنید و كلی محدودیت دیگه). http://windowsmedia.microsoft.com
4- QuickTime محصول شركت Apple. این فرمت در زمانهای قبل از ظهور AVI یكی از بهترین فرمتها بود. فایلهایی با فرمت Mov و QT را شامل میشود. اكنون شركت Apple با تغییراتی كه در این فرمت داده است، سعی كرده جنبههای مثبت دیگر فرمتها را در آن لحاظ كند. ولی در كل این فرمت نتونسته خیلی مثل فرمتهای دیگه كارایی خوبی ارایه بده. http://www.quicktime.com
5- Matroska. آقا عجب فرمتیه این Matroska. من كه خیلی ازش خوشم اومده. فقط یخورده تازهاست. باید یكی دو سال دیگه ازش بگذره اونوقت قول میدم یكی از پر طرفدارترین فرمتها بشه. چرا؟ خوب، این فرمت اینقدر عالیه كه میتونه علاوه بر اینكه چندین ترك صوتی و ویدیویی داشته باشه، میتونه زیرنویسهای متنی با Encoding های مختلف از جمله UTF-8 یا همون یونیكد بگیره، میتونه Attachment داشته باشه. یعنی میتونید مثلا عكس بازیگران و مشخصلات فیلم و حتی یه Screen Saver رو بچسبونید به فیلم تا دیگران كه فیلم رو میبینن اگه دلشون خواست ببینن. (این فرمت در اصل داره میزنه روی دست دی وی دی) http://www.matroska.org
6- OGG Vorbis یه فرمت خوبه كه كلی امكانات داره ولی بخاطر اومدن فرمت Matroska داره از رونق میوفته. در اصل OGG یه فرمت صوتی بود ولی بعد اومدن و یك كم امكانات بهش اضافه كردن و فرمت OGM (Ogg Media) رو درست كردن كه میتونه مثل Matroska هم زیرنویس متنی داشته باشه (یونیكد نمیگیره) و هم چندین ترك صوتی. http://www.vorbis.com
اطلاعات بیشتر در زمینه فرمتهای مختلف ویدیویی و فشردهسازها رو میتونید توی این سایتها گیر بیارین:
http://www.infoanarchy.org/wiki/wiki.pl?Video_Formats
http://www.doom9.net