0

Codec های ویدیویی

 
mohammad_43
mohammad_43
کاربر طلایی1
تاریخ عضویت : فروردین 1388 
تعداد پست ها : 41934
محل سکونت : اصفهان

Codec های ویدیویی

ویدئوی دیجیتالی تا حد زیادی میدان را از دست شیوه های آنالوگ ذخیره سازی بیرون آورده است . از فیلم های DVD گرفته تا کم کوردرها ، و پخش کننده های جیبی و حتی گوشی های موبایل دارای امکانات ضبط ویدئویی ، همگی یک نقطه مشترک با کامپیوتر شخصی شما دارند : کمبود فضای ذخیره سازی ویدئوی دیجیتالی مقدار بسیار ناخوشایندی از فضای ذخیره سازی را بخصوص در وضوح یا resolution های بالاتر اشغال می نماید . در حالیکه بسیاری از کارهایی که در وب سایت های مختلف مشاهده می گردند احتیاج به فضای چندانی ندارند ، resolution کامل PAL ۵۷۶×۷۲۰ پیکسلی که توسط DVD و کم کوردرهای دیجیتالی مورد استفاده قرار می گیرد ، در هر دقیقه چندین گیگابایت از فضای دیسک را می بلعد . از آنجا که هیچ یک از ما ظرفیت نامحدود ذخیره سازی را نداریم ، فایل های ویدئویی جهت کاربردی بودن می بایست از نظر اندازه کاهش یابند .
● توضیح Codec ها
ویندوز این کاهش اندازه را با استفاده از قطعات نرم افزاری بنام Codec انجام می دهد . کلمه Codec به معنای COmpressor/DECompressor ( فشرده ساز / باز کننده فشردگی ) است : یعنی یک روتین نرم افزاری که ویدئوی خام آماده ذخیره سازی را فشرده کرده و سپس آن را جهت اجرا بر روی کامپیوتر از فشردگی خارج می نماید . قبل از بیان اینکه Codec های فشرده سازی ویدئو چگونه عمل می کنند ، لازم است یک تصور غلط را روشن نماییم . قالب اصلی فرمت ویدئویی مورد استفاده ویندوز AVI است . ممکن است شنیده باشید که AVI را یک فرمت توصیف می کنند ولی چنین نیست . از نظر تکنیکی AVI چیزی است که به عنوان یک ظرف یا یک لفاف شناخه می شود ، درست همانند Quick Time محصول شرکت اپل .
یک ظرف را می توان به یک کانال تشبیه کرد که در مورد فایل های AVI ، این ظرف فقط روشی جهت انتقال stream های ویدئو و صوت در درون یک فایل می باشد .
یک فایل AVI می تواند با فایل متنی متفاوت باشد ، حتی اگر هر دوی آن ها محتوی کیک ویدئو و صوت با یک resolution باشند . دلیل این امر خیلی ساده است : ویدئوی نگهداری شده در داخل فایل های AVI ممکن است با Codec های متفاوتی فشرده سازی شده باشد ، چیزی که نمی توان به صرف اجرای فایل ها آن را فهمید .
در حالیکه Codecهای صوتی معمولاً یا loosy (پراتلاف) هستند ، lossless (بی اتلاف) هستند ، Codec های ویدئو عموماً‌ Loosy (پراتلاف) می باشند .
ویدئویی که با یک Codec پراتلاف فشرده سازی شده باشد ، با فیلم اصلی یکسان نیست زیرا در حین فرآیند فشرده سازی ، جهت کاهش اندازه فایل مقادیری از اطلاعات دور ریخته می شوند . مقدار عظیم داده های نگهداری شده در فایل های ویدئویی با resolution بالا بدان معناست که استفاده از یک فشرده سازی بی اتلاف (lossless) کاری عملی و سودمند نیست .
● فریم و فیلد
اگر بخواهیم کلی بگوئیم ، Codec های ویدئو را می توان به دو نوع تقسیم کرد :
Codec های مبتنی بر فریم و Codec های مبتنی بر فیلد .
Codec های مبتنی بر فریم مانند Cinepack و یا Motion_JPEG از طریق بررسی و فشرده سازی هر فریم از ویدئو بطور مجزا ، کارشان را انجام می دهند ، با در نظر گرفتن این که در یک ویدئوی PAL درهر ثانیه ۲۵ فریم وجود دارد ، Codec های مبتنی بر فریم دو اشکال عمده دارند : آن ها می توانند کند و اندازه فایل هایشان می تواند نسبتاً بزرگ باشد .
یک فیلم در واقع ، یک رشته تصاویر ثابت است که با سرعت معین و ثابتی نمایش داده شده و موجب پدید آمدن توهم حرکت می گردند . با در نظر داشتن این مسئله ، دشوار نخواهد بود که ببینیم هر فریم یا تصویر قبلی و بعدی خود بوده و فقط تفاوت هایی جزئی در محل های که اشیاء حرکت کرده اند خواهد داشت . پس چرا هر فریم را بصورت مجزا فشرده کنم ، در حالیکه اغلب آن ها اصولاً مشابه یکدیگرند ؟
این جائی است که Codec های مبتنی بر فیلد وارد بازی می شوند .
این Codec ها بررسی می کنند که چقدر از یک Stream ویدئویی در طی زمان تغییر نموده است . هنگامی که یک Codec مبتنی بر فیلد Stream را فشرده می سازد ، Codec مزبور اولین فریم را بصورت تمام و کمال ذخیره می سازد . فریم بعدی با این فریم کامل مقایسه می شودو هرگونه تغییر بین این دو فریم مجزا می گردد .
سپس Codec فقط تغییرات بین اولین فریم کامل و فریم بعد را فشردگی می سازد . از آنجا که فریم اول ضروری بوده و حاوی اطلاعات مورد نیاز برای خروج از فشردگی فریم های بعدی است ، فریم مزبور بنام فریم کلیدی شناخته می شود . هنگامی که Codec متوجه تغییر عمده در فریم ها می گردد ، مثلاً هنگامی که صحنه فیلم عوض می شود . Codec یک فریم کلیدی کامل دیگر را گرفته و فشرده می سازد .
همانطور که می توانید حدس بزنید ، Codec های مبتنی بر فیلد هنگامی به کار آمدترین شکل خود عمل می کنند که با فیلم هایی که صحنه هایشان تغییر چندانی نداشته باشد سروکار دارند . شناخته شده ترین Codec مبتنی بر فیلد استاندارد MFEG است . MFEG _ ۲ که بازبینی شده resolution بالای استاندارد اولیه است ، همان Coldec بکار رفته جهت بسته بندی فیلم های پرفروش کامل در دیسک های CDC نسبتاً کوچک می باشد .
● پخش تصویر از ویندوز
هنگامی که یک فایل ویدئویی که بصورت فرمتی مانند فایل MPEG نگهداری شده است را پخش می کنید ، ویندوز بطور خودکار می داند که آن فایل چیست و بدون اعتراض کارش را با فایل مزبور انجام می دهد . فرمت های ظرفی مانند AVI بسیار پیچیده ترند ، زیرا stream های ویدئویی و stream های صوتی هر دو می توانند یکی از تعداد زیاد Codec های فشرده ساز را مورد استفاده قرار دهند .
ابتدا ، ویندوز بخش خاصی از سرآیند AVI که حاوی کد Fourcc است را مورد بررسی قرار می دهد . کد مزبور یک کد چهار رقمی است که جهت شناسایی Codec بکار رفته در Stream مورد استفاده قرار می گیرد .
ویندوز سپس این کد را با Codec های ویدئویی که روی کامپیوتر دارید مقایسه نموده و Codec صحیح را برای اجرای Stream انتخاب می کند . اگر Codec مورد نیاز جهت پخش آن کد Fourcc بر روی کامپیوتر نصب نشده باشد ، آنوقت دچار مشکل می شوید زیرا ویندوز از پخش فایل مزبور امتناع خواهد نمود .
در نهایت هنگامی که Codec صحیح ویدئو و صوت تعیین گردیدند ، ویندوز Stream را به Codec جهت از فشردگی خارج کردن می فرستد . سپس Codec اطلاعات از فشردگی درآمده را به برنامه پخش مورد استفاده می فرستد که می تواند Windows Media Player و یا برنامه ای از شرکت های ثالث دیگر مانند Winmap باشد . این ماهیت ماجولی به معنای آن است که Codec می تواند توسط هر برنامه ای جهت پخش فایل های ویدئویی بکار برده شود ، بدون اینکه برنامه نویسان ناچار باشند تا هر بار روتین هایی مختص به خود را بنویسند .
● معمای Codec
با در دسترس بودن چندین دو جین Codec ویدئویی جهت استفاده ، هر فایل AVI که با آن مواجه ی شوید می تواند مانند یک بخت آزمایی باشد . آیا سیستم شما مجهز به Codec مربوطه است تا بتواند هر دو Stream ویدئو و صوت را به شکل صحیح پخش کند ؟ اگر نه ، خیلی زود جواب را خواهید دانست ، یعنی ویندوز از این که Codec صحیح بررویش نصب نشده است شکایت می کند . اما اگر نیاز به Codec خاصی باشد از کجا می توان آن را پیدا نمود ؟
بجای نصب تمامی Codec های موجود در دنیا ، راه حل ساده تری برای شناسایی اینکه یک فایل AVI خاص نیازمند کدام Codec فشرده ساز می باشد وجود دارد ، یک قطعه نرم افزاری بنام GSPOT . این نرم افزار که از آدرس اینترنتی www.headbands.com/gspost/GSpot قابل دستیابی است ، هنگامی که برای اولین بار اجرا شود بطرز وحشتناکی پیچیده به نظر می رسد . البته همینطور هم هست ، ولی برای یافتن اطلاعات Codec ، این نرم افزار بی همتاست .
GSPOT را اجرا کرده و سپس فایل AVI انتخابی خود را باز کنید . هنگامی که GSPOT سیستم را برای ردیابی Codec نصب شده اسکن نمود ، این برنامه هزاران نوع اطلاعات درباره محتویات فایل انتخاب شده در اختیارتان قرار می دهد . چیزی که مورد نیاز شماست در سمت راست صفحه تحت بخش Video قرار دارد . بخش Stat به شما می گوید که آیا Codec مورد نیاز را دارید یا خیر . در صورتیکه جواب منفی بود گزینه های View Codec ، Data Base Video را انتخاب نموده و بدنبال کد Fourcc بگردید .
GSPOT همچنین به شما خواهد گفت که Codec گمشده را از کجا بیابید .
● MPEG_۴ خارق العاده
در حالیکه فرمت ها و Codec های ویدئویی باگذشت زمان می آیند و می روند ، بعضی از آنها بقدری مفید واقع می گردند که یک جهش بزرگ محسوب می شوند .
MPEG_۴ یکی از این پدیده ها است . بطور کلی MPEG_۴ استانداردی برای فشرده سازی ویدئویی بسیار کارآمد ولی هم چنان خوش ظاهر است که بسیار فراتر از آنچه که فرمت هایی مانند استاندارد MPEG_۵ DVD می تواند عرضه کند می باشد حداقل از لحاظ فشرده سازی .
لیکن MPEG_۴ بیشتر یک استاندارد است تا یک Codec . در عمل چندین Codec مطابق با MPEG_۴ در دسترس قرار دارند . از جمله نسخه تحت تملک خود شرکت مایکروسافت . بدون شک شناخته شده ترین Codec با استاندارد مزبور Divx می باشد .
این Codec دارای گذشته ای پر تحول است . Codec مزبور همزمان با MPEG_۴ ماکروسافت پدیدار شد ولی تحت نام شرکت Divx Networks.Inc مشروعیت یافت .
در طی سالیان متمادی Divx پیشرفت های زیادی نموده و اکنون مؤسسه بزرگی است . پدید آورندگان بازیها از آن بر روی کامپیوترهای شخصی و پایانه ها استفاده می کنند و تعدادی از DVD Player ها و وسائل پرتابل نیز وجود دارند که می توانند فایل های DVX را پخش کنند . برای اطلاعات بیشتر به سایت WWW.divx.com مراجعه کنید .
سایر Codec های عامه پسند شامل Xvid (WWW. Xvid .com ) ، ۳IVX ( WWW. ۳IVX.com ) و Digital Nero ( WWW.ahead.de ) می باشند .

قُلْ سِیرُوا فِی الْأَرْضِ فَانظُرُوا کَیْفَ بَدَأَ الْخَلْقَ ثُمَّ اللَّهُ یُنشِئُ النَّشْأَةَ الْآخِرَةَ إِنَّ اللَّهَ عَلَى کُلِّ شَیْءٍ قَدِیرٌ (بگو در زمین بگردید و بنگرید خداوند چگونه آفرینش را آغاز کرده است، سپس خداوند به همین گونه، جهان را ایجاد می کند خداوند یقیناً بر هر چیز تواناست)   /عنکبوت20
دوشنبه 6 شهریور 1391  9:52 AM
تشکرات از این پست
دسترسی سریع به انجمن ها