MPEG-DASH (Dynamic Adaptive Streaming over HTTP) یک روش استریمینگ است که به منظور پخش ویدیو بر بستر اینترنت طراحی شده است. این تکنیک اجازه میدهد تا دستگاهها بتوانند محتوای ویدیویی را قبل از اینکه کاملاً بارگذاری شود، شروع به پخش کنند. به عبارت دیگر، در استریمینگ، دادهها به گونهای ارسال میشوند که دستگاه مقصد بتواند پیش از دانلود کامل فایل، ویدیو را پخش کند. MPEG-DASH مشابه HLS (HTTP Live Streaming) است که در آن ویدیو به بخشهای کوچکتر تقسیم شده و هر بخش با کیفیتهای مختلف کدگذاری میشود. این امر اجازه میدهد تا کیفیت ویدیو بر اساس شرایط شبکه به طور پویا تغییر کند و بین کیفیتهای مختلف در هنگام پخش جابجا شود.
MPEG-DASH از پروتکل HTTP استفاده میکند که این ویژگی یکی از مزایای اصلی آن است. چرا که اکثر ارتباطات اینترنتی از HTTP بهره میبرند و این پروتکل از پورتهای استاندارد (پورت ۸۰ یا ۴۴۳) استفاده میکند که معمولاً باز هستند. به همین دلیل، پخش ویدیو با استفاده از MPEG-DASH به ندرت توسط فایروالها مسدود میشود، برخلاف پروتکلهای استریمینگ دیگر که ممکن است از پورتهای خاص استفاده کنند.
فرآیند کار MPEG-DASH شامل چندین مرحله است. ابتدا، سرور اصلی ویدیو را به بخشهای کوچکتر تقسیم کرده و آنها را کدگذاری میکند تا دستگاههای مختلف بتوانند آنها را پردازش کنند. سپس، این بخشهای کدگذاریشده به دستگاههای مشتری از طریق اینترنت ارسال میشود. در نهایت، دستگاههای مشتری این دادهها را رمزگشایی کرده و ویدیو را پخش میکنند. در این فرایند، پلیر ویدیویی به طور خودکار کیفیت تصویر را بر اساس شرایط شبکه تغییر میدهد. برای مثال، اگر پهنای باند شبکه کم باشد، ویدیو با کیفیت پایینتر پخش میشود تا از وقفه جلوگیری کند.
MPEG-DASH قابلیت استریمینگ با نرخ بیت تطبیقی را فراهم میکند. این ویژگی به این معناست که کیفیت ویدیو در طول پخش میتواند بر اساس تغییرات شرایط شبکه تغییر کند. این امکان به دلیل این است که سرور اصلی، ویدیو را با کیفیتهای مختلف کدگذاری میکند و این تغییرات به طور پویا و بدون توقف پخش انجام میشود. این ویژگی باعث میشود که ویدیو در صورت کاهش پهنای باند شبکه متوقف نشود.
MPEG-DASH و HLS از نظر عملکرد شباهتهای زیادی دارند، زیرا هر دو پروتکل از HTTP بهره میبرند، از TCP به عنوان پروتکل حملونقل استفاده میکنند، و ویدیو را به بخشهای کوچک تقسیم میکنند. اما تفاوتهای عمدهای نیز دارند. برای مثال، MPEG-DASH از هر نوع فرمت کدگذاری پشتیبانی میکند، در حالی که HLS فقط از H.264 یا H.265 پشتیبانی میکند. همچنین، HLS تنها فرمت پشتیبانیشده توسط دستگاههای اپل است، در حالی که MPEG-DASH برای پخش روی این دستگاهها قابل استفاده نیست. از دیگر تفاوتها میتوان به طول بخشها اشاره کرد، جایی که در HLS بخشها معمولاً ۶ ثانیه هستند، در حالی که در MPEG-DASH طول بخشها معمولاً بین ۲ تا ۱۰ ثانیه است. MPEG-DASH به عنوان یک استاندارد بینالمللی شناخته میشود، در حالی که HLS توسط اپل توسعه یافته و هنوز بهعنوان یک استاندارد بینالمللی منتشر نشده است.