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 -> Идиш
Открытый исходный код live555 - это SDK, используемый для реализации функции потоковой передачи мультимедиа. Используйте файл play Common.cpp в папке teSTProgs в SDK для разработки модуля передачи приставки IP TV, и вместе с модулем воспроизведения составляйте проигрыватель потокового мультимедиа процесса приставки IPTV. playCommon. cpp - это мост, соединяющий сервер и клиент. Его принцип работы заключается в том, что когда клиент запрашивает данные с сервера, он получает информацию описания SDP из URL-адреса сервера, создает мультимедийный сеанс на основе SDP и, наконец, воспроизводит поток данных.
представил процесс проектирования проигрывателя потокового мультимедиа приставки IPTV, используя функцию playCommON.cpp в открытом исходном коде live555, в сочетании с дизайном структуры программного обеспечения приставки IPTV, разработал модуль передачи приставки IPTV . Затем модуль передачи подключается к промежуточному программному обеспечению через очередь сообщений, и в то же время подключается к модулю воспроизведения через функцию входа модуля воспроизведения и, наконец, составляет проигрыватель потокового мультимедиа телеприставки IPTV. Плеер протестирован и работает стабильно.
1 дизайн плеера потокового мультимедиа приставки IPTV
1. Структура программного обеспечения 1 IPTV-приставки
Программный код приставки разделен на 4 части: драйвер оборудования, операционная система, промежуточное ПО, прикладной уровень.
1) Драйвер оборудования соединяет базовое оборудование и операционную систему верхнего уровня. 2) Операционная система Здесь используется бесплатный Linux с открытым исходным кодом. 3) Промежуточное ПО Уровень адаптации программного обеспечения, который изолирует верхний уровень приложения от базовой операционной системы и оборудования. Основные модули промежуточного программного обеспечения в основном включают в себя: (1) Браузер: получение URL-адреса с сервера и отображение соответствующей страницы EPG. (2) Управление графическим пользовательским интерфейсом: предоставление графических функций, таких как управление пользовательским интерфейсом (например, кнопки, списки) и рисование графических изображений для приложений. 4) Уровень приложения реализует воспроизведение аудио- и видеофайлов.
1.2 Структура системы проигрывателя потокового мультимедиа приставки IPTV
В открытом исходном коде Live555 playCommon.cpp реализует функцию использования компьютера в качестве приемного терминала, приема и воспроизведения с помощью программного обеспечения VLC и, наконец, отображения его на компьютере. Содержание исследования состоит в том, чтобы интегрировать playCommon.cpp в программный код приставки и, наконец, реализовать функцию использования приставки IPTV в качестве приемного терминала и воспроизведения ее и отображения на телевизоре. Это выдвигает новые требования к дизайну кода: с одной стороны, playCommon.cpp получает URL-адрес сервера, вводя rtsp: // локальный IP-адрес: номер порта / имя файла для воспроизведения в столбце RTSP VLC. . Приобретенный. Однако для приставки IPTV URL-адрес, полученный модулем передачи, является соответствующим URL-адресом, когда пользователь выбирает программу в EPG с помощью пульта дистанционного управления. Этот URL-адрес читается браузером в промежуточном программном обеспечении, поэтому необходимо подключить промежуточное программное обеспечение, и модуль передачи встанет. С другой стороны, поток данных, отправленный playCommon.cpp, принимается и воспроизводится через VLC. Для приставок IPTV поток данных, отправленный модулем передачи, принимается и воспроизводится через модуль воспроизведения. Следовательно, необходимо соединить модуль передачи и модуль воспроизведения.
Для соединения промежуточного программного обеспечения, модуля вывода и модуля воспроизведения создается очередь сообщений, обеспечивающая обмен данными между этими тремя модулями. Кроме того, pt hread create () также разработан в программе для создания потока rt spmain () для реализации параллелизма программы.
1.3 Анализ структуры программы
1.3.1 Модуль передачи.
1) основная функция (1) void initMsgQ () инициализирует очередь сообщений. dataQid представляет собой очередь сообщений данных, которая содержит некоторые данные, передаваемые по сети. Наконец, данные в очереди сообщений отправляются игроку через функцию void send data to player (). msgkeyQid представляет очередь сообщений значения ключа сообщения. Модуль передачи принимает команду значения ключа дистанционного управления, полученную от промежуточного программного обеспечения, и отправляет ее проигрывателю для выполнения операций быстрой перемотки вперед, быстрой перемотки назад, остановки и воспроизведения. fromeMiddleQid представляет очередь сообщений промежуточного программного обеспечения. Модуль передачи получает URL-адрес, отправленный от промежуточного программного обеспечения, в качестве адреса назначения, когда клиентский проигрыватель запрашивает данные с сервера. playerStateQid представляет очередь сообщений состояния воспроизведения. Модуль передачи используется для отправки и получения состояния плеера, а также для управления тем, является ли игрок по запросу, в реальном времени или со сдвигом во времени. (2) phread_create (& g_session_thread_info, & tattr, (void * (*) (void *)) rtsp_main, (void *) & urlInform); Создайте поток rtsp_main (). Убедитесь, что передача очереди сообщений и передача потокового мультимедиа выполняются одновременно.
2) функция rtsp_main. (1) recvMiddlewareMsg (fromeMiddleQid, url): значение URL-адреса, переданного из промежуточного программного обеспечения, присваивается переменной url. (Определение url завершено в промежуточном программном обеспечении, поэтому его необходимо получить из промежуточного программного обеспечения); (2) playCommon.cpp Функция: когда клиент отправляет запрос на сервер, сервер отвечает на запрос, создает сеанс мультимедиа и воспроизводит поток данных. (3) main_player_entry (gTrans. First Create): клиент получает поток и вызывает функцию входа игрока для инициализации плеера. (4) void send_data_to_player (): вызвать игрока, отправить данные, полученные из Интернета, игроку и начать играть.
|
Введите адрес электронной почты, чтобы получить сюрприз
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, здание Хуэйлань, дом 273 Хуанпу, Гуанчжоу, Китай, 510620
Категории
Новостные рассылки