FMUSER Wirless edastab videot ja heli lihtsamalt!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikaans
sq.fmuser.org -> albaania keel
ar.fmuser.org -> araabia
hy.fmuser.org -> Armeenia
az.fmuser.org -> aserbaidžaanlane
eu.fmuser.org -> baski keel
be.fmuser.org -> valgevenelane
bg.fmuser.org -> Bulgaaria
ca.fmuser.org -> katalaani keel
zh-CN.fmuser.org -> hiina (lihtsustatud)
zh-TW.fmuser.org -> Hiina (traditsiooniline)
hr.fmuser.org -> horvaadi keel
cs.fmuser.org -> tšehhi
da.fmuser.org -> taani keel
nl.fmuser.org -> Hollandi
et.fmuser.org -> eesti keel
tl.fmuser.org -> filipiinlane
fi.fmuser.org -> soome keel
fr.fmuser.org -> Prantsusmaa
gl.fmuser.org -> galicia keel
ka.fmuser.org -> gruusia keel
de.fmuser.org -> saksa keel
el.fmuser.org -> Kreeka
ht.fmuser.org -> Haiti kreool
iw.fmuser.org -> heebrea
hi.fmuser.org -> hindi
hu.fmuser.org -> Ungari
is.fmuser.org -> islandi keel
id.fmuser.org -> indoneesia keel
ga.fmuser.org -> iiri keel
it.fmuser.org -> Itaalia
ja.fmuser.org -> jaapani keel
ko.fmuser.org -> korea
lv.fmuser.org -> läti keel
lt.fmuser.org -> Leedu
mk.fmuser.org -> makedoonia
ms.fmuser.org -> malai
mt.fmuser.org -> malta keel
no.fmuser.org -> Norra
fa.fmuser.org -> pärsia keel
pl.fmuser.org -> poola keel
pt.fmuser.org -> portugali keel
ro.fmuser.org -> Rumeenia
ru.fmuser.org -> vene keel
sr.fmuser.org -> serbia
sk.fmuser.org -> slovaki keel
sl.fmuser.org -> Sloveenia
es.fmuser.org -> hispaania keel
sw.fmuser.org -> suahiili keel
sv.fmuser.org -> rootsi keel
th.fmuser.org -> Tai
tr.fmuser.org -> türgi keel
uk.fmuser.org -> ukrainlane
ur.fmuser.org -> urdu
vi.fmuser.org -> Vietnam
cy.fmuser.org -> kõmri keel
yi.fmuser.org -> Jidiši
Kui kasutame sõpradega hääl- ja videovestluste sujuvaks läbiviimiseks selliseid tööriistu nagu Skype ja QQ, kas oleme kunagi mõelnud, millised võimsad tehnoloogiad selle taga on? Selles artiklis antakse lühike tutvustus võrguhäälkõnedes kasutatavatele tehnoloogiatele, mida võib pidada leopardi pilguheiteks.
1. Kontseptuaalne mudel
Interneti-kõned on tavaliselt kahesuunalised, mis on mudeli tasandil sümmeetriline. Lihtsuse huvides saame kanalit arutada ühes suunas. Üks pool räägib ja teine pool kuuleb häält. See tundub lihtne ja kiire, kuid selle taga olev protsess on üsna keeruline.
See on kõige elementaarsem mudel, mis koosneb viiest olulisest lülist: hankimine, kodeerimine, edastamine, dekodeerimine ja taasesitus.
(1) Häälkogu
Häälkogumine viitab heliandmete kogumisele mikrofonist, see tähendab helinäidiste muundamiseks digitaalsignaalideks. See hõlmab mitmeid olulisi parameetreid: proovivõtusagedus, proovivõtubittide arv ja kanalite arv.
Lihtsustatult öeldes: proovivõtusagedus on omandamistoimingute arv 1 sekundiga; proovivõtubittide arv on iga hankimistoimingu jaoks saadud andmete pikkus.
Heliraami suurus on võrdne järgmisega: (proovivõtusagedus × proovivõtubittide arv × kanalite arv × aeg)
Tavaliselt on valimiskaadri kestus 10 ms, see tähendab, et iga 10 ms andmete moodustab heliraami. Eeldades: proovivõtusagedus on 16 k, diskreetimisbittide arv on 16-bitine ja kanalite arv on 1, siis 10 ms heliraami suurus on: (16000 * 16 * 1 * 0.01) / 8 = 320 baiti. Arvutusvalemis on 0.01 sekund ehk 10 ms.
(2) Kodeerimine
Eeldades, et saadame kogutud heliraami otse kodeerimata, saame arvutada vajaliku ribalaiuse nõude. Ikka ülaltoodud näide: 320 * 100 = 32KBytes / s, kui see on teisendatud bitti / s, on see 256 kb / s. See on palju ribalaiuse kasutamist. Võrguliikluse jälgimise tööriistade abil võime leida, et kui kõnesid tehakse IM-tarkvaraga nagu QQ, on liiklus 3-5KB / s, mis on suurusjärgus väiksem kui algne liiklus. Selle põhjuseks on peamiselt helikodeerimise tehnoloogia. Seetõttu on tegelikus häälkõne rakenduses see kodeerimise link hädavajalik. On palju levinud kõnekodeerimise tehnoloogiaid, näiteks G.729, iLBC, AAC, SPEEX ja nii edasi.
(3) Võrgu edastamine
Kui heliraam on kodeeritud, saab selle helistajale võrgu kaudu saata. Reaalajas rakenduste, näiteks häälvestluste puhul on madal latentsus ja stabiilsus väga olulised, mis nõuab, et meie võrk edastaks väga sujuvalt.
(4) Dekodeerimine
Kui teine osapool saab kodeeritud kaadri, dekodeerib ta selle, et taastada see andmeteks, mida saab otse helikaardil esitada.
(5) Hääle taasesitus
Pärast dekodeerimise lõppu saab saadud heliraami esitada helikaardile taasesitamiseks. Manus: saate viidata MPlayer'i, hääle taasesituse komponendi tutvustusele ja lähtekoodile ning SDK allalaadimisele
2. Praktiliste rakenduste raskused ja lahendused
Kui ainult ülalnimetatud tehnoloogiale toetumine suudab realiseerida laia võrku rakendatava kindla dialoogisüsteemi, pole selle artikli kirjutamiseks eriti vajadust. Just see, et paljud realistlikud tegurid on ülalmainitud kontseptuaalse mudeli jaoks esitanud palju väljakutseid, mis muudab võrgu kõnesüsteemi realiseerimise mitte nii lihtsaks, mis hõlmab paljusid professionaalseid tehnoloogiaid. Muidugi on enamikul neist väljakutsetest juba küpsed lahendused. Kõigepealt peame määratlema hääle dialoogi süsteemi "hea efekt". Ma arvan, et see peaks saavutama järgmised punktid:
(1) Madal latentsus. Ainult madala latentsusajaga saavad kõne pooled reaalajas tugevalt tunda. Muidugi sõltub see peamiselt võrgu kiirusest ja kõne poolte füüsiliste asukohtade vahekaugusest. Puhta tarkvara vaatevinklist on optimeerimise võimalus väga väike.
(2) Madal taustamüra.
(3) Heli on sile, ilma kinni jäänud või pausi tundeta.
(4) Vastus puudub.
Allpool räägime täiendavatest tehnoloogiatest, mida tegelikus võrgu hääldialoogi süsteemis ükshaaval kasutatakse.
1. Kaja tühistamine AEC Peaaegu kõik on nüüd harjunud häälvestluse ajal otse arvuti või sülearvuti hääle taasesituse funktsiooni kasutama. Nagu kõik teavad, on see väike harjumus kõnetehnoloogiale suure väljakutse esitanud. Valjuhääldi funktsiooni kasutamisel kogutakse mikrofoni poolt kõlari mängitud heli uuesti ja edastatakse tagasi teisele osapoolele, nii et teine osapool kuuleks ise oma kaja. Seetõttu on praktilises rakenduses kaja tühistamise funktsioon vajalik. Pärast kogutud heliraami saamist on see kodeerimise eelne tühimik kaja tühistamise mooduli töötamise aeg. Põhimõte on lihtsalt see, et kaja tühistamise moodul teeb kogutud heliraamis mõned tühistamisetaolised toimingud vastavalt äsja mängitud heliraamile, et eemaldada kaja kogutud kaadrist. See protsess on üsna keeruline ja see on seotud ka vestlusruumis viibiva ruumi suurusega ja asukohaga ruumis, kuna see teave määrab helilaine peegelduse pikkuse. Intelligentne kaja tühistamise moodul suudab sisemisi parameetreid dünaamiliselt reguleerida, et kõige paremini kohaneda praeguse keskkonnaga.
2. Mürasummutus DENOISE Mürasummutus, mida nimetatakse ka müra vähendamise töötlemiseks, põhineb hääleandmete omadustel, et tuvastada taustamüra osa ja filtreerida see heliraamidest välja. Paljudele kodeerijatele on see funktsioon sisse ehitatud.
3. JitterBuffer Jitter-puhvrit kasutatakse võrgu värisemise probleemi lahendamiseks. Nn võrgu värisemine tähendab, et võrgu viivitus on suurem ja väiksem. Sel juhul, isegi kui saatja saadab andmepakette regulaarselt (näiteks pakett saadetakse iga 100 ms tagant), ei saa vastuvõtja sama ajastust vastu võtta. Mõnikord ei saa tsüklis ühtegi paketti vastu võtta ja mõnikord võetakse tsüklis vastu mitu paketti. Sel moel on heli, mida vastuvõtja kuuleb, üks kaart ja üks kaart. JitterBuffer töötab pärast dekooderit ja enne hääle taasesitust. See tähendab, et pärast kõne dekodeerimise lõpetamist pannakse dekodeeritud kaader JitterBufferisse ja kui saabub helikaardi taasesituse tagasihelistamine, otsitakse JitterBufferist taasesitamiseks vanim kaader. JitterBufferi puhvrisügavus sõltub võrgu värisemise astmest. Mida suurem on võrgu värisemine, seda suurem on puhvri sügavus ja seda suurem on viivitus heli esitamisel. Seetõttu kasutab JitterBuffer sujuva heli taasesituse eest suuremat viivitust, sest võrreldes heliga üks kaart üks kaart, veidi suurem viivitus, kuid sujuvam efekt, on selle subjektiivne kogemus parem. Muidugi pole JitterBufferi puhvrisügavus konstantne, vaid dünaamiliselt reguleeritud vastavalt võrgu värisemise astme muutustele. Kui võrk taastatakse väga sujuvaks ja takistusteta, on puhvri sügavus väga väike, nii et JitterBufferist tingitud esitusviivituse suurenemine on tühine.
4. Vaigistuse tuvastamine VAD Kui üks osapool ei räägi häälkõnes, ei teki liiklust. Selleks kasutatakse vaigistuse tuvastamist. Vaigistuse tuvastamine on tavaliselt integreeritud ka kodeerimismoodulisse. Hääletu tuvastamise algoritm koos eelmise mürasummutuse algoritmiga suudab tuvastada, kas parajasti on olemas häälsisend. Kui häälsisendit pole, saab see kodeerida ja väljastada spetsiaalse kodeeritud kaadri (näiteks pikkus on 0). Eriti mitme inimese videokonverentsil räägib tavaliselt ainult üks inimene. Sel juhul on vaikse tuvastamise tehnoloogia kasutamine ribalaiuse säästmiseks endiselt väga märkimisväärne.
5. Algoritmi segamine Mitme inimese häälvestluses peame korraga esitama mitme inimese hääleandmeid ja helikaart mängib ainult ühte puhvrit. Seetõttu peame segama mitu häält üheks. Seda teeb segamisalgoritm. Isegi kui leiate viisi miksimisest mööda minna ja lasta mitmel helil korraga mängida, siis kaja tühistamise eesmärgil tuleb see segada üheks taasesituseks, vastasel juhul saab kaja tühistamise abil ainult osa hulgast helisid kõrvaldada. kõige rohkem. Lõpuni välja. Segamist saab teha kliendi või serveri poolel (mis võib säästa allavoolu ribalaiust). Kui kasutatakse P2P kanaleid, saab segamist teha ainult kliendi poolel. Kui see on kliendi segamine, on segamine tavaliselt enne mängimist viimane lüli. See artikkel on ligikaudne kokkuvõte meie kogemustest OMCS-i hääleosa juurutamisel. Siin tegime lihtsalt joonisel iga lingi lihtsa kirjelduse ja ükskõik millise neist saab kirjutada pikaks paberiks või isegi raamatuks. Seetõttu on see artikkel lihtsalt tutvustava kaardi pakkumiseks neile, kes on võrgu kõnesüsteemi väljatöötamisel uued, ja annab mõned näpunäited.
|
Üllatuse saamiseks sisestage e-posti aadress
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikaans
sq.fmuser.org -> albaania keel
ar.fmuser.org -> araabia
hy.fmuser.org -> Armeenia
az.fmuser.org -> aserbaidžaanlane
eu.fmuser.org -> baski keel
be.fmuser.org -> valgevenelane
bg.fmuser.org -> Bulgaaria
ca.fmuser.org -> katalaani keel
zh-CN.fmuser.org -> hiina (lihtsustatud)
zh-TW.fmuser.org -> Hiina (traditsiooniline)
hr.fmuser.org -> horvaadi keel
cs.fmuser.org -> tšehhi
da.fmuser.org -> taani keel
nl.fmuser.org -> Hollandi
et.fmuser.org -> eesti keel
tl.fmuser.org -> filipiinlane
fi.fmuser.org -> soome keel
fr.fmuser.org -> Prantsusmaa
gl.fmuser.org -> galicia keel
ka.fmuser.org -> gruusia keel
de.fmuser.org -> saksa keel
el.fmuser.org -> Kreeka
ht.fmuser.org -> Haiti kreool
iw.fmuser.org -> heebrea
hi.fmuser.org -> hindi
hu.fmuser.org -> Ungari
is.fmuser.org -> islandi keel
id.fmuser.org -> indoneesia keel
ga.fmuser.org -> iiri keel
it.fmuser.org -> Itaalia
ja.fmuser.org -> jaapani keel
ko.fmuser.org -> korea
lv.fmuser.org -> läti keel
lt.fmuser.org -> Leedu
mk.fmuser.org -> makedoonia
ms.fmuser.org -> malai
mt.fmuser.org -> malta keel
no.fmuser.org -> Norra
fa.fmuser.org -> pärsia keel
pl.fmuser.org -> poola keel
pt.fmuser.org -> portugali keel
ro.fmuser.org -> Rumeenia
ru.fmuser.org -> vene keel
sr.fmuser.org -> serbia
sk.fmuser.org -> slovaki keel
sl.fmuser.org -> Sloveenia
es.fmuser.org -> hispaania keel
sw.fmuser.org -> suahiili keel
sv.fmuser.org -> rootsi keel
th.fmuser.org -> Tai
tr.fmuser.org -> türgi keel
uk.fmuser.org -> ukrainlane
ur.fmuser.org -> urdu
vi.fmuser.org -> Vietnam
cy.fmuser.org -> kõmri keel
yi.fmuser.org -> Jidiši
FMUSER Wirless edastab videot ja heli lihtsamalt!
Saada sõnum
Aadress:
Nr 305 tuba HuiLan Building No.273 Huanpu Road Guangzhou, Hiina 510620
Kategooriad
Uudiskiri