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 -> Ідиш
1, Розробка мобільного відео в прямому ефірі
Можна бачити, що від ПК до мобільного все більше і більше програм прямого ефіру є в Інтернеті, і мобільне мовлення перейшло на безпрецедентну стадію вибуху. Однак для більшості мобільних прямих трансляцій він все ще в основному реалізується власними клієнтами, але HTML5 також відіграє незамінну роль в кінці мобільного прямого ефіру, наприклад, HTML5. відео, коли це найважливіше.
Повний прямий ефір можна розділити на наступне:
(1) Термінал для відеозйомки: Взагалі кажучи, це комп’ютерний аудіо- та відеовхідний пристрій або камера чи мікрофон на мобільному терміналі. В даний час відео з мобільних телефонів є основною частиною.
(2) Відеоплеєр: це може бути програвач на комп’ютері, власний програвач на стороні мобільного телефону та відеозапис HTML5. В даний час це все ще основний програвач на мобільному телефоні.
(3) Відеосервер: як правило, це сервер nginx, який використовується для прийому джерела відео, що надається стороною відеозапису, та надання послуги потокового передавання до кінця відтворення відео.
2, відеозапис у форматі HTML5:
Для запису відео HTML5 потужний webrtc (веб-зв’язок у реальному часі) - це технологія, яка підтримує голосові або відеорозмови в режимі реального часу у веб-браузері. Недоліком є те, що він краще підтримує лише хромований ПК, а мобільна сторона не є ідеальною.
Основний процес запису відео за допомогою webrtc:
Зателефонуйте window.navigator.webkitGetUserMedia (отримайте відеодані з камери ПК користувача).
Перетворити отримані дані у відеопотік у window.webkitRTCPeerConnection (формат даних відеопотоку).
Використання websocket для передачі даних відеопотоку на сервер
Оскільки для багатьох методів потрібно мати префікс браузера, багато мобільних браузерів не підтримують webrtc, тому реальний запис відео як і раніше реалізується клієнтом (IOS, Android), і ефект буде кращим.
3, відео в прямому ефірі в форматі HTML5:
Для відтворення відео ви можете використовувати протокол HLS (HTTP live streaming) для відтворення потокової трансляції. IOS і Android підтримують цей протокол природно. Налаштувати та використовувати теги відео просто.
Ось простий код для відтворення відео в прямому ефірі за допомогою відео:
(1) що таке протокол HLS:
Коротше кажучи, весь потік розділений на невеликі файли, які завантажуються на основі HTTP. Одночасно завантажуються лише деякі. Попередній згаданий файл .M3u8, представлений у прямому ефірі відео HTML5, базується на протоколі HLS, який зберігає метадані відеопотоку.
Кожен файл M3u8 відповідає декільком файлам TS, які є даними для реального сховища відео. Файл m3u8 зберігає лише інформацію про конфігурацію та пов'язані шляхи деяких файлів TS. Під час відтворення відео файл .M3u8 динамічно змінюється. Мітка відео проаналізує файл і знайде відповідний файл TS для відтворення. Отже, щоб пришвидшити швидкість, файл .M3u8 буде використаний для аналізу файлу та пошуку відповідного файлу TS для відтворення. Тому, щоб пришвидшити швидкість, файл .M3u8 буде використовуватися для аналізу файлу та пошуку відповідного файлу TS для відтворення. Тому для прискорення розмістіть його на веб-сервері, а файл TS на CDN.
Файл .M3u8 насправді є файлом M3U, кодованим UTF-8. Цей файл не можна відтворити самостійно, а лише текстовий файл, що містить інформацію про відтворення.
(2) Процес запиту HLS:
URL-адреса HTTP-запиту m3u8.
Сервер повертає список відтворення m3u8, який оновлюється в режимі реального часу. Як правило, URL-адреса 5 сегментів даних надається одночасно.
Клієнт аналізує список відтворення m3u8, а потім запитує URL-адресу кожного сегмента, щоб отримати потік даних TS.
(3) Затримка прямого ефіру HLS:
Ми знаємо, що протокол HLS ділить прямий ефір на невеликий сегмент відео для завантаження та відтворення. Отже, припустимо, що список містить 5 файлів TS, кожен файл TS містить 5 секунд відеовмісту, тоді загальна затримка становить 25 секунд. Оскільки, коли ви бачите ці відео, хост записав відео та завантажив його, тож затримка спричинена цим. Звичайно, довжину списку та розмір одного файлу TS можна скоротити, щоб зменшити затримку. В крайньому випадку, довжину списку можна зменшити до 1, а тривалість TS становить 1s. Однак це збільшить кількість запитів і збільшить тиск на сервері. Коли швидкість мережі повільна, буде створено більше буфера. Тому рекомендований Apple час ТС офіційно триває 10 секунд, тому це сильно змінить затримку в 30 секунд. Отже, сервер отримує потік, перекодуючи, зберігає, вирізає блок, а потім розподіляє його клієнту. Ось основна причина затримки.
Щоб отримати додаткові запитання щодо затримок, зверніться до офіційної адреси Apple:
https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/StreamingMediaGuide/FrequentlyAskedQuestions/FrequentlyAskedQuestions.html
Однак відео в прямому ефірі HTML5 має деякі незамінні переваги:
① Хороший зв’язок, легкий обмін та інші операції.
Він може випускатися динамічно, що сприяє ітерації вимог до продукту в режимі реального часу та швидкому запуску.
③ Не встановлюючи програму, відкрийте браузер безпосередньо.
4 collection Збір (запис) IOS аудіо та відео даних ОС
Для придбання та запису аудіо та відео, по-перше, роз'яснюються наступні поняття:
(1) Кодування відео: кодування відео стосується способу перетворення файлу у відеоформаті в інший файл відеоформату за допомогою певної технології стиснення. Відео, записане на iPhone, яке ми використовуємо, має бути закодовано, завантажено та декодовано, перш ніж воно зможе відтворюватися в програвачі на стороні користувача.
(2 standard Стандарт кодеків: найважливіші стандарти кодеків при передачі відеопотоку включають H.261, H.263 та H.264 ITU, в яких протокол HLS підтримує кодування формату H.264.
(3) Кодування аудіо: подібно до кодування відео, оригінальний аудіопотік кодується, завантажується, декодується відповідно до певних стандартів і відтворюється в програвачі. Звичайно, аудіо також має багато стандартів кодування, таких як код PCM, код wma, код AAC тощо. Методом кодування звуку, що підтримується нашим протоколом HLS, є код AAC.
Збір відео- та аудіоданих в основному поділяється на такі етапи:
(1 acquisition отримання відео- та аудіоданих за допомогою камери на IOS
(2) У IOS оригінальний аудіо- та відеопотік даних може бути зібраний за допомогою avcapturesession та avcapturedevice.
(3) Відео кодується h264, а аудіо кодується AAC. В IOS вже є упаковані бібліотеки кодування для реалізації кодування аудіо та відео.
(4) Аудіо- та відеодані після кодування збираються та герметизуються;
(5) Встановіть підключення RTMP і піднесіть його до сервера.
Нижче наведено конкретний процес збору аудіо- та відеоданих:
(1) про RTMP:
Протокол обміну повідомленнями в реальному часі (RTMP) - це набір протоколів прямого відео, розроблений Macromedia, і зараз належить Adobe. Як і у випадку з HLS, його можна використовувати для відеотрансляції. Різниця полягає в тому, що RTMP не може грати в браузері IOS на основі флеш-пам'яті, але це краще в реальному часі, ніж HLS. Отже, цей протокол зазвичай використовується для завантаження відеопотоку, тобто відеопотік передається на сервер.
(2) поштовховий потік
Так зване потокове передавання відноситься до надсилання закодованих нами аудіо- та відеоданих на сервер відеопотоку. У коді IOS широко використовується потокове передавання RTMP. Librtmp IOS, стороння бібліотека, може використовуватися для потокового передавання. Librtmp інкапсулює деякі основні API для виклику користувачів. Наприклад, натисніть API і так далі, налаштуйте адресу сервера, а потім перенесіть потік перекодування відео на сервер.
Отже, як побудувати потоковий сервер?
Вбудований простий сервер потокового передавання. Оскільки відеопотік, який ми завантажуємо, базується на протоколі RTMP, сервер повинен підтримувати RTMP. Це може зробити наступні кроки:
(1) Встановіть сервер nginx.
(2 is Встановлено розширення RTMP nginx. Налаштуйте файл конфігурації для nginx
(3) Перезапустіть nginx і запишіть потокову адресу RTMP як rtmp: // ip: 1935 / hls / mystream, де HLS_ Path - це адреса генерованих файлів M3u8 та TS, HLS_ Fragment - довжина зрізу та mystream представляє екземпляр. Ім'я файлу, який потрібно створити, можна встановити самостійно.
5, Взаємодія з користувачами в прямому ефірі:
Для взаємодії користувача в прямому ефірі його можна приблизно розділити на:
дарування подарунків.
Коментувати або грати
Для доставки подарунків можна використовувати DOM та CSS3 для реалізації логіки відправлення подарунків та спеціальної анімації подарунків на HTML5. Технічні труднощі не дуже великі.
Щоб шквал був трохи складнішим, можливо, вам доведеться звернути увагу на наступне:
Ефективність снаряда в режимі реального часу може бути надіслана та отримана в режимі реального часу за допомогою веб-сканера та відтворена.
Для браузерів, які не підтримують веб-розетку, вони можуть бути знижені лише до тривалого опитування або таймера, що надсилає запити на отримання спливаючих вікон у режимі реального часу.
Анімація та виявлення зіткнень (тобто відсутність перекриття) тощо у візуалізації
|
Введіть електронну адресу, щоб отримати сюрприз
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 бездротовий передавати відео та аудіо простіше!
Контакти
Адреса:
No.305 Кімната HuiLan Будівля No273 Huanpu Road Гуанчжоу Китай 510620
Категорії
Інформаційний бюлетень