کودی (نرم‌افزار)

**کودی**  (که قبلاً **XBMC** نام داشت) یک برنامه نرم‌افزار آزاد و متن‌باز پخش کنندهٔ رسانه است که توسط بنیاد XBMC، یک کنسرسیوم فناوری غیرانتفاعی توسعه یافته‌است. کودی برای چندین سیستم عامل و پلت فرم‌های سخت‌افزاری با یک رابط کاربری نرم‌افزاری ۱۰ فوتی برای استفاده با تلویزیون‌ها و کنترل‌های از راه دور در دسترس است. این به کاربران اجازه می‌دهد تا اکثر رسانه‌های جریانی مانند ویدیوها، موسیقی، پادکست‌ها و ویدیوها را از اینترنت، و همچنین همه فایل‌های رسانه دیجیتال رایج از رسانه‌های ذخیره‌سازی محلی و شبکه، پخش و مشاهده کنند.

این یک برنامه رایانه شخصی سینمای خانگی چند پلتفرمی (HTPC) است. Kodi قابل تنظیم است: پوسته‌ها می‌توانند ظاهر آن را تغییر دهند، و افزونه‌ها به کاربران اجازه می‌دهند از طریق سرویس‌های آنلاین مانند Amazon Prime Instant Video , Crackle، Pandora Internet Radio , Rhapsody، Spotify و YouTube به محتوای رسانه‌های جریانی دسترسی داشته باشند. نسخه‌های بعدی همچنین دارای یک ضبط‌کننده ویدیوی شخصی (PVR) گرافیکی برای دریافت تلویزیون زنده با راهنمای برنامه الکترونیکی (EPG) و پشتیبانی از ضبط‌کننده ویدیوی دیجیتال با کیفیت بالا (DVR) هستند.

این نرم‌افزار در سال ۲۰۰۲ به عنوان یک برنامه پخش کننده رسانه خانگی توسعه یافته مستقل با نام **Xbox Media Player** برای کنسول بازی اکس‌باکس نسل اول ایجاد شد و نام خود را در سال ۲۰۰۴ به **Xbox Media Center** (مخفف XBMC که در سال ۲۰۰۸ به عنوان نام رسمی انتخاب شد) تغییر داد) و بعداً تحت نام XBMC به عنوان یک برنامه بومی برای سیستم عامل‌های اندروید، لینوکس، BSD، macOS، iOS / tvOS و سیستم عامل‌های مبتنی بر ویندوز مایکروسافت در دسترس قرار گرفت.

نسخه‌های اصلاح شده Kodi- XBMC به دلیل ماهیت متن باز و چند پلتفرمی آن، با کد اصلی نوشته شده در C++، به عنوان یک مجموعه ابزار نرم افزاری یا چارچوب نرم‌افزاری در دستگاه‌های مختلف، از جمله تلویزیون‌های هوشمند، استفاده شده‌است. -تاپ باکس، ساینیج دیجیتال، سیستم‌های تلویزیون هتل، پخش کننده‌های رسانه ای متصل به شبکه و سیستم‌های تعبیه شده بر اساس پلتفرم‌های armhf مانند Raspberry Pi. برنامه‌های مشتق شده مانند MediaPortal و Plex از XBMC یا Kodi و همچنین سیستم عامل‌های کافی مانند LibreELEC جدا شده‌اند.

کودی به دلیل در دسترس بودن افزونه‌های شخص ثالث برای نرم‌افزاری که دسترسی غیرمجاز به محتوای رسانه‌ای دارای حق چاپ را تسهیل می‌کند و همچنین پخش‌کننده‌های رسانه دیجیتال «کاملاً بارگذاری شده» که از قبل با چنین افزونه‌هایی از پیش بارگذاری شده‌اند، توجه منفی را به خود جلب کرده‌است. بنیاد XBMC هیچ‌یک از این استفاده‌ها را تأیید نکرده‌است و اقداماتی را برای جدا کردن پروژه کودی از این افزونه‌ها انجام داده‌است، از جمله تهدید به اقدام قانونی علیه کسانی که از علائم تجاری آن برای تبلیغ آنها استفاده می‌کنند.

## بررسی اجمالی
کودی از بسیاری از فرمت‌های رایج صوتی، تصویری و تصویری، لیست‌های پخش، تجسم‌های صوتی، نمایش اسلاید، گزارش پیش‌بینی آب و هوا و افزونه‌های شخص ثالث پشتیبانی می‌کند. قابلیت شبکه (اشتراک‌گذاری اینترنت و شبکه خانگی) را دارد. برخلاف سایر برنامه‌های مرکز رسانه مانند Windows Media Center , MediaPortal و MythTV , Kodi کد تیونر تلویزیون دیجیتال داخلی خود را برای عملکرد ضبط تلویزیون زنده یا DVR/PVR شامل نمی‌شود، زیرا در عوض به عنوان یک DVR/PVR یکپارچه جلویی عمل می‌کند. با یک رابط رابط کاربری گرافیکی EPG TV-Guide که از طریق یک API مشترک، چندین بک‌اند را از طریق افزونه‌های کلاینت PVR از اشخاص ثالث انتزاع می‌کند و پشتیبانی می‌کند، با آن‌هایی که به صورت محلی در همان دستگاه یا روی شبکه اجرا می‌شوند.

افزونه‌ها، با استفاده از زبان‌های برنامه‌نویسی C/C++ برای ایجاد افزونه‌های باینری یا زبان برنامه‌نویسی پایتون برای ایجاد افزونه‌های اسکریپت، Kodi را گسترش دهید تا شامل ویژگی‌هایی مانند راهنمای برنامه‌های تلویزیونی، یوتیوب، Hulu، نتفلیکس، Veoh، پشتیبانی آنلاین تریلر فیلم شود. و رادیو پاندورا و پخش پادکست. کودی همچنین به عنوان یک لانچر بازی در هر سیستم عاملی عمل می‌کند.

کد منبع Kodi به‌عنوان منبع باز تحت مجوز عمومی عمومی گنو (GPL-2.0 یا بالاتر) توزیع می‌شود، این کد توسط سازمان غیرانتفاعی ثبت شده معاف از مالیات ایالات متحده، بنیاد XBMC اداره می‌شود، و متعلق به و توسعه‌یافته یک سازمان جهانی است. انجمن نرم‌افزار رایگان داوطلبان بدون مزد.

اگرچه پروژه اصلی XBMC دیگر XBMC را برای Xbox توسعه نمی‌دهد یا پشتیبانی نمی‌کند، XBMC در Xbox هنوز از طریق پروژه توسعه‌دهنده شخص ثالث " XBMC4Xbox " در دسترس است، که نسخه Xbox نرم‌افزار را فورک کرد و به‌طور کامل کنترل آن را به دست گرفت. توسعه و پشتیبانی XBMC برای Xbox قدیمی. پایان دادن به پشتیبانی از اکس‌باکس توسط پروژه اصلی همچنین دلیل تغییر نام آن به "XBMC" از نام قدیمی "Xbox Media Center" و دلیل تغییر نام آن به "Kodi" بود. نسخه Xbox XBMC توانایی راه اندازی بازی‌های کنسولی و برنامه‌های خانگی مانند شبیه‌سازها را داشت. از آنجایی که نسخه XBMC برای Xbox هرگز توسط مایکروسافت توزیع، تأیید یا پشتیبانی نشد، برای اجرا بر روی کنسول بازی Xbox همیشه به یک modchip یا softmod exploit نیاز داشت.

### الزامات سخت‌افزاری
کودی نسبت به برنامه‌های نرم‌افزاری سنتی سبک دوبعدی نیازمندی‌های سخت‌افزاری اساسی‌تری دارد: برای همه رندرها به یک کنترل‌کننده سخت‌افزار گرافیکی با قابلیت سه بعدی نیاز دارد. تراشه‌های قدرتمند 3D GPU امروزه در اکثر پلتفرم‌های رایانه‌ای مدرن، از جمله بسیاری از ست‌اپ‌باکس‌ها، رایج هستند، و XBMC، اکنون Kodi، از ابتدا به گونه‌ای طراحی شده بود که از نظر منابع بسیار کارآمد باشد، زیرا چارچوبی قدرتمند و همه‌کاره است. . این سیستم به خوبی روی سیستم‌هایی که (براساس استانداردهای اتم اینتل) هستند، OpenGL 1.3 (با پشتیبانی GLSL), OpenGL ES 2.0 یا Direct3D (DirectX) 9.0 نسبتاً ضعیف هستند که دارای IA-32 / x86، X86-64، ARM (AArch32 و AArch6) هستند، کار می‌کند. RISC-V، یا PowerPC G4 یا جدیدتر مبتنی بر CPU.

هنگامی که رمزگشایی نرم‌افزاری یک ویدیوی Full HD 1080p با کیفیت بالا و نرخ بیت بالا توسط CPU سیستم انجام می‌شود، یک دو هسته‌ای ۲ گیگاهرتز یا CPU سریع‌تر مورد نیاز است تا امکان پخش کاملاً صاف و بدون افت فریم وجود داشته باشد یا به پخش ظاهری تند و ناگهانی بدهد. با این حال، Kodi می‌تواند بیشتر فرایند رمزگشایی ویدیو را روی کنترل‌کننده سخت‌افزار گرافیکی یا مدارهای پردازش ویدیوی تعبیه‌شده که از یکی از انواع زیر رمزگشایی ویدیوی شتاب‌دار سخت‌افزاری پشتیبانی می‌کنند، بارگیری کند: API MediaCodec Google برای Android, VAAPI اینتل، API VDPAU Nvidia, XvBA AMD. API, API DXVA مایکروسافت، APIهای VDADecoder/VideoToolbox اپل، و API OpenMAX گروه Khronos, AMLogic VPU، Freescale 's i. VPU سری MX6x و GPU MMAL Raspberry Pi. با بهره‌گیری از چنین رمزگشایی ویدیویی با شتاب سخت‌افزاری، Kodi می‌تواند اکثر ویدئوها را در بسیاری از سیستم‌های ارزان قیمت و با کارایی پایین، تا زمانی که دارای VPU یا GPU پشتیبانی‌شده باشند، پخش کند.

## دستگاه‌های احتمالی
به عنوان دستگاه‌های خارجی می‌توان استفاده کرد: RaspberryPi, Ondroid, Android-Smartphone, AmazonFireTV, IntelNuc.

## ویژگی‌های اصلی
### تلویزیون زنده با صفحه نمایش EPG و PVR/DVR
از نسخه ۱۲٫۰ (Frodo), Kodi دارای یک تلویزیون زنده بومی با ویژگی‌های EPG (راهنمای برنامه الکترونیکی) و DVR (ضبط‌کننده ویدیوی دیجیتال) با رابط کاربری گرافیکی جلویی PVR (ضبط‌کننده ویدیوی شخصی) است که ضبط و پخش ویدیو را از داخل و خارج از هارد امکان‌پذیر می‌کند. درایو دیسک با افزونه‌های سرویس گیرنده PVR برای محبوب‌ترین پشتیبان‌های PVR (سرور کارت تیونر تلویزیون). این افزونه‌ها را می‌توان به‌طور جداگانه به عنوان افزونه در Kodi نصب کرد.

پشتیبان PVR می‌تواند یک ستاپ باکس DVR متصل به شبکه یا یک رایانه شخصی با یک نرم‌افزار ضبط ویدئوی دیجیتال باشد. این نرم‌افزار می‌تواند بر روی همان رایانه یا رایانه‌های دیگر در همان شبکه اجرا شود. نرم‌افزار PVR می‌تواند کامپیوترها یا سایر وسایل را به دستگاه DVR تبدیل کند. سیستم عامل می‌تواند لینوکس، macOS، مایکروسافت ویندوز و دستگاه‌های اندرویدی باشد.

چندین نوع افزونه مشتری PVR موجود است:
* افزونه‌های مورد استفاده برای بسیاری از نرم‌افزارها و سخت‌افزارهای PVR مانند Argus TV, DVBLogic DVBLink, DVBViewer , ForTheRecord, Tvheadend, MediaPortal , MythTV , NextPVR (GB-PVR سابق)، ویندوز مدیا سنتر،
* افزونه‌های مورد استفاده برای ست‌اپ باکس‌های DVR مبتنی بر Enigma2 مانند Dreambox , DBox2 و Vu+ .،
* افزونه‌هایی برای اتصال مستقیم LAN به تیونرهای تلویزیون متصل به شبکه مانند HDHomeRun , PCTV Systems Broadway, VBox Home TV Gateway و Njoy Digital AnySee N7 DVB-S2 Network-Tuner استفاده می‌شود.
* افزونه‌های مورد استفاده برای ارائه دهندگان تلویزیون مبتنی بر اینترنت FilmOn (FilmOn. شبکه‌های تلویزیونی)، و میان افزار استالکر،
* افزونه‌های مورد استفاده برای آی‌پی تی‌وی به‌طور کلی، به عنوان مثال افزونه ساده مشتری PVR.

### پخش ویدیو
#### کتابخانه ویدیویی
کتابخانه ویدیویی، یکی از پایگاه داده های فراداده کودی، یکی از ویژگی‌های کلیدی کودی است. این اجازه می‌دهد تا محتوای ویدیویی را با اطلاعات مرتبط با فایل‌های ویدیویی (مانند فیلم‌ها و برنامه‌های تلویزیونی ضبط شده) سازماندهی کنید. این اطلاعات را می‌توان به روش‌های مختلفی به دست آورد، مانند از طریق اسکراپرها (به عنوان مثال، سایت‌های خراش دادن وب مانند IMDb, TheMovieDB, TheTVDB)، و فایل‌های nfo. دانلود و نمایش خودکار پوسترهای فیلم و پس زمینه فن آرت به عنوان  پس زمینه پس زمینه. نمای حالت کتابخانه به کاربران اجازه می‌دهد تا محتوای ویدیوی خود را بر اساس دسته‌بندی مرور کنند. ژانر، عنوان، سال، بازیگران و کارگردانان.

#### هسته‌های پخش کننده ویدیو
کودی از یک پخش کننده ویدیوی چندرسانه ای «هسته» برای پخش ویدیو استفاده می‌کند. این «هسته» پخش‌کننده ویدیو برای پخش ویدیو، یک پخش‌کننده رسانه متقابل پلتفرم، «DVDPlayer» است که برای پخش فیلم‌های DVD-Video طراحی شده‌است، و این شامل پشتیبانی بومی برای منوهای DVD، (بر اساس در کتابخانه‌های منبع باز رایگان کد libdvdcss و libdvdnav). این «هسته» پخش کننده ویدئویی مبتنی بر FFmpeg امروزه از همه فرمت‌های رایج رایج پشتیبانی می‌کند. یکی از ویژگی‌های نسبتاً غیرمعمول این هسته پخش کننده DVD، قابلیت مکث و پخش فیلم‌های DVD-Video است که در تصاویر ISO و IMG DVD یا تصاویر DVD-Video (VOB / VOB / VOB) (حتی) ذخیره می‌شوند. مستقیماً از بایگانی‌های RAR و ZIP فشرده نشده)، از حافظه محلی هارددیسک یا ذخیره‌سازی اشتراک شبکه.

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

### نمایش تصویر/تصویر دیجیتال
کودی با استفاده از کد کتابخانه منبع باز CxImage، تمام قالب‌های رایج تصویر/تصویر دیجیتال را با گزینه‌های پاننگ/زوم و نمایش اسلاید با «اثر Ken Burns» مدیریت می‌کند. XBMC می‌تواند فایل‌های بایگانی کتاب کمیک CBZ (ZIP) و CBR (RAR) را مدیریت کند، این ویژگی به کاربران اجازه می‌دهد تصاویر صفحات کمیک را که در آنها وجود دارد، بدون اینکه ابتدا آنها را از حالت فشرده خارج کنند، مشاهده/خواندن، مرور و بزرگنمایی کنند.

## جستارهای وابسته

* فهرست پلتفرم‌های تلویزیون هوشمند و نرم‌افزار میان‌افزار
* مقایسه بسته‌های نرم‌افزاری PVR

## منابع

رده:پخش‌کنندگان رسانه آزاد
رده:نرم‌افزارهای ۲۰۰۴ (میلادی)
رده:نرم‌افزارهای آزاد چندسکویی
رده:نرم‌افزارهای آزاد موبایل
رده:نرم‌افزارهای آزاد نوشته‌شده با سی++
رده:نرم‌افزارهای اکس‌باکس وان
رده:نرم‌افزارهایی که از اف‌اف‌امپگ استفاده می‌کنند
رده:نگهداری یادکرد:ربات:وضعیت نامعلوم پیوند اصلی
رده:همه مقاله‌های دارای عبارت‌های بدون منبع