Какво е M4S файл?
M4S файлът е малък сегмент от видео, което се предава поточно през интернет с помощта на техниката за поточно предаване MPEG-DASH. Той съдържа видео сегмент под формата на двоични данни. Приемащото приложение (обикновено уеб браузър или медийни плейъри) възпроизвежда тези сегменти в реда, в който са получени. Първият M4S сегмент се идентифицира чрез данните за инициализация, които съдържа. В обобщение, M4S файловете са малки отделни медийни сегменти от пълен файл.
M4S файлов формат
M4S файловете са базирани на ISO Base Media File (ISOBMFF) формат. Тези малки сегменти от голям файл могат да бъдат изтеглени независимо чрез HTTP. По този начин, ако имате голям MP4 филмов файл, той може да бъде предаван поточно с помощта на техниката MPEG-DASH (Динамично адаптивно поточно предаване през HTTP), като го сегментирате като M4S сегментни файлове. Ако този голям филмов файл се изтегли на диск като M4S, се изтеглят множество M4S файлове. Ако всички тези .m4s сегменти се свържат, се създава пълен файл, който може да се възпроизвежда. Медийните плейъри не могат да възпроизведат файла, освен ако първият сегмент за инициализация също не е наличен с файла.
Относно MPEG-DASH поточно предаване
MPEG-DASH използва адаптивна техника за поточно предаване на битрейт, която прави възможно поточно предаване на висококачествено медийно съдържание през интернет. Това става чрез разделяне на съдържанието на поредица от малки сегменти, които се предават поточно през HTTP. Големи медийни файлове като филми, подкасти или предаване на живо на спортно събитие могат да се предават поточно по този начин. Тези сегменти са кодирани с различни битрейтове. Медийните плейъри с активиран MPEG-DASH автоматично избират сегмента с най-висок битрейт, като използват алгоритъм за адаптиране на битрейта. Това избягва спирането или повторното буфериране на събития при възпроизвеждането.
API с отворен код за M4S файлове
Налични са API с отворен код, които могат да се използват за четене и конвертиране на M4S файлове.
- libdash - .NET API за M4S файлове
- dash.js - Javascript клиент за M4S файл
- Библиотека Go за създаване на Dash файлове