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 -> Bulgarian
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 -> Hungarian
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 -> Slovenian
es.fmuser.org -> ესპანური
sw.fmuser.org -> სუაჰილი
sv.fmuser.org -> შვედური
th.fmuser.org -> Thai
tr.fmuser.org -> თურქული
uk.fmuser.org -> უკრაინული
ur.fmuser.org -> ურდუ
vi.fmuser.org -> ვიეტნამური
cy.fmuser.org -> უელსური
yi.fmuser.org -> Yiddish
ღია კოდის live555 არის SDK, რომელიც გამოიყენება ნაკადი მედიის გადაცემის ფუნქციის განსახორციელებლად. გამოიყენეთ სპექტაკლი Common.cpp SDK– ის teSTProgs საქაღალდეში, რომ შეიმუშავონ IP ტელევიზორის გადაცემის მოდულის გადამცემი მოდული და აღწარმოების მოდულთან ერთად წარმოადგენენ IPTV set-top box პროცესის სტრიმინგ მედია ფლეერს. თამაში საერთო. cpp არის ხიდი, რომელიც აკავშირებს სერვერსა და კლიენტს. მისი მუშაობის პრინციპია ის, რომ როდესაც კლიენტი ითხოვს მონაცემებს სერვერიდან, იგი იღებს SDP აღწერილ ინფორმაციას სერვერის URL– დან და ქმნის მულტიმედიურ სესიას SDP– ზე დაყრდნობით და ბოლოს თამაშობს მონაცემთა ნაკადს.
გააცნო IPTV set-top box ნაკადი მედიაპლეერის დიზაინის პროცესი liveC555 ღია კოდის playCommON.cpp ფუნქციის გამოყენებით, IPTV set-top box- ის პროგრამული სტრუქტურის დიზაინთან ერთად, შეიმუშავა IPTV set-top box გადაცემის მოდული . შემდეგ გადაცემის მოდული უკავშირდება შუა პროგრამას შეტყობინების რიგის საშუალებით და ამავდროულად უკავშირდება დაკვრის მოდულს დაკვრის მოდულის შესვლის ფუნქციის საშუალებით და ბოლოს წარმოადგენს IPTV set-top box- ის სტრიმინგ მედიაპლეერს. მოთამაშეს ტესტირება აქვს და აქვს სტაბილური შესრულება.
1 IPTV set-top box ნაკადი მედიაპლეერის დიზაინი
1. 1 IPTV set-top box პროგრამული უზრუნველყოფის სტრუქტურა
Set-top box- ის პროგრამული კოდი დაყოფილია 4 ნაწილად: აპარატურის დრაივერი, ოპერაციული სისტემა, შუალედური პროგრამა, გამოყენების ფენა.
1) აპარატურის დრაივერი აკავშირებს არსებულ ტექნიკასა და ზედა ოპერაციულ სისტემას. 2) ოპერაციული სისტემა აქ გამოიყენება უფასო ღია კოდის Linux. 3) Middleware პროგრამული უზრუნველყოფის ადაპტაციის შრე, რომელიც იზოლირებს აპლიკაციის ზედა ფენას ძირითადი ოპერაციული სისტემისა და აპარატურისგან. საშუალო პროგრამის ძირითადი მოდულები ძირითადად მოიცავს: (1) ბრაუზერი: მიიღეთ URL სერვერიდან და აჩვენეთ შესაბამისი EPG გვერდი. (2) გრაფიკული მომხმარებლის ინტერფეისის მენეჯმენტი: გთავაზობთ გრაფიკულ ფუნქციებს, როგორიცაა მომხმარებლის ინტერფეისის კონტროლი (როგორიცაა ღილაკები, სიები) და გრაფიკული გამოსახულების ნახაზი პროგრამებისთვის. 4) აპლიკაციის ფენა ხვდება აუდიო და ვიდეო მედია ფაილების დაკვრას.
1.2 IPTV set-top box სტრიმინგის მედია ფლეერის სისტემის სტრუქტურა
Live555 ღია კოდში, playCommon.cpp აცნობიერებს კომპიუტერის, როგორც მიმღები ტერმინალის, VLC პროგრამული უზრუნველყოფის მიღებისა და თამაშის ფუნქციის გამოყენებას და საბოლოოდ კომპიუტერზე ჩვენებას. კვლევის შინაარსია playCommon.cpp ინტეგრირება set-top box- ის პროგრამული კოდში და საბოლოოდ გააცნობიეროს IPTV set-top box- ის მიმღები ტერმინალის გამოყენების და მისი დაკვრისა და ტელევიზორის ჩვენების ფუნქცია. ეს აყენებს კოდის დიზაინის ახალ მოთხოვნებს: ერთის მხრივ, playCommon.cpp იღებს სერვერის URL- ს rtsp: // ადგილობრივი IP მისამართის შეყვანით: პორტის ნომერი / ფაილის სახელი, რომელიც უნდა შესრულდეს RTSP სვეტში VLC . შეძენილი. ამასთან, IPTV set-top ყუთისთვის, გადამცემი მოდულის მიერ მიღებული URL არის შესაბამისი URL, როდესაც მომხმარებელი აირჩევს პროგრამას EPG დისტანციური მართვის საშუალებით. ამ URL– ს კითხულობს ბრაუზერი შუა პროგრამაში, ამიტომ აუცილებელია შუა პროგრამისა და გადამცემი მოდულის დასაყენებლად დაკავშირება. მეორე მხრივ, playCommon.cpp– ის მიერ გაგზავნილი მონაცემთა ნაკადის მიღება და დაკვრა ხდება VLC– ს საშუალებით. IPTV set-top box- ებისთვის, გადამცემი მოდულის მიერ გაგზავნილი მონაცემთა ნაკადის მიღება და დაკვრა ხდება აღწარმოების მოდულის საშუალებით. ამიტომ აუცილებელია გადაცემის მოდულისა და დაკვრის მოდულის დაკავშირება.
შუა პროგრამის, გამომავალი მოდულისა და დაკვრის მოდულის დასაკავშირებლად, გაგზავნის რიგი შექმნილია ამ სამ მოდულს შორის მონაცემთა კომუნიკაციის განსახორციელებლად. გარდა ამისა, pt hread create () ასევე შექმნილია პროგრამაში, რათა შეიქმნას თემა rt spmain () პროგრამის თანხვედრის მისაღწევად.
1.3 პროგრამის სტრუქტურის ანალიზი
1.3.1 გადაცემის მოდული.
1) მთავარი ფუნქცია (1) ძალადაკარგული initMsgQ () იწყებს შეტყობინებას რიგში. dataQid წარმოადგენს მონაცემთა რიგის მონაცემებს, რომელიც შეიცავს ქსელში გადაცემულ გარკვეულ მონაცემებს. დაბოლოს, შეტყობინებების რიგში მოთავსებული მონაცემები მოთამაშეს ეგზავნება ბათილად გაგზავნის მონაცემები მოთამაშეს () ფუნქციის საშუალებით. msgkeyQid წარმოადგენს შეტყობინების გასაღების მნიშვნელობის შეტყობინების რიგს. გადაცემის მოდული იღებს შუა პროგრამიდან მიღებული დისტანციური მართვის გასაღების მნიშვნელობას და აგზავნის მას მოთამაშეს სწრაფი, სწრაფი გადახვევის, შეჩერების და დაკვრის ოპერაციების განსახორციელებლად. fromeMiddleQid წარმოადგენს საშუალო პროგრამის შეტყობინებების რიგს. გადაცემის მოდული იღებს შუა პროგრამიდან გაგზავნილ URL- ს, როგორც დანიშნულების ადგილს, როდესაც კლიენტის მოთამაშე ითხოვს მონაცემებს სერვერიდან. playerStateQid წარმოადგენს სათამაშო მდგომარეობის შეტყობინების რიგს. გადაცემის მოდული გამოიყენება მოთამაშის მდგომარეობის გასაგზავნად და მისაღებად და იმის კონტროლისთვის, არის თუ არა მოთამაშე მოთხოვნადი, პირდაპირ ეთერში თუ დროის ცვლა. (2) phread_create (& g_session_thread_info, & tattr, (ბათილი * (*) (ბათილია *)) rtsp_main, (ბათილია *) & urlInform); Rtsp_main () ძაფის შექმნა. დარწმუნდით, რომ შეტყობინების რიგის კომუნიკაცია და ნაკადი მედიის გადაცემა ერთდროულად მიმდინარეობს.
2) rtsp_ ძირითადი ფუნქცია. (1) recvMiddlewareMsg (fromeMiddleQid, url): შუა პროგრამიდან გადაცემული url- ის მნიშვნელობა ენიჭება ცვლად url- ს. (Url- ის განმარტება დასრულებულია შუა პროგრამაში, ამიტომ საჭიროა მისი მიღება შუა პროგრამიდან); (2) playCommon.cpp ფუნქცია: როდესაც კლიენტი გაგზავნის თხოვნას სერვერზე, სერვერი პასუხობს მოთხოვნას, ქმნის მედია სესიას და თამაშობს მონაცემთა ნაკადს. (3) main_player_entry (gTrans. პირველი შექმნა): კლიენტი იღებს ნაკადს და მოუწოდებს მოთამაშეს შესვლის ფუნქციას, რომ დაიწყოს პლეერი. (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 -> Bulgarian
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 -> Hungarian
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 -> Slovenian
es.fmuser.org -> ესპანური
sw.fmuser.org -> სუაჰილი
sv.fmuser.org -> შვედური
th.fmuser.org -> Thai
tr.fmuser.org -> თურქული
uk.fmuser.org -> უკრაინული
ur.fmuser.org -> ურდუ
vi.fmuser.org -> ვიეტნამური
cy.fmuser.org -> უელსური
yi.fmuser.org -> Yiddish
FMUSER უფრო მარტივად გადასცემს ვიდეოს და აუდიოს!
კონტაქტები
მისამართი:
No.305 ოთახი HuiLan კორპუსი No.273 Huanpu Road Guangzhou China 510620
კატეგორიები
საინფორმაციო ბიულეტენი