FMUSER بی سیم ویدئو و صدا را راحت تر انتقال می دهد!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> آفریقایی
sq.fmuser.org -> آلبانیایی
ar.fmuser.org -> عربی
hy.fmuser.org -> ارمنی
az.fmuser.org -> آذربایجانی
eu.fmuser.org -> باسک
be.fmuser.org -> بلاروسی
bg.fmuser.org -> بلغاری
ca.fmuser.org -> کاتالان
zh-CN.fmuser.org -> چینی (ساده شده)
zh-TW.fmuser.org -> چینی (سنتی)
hr.fmuser.org -> کرواتی
cs.fmuser.org -> چکی
da.fmuser.org -> دانمارکی
nl.fmuser.org -> هلندی
et.fmuser.org -> استونیایی
tl.fmuser.org -> فیلیپینی
fi.fmuser.org -> فنلاندی
fr.fmuser.org -> فرانسوی
gl.fmuser.org -> گالیسیایی
ka.fmuser.org -> گرجی
de.fmuser.org -> آلمانی
el.fmuser.org -> یونانی
ht.fmuser.org -> کریول هائیتی
iw.fmuser.org -> عبری
hi.fmuser.org -> هندی
hu.fmuser.org -> مجارستانی
is.fmuser.org -> ایسلندی
id.fmuser.org -> اندونزیایی
ga.fmuser.org -> ایرلندی
it.fmuser.org -> ایتالیایی
ja.fmuser.org -> ژاپنی
ko.fmuser.org -> کره ای
lv.fmuser.org -> لتونیایی
lt.fmuser.org -> لیتوانیایی
mk.fmuser.org -> مقدونی
ms.fmuser.org -> مالایی
mt.fmuser.org -> مالتیایی
no.fmuser.org -> نروژی
fa.fmuser.org -> فارسی
pl.fmuser.org -> لهستانی
pt.fmuser.org -> پرتغالی
ro.fmuser.org -> رومانیایی
ru.fmuser.org -> روسی
sr.fmuser.org -> صربی
sk.fmuser.org -> اسلواکی
sl.fmuser.org -> اسلوونیایی
es.fmuser.org -> اسپانیایی
sw.fmuser.org -> سواحیلی
sv.fmuser.org -> سوئدی
th.fmuser.org -> تایلندی
tr.fmuser.org -> ترکی
uk.fmuser.org -> اوکراینی
ur.fmuser.org -> اردو
vi.fmuser.org -> ویتنامی
cy.fmuser.org -> ولزی
yi.fmuser.org -> ییدیش
HLS و Http Live Streaming پروتکل هایی برای جریان در زمان واقعی هستند که توسط اپل تعریف شده اند. HLS بر اساس پروتکل HTTP پیاده سازی می شود. محتوای انتقال شامل دو قسمت است ، یکی پرونده توضیحات M3U8 و دیگری پرونده رسانه TS است.
1. فایل M3U8
پرونده رسانه به صورت متنی توصیف شده است که از مجموعه ای از برچسب ها تشکیل شده است.
#EXTM3U
# EXT-X-TARGETDURATION: 5
#EXTINF: 5 ،
./0.ts
#EXTINF: 5 ،
./1.ts
# EXTM3U: اولین خط از هر پرونده M3U8 باید این برچسب باشد.
# EXT-X-TARGETDURATION: حداکثر طول زمان بخش رسانه (ثانیه) را مشخص کنید. مدت زمان مشخص شده در #EXTINF باید کمتر یا برابر با این مقدار حداکثر باشد. این مقدار فقط یک بار می تواند نشان داده شود.
#EXTINF: طول یک پرونده رسانه ای واحد را توصیف کنید. پرونده های رسانه ای مانند ./0.ts دنبال می شوند
توسط HTTP در دستگاه iOS و Mac توزیع می شود. استاندارد لیست پخش فایل m3u8 است که توسط m3u توسعه یافته است و پرونده رسانه MPEG2-TS یا فایل AAC (فقط صوتی) است.
دو پرونده کاربردی برای پرونده های m3u8 وجود دارد:
جریان سازگار چند نرخ ،
#EXTM3U
# EXT-X-STREAM-INF: شناسه برنامه = 1 ، پهنای باند = 1280000
# EXT-X-STREAM-INF: شناسه برنامه = 1 ، پهنای باند = 2560000
# EXT-X-STREAM-INF: شناسه برنامه = 1 ، پهنای باند = 7680000
# EXT-X-STREAM-INF: PROGRAM-ID = 1 ، پهنای باند = 65000 ، CODECS = "mp4a.40.5"
http://example.com/audio-only.m3u8
جریان سازگاری تک نرخ
#EXTM3U
# EXT-X-TARGETDURATION: 5220
#EXTINF: 5220 ،
http://media.example.com/entire.ts
# EXT-X-ENDLIST
سازمان استاندارد بین الملل این سند rfc را تعریف می کند:
http://tools.ietf.org/html/draft-pantos-http-live-streaming-06
پرونده m3u8 پسوند پرونده m3u است. کلمات کلیدی گسترده شده در rfc تعریف شده اند:
در میان آنها:
# EXT-X-TARGETDURATION
حداکثر مدت زمان هر TS را مشخص کنید.
# دنباله EXT-X-MEDIA
شماره سریال اولین پرونده را در پرونده m3u8 فعلی تعریف کنید. هر فایل ts دارای یک شماره سریال ثابت و منحصر به فرد در پرونده m3u8 است. از شماره سریال برای تغییر نرخ کد برای هم ترازی در طول MBR استفاده می شود.
# کلید EXT-X
روش رمزگذاری و آدرس url پرونده کلید را که برای بدست آوردن پرونده اصلی 16 بایت برای رمزگشایی فایل ts استفاده می شود ، تعریف کنید.
صفات:
روش
URL
# EXT-X-PROGRAM-DATE-TIME
زمان مطلق پرونده اول
# EXT-X-ALLOW-Cache
اینکه آیا حافظه پنهان مجاز است.
# EXT-X-ENDLIST
پایان پرونده m3u8 را نشان می دهد. m3u8 زنده این برچسب را ندارد.
# EXT-X-STREAM-INF
صفات:
BANDWIDTH میزان بیت را مشخص می کند
شناسه منحصر به فرد PROGRAM-ID
CODECS نوع رمزگذاری جریان را مشخص می کند
# EXT-X-DISCONTINUITY
هنگامی که برچسب روبرو شد ، ویژگی های زیر تغییر کرده است:
فرمت فایل
تعداد و نوع آهنگ ها
پارامترهای رمزگذاری
توالی کدگذاری
توالی مهر زمان
# EXT-X-VERSION این ویژگی می تواند مورد استفاده قرار گیرد یا نه ، نمی توانید هیچ کدام را داشته باشید
M3U8 به M3U8 سطح بالا و M3U8 سطح دوم تقسیم می شود. M3U8 سطح بالا عمدتا برای سازگاری چند نرخه استفاده می شود. سطح دوم M3U8 پرونده برش واقعی است.
به طور پیش فرض ، مشتری ابتدا درخواست با بالاترین میزان ارسال بیت را انتخاب می کند. اگر متوجه شود که نمی توان به میزان بیت دسترسی داشت ، درخواست جریانی با نرخ بیت کم را می کند
یک فایل سطح بالا M3U8 در استفاده واقعی به شرح زیر است:
#EXTM3U
# EXT-X-STREAM-INF: شناسه برنامه = 201273221265 ، پهنای باند = 358400
11. m3u8
# EXT-X-STREAM-INF: شناسه برنامه = 201273221265 ، پهنای باند = 972800
22. m3u8
پرونده سطح بالا M3U8 دو پرونده سطح دوم 11.m3u8 و 22.m3u8 را تعریف می کند و مشتری یکی از آنها را برای دریافت محتوای آن انتخاب می کند.
محتوای فایل ثانویه M3U8 به شرح زیر است:
#EXTM3U
# نسخه EX-X: 1
# EXT-X-TARGETDURATION: 10
# دنباله EXT-X-MEDIA: 0
#EXTINF: 3 ،
1-4.ts
#EXTINF: 8 ،
1-6.ts
#EXTINF: 8 ،
1-8.ts
#EXTINF: 8 ،
1-10.ts
#EXTINF: 8 ،
1-12.ts
#EXTINF: 8 ،
1-14.ts
#EXTINF: 8 ،
1-16.ts
#EXTINF: 9 ،
1-18.ts
#EXTINF: 6 ،
1-20.ts
#EXTINF: 8 ،
1-22.ts
#EXTINF: 9 ،
1-24.ts
#EXTINF: 3 ،
1-26.ts
# EXT-X-ENDLIST
بعد از اینکه مشتری فایل M3U8 ثانویه فوق را دریافت کرد ، به درخواست پرونده داخل ادامه خواهد داد و سپس می توان آن را پخش کرد.
موارد فوق در مورد وضعیت درخواستی و وضعیت پخش مستقیم است ، در پرونده M3U8 ویژگی هایی برای زنده بودن آن وجود دارد و مشتری به طور دوره ای پرونده های جدید M3U8 را درخواست می کند.
// وقتی HLS متوجه تقاضا و پخش مستقیم می شود ، تفاوت فایل M3U8
1. شرح مسئله
اخیراً با استفاده از HLS (HTTP Live Streaming) برای پخش مستقیم ، یک تست پخش قطعه کدگذاری شده انجام دادم. هر زمان تقسیم TS 10 ثانیه است و فایلهای زنده m3u8 زیر با توجه به پرونده های تقسیم بندی TS تولید می شوند
کپی کردن کد
#EXTM3U
# دنباله EXT-X-MEDIA: 1
# EXT-X-TARGETDURATION: 10
#EXTINF: 10
hls / 1.ts
#EXTINF: 10
hls / 2.ts
#EXTINF: 10
hls / 3.ts
#EXTINF: 10
hls / 4.ts
#EXTINF: 10
hls / 5.ts
#EXTINF: 10
hls / 6.ts
#EXTINF: 10
hls / 7.ts
#EXTINF: 10
hls / 8.ts
#EXTINF: 10
hls / 9.ts
#EXTINF: 10
hls / 10.ts
کپی کردن کد
فایل m3u8 فوق را به صورت live.m3u8 ذخیره کنید ، آن را در فهرست سند Apache قرار دهید و URL زیر را با VLC پخش کنید:
http://localhost/live.m3u8
این آزمایش نشان داد که اولین فایلی که شروع به پخش می کند 1.ts نیست. پس از چندین آزمایش مشخص شد:
تا زمانی که بیش از سه پرونده در لیست وجود داشته باشد ، سه فایل آخر لیست همیشه پخش می شوند
2 حل مشکل
بسیار ناراحت کننده است که پس از جستجوی اینترنت ، هیچ اطلاعات م effectiveثری پیدا نکردم. یک رفیق با همین وضعیت روبرو شد ، آیا پس از حل آن تجربه خود را به اشتراک گذاشت؟
پس از مشورت با یک همکار ، همکار گفت که این امکان وجود دارد زیرا لیست پرونده های m3u8 زنده باید به صورت بلادرنگ به روز شوند. اگر آزمایشی انجام دهیم ، ابتدا می توانیم # EXT-X-ENDLIST را در انتها اضافه کنیم. این روش آزمایش شده است کار می کند ، اما این دیگر حالت زنده m3u8 نیست
پس از جستجوی دوباره در اینترنت ، تأیید کردم که سرانجام شرح زنده m3u8 را پیدا کردم
لیست پخش زنده (پنجره کشویی)
برای جلسات زنده ، با ایجاد و در دسترس قرار دادن پرونده های رسانه ای جدید ، پرونده فهرست با حذف URI رسانه از پرونده به روز می شود.
مهم: برچسب EXT-X-ENDLIST در لیست پخش زنده وجود ندارد ، این نشان می دهد که پرونده های رسانه جدید با در دسترس قرار گرفتن به پرونده فهرست اضافه می شوند.
همانطور که در ابتدای جلسه نشان داده می شود به لیست 3 مراجعه کنید.
لیست 3 لیست پخش زنده در ابتدای جلسه.
کپی کردن کد
#EXTM3U
# EXT-X-TARGETDURATION: 10
# نسخه EX-X: 3
# دنباله EXT-X-MEDIA: 1
#EXTINF: 10 ،
fileSequence1.ts
#EXTINF: 10 ،
fileSequence2.ts
#EXTINF: 10 ،
fileSequence3.ts
#EXTINF: 10 ،
fileSequence4.ts
#EXTINF: 10 ،
fileSequence5.ts
کپی کردن کد
مقدار برچسب EXT-X-MEDIA-SEQUENCE برای هر URI رسانه ای که از پرونده لیست پخش برداشته می شود ، باید 1 افزایش یابد. URI رسانه باید به ترتیب لیست آنها در لیست پخش حذف شود. پرونده فهرست به روز شده یک پنجره متحرک را به یک جریان مداوم ارائه می دهد. این نوع جلسه برای پخش مداوم مناسب است.
در اینجا همان لیست پخش پس از به روزرسانی با URI رسانه های جدید وجود دارد:
لیست 4 لیست پخش زنده پس از به روزرسانی URI های رسانه ای.
کپی کردن کد
#EXTM3U
# EXT-X-TARGETDURATION: 10
# نسخه EX-X: 3
# دنباله EXT-X-MEDIA: 2
#EXTINF: 10 ،
fileSequence2.ts
#EXTINF: 10 ،
fileSequence3.ts
#EXTINF: 10 ،
fileSequence4.ts
#EXTINF: 10 ،
fileSequence5.ts
#EXTINF: 10 ،
fileSequence6.ts
کپی کردن کد
3. زنده قوانین به روز رسانی m3u8
لیست پرونده های زنده m3u8 باید به طور مداوم به روز شود ، قوانین به روزرسانی:
پرونده برتر (فکر کنید پخش شده) را در لیست پخش فایل حذف کنید
به طور مداوم برچسب EXT-X-MEDIA-SEQUENCE را به روز کنید ، 1 افزایش دهید
4. آزمایش کنید
یک برنامه کوچک برای تولید m3u8 زنده برای آزمایش بنویسید
طریقه استفاده:
m3u8_gen.exe start_num list_count duration filename.m3u8 [پیشوند]
مثال استفاده:
m3u8_gen.exe 1 3 10 live.m3u8 hls /
فایل live.m3u8 را به صورت تولید کنید
کپی کردن کد
#EXTM3U
# دنباله EXT-X-MEDIA: 1
# EXT-X-TARGETDURATION: 10
#EXTINF: 10
hls / 1.ts
#EXTINF: 10
hls / 2.ts
#EXTINF: 10
hls / 3.ts
کپی کردن کد
برای به روزرسانی فایل live.m3u8 هر 10 ثانیه ، یک اسکریپت BAT بنویسید
کپی کردن کد
@ پژواک خاموش
f
|
ایمیل را وارد کنید تا غافلگیر شوید
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> آفریقایی
sq.fmuser.org -> آلبانیایی
ar.fmuser.org -> عربی
hy.fmuser.org -> ارمنی
az.fmuser.org -> آذربایجانی
eu.fmuser.org -> باسک
be.fmuser.org -> بلاروسی
bg.fmuser.org -> بلغاری
ca.fmuser.org -> کاتالان
zh-CN.fmuser.org -> چینی (ساده شده)
zh-TW.fmuser.org -> چینی (سنتی)
hr.fmuser.org -> کرواتی
cs.fmuser.org -> چکی
da.fmuser.org -> دانمارکی
nl.fmuser.org -> هلندی
et.fmuser.org -> استونیایی
tl.fmuser.org -> فیلیپینی
fi.fmuser.org -> فنلاندی
fr.fmuser.org -> فرانسوی
gl.fmuser.org -> گالیسیایی
ka.fmuser.org -> گرجی
de.fmuser.org -> آلمانی
el.fmuser.org -> یونانی
ht.fmuser.org -> کریول هائیتی
iw.fmuser.org -> عبری
hi.fmuser.org -> هندی
hu.fmuser.org -> مجارستانی
is.fmuser.org -> ایسلندی
id.fmuser.org -> اندونزیایی
ga.fmuser.org -> ایرلندی
it.fmuser.org -> ایتالیایی
ja.fmuser.org -> ژاپنی
ko.fmuser.org -> کره ای
lv.fmuser.org -> لتونیایی
lt.fmuser.org -> لیتوانیایی
mk.fmuser.org -> مقدونی
ms.fmuser.org -> مالایی
mt.fmuser.org -> مالتیایی
no.fmuser.org -> نروژی
fa.fmuser.org -> فارسی
pl.fmuser.org -> لهستانی
pt.fmuser.org -> پرتغالی
ro.fmuser.org -> رومانیایی
ru.fmuser.org -> روسی
sr.fmuser.org -> صربی
sk.fmuser.org -> اسلواکی
sl.fmuser.org -> اسلوونیایی
es.fmuser.org -> اسپانیایی
sw.fmuser.org -> سواحیلی
sv.fmuser.org -> سوئدی
th.fmuser.org -> تایلندی
tr.fmuser.org -> ترکی
uk.fmuser.org -> اوکراینی
ur.fmuser.org -> اردو
vi.fmuser.org -> ویتنامی
cy.fmuser.org -> ولزی
yi.fmuser.org -> ییدیش
FMUSER بی سیم ویدئو و صدا را راحت تر انتقال می دهد!
تماس با ما
نشانی:
شماره 305 اتاق HuiLan ساختمان شماره 273 Huanpu Road گوانگژو چین 510620
دسته بندی ها
عضویت در خبرنامه