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
ახლახანს დავიწყე კონტაქტი ვიდეო ლაივ პროექტთან, მე ასევე შევაჯამე ვიდეო ლაივთან დაკავშირებული ცნებები, ტექნოლოგიები და გადაწყვეტილებები
პირველ რიგში, გაიგეთ ცოცხალი ვიდეოს კონცეფციის შესახებ. რამდენიმე გავრცელებული ვიდეო პროტოკოლია: RTMP, http-flv, HLS, RTP / RTCP.
შემდეგ ჩვენ ავუხსნით პირდაპირი მაუწყებლობის მთელ პროცესს და მასთან დაკავშირებულ ტექნოლოგიებს.
1 、 ვიდეო ვიდეო პროტოკოლი
პირდაპირი მაუწყებლობის სფეროში არსებობს ორი სახის პირდაპირი მაუწყებლობა: ინტერაქტიული პირდაპირი მაუწყებლობა და არაინტერაქტიული პირდაპირი მაუწყებლობა.
არაინტერაქტიული პირდაპირი მაუწყებლობა (როგორიცაა: ცოცხალი აღლუმი, NBA პირდაპირი მაუწყებლობა, ჩემპიონთა ლიგის პირდაპირი მაუწყებლობა და ა.შ.) არ არის ინტერაქტიული, რაც საშუალებას იძლევა 10 წამის ან მეტის დაგვიანებით. იგი ხასიათდება შედარებით მცირე რაოდენობით წყაროებით და შესაფერისია მრავალარხიანი ტრანსკოდირებისთვის (მომხმარებლებს მისი ყურება ქსელის პირობების შესაბამისად შეუძლიათ).
ინტერაქტიული პირდაპირი მაუწყებლობის ტიპიური სცენებია: შოუს პირდაპირი მაუწყებლობა, თამაშის პირდაპირი მაუწყებლობა და ა.შ. ინტერაქტიული პირდაპირი მაუწყებლობის მახასიათებლებია: მეტი წყარო, არ არის შესაფერისი მრავალარხიანი ტრანსკოდირებისთვის, შუალედური სერვერი მხოლოდ სატრანზიტო როლისთვის.
ცოცხალი შინაარსის გადაცემის მედია არის ქსელი და საჭიროა შესაბამისი ოქმები ქსელში ვიდეო ან აუდიოს გადასაცემად. ამჟამად ცოცხალი სცენებისთვის შესაფერისი საერთო პროტოკოლები შემდეგია.
1. RTMP პროტოკოლი (არ არის მხარდაჭერილი HTML 5-ით, მხარდაჭერილი flash- ით)
RTMP არის ნაკადი მედია პროტოკოლი, რომელიც არის Adobe- ის პატენტის პროტოკოლი. TCP– ის საფუძველზე, ის ძალიან პოპულარულია ჩინეთში.
პოპულარული მიზეზი: ღია პროგრამული უზრუნველყოფისა და ღია წყაროების ბიბლიოთეკის მხარდაჭერა სტაბილური და სრულია და ყველაზე ხშირად გამოყენებული ნაკადი და სტრიმინგის გადაწყვეტილებები ძირითადად სტაბილურად მუშაობს. მაგალითად: ღია წყაროს librtmp ბიძგების ნაკადის ბიბლიოთეკა, მომსახურების მხარეს აქვს nginx RTMP დანამატი, pull სტრიმს აქვს ijkplayer სათამაშო ბიბლიოთეკა.
2. Http-flv პროტოკოლი (არ არის მხარდაჭერილი HTML 5-ით, მხარდაჭერილი flash- ით)
ეს არის HTTP პროტოკოლის გამოყენება მედია შინაარსის სტრიმინგისთვის. HTTP უფრო მარტივი და ცნობილია, ვიდრე RTMP. შინაარსის შეფერხება შეიძლება იყოს 2-5 წამი, ხოლო გახსნის სიჩქარე უფრო სწრაფია, რადგან თვით HTTP არ აქვს რთული ურთიერთქმედება. შეყოვნების თვალსაზრისით, http-flv უკეთესია ვიდრე RTMP.
3. HLS პროტოკოლი (HTML მხარდაჭერა, Flash მხარდაჭერა)
HTTP პირდაპირი სტრიმინგი არის ნაკადი მედიის ტრანსპორტის პროტოკოლი, რომელიც ეფუძნება Apple– ს მიერ შემოთავაზებულ HTTP– ს. HLS– ს აქვს ძალიან დიდი უპირატესობა: HTML5 შეგიძლიათ გახსნათ და ითამაშოთ; ეს ნიშნავს, რომ პირდაპირი ბმულის გაზიარება შესაძლებელია wechat და სხვა გადამისამართების საშუალებით, ნებისმიერი დამოუკიდებელი აპის ინსტალაციის გარეშე, ბრაუზერის საშუალებით, ამიტომ ის ძალიან პოპულარულია. სოციალური ცოცხალი აპი, HLS უბრალოდ საჭიროა. HLS– ზე დაფუძნებული პირდაპირი ნაკადის URL არის m3u8 ფაილი, რომელიც შეიცავს რამდენიმე ბოლოდროინდელ მცირე ვიდეოს TS ფაილს. ამ დაკვრის რეჟიმის შეფერხება შედარებით მაღალია (რაც დაკავშირებულია TS ფაილის ზომასთან) და მას შეუძლია მიაღწიოს 5-7 წამით დაგვიანებას იმავე ქალაქის ქსელში.
4. RTP / RTCP პროტოკოლი
ტრანსპორტირების პროტოკოლი რეალურ დროში არის ინტერნეტში მულტიმედიური მონაცემების ნაკადის სატრანსპორტო ფენის პროტოკოლი. RTCP გადასცემს ინტერაქტიული მართვის სიგნალს, ხოლო RTP გადასცემს მედია რეალურ მონაცემებს.
RTP ფართოდ გამოიყენება ვიდეო მეთვალყურეობის, ვიდეო კონფერენციისა და IP ტელეფონის დროს, რადგან ვიდეო კონფერენციის და IP ტელეფონის ერთ-ერთი მნიშვნელოვანი გამოცდილება არის ძლიერი რეალურ დროში არსებული შინაარსი.
ზემოთ აღნიშნულ სამ ოქმთან შედარებით, ერთი მნიშვნელოვანი განსხვავება RTP– ს შორის არის ის, რომ UDP პროტოკოლი გამოიყენება მონაცემების სტანდარტულად გადასაცემად, ხოლო RTMP და HTTP ემყარება TCP პროტოკოლს.
გამოიყენეთ სცენარის ანალიზი: რეალურ დროში აუდიო და ვიდეო ნაკადის სცენა არ საჭიროებს საიმედო გარანტიას, ამიტომ არ არის საჭირო რეტრანსლაციის მექანიზმის არსებობა. არ არის მნიშვნელოვანი სურათის და ხმის დანახვა რეალურ დროში, გარკვეული შინაარსის დაკარგვა ქსელის გაღიზიანებისას, სურათის დაბინდვა და ეკრანის გაფრქვევა. განმეორებით გადაცემის მიზნით, TCP გამოიწვევს შეფერხებას და ასინქრონიას. თუ შინაარსის გარკვეული მონაკვეთი ერთი წამის შემდეგ მოვა განმეორებით გადაცემის გამო, მთელი საუბარი ერთი წამით გადაიდო. ქსელის ჩართვით დაყოვნება გაიზრდება ორ წამამდე ან სამ წამამდე. თუ კლიენტი არ გაუმკლავდება დაკვრას, პირდაპირი მაუწყებლობის გამოცდილება სერიოზულად აისახება. როგორ ოპტიმიზაცია, აიხსნება შემდეგ სტატიაში.
დასკვნა: პირდაპირი მაუწყებლობის პროტოკოლის არჩევისას, თუ RTMP ან http-flv შეირჩევა, ეს ნიშნავს, რომ შინაარსის შეფერხება ხდება 2-5 წამში, მაგრამ რაც შეეხება ღია დაგვიანებას, http-flv უკეთესია ვიდრე RTMP . HLS– ს შინაარსის შეფერხება 5-7 წამია. პირდაპირი ტრანსლაციისთვის RTP არჩევას შეუძლია 1 წამში გადადოს პირდაპირი ტრანსლაცია. ამასთან, რამდენადაც ჩვენთვის ცნობილია, CDN– ის მსხვილი მწარმოებლები მხარს არ უჭერენ RTP– ზე დაფუძნებულ პირდაპირ ეთერს, ამიტომ ამჟამინდელი შიდა ზომიერი მხარეა RTMP ან http-flv.
2 、 ვიდეო პირდაპირი ტრანსლაციის პროცესი
ცოცხალ ვიდეოსთან დაკავშირებული ტექნიკური პროცესია: ვიდეო ნაკადის რეალურ დროში შეძენა --- ვიდეო ნაკადის კოდირება --- ვიდეო ნაკადის გადაცემა --- ვიდეოს ნაკადის დეკოდირება --- ვიდეოს დაკვრა.
1. ვიდეოს გადაღების იდეა
ა) ანდროიდის კამერის გადაღების გადახედვისას setpreviewcallback- ის დაყენებით, ხორციელდება onpreviewframe ინტერფეისი თითოეული ვიდეოს ნაკადის მონაცემების რეალურ დროში გადასაღებად.
ბ) Android mediarecorder- ის საშუალებით, დააკავშირეთ localsocket setoutputfile ფუნქციაში.
გ) მედია სერვერის სტრიმინგის რეჟიმი, ffmpeg ან getstreamer გამოყენებით კამერის ვიდეოს მისაღებად.
2. ვიდეო კომპრესიული კოდირების რეალიზაცია
ა) დაშიფვრის გარეშე, ორიგინალი yuv420sp ვიდეო ჩარჩო გადაეცემა უშუალოდ სოკეტის საშუალებით.
ბ) JEPG შეკუმშავს ორიგინალ yuv420sp ვიდეო ჩარჩოს H.264 ფორმატში და შემდეგ გადასცემს მას.
გ) H.264 / avc. ორიგინალი yuv420sp ვიდეო ჩარჩო შეკუმშულია H.264 ფორმატში და შემდეგ გადაიცემა. H264– ზე დაფუძნებული ჩვეულებრივი ღია კოდექსერები მოიცავს JM, x264, t264, hdot264 და ა.შ.
დ) mpeg4. Yuv420sp ორიგინალი ვიდეო ჩარჩოს შეკუმშვა MPEG4 ფორმატში და შემდეგ გადაეცით
3. ვიდეო გადაცემის იდეა
ა) სოკეტის გადაცემა
ბ) HTTP ტრანსპორტი
გ) RTP / RTSP გადაცემა
დ) ნაკადი მედია სერვერის რეჟიმი, როგორიცაა live555 და ა.შ.
4. ვიდეო დეკოდირების რეალიზაცია
ა) დეკოდირების კოდირება
5. ვიდეოს დაკვრის იდეა
ა) Android videoview– ის საშუალებით
ბ) ანდროიდის მედიაპლეის საშუალებით
გ) ჩასვით ჩარჩოს სურათი პირდაპირ ტილოზე
|
შეიყვანეთ ელ.წერილი სიურპრიზის მისაღებად
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
კატეგორიები
საინფორმაციო ბიულეტენი