FMUSER Kablosuz Video ve Sesi Daha Kolay İletin!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> Arnavutça
ar.fmuser.org -> Arapça
hy.fmuser.org -> Ermeni
az.fmuser.org -> Azerice
eu.fmuser.org -> Bask Dili
be.fmuser.org -> Beyaz Rusça
bg.fmuser.org -> Bulgar
ca.fmuser.org -> Katalanca
zh-CN.fmuser.org -> Çince (Basitleştirilmiş)
zh-TW.fmuser.org -> Çince (Geleneksel)
hr.fmuser.org -> Hırvatça
cs.fmuser.org -> Çekçe
da.fmuser.org -> Danca
nl.fmuser.org -> Hollandalı
et.fmuser.org -> Estonca
tl.fmuser.org -> Filipinli
fi.fmuser.org -> Fince
fr.fmuser.org -> Fransızca
gl.fmuser.org -> Galiçyaca
ka.fmuser.org -> Gürcüce
de.fmuser.org -> Almanca
el.fmuser.org -> Yunanca
ht.fmuser.org -> Haiti Kreyolu
iw.fmuser.org -> İbranice
hi.fmuser.org -> Hintçe
hu.fmuser.org -> Macar
is.fmuser.org -> İzlandaca
id.fmuser.org -> Endonezya
ga.fmuser.org -> İrlandalı
it.fmuser.org -> İtalyan
ja.fmuser.org -> Japonca
ko.fmuser.org -> Korece
lv.fmuser.org -> Letonca
lt.fmuser.org -> Litvanya
mk.fmuser.org -> Makedonca
ms.fmuser.org -> Malayca
mt.fmuser.org -> Malta
no.fmuser.org -> Norveç
fa.fmuser.org -> Farsça
pl.fmuser.org -> Lehçe
pt.fmuser.org -> Portekizce
ro.fmuser.org -> Romen
ru.fmuser.org -> Rusça
sr.fmuser.org -> Sırpça
sk.fmuser.org -> Slovakça
sl.fmuser.org -> Slovence
es.fmuser.org -> İspanyolca
sw.fmuser.org -> Svahili
sv.fmuser.org -> İsveççe
th.fmuser.org -> Tay
tr.fmuser.org -> Türkçe
uk.fmuser.org -> Ukraynaca
ur.fmuser.org -> Urduca
vi.fmuser.org -> Vietnamca
cy.fmuser.org -> Galce
yi.fmuser.org -> Yidiş
Açık kaynak kodu live555, akışlı ortam aktarım işlevini uygulamak için kullanılan SDK'dır. IP TV set üstü kutusunun aktarım modülünü tasarlamak için SDK'daki teSTProgs klasöründeki Common.cpp play özelliğini kullanın ve oynatma modülü ile birlikte IPTV set üstü kutusu işleminin akış medya oynatıcısını oluşturun. playCommon. cpp, sunucu ile istemciyi birbirine bağlayan bir köprüdür. Çalışma prensibi, istemci sunucudan veri talep ettiğinde, SDP açıklama bilgilerini sunucu URL'sinden alır ve SDP'ye dayalı bir multimedya oturumu oluşturur ve son olarak veri akışını oynatır.
IPTV set üstü kutusunun yazılım yapısı tasarımı ile birlikte, live555 açık kaynak kodunda playCommON.cpp işlevini kullanarak IPTV set üstü kutu akışlı medya oynatıcısının tasarım sürecini tanıttı, IPTV set üstü kutusunun iletim modülünü geliştirdi . Daha sonra iletim modülü, ara yazılım ile mesaj kuyruğu üzerinden bağlanır ve aynı zamanda oynatma modülünün giriş fonksiyonu aracılığıyla oynatma modülüne bağlanır ve son olarak IPTV set üstü kutusunun akış ortam oynatıcısını oluşturur. Oynatıcı test edildi ve istikrarlı bir performansa sahip.
1 IPTV set üstü kutu akışlı medya oynatıcı tasarımı
1. 1 IPTV set üstü kutu yazılım yapısı
Set üstü kutunun yazılım kodu 4 bölüme ayrılmıştır: donanım sürücüsü, işletim sistemi, ara katman yazılımı, uygulama katmanı.
1) Donanım sürücüsü, temeldeki donanımı ve üst işletim sistemini birbirine bağlar. 2) İşletim sistemi Burada ücretsiz açık kaynak kodu Linux kullanılmaktadır. 3) Ara Yazılım Üst uygulama katmanını temeldeki işletim sistemi ve donanımdan izole eden yazılım uyarlama katmanı. Ara yazılımın temel modülleri esas olarak şunları içerir: (1) Tarayıcı: Sunucudan URL'yi alın ve ilgili EPG sayfasını görüntüleyin. (2) Grafik kullanıcı arabirimi yönetimi: uygulamalar için kullanıcı arabirimi kontrolü (düğmeler, listeler gibi) ve grafik görüntü çizimi gibi grafik işlevleri sağlar. 4) Uygulama katmanı, ses ve video medya dosyalarının oynatılmasını gerçekleştirir.
1.2 IPTV set üstü kutu akışlı medya oynatıcı sistem yapısı
Live555 açık kaynak kodunda playCommon.cpp, bir bilgisayarı alıcı terminal olarak kullanma, VLC yazılımı alıp oynatma ve sonunda bilgisayarda görüntüleme işlevini gerçekleştirir. Araştırmanın içeriği playCommon.cpp'yi set üstü kutunun yazılım koduna entegre etmek ve nihayet IPTV set üstü kutusunu alıcı terminal olarak kullanma ve oynatma ve TV'de görüntüleme işlevini gerçekleştirmektir. Bu, kodun tasarımı için yeni gereksinimleri ortaya koyar: Bir yandan, playCommon.cpp, sunucunun URL'sini, rtsp: // yerel IP adresi: VLC'nin RTSP sütununda oynatılacak bağlantı noktası numarası / dosya adını girerek alır. . Edinilen. Bununla birlikte, IPTV set üstü kutusu için, aktarım modülü tarafından elde edilen URL, kullanıcı EPG'deki programı uzaktan kumanda ile seçtiğinde karşılık gelen URL'dir. Bu URL, ara yazılımdaki tarayıcı tarafından okunur, bu nedenle ara yazılımı bağlamak ve aktarım modülünü ayağa kaldırmak gerekir. Öte yandan, playCommon.cpp tarafından gönderilen veri akışı VLC aracılığıyla alınır ve oynatılır. IPTV set üstü kutuları için, aktarım modülü tarafından gönderilen veri akışı, oynatma modülü aracılığıyla alınır ve oynatılır. Bu nedenle, iletim modülünü ve oynatma modülünü bağlamak gerekir.
Ara yazılım, çıkış modülü ve oynatma modülünü bağlamak için, bu üç modül arasındaki veri iletişimini gerçekleştirmek için bir mesaj kuyruğu tasarlanır. Ayrıca pt hread create (), programın eşzamanlılığını gerçekleştirmek için rt spmain () iş parçacığı oluşturmak için programda tasarlanmıştır.
1.3 Program yapısı analizi
1.3.1 İletim modülü.
1) ana işlev (1) void initMsgQ () ileti kuyruğunu başlatır. dataQid, ağda aktarılan bazı verileri içeren verilerin mesaj kuyruğunu temsil eder. Son olarak, mesaj kuyruğundaki veriler oynatıcıya void veri gönderme işlevi () işlevi aracılığıyla gönderilir. msgkeyQid, ileti anahtarı değerinin ileti kuyruğunu temsil eder. İletim modülü, ara yazılımdan elde edilen uzaktan kumanda anahtarı değer komutunu alır ve hızlı ileri, hızlı geri sarma, durdurma ve oynatma işlemlerini gerçekleştirmek için oynatıcıya gönderir. fromeMiddleQid, ara yazılımın ileti kuyruğunu temsil eder. İletim modülü, istemci oynatıcı sunucudan veri istediğinde hedef adres olarak ara yazılımdan gönderilen URL'yi alır. playerStateQid, oynatma durumunun mesaj kuyruğunu temsil eder. Aktarım modülü, oyuncunun durumunu gönderip almak ve oyuncunun istek üzerine mi, canlı mı yoksa zaman vardiyası mı olduğunu kontrol etmek için kullanılır. (2) phread_create (& g_session_thread_info, & tattr, (void * (*) (void *)) rtsp_main, (void *) & urlInform); Rtsp_main () iş parçacığı oluşturun. Mesaj kuyruğu iletişiminin ve akışlı ortam iletiminin aynı anda çalıştığından emin olun.
2) rtsp_main işlevi. (1) recvMiddlewareMsg (fromeMiddleQid, url): Ara yazılımdan iletilen url'nin değeri değişken url'ye atanır. (Url tanımı ara yazılımda tamamlanmıştır, bu nedenle ara yazılımdan alınması gerekir); (2) playCommon.cpp İşlevi: İstemci, sunucuya bir istek gönderdiğinde, sunucu isteğe yanıt verir, bir medya oturumu oluşturur ve veri akışını oynatır. (3) main_player_entry (gTrans. First Create): İstemci akışı alır ve oynatıcıyı başlatmak için oyuncunun giriş işlevini çağırır. (4) void send_data_to_player (): oynatıcıyı arayın, İnternet'ten alınan verileri oynatıcıya gönderin ve oynamaya başlayın.
|
Sürpriz almak için e-posta girin
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> Arnavutça
ar.fmuser.org -> Arapça
hy.fmuser.org -> Ermeni
az.fmuser.org -> Azerice
eu.fmuser.org -> Bask Dili
be.fmuser.org -> Beyaz Rusça
bg.fmuser.org -> Bulgar
ca.fmuser.org -> Katalanca
zh-CN.fmuser.org -> Çince (Basitleştirilmiş)
zh-TW.fmuser.org -> Çince (Geleneksel)
hr.fmuser.org -> Hırvatça
cs.fmuser.org -> Çekçe
da.fmuser.org -> Danca
nl.fmuser.org -> Hollandalı
et.fmuser.org -> Estonca
tl.fmuser.org -> Filipinli
fi.fmuser.org -> Fince
fr.fmuser.org -> Fransızca
gl.fmuser.org -> Galiçyaca
ka.fmuser.org -> Gürcüce
de.fmuser.org -> Almanca
el.fmuser.org -> Yunanca
ht.fmuser.org -> Haiti Kreyolu
iw.fmuser.org -> İbranice
hi.fmuser.org -> Hintçe
hu.fmuser.org -> Macar
is.fmuser.org -> İzlandaca
id.fmuser.org -> Endonezya
ga.fmuser.org -> İrlandalı
it.fmuser.org -> İtalyan
ja.fmuser.org -> Japonca
ko.fmuser.org -> Korece
lv.fmuser.org -> Letonca
lt.fmuser.org -> Litvanya
mk.fmuser.org -> Makedonca
ms.fmuser.org -> Malayca
mt.fmuser.org -> Malta
no.fmuser.org -> Norveç
fa.fmuser.org -> Farsça
pl.fmuser.org -> Lehçe
pt.fmuser.org -> Portekizce
ro.fmuser.org -> Romen
ru.fmuser.org -> Rusça
sr.fmuser.org -> Sırpça
sk.fmuser.org -> Slovakça
sl.fmuser.org -> Slovence
es.fmuser.org -> İspanyolca
sw.fmuser.org -> Svahili
sv.fmuser.org -> İsveççe
th.fmuser.org -> Tay
tr.fmuser.org -> Türkçe
uk.fmuser.org -> Ukraynaca
ur.fmuser.org -> Urduca
vi.fmuser.org -> Vietnamca
cy.fmuser.org -> Galce
yi.fmuser.org -> Yidiş
FMUSER Kablosuz Video ve Sesi Daha Kolay İletin!
İletişim
Adres:
No.305 Oda HuiLan Binası No. 273 Huanpu Yolu Guangzhou Çin 510620
Kategoriler
Kaydolun