FI113571B - Puheenkoodaus - Google Patents
Puheenkoodaus Download PDFInfo
- Publication number
- FI113571B FI113571B FI980532A FI980532A FI113571B FI 113571 B FI113571 B FI 113571B FI 980532 A FI980532 A FI 980532A FI 980532 A FI980532 A FI 980532A FI 113571 B FI113571 B FI 113571B
- Authority
- FI
- Finland
- Prior art keywords
- vector
- quantized
- signal
- gain
- subframe
- Prior art date
Links
- 239000013598 vector Substances 0.000 claims description 153
- 238000012937 correction Methods 0.000 claims description 43
- 230000005284 excitation Effects 0.000 claims description 38
- 238000000034 method Methods 0.000 claims description 33
- 238000012545 processing Methods 0.000 claims description 21
- 230000007774 longterm Effects 0.000 claims description 9
- 238000013139 quantization Methods 0.000 claims description 7
- 230000001172 regenerating effect Effects 0.000 claims description 4
- 238000001914 filtration Methods 0.000 claims description 3
- 230000003321 amplification Effects 0.000 claims description 2
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 2
- 230000002194 synthesizing effect Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 7
- 230000015572 biosynthetic process Effects 0.000 description 5
- 238000003786 synthesis reaction Methods 0.000 description 5
- IVEKVTHFAJJKGA-BQBZGAKWSA-N (2s)-2-amino-5-[[(2r)-1-ethoxy-1-oxo-3-sulfanylpropan-2-yl]amino]-5-oxopentanoic acid Chemical compound CCOC(=O)[C@H](CS)NC(=O)CC[C@H](N)C(O)=O IVEKVTHFAJJKGA-BQBZGAKWSA-N 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000011045 prefiltration Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 101710196810 Non-specific lipid-transfer protein 2 Proteins 0.000 description 2
- 101710125352 Probable non-specific lipid-transfer protein 2 Proteins 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 101100379142 Mus musculus Anxa1 gene Proteins 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- BTCSSZJGUNDROE-UHFFFAOYSA-N gamma-aminobutyric acid Chemical compound NCCCC(O)=O BTCSSZJGUNDROE-UHFFFAOYSA-N 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/002—Dynamic bit allocation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/06—Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
1 113571
Puheenkoodaus
Esillä oleva keksintö koskee puheenkoodausta ja vielä erityisemmin puhesignaalien koodausta diskreeteissä alikehyksissä, jotka sisältävät digitoituja 5 puhenäytteitä. Esillä olevaa keksintöä voidaan soveltaa erityisesti, vaikkei välttämättä, vaihtelevabittinopeuksiseen puheenkoodaukseen.
Euroopassa digitaaliselle matkapuhelinliikenteelle hyväksytty standardi tunnetaan lyhenteellä GSM (Global System for Mobile communications). GSM-standardin 10 (GSM Phase 2; 06.60) äskettäinen tarkistus on johtanut uuden puheenkoodausalgoritmin (tai koodekin) määritykseen, joka tunnetaan nimellä Enhanced Full Rate (EFR). Kuten tavanomaiset puhekoodekit, EFR on suunniteltu vähentämään yksilölliseen puhe- tai dataviestintään tarvittavaa bittinopeutta. Minimoimalla tämä nopeus lisätään erillisten puheluiden määrää, jotka voidaan 15 multipleksoida tietylle signaalin kaistanleveydelle.
Kuva 1 havainnollistaa hyvin yleisesti samanlaisen puhekooderin rakennetta kuin mitä käytetään EFR:ssä. Näytteistetty puhesignaali on jaettu 20ms:n kehyksiin x, joista jokainen sisältää 160 näytettä. Jokaista näytettä edustaa digitaalisesti 16 20 bittiä. Kehykset koodataan vuorollaan soveltamalla niitä ensin lineaarista : ennustetta käyttävään kooderiin (LPC) 1, joka generoi kullekin kehykselle joukon LPC-kertoimia a. Nämä kertoimet edustavat lyhytaikaista redundanssia j kehyksessä.
♦ I · * : V: 25 Lähtö LPC 1 :stä käsittää LPC-kertoimet a ja jäännössignaalin rx, joka on tuotettu : poistamalla lyhytaikainen redundanssi sisääntulopuhekehyksestä käyttämällä LPC-analyysisuodatinta. Jäännössignaali viedään sitten pitkäaikaiseen ’;]/ ennustimeen (LTP) 2, joka generoi joukon LTP-parametrejä b, jotka edustavat *. pitkäaikaista redundanssia jäännössignaalissa η, ja myös jäännössignaalin s, 30 josta on poistettu pitkäaikainen redundanssi. Käytännössä pitkäaikainen 1 · " ennustaminen on kaksivaiheinen prosessi, johon kuuluu (1) ensimmäinen v.: avoimen silmukan LTP-parametrijoukon arviointi koko kehykselle ja (2) toinen 113571 2 suljetun silmukan arvioitujen parametrien tarkentaminen LTP-parametrijoukon generoimiseksi kehyksen jokaiselle 40 näytteen alikehykselle. LTP 2:n tuottama jäännössignaali s suodatetaan vuorostaan suodattimien 1/A(z) ja W(z) (esitetään yhteisesti lohkona 2a kuvassa 1) läpi tuottaen painotetun jäännössignaalin s .
5 Ensimmäinen näistä suodattimista on LPC-synteesisuodatin, kun taas toinen on havainnointipainotteinen suodatin, joka korostaa spektrin “formantti”-rakennetta. LPC-analyysivaihe (lohko 1) tarjoaa parametrit molemmille suodattimille.
Algebrallista herätekoodikirjaa 3 käytetään generoimaan heräte (tai innovaatio) 10 -vektorit c. Kullekin 40 näytteen alikehykselle (neljä alikehystä kehystä kohti) useita eri “ehdokas”-herätevektoreita syötetään vuorotellen skaalausyksikön 4 kautta LTP-synteesisuodattimeen 5. Tämä suodatin 5 vastaanottaa LTP-parametrit nykyiselle alikehykselle ja tuo herätevektoriin LTP-parametrien ennustaman pitkäaikaisen redundanssin. Syntyvä signaali viedään sitten LPC-15 synteesisuodattimeen 6, joka vastaanottaa LPC-kertoimet perättäisille kehyksille. Tietylle alikehykselle generoidaan joukko LPC-kertoimia käyttämällä kehysten välistä interpolaatiota, ja generoituja kertoimia sovelletaan vuorostaan generoimaan syntetisoitu signaali ss.
20 Kuvan 1 kooderi eroaa aiemmista Code Excited Linear Prediction (CELP) - koodereista, jotka hyödyntävät koodikirjaa, joka sisältää ennalta määritellyn j'\: joukon herätevektoreita. Ensiksi mainitun tyyppinen kooderi perustuu • ♦ :,· 1 herätevektoreiden algebralliseen generointiin ja määrittelyyn (katso esim.
W09624925), ja siihen viitataan'joskus nimellä Algebrallinen CELP tai ACELP. v.: 25 Vielä erityisemmin määritellään kvantisoidut vektorit d(i), jotka sisältävät 10 ei- I · « ·’ ’ nolla pulssia. Kaikilla pulsseilla voi olla amplitudit +1 tai -1.40 näytteen paikat (i = 0-39) alikehyksessä jaetaan 5 “raitaan”, jossa jokainen raita sisältää kaksi pulssia (ts. kahdessa kahdeksasta mahdollisesta paikasta), kuten seuraavassa • · taulukossa on esitetty, so · · % · 3 113571
Raita Pulssi paikat ϊ ζΓζ O, 5, 10, 15, 20, 25, 30, 35 2 \^Y6 1,6, 11, 16, 21,26, 31,36 3 ζΓζ 2, 7, 12, 17, 22, 27, 32, 37 4 ζΓζ 3, 8, 13, 18, 23, 28, 33, 38 5 ίΛ 4, 9, 14, 19, 24, 29, 34, 39
Taulukko 1: Yksittäisten pulssien potentiaaliset paikat algebrallisessa koodikirjassa.
Jokainen pulssipaikkapari tietyllä raidalla koodataan 6 bitillä (ts. 3 bittiä jokaiselle 5 pulssille, joka antaa yhteensä 30 bittiä), kun taas raidalla olevan ensimmäisen pulssin merkki koodataan 1 bitillä (yhteensä 5 bittiä). Toisen pulssin merkkiä ei erityisesti koodata vaan pikemminkin johdetaan sen paikasta suhteessa ensimmäiseen pulssiin. Jos toisen pulssin näytepaikka on ennen ensimmäisen pulssin näytepaikkaa, silloin toisella pulssilla määritellään olevan päinvastainen 10 merkki kuin ensimmäisellä pulssilla, muutoin molemmilla pulsseilla määritellään olevan sama merkki. Kaikki 3-bittiset pulssipaikat Gray-koodataan sietokyvyn parantamiseksi kanavavirheitä vastaan sallimalla kvantisoitujen vektoreiden koodaaminen 35-bittisellä algebrallisella koodilla u .
• · * · · 15 Herätevektorin c(i) generoimiseksi algebrallisella koodilla u määritelty kvantisoitu ! ! vektori d(i) suodatetaan esisuodattimen FE{z) läpi, joka korostaa erityisiä * · · »· · · .···. taajuuskomponentteja syntetisoidun puhelaadun parantamiseksi. Esisuodatin (joka myös tunnetaan nimellä ‘väri’-suodatin) määritellään alikehyksestä generoitujen tiettyjen LTP-parametrien suhteen.
20
Kuten tavanomainen CELP-kooderi, erotusyksikkö 7 määrittää syntetisoidun signaalin ja tulosignaalin välisen virheen näyte näytteeltä (ja alikehys :·. alikehykseltä). Painotussuodatinta 8 käytetään sitten painottamaan virhesignaali ;***; huomioimaan ihmisen kuulohavainto. Hakuyksikkö 9 valitsee tietylle alikehykselle 25 sopivan herätevektorin {c{i) , jossa i = 0-39}, joukosta algebrallisen koodikirjan 3 I · 4 113571 generoimia ehdokasvektoreita tunnistamalla vektorin, joka minimoi painotetun neliöllisen virhekeskiarvon. Tämä prosessi tunnetaan yleensä “vektorikvantisointina”.
5 Kuten jo todettiin, herätevektorit kerrotaan skaalausyksikössä 4 vahvistuksella gc. Valitaan vahvistusarvo, jonka seurauksena skaalatulla herätevektorilla on yhtä paljon energiaa kuin LTP 2:n tuottamalla painotetulla jäännössignaalilla s . Vahvistuksen antaa: sTHc(i) 8c c(i)THTHc(i) ' 10 missä H on lineaarisen ennustemallin (LTP ja LPC) impulssivastematriisi.
On välttämätöntä sisällyttää vahvistustieto koodattuun puhealikehykseen yhdessä herätevektorin määrittelevän algebrallisen koodin kanssa, jotta alikehys voidaan 15 rekonstruoida täsmällisesti. Kuitenkin mieluummin kuin sisällyttämällä vahvistus gc suoraan, ennustettu vahvistus gc generoidaan käsittely-yksikössä 10 edellisistä puhealikehyksistä, ja korjauskerroin määritetään yksikössä 11, ts.: }gc=8c/8c (2)
Korjauskerroin kvantisoidaan sitten käyttämällä vektorikvantisointia käyttäen 20 vahvistuksenkorjauskertoimen koodikirjaa, joka käsittää 5-bittisiä koodivektoreita. :,· · Koodattuun kehykseen sisällytetään indeksivektori νγ, joka tunnistaa kvantisoidun vahvistuksenkorjauskertoimen ) . Jos oletetaan, että vahvistus gc vaihtelee
* · I
vähän kehyksestä kehykseen, } gc = 1 ja se voidaan tarkasti kvantisoida suhteellisen lyhyellä koodikirjalla.
: 25 \ * Käytännössä ennustettu vahvistus gc johdetaan käyttämällä liukuvaa keskiarvo I · ^ (moving average eli MA) -ennustetta kiinteiden kertoimien kanssa. Neljännen » · “·;· kertaluokan MA-ennuste suoritetaan heräte-energialle seuraavalla tavalla. Olkoon > · · I · 5 113571 E(n) keskiarvolla vähennetty heräte-energia (dB:eissä) alikehyksellä n, jonka antaa: £(n)=101ogiiic2|V(o]-£ (3)
VN U J
missä N-40 on alikehyksen koko, c(i) on herätevektori (mukaanlukien 5 esisuodatus) ja £=36 dB on tyypillisen heräte-energian ennalta määritetty keskiarvo. Energia alikehykselle n voidaan ennustaa: 4 (4) i=l
/V
missä [b[b2b3b4]= [0.68 0.58 0.34 0.19] ovat MA-ennustekertoimia, ja R(j) on virhe ennustetussa energiassa E(j) alikehyksellä j. Virhe nykyiselle alikehykselle 10 lasketaan myöhemmän alikehyksen käsittelyssä käytettäväksi seuraavan yhtälön mukaisesti: R(n) = E{n) - E(n) (5)
Ennustettu energia voidaan käyttää ennustetun vahvistuksen gc laskemiseksi Λ korvaamalla E(n) E(n) :llä yhtälössä (3), jolloin saadaan: 15 ^=100.05(£(η)+£-£Γ) (6) • · : missä • · > · · • * : f i λ^-1 Λ £c = 101og -Xc2(0 (7)
\N i=o J
• · on herätevektorin c(i) energia.
> · · * » t 20 Vahvistuksenkorjauskertoimen koodikirjahaku suoritetaan kvantisoidun ;T: vahvistuksenkorjauskertoimen } gc tunnistamiseksi, joka minimoi virheen: • · · ’;· * eQ=(gc-rgc8c)2 (8)
Koodattu kehys käsittää LPC-kertoimet, LTP-parametrit, algebrallisen koodin, joka » · · ’·.* 25 määrittelee herätevektorin, ja kvantisoidun vahvistuksenkorjauskertoimen i · • » · 113571 6 koodikirjaindeksin. Ennen lähettämistä lisäkoodausta suoritetaan määrätyille koodausparametreille koodaus- ja multipleksointiyksikössä 12. Erityisesti LPC-kertoimet konvertoidaan vastaavaksi määräksi spektriviivapari (line spectral pair eli LSP) -kertoimia, kuten on kuvattu julkaisussa ‘Efficient Vector Quantisation of 5 LPC Parameters at 24Bits/Frame’, Kuldip K.P. ja Bishnu S.A..IEEE Trans. Speech and Audio Processing, Vol 1, No 1, tammikuu 1993. Koko koodattu kehys koodataan myös virheen ilmaisun ja korjauksen mahdollistamiseksi. GSM Phase 2:lle määritelty koodekki koodaa jokaisen puhekehyksen täsmälleen samalla bittimäärällä, ts. 244:llä, joka määrä nousee 456:een konvoluutiokoodauksen 10 käyttöönoton ja syklisten redundanssitarkastusbittien lisäyksen jälkeen.
Kuva 2 esittää kuvan 1 kooderilla koodattujen signaalien dekoodaamiseen sopivan ACELP-dekooderin yleistä rakennetta. Demultiplekseri 13 erottelee vastaanotetun koodatun signaalin sen eri komponenteiksi. Algebrallinen koodikirja 15 14, joka on identtinen kooderilla olevan koodikirjan 3 kanssa, määrittää 35-bittisen algebrallisen koodin määrittelemän koodivektorin vastaanotetussa koodatussa signaalissa ja esisuodattaa (käyttämällä LTP-parametrejä) tämän herätevektorin generoimiseksi. Vahvistuksenkorjauskerroin määritetään vahvistuksenkorjauskertoimen koodikirjasta käyttämällä vastaanotettua , . 20 kvantisoitua vahvistuksenkorjauskerrointa, ja tätä käytetään lohkossa 15 korjaamaan aiemmin dekoodatuista alikehyksistä johdettu ja lohkossa 16 t t määritetty ennustettu vahvistus. Herätevektori kerrotaan lohkossa 17 korjatulla '···’. vahvistuksella ennen tulon soveltamista LTP-synteesisuodattimeen 18 ja LPC-» · . v. synteesisuodattimeen 19. LTP- ja LPC-suodattimet vastaanottavat vastaavasti * · •: ·. 25 koodatun signaalin välittämät LTP-parametrit ja LPC-kertoimet ja käynnistävät uudelleen pitkäaikaisen ja lyhytaikaisen redundanssin herätevektorissa.
Puhe on luonteeltaan vaihtelevaa sisältäen korkean ja matalan aktiivisuuden ja usein suhteellisen hiljaisia jaksoja. Kiinteäbittinopeuksisen koodauksen käyttö voi * · · .·*·. 30 tämän vuoksi olla tuhlaavaista kaistanleveysresurssien käyttöä. On ehdotettu • · · useita puhekoodekkeja, jotka vaihtelevat koodausbittinopeutta kehys kehykseltä !.*. tai alikehys alikehykseltä. Esimerkiksi US5,657,420 ehdottaa puhekoodekkia 7 113571 käytettäväksi US CDMA-järjestelmässä ja jossa koodausbittinopeus kehykselle valitaan useista mahdollisista nopeuksista riippuen puheaktiivisuustasosta kehyksessä.
5 Mitä tulee ACELP-koodekkiin, on ehdotettu, että puhesignaalin alikehykset luokitellaan kahteen tai useampaan luokkaan ja eri luokat koodataan käyttämällä eri algebrallisia koodikirjoja. Vielä erityisemmin alikehykset, joille painotettu jäännössignaali s vaihtelee ainoastaan hitaasti ajan kanssa, voidaan koodata käyttämällä koodivektoreita d(i), joilla on suhteellisen vähän pulsseja (esim. 2), 10 kun taas alikehykset, joille painotettu jäännössignaali vaihtelee suhteellisen nopeasti, voidaan koodata käyttämällä koodivektoreita d(i), joilla on suhteellisen suuri määrä pulsseja (esim. 10).
Viitaten yläpuolella olevaan yhtälöön (7), muutos herätepulssien määrässä 15 koodivektorissa d(i) esimerkiksi 10:stä 2:teen aiheuttaa vastaavan vähenemisen herätevektorin c(i) energiassa. Koska yhtälön (4) energiaennuste perustuu edellisiin alikehyksiin, ennuste on todennäköisesti huono niin suuren herätepulssimäärän vähenemisen jälkeen. Tämä vuorostaan aikaansaa suhteellisen suuren virheen ennustetussa vahvistuksessa gc aiheuttaen sen, että 20 vahvistuksenkorjauskerroin vaihtelee suuresti puhesignaalin poikki. Jotta tämä • · ·*·*: suuresti vaihteleva vahvistuksenkorjauskerroin voidaan kvantisoida täsmällisesti, I « vahvistuksenkorjauskertoimen kvantisointitaulukon on oltava suhteellisen suuri, mikä vaatii vastaavan pituisen koodikirjaindeksin vy, esim. 5 bittiä. Tämä lisää ylimääräisiä bittejä koodattuun alikehysdataan.
'·* : 25
On ilmeistä, että suuria virheitä ennustetussa vahvistuksessa voi myös syntyä CELP-koodereissa, joissa koodivektoreiden d(i) energia vaihtelee suuresti kehys kehykseltä, mikä vaatii samoin suuren koodikirjan vahvistuksenkorjauskertoimen kvantisoimiseksi.
·;·"30 β 113571
Esillä olevan keksinnön päämääränä on poistaa edellä mainittu olemassa olevien vaihtelevanopeuksisten koodekkien aiheuttama haitta tai ainakin vähentää sitä.
Esillä olevan keksinnön ensimmäisen aspektin mukaisesti menetelmässä 5 puhesignaalin koodaamiseksi, joka signaali käsittää jonon alikehyksiä, jotka sisältävät digitoituja puhenäytteitä, jokaiselle alikehykselle: (a) valitaan kvantisoitu vektori d(i) , joka käsittää ainakin yhden pulssin, jossa pulssien määrä m ja paikka vektorissa d(i) voi vaihdella alikehyksien välillä; (b) määritetään vahvistusarvo gc kvantisoidun vektorin d(i) tai lisävektorin 10 c{i), joka on johdettu kvantisoidusta vektorista d{i), amplitudin skaalaamiseksi, jossa skaalattu vektori syntetisoi painotetun jäännössignaalin 5 ; ja menetelmälle on tunnusomaista, että siinä (c) määritetään skaalauskerroin k, joka on ennalta määritetyn energiatason ja kvantisoidussa vektorissa d(i) olevan energian välisen suhteen funktio; 15 (d) määritetään ennustettu vahvistusarvo gc yhden tai useamman aiemmin käsitellyn alikehyksen perusteella ja kvantisoidun vektorin d{i) tai mainitun lisävektorin c(i) energiani^ funktiona, kun vektorin amplitudi skaalataan mainitulla skaalauskertoimella k; ja : (e) määritetään kvantisoitu vahvistuksenkorjauskerroin γ käyttämällä * · * i V 20 mainittua vahvistusarvoa gc ja mainittua ennustettua vahvistusarvoa gc.
tl* f !” Skaalaamalla herätevektorin energia edellä esitetyllä tavalla, esillä oleva keksintö saa aikaan parannuksen ennustetun vahvistusarvon gc tarkkuudessa, kun * * * kvantisoidussa vektorissa d{i) läsnä olevien pulssien (tai energian) määrä 25 vaihtelee alikehys alikehykseltä. Tämä pienentää vuorostaan » I » vahvistuksenkorjauskertoimen γ gc aluetta ja mahdollistaa sen täsmällisen :: kvantisoinnin pienemmällä kvantisointikoodikirjalla kuin tähän mennessä.
' . · Pienemmän koodikirjan käyttö vähentää koodikirjan indeksointiin tarvittavan 9 113571 vektorin bittipituutta. Vaihtoehtoisesti kvantisointitarkkuudessa voidaan saada aikaan parannus samankokoisella koodikirjalla kuin tähän asti on käytetty.
Esillä olevan keksinnön eräässä suoritusmuodossa pulssien määrä m vektorissa 5 d(i) riippuu alikehyksen puhesignaalin luonteesta. Eräässä toisessa vaihtoehtoisessa suoritusmuodossa järjestelmävaatimukset tai -ominaisuudet määrittävät pulssien määrän m. Esimerkiksi silloin, kun koodattu signaali tullaan lähettämään lähetyskanavan yli, pulssien määrä voi olla pieni, kun kanavainterferenssi on korkea, sallien täten useampien suojausbittien lisäämisen 10 signaaliin. Kun kanavainterferenssi on matala, ja signaali vaatii vähemmän suojausbittejä, pulssien määrää vektorissa voidaan lisätä.
Esillä olevan keksinnön mukainen menetelmä on edullisesti vaihtelevabittinopeuksinen koodausmenetelmä, jossa tuotetaan mainittu 15 painotettu jäännössignaali s olennaisesti poistamalla pitkäaikainen ja lyhytaikainen redundanssi puhesignaalin alikehyksestä, luokitellaan puhesignaalin alikehys painotetun jäännössignaalin s sisältämän energian mukaan ja käytetään luokittelua määrittämään pulssien määrä m kvantisoidussa vektorissa d(i).
: . i 20 Menetelmässä generoidaan edullisesti joukko lineaarista ennustusta käyttäviä koodaus (linear predictive coding eli LPC) -kertoimia a kullekin kehykselle ja :.: : joukko pitkäaikaisia ennuste (long term prediction eli LTP) -parametrejä b i * · : kullekin alikehykselle, jossa kehys käsittää useita puhealikehyksiä, ja tuotetaan '·’·* koodattu puhesignaali LPC-kertoimien, LTP-parametrien, kvantisoidun vektorin ’ ’ ’ 25 d(i) ja kvantisoidun vahvistuksenkorjauskertoimen f gc perusteella.
* · ·
Kvantisoitu vektori d(i) määritellään edullisesti algebrallisella koodilla u, joka koodi sisällytetään koodattuun puhesignaaliin.
30 Vahvistusarvoa gc käytetään edullisesti skaalaamaan mainittu lisävektori c(i), ja tuo lisävektori generoidaan suodattamalla kvantisoitu vektori d(i).
10 1 13571
Ennustettu vahvistusarvo määritetään edullisesti seuraavan yhtälön mukaan: o -]f)0-05(E(n)+E-Ec) öc - - Λ missä E on vakio ja E(n) on nykyisessä alikehyksessä olevan energian ennuste, 5 joka on määritetty edellisten alikehyksien perusteella. Ennustettu energia voidaan määrittää käyttämällä yhtälöä: E(n)=^bi R(n-i) i=l missä b{ ovat liukuvia keskiarvoennustekertoimia, p on ennustuksen asteluku ja Λ Λ R(j) on virhe ennustetussa energiassa E{j) edellisessä alikehyksessä j, jonka 10 antaa R(n) = E(n) - E(n)
Termi Ec määritetään käyttämällä yhtälöä: ( \ n-ι λ £ =101og -X(fc(i))2 \Ni- o 1 15 missä N on näytteiden määrä alikehyksessä. Edullisesti: U *-£ • « • · · missä M on suurin sallittu määrä pulsseja kvantisoidussa vektorissa d(i).
• 9 *
Kvantisointivektori d(i) käsittää edullisesti kaksi tai useampia pulsseja, jossa 20 kaikilla pulsseilla on sama amplitudi.
* * · * · · :T: Vaiheessa (d) haetaan edullisesti vahvistuksenkorjauskertoimen koodikirja kvantisoidun vahvistuksenkorjauskertoimen jgc määrittämiseksi, joka minimoi virheen: eQ = (gc-Y gcgcf * · • · 11 113571 ja koodataan koodikirjaindeksi tunnistetulle kvantisoidulle vahvistuksenkorjauskertoimelle.
Esillä olevan keksinnön toisen aspektin mukaisesti menetelmässä digitoidun 5 näytteistetyn puhesignaalin koodattujen alikehyksien jonon dekoodaamiseksi jokaiselle alikehykselle: (a) regeneroidaan koodatusta signaalista kvantisoitu vektori d(i), joka käsittää ainakin yhden pulssin, jossa pulssien määrä m ja paikka vektorissa d{i) voi vaihdella alikehyksien välillä; 10 (b) regeneroidaan koodatusta signaalista kvantisoitu vahvistuksenkorjauskerroin γgc\ ja menetelmälle on tunnusomaista, että siinä (c) määritetään skaalauskerroin k, joka on ennalta määritetyn energiatason ja kvantisoidussa vektorissa d(i) olevan energian välisen suhteen funktio; 15 (d) määritetään ennustettu vahvistusarvo gc yhden tai useamman aiemmin käsitellyn alikehyksen perusteella ja kvantisoidun vektorin d(i) tai d(i) :stä johdetun lisävektorin c(i) energian Ec funktiona, kun vektorin amplitudi skaalataan mainitulla skaalauskertoimella k; ja ; (e) korjataan ennustettu vahvistusarvo gc käyttämällä kvantisoitua • · · • » :*·*: 20 vahvistuksenkorjauskerrointa γ gc tuottamaan korjatun vahvistusarvon gc; ja • · * : - : (f) skaalataan kvantisoitu vektori d{i) tai mainittu lisävektori c(z) *; käyttämällä vahvistusarvoa gc generoimaan herätevektori, joka syntetisoi ;·. alkuperäiseen alikehyksen puhesignaaliin jääneen jäännössignaalin, kun sieltä on poistettu oleellisesti redundantti tieto.
25
Vastaanotetun signaalin jokainen koodattu alikehys käsittää edullisesti algebrallisen koodin u, joka määrittelee kvantisoidun vektorin d(i) ja indeksin, • 0 ;**: joka osoittaa kvantisoidulle vahvistuksenkorjauskertoimen koodikirjalle, mistä .···. kvantisoitu vahvistuksenkorjauskerroin γor saadaan.
* » S'* • · • * · 12 1 13571
Esillä olevan keksinnön kolmannen aspektin mukaisesti tarjotaan laite puhesignaalin koodaamiseksi, joka signaali käsittää jonon alikehyksiä, jotka sisältävät digitoituja puhenäytteitä, jossa laitteessa on välineet jokaisen mainitun alikehyksen koodaamiseksi vuorollaan, jotka välineet käsittävät: 5 vektorinvalintavälineet kvantisoidun vektorin d(i) valitsemiseksi, joka vektori käsittää ainakin yhden pulssin, jossa pulssien määrä m ja paikka vektorissa d(i) voi vaihdella alikehyksien välillä; ensimmäiset signaalinkäsittelyvälineet vahvistusarvon gc määrittämiseksi kvantisoidun vektorin d(i) tai kvantisoidusta vektorista d(i) johdetun lisävektorin 10 c(i) amplitudin skaalaamiseksi, jossa skaalattu vektori syntetisoi painotetun jäännössignaalin s'; ja laitteelle on tunnusomaista, että välineet käsittävät toiset signaalinkäsittelyvälineet skaalauskertoimen k määrittämiseksi, joka skaalauskerroin on ennalta määritetyn energiatason ja kvantisoidussa vektorissa d(i) olevan energian välisen suhteen funktio; 15 kolmannet signaalinkäsittelyvälineet ennustetun vahvistusarvon gc määrittämiseksi yhden tai useamman aiemmin käsitellyn alikehyksen perusteella ja kvantisoidun vektorin d{i) tai mainitun lisävektorin c(i) energian Ec funktiona, kun vektorin amplitudi skaalataan mainitulla skaalauskertoimella k; ja ,·, : neljännet signaalinkäsittelyvälineet kvantisoidun • I * 20 vahvistuksenkorjauskertoimen γ määrittämiseksi käyttämällä mainittua : t vahvistusarvoa gc ja mainittua ennustettua vahvistusarvoa gc.
Esillä olevan keksinnön neljännen aspektin mukaisesti tarjotaan laite digitoidun näytteistetyn puhesignaalin koodattujen alikehyksien jonon dekoodaamiseksi, 25 jossa laitteessa on välineet jokaisen mainitun alikehyksen dekoodaamiseksi • ·. vuorollaan, jotka välineet käsittävät: ensimmäiset signaalinkäsittelyvälineet kvantisoidun vektorin d(i) » ··, regeneroimiseksi koodatusta signaalista, joka kvantisoitu vektori dii) käsittää .1. ainakin yhden pulssin, jossa pulssien määrä m ja paikka vektorissa d(i) voi : 30 vaihdella alikehyksien välillä; » t« 13 113571 toiset signaalinkäsittelyvälineet kvantisoidun vahvistuksenkorjauskertoimen γgc regeneroimiseksi koodatusta signaalista; ja laitteelle on tunnusomaista, että välineet käsittävät kolmannet signaalinkäsittelyvälineet skaalauskertoimen k määrittämiseksi, 5 joka skaalauskerroin on ennalta määritetyn energiatason ja kvantisoidussa vektorissa d(i) olevan energian välisen suhteen funktio; neljännet signaalinkäsittelyvälineet ennustetun vahvistusarvon gc määrittämiseksi yhden tai useamman aiemmin käsitellyn alikehyksen perusteella ja kvantisoidun vektorin d(i) tai kvantisoidusta vektorista johdetun lisävektorin 10 c{i) energian Ec funktiona, kun vektorin amplitudi skaalataan mainitulla skaalauskertoimella k; ja korjausvälineet ennustetun vahvistusarvon gc korjaamiseksi käyttämällä kvantisoitua vahvistuksenkorjauskerrointa γ tuottamaan korjatun vahvistusarvon gc· Ja 15 skaalausvälineet kvantisoidun vektorin d(i) tai mainitun lisävektorin c(i) skaalaamiseksi käyttämällä vahvistusarvoa gc generoimaan herätevektorin, joka syntetisoi alkuperäiseen alikehyksen puhesignaaliin jääneen jäännössignaalin, . , kun sieltä on poistettu oleellisesti redundantti tieto.
♦ > I < | > · t : 20 * * • * ·’·* Jotta keksintö voitaisiin ymmärtää paremmin ja osoittaaksemme, kuinka se v. voidaan toteuttaa käytännössä, viittaamme esimerkinomaisesti oheisiin piirustuksiin, joissa: kuva 1 esittää lohkokaaviota ACELP-puhekooderista; .:. 25 kuva 2 esittää lohkokaaviota ACELP-puhedekooderista; :''': kuva 3 esittää lohkokaaviota muunnellusta ACELP-puhekooderista, joka ,/,,: pystyy vaihtelebittinopeuksiseen koodaukseen; ja . · * ·, kuva 4 esittää lohkokaaviota muunnellusta ACELP-puhedekooderista, joka • · pystyy dekoodaamaan vaihtelevabittinopeuksisesti koodatun signaalin.
;·/ 30
• · 0 • I
,4 113571 ACELP-puhekoodekkia, joka on samanlainen kuin GSM phase 2:ssa ehdotettu, on kuvattu lyhyesti edellä viittaamalla kuviin 1 ja 2. Kuva 3 havainnollistaa muunneltua ACELP-puhekooderia, joka sopii digitoidun näytteistetyn puhesignaalin vaihtelevabittinopeuksiseen koodaukseen ja jossa toiminnalliset 5 lohkot, joita on jo kuvattu viittaamalla kuvaan 1, tunnistetaan samoista viitenumeroista.
Kuvan 3 kooderissa kuvan 1 yksi ainoa algebrallinen koodikirja 3 on korvattu parilla algebrallisia koodikirjoja 23,24. Ensimmäinen koodikirja 23 on järjestetty 10 generoimaan herätevektorit c(i), jotka perustuvat koodivektoreihin d(i), jotka sisältävät kaksi pulssia, kun taas toinen koodikirja 24 on järjestetty generoimaan herätevektorit c(i), jotka perustuvat koodivektoreihin d(i), jotka sisältävät kymmenen pulssia. Tietylle alikehykselle koodikirjan 23,24 valinnan suorittaa koodikirjanvalintayksikkö 25 riippuen LTP 2:n tuottamasta painotetun 15 jäännössignaalin s sisältämästä energiasta. Jos energia painotetussa jäännössignaalissa ylittää jonkin ennalta määritellyn (tai adaptiivisen) kynnyksen, joka viittaa suuresti vaihtelevaan painotettuun jäännössignaaliin, valitaan kymmenpulssinen koodikirja 24. Toisaalta, jos energia painotetussa jäännössignaalissa putoaa määritellyn kynnyksen alapuolelle, silloin valitaan 20 kaksipulssinen koodikirja 23. On ilmeistä, että voidaan määritellä kaksi tai useampia kynnystasoja, jolloin käytetään kolmea tai useampaa koodikirjaa.
: Sopivan koodikirjavalintaprosessin yksityiskohtaisemman kuvauksen suhteen on syytä viitata julkaisuun “Toll Quality Variable-Rate Speech Codec”; Ojala P; Proc. v.: of IEEE International Conference on Acoustics, Speech and Signal Processing, •V : 25 MQnchen, Saksa, huhtik. 21-24 1997.
’·* ' Vahvistuksen gc johtaminen käytettäväksi skaalausyksikössä 4 saadaan aikaan [· yllä kuvatulla tavalla viitaten yhtälöön (1). Ennustetun vahvistuksen gc '... # johtamisessa yhtälöä (7) muunnetaan (muunnetun käsittelyn yksikössä 26) 30 kuitenkin soveltamalla amplitudinskaalauskerrointa k herätevektoriin seuraavalla • · · tavalla: • * 15 113571 £c=101ogfj-X(fc(0)2 ] (9)
\N (=0 J
Siinä tapauksessa, että valitaan kymmenpulssinen koodikirja, k = 1, ja siinä tapauksessa, että valitaan kaksipulssinen koodikirja, k = V5 . Yleisemmin termein skaalauskertoimen antaa: 5 k = J— (10) V m missä m pulssien määrä vastaavassa koodivektorissa d(i).
Laskettaessa keskiarvolla vähennettyä heräte-energiaa E(n) tietylle alikehykselle, jotta energiaennuste on mahdollinen yhtälöllä (4), on myös välttämätöntä ottaa 10 käyttöön skaalauskerroin k . Täten yhtälöä (3) muunnetaan seuraavasti: E(n)=10 log f £ (fe(i))2 j - £ (11) \N i=o y
Ennustettu vahvistus lasketaan sitten käyttämällä yhtälöä (6), yhtälön (9) antaessa muunnetun herätevektorienergian ja yhtälön (11) antaessa muunnetun 15 keskiarvolla vähennetyn heräte-energian.
» *
Skaalauskertoimen k ottaminen yhtälöihin (9) ja (11) parantaa huomattavasti vahvistusennustetta niin, että yleisesti gc=gc ja 7=1. Koska , · ”. vahvistuksenkorjauskertoimen aluetta pienennetään tekniikan tasoon verrattuna, ,': ·. 20 voidaan käyttää pienempää vahvistuksenkorjauskertoimen koodikirjaa · · hyödyntämällä lyhyemmän pituista koodikirjaindeksiä vy, esim. 3 tai 4 bittiä.
:; : Kuva 4 havainnollistaa dekooderia, joka soveltuu kuvan 3 ACELP-kooderilla koodattujen puhesignaalien dekoodaamiseen silloin, kun puhealikehykset • 25 koodataan vaihtelevalla bittinopeudella. Kuvan 4 dekooderin toiminnallisuus on paljolta samanlainen kuin kuvan 3, ja sinänsä toiminnalliset lohkot, joita on jo . · · *. kuvattu viittaamalla kuvaan 2, tunnistetaan kuvassa 4 samoista viitenumeroista.
• I » 16 113571 Pääero on kahden kuvan 3 kooderin 2- ja 10-pulssisia koodikirjoja vastaavan algebrallisen koodikirjan 20,21 järjestämisessä. Vastaanotetun algebrallisen koodin u luonne määrittää sopivan koodikirjan 20,21 valinnan, minkä jälkeen dekoodausprosessi jatkuu hyvin samalla tavalla kuin edellä kuvattiin. Kuitenkin, 5 kuten kooderin yhteydessä, ennustettu vahvistus gc lasketaan lohkossa 22 käyttämällä yhtälöä (6), yhtälön (9) antamaa skaalattua herätevektorienergiaa Ec ja yhtälön (11) antamaa skaalattua keskiarvolla vähennettyä heräte-energiaa E(n).
10 Alan ammattimiehelle on ilmeistä, että yllä kuvattuun suoritusmuotoon voidaan tehdä erilaisia muunnoksia poikkeamatta esillä olevan keksinnön piiristä. On erityisen ilmeistä, että kuvien 3 ja 4 kooderi ja dekooderi voidaan toteuttaa laitteistossa tai ohjelmistossa tai sekä laitteiston että ohjelmiston yhdistelmänä. Yllä oleva kuvaus koskee GSM-matkapuhelinjärjestelmää, vaikka esillä olevaa 15 keksintöä voidaan myös hyödyllisesti soveltaa muihin solukkojärjestelmiin ja ei-radioliikenteeseen kuten internet. Esillä olevaa keksintöä voidaan myös käyttää koodaamaan ja dekoodaamaan puhedataa tietojentallennustarkoituksiin.
Esillä olevaa keksintöä voidaan soveltaa CELP-koodereihin sekä ACELP- . 20 koodereihin. Kuitenkin, koska CELP-koodereilla on kiinteä koodikirja kvantisoidun ' .1 vektorin d(i) generoimiseksi ja pulssien amplitudi tietyn kvantisoidun vektorin * · 'il/ sisällä voi vaihdella, skaalauskerroin k herätevektorin c(i) amplitudin skaalaaniiseksi ei ole yksinkertainen pulssien määrän m funktio (kuten yhtälössä (10)). Pikemminkin energia kiinteän koodikirjan jokaiselle kvantisoidulle vektorille 25 d{i) on laskettava ja tämän energian suhde, suhteessa esimerkiksi kvantisoidun :T: vektorin maksimienergiaan, on määritettävä. Tämän suhteen neliöjuuri antaa v ; sitten skaalauskertoimen k.
* · ♦ 1 # • · # »1 ·
Claims (16)
113571
1. Menetelmä puhesignaalin koodaamiseksi, joka signaali käsittää jonon alikehyksiä, jotka sisältävät digitoituja puhenäytteitä, jossa menetelmässä 5 jokaiselle alikehykselle: (a) valitaan kvantisoitu vektori d(i), joka käsittää ainakin yhden pulssin, jossa pulssien määrä m ja paikka vektorissa d(i) voi vaihdella alikehyksien välillä; (b) määritetään vahvistusarvo gc kvantisoidun vektorin dii) tai 10 kvantisoidusta vektorista johdetun lisävektorin c(i) amplitudin skaalaamiseksi, jossa skaalattu vektori syntetisoi painotetun jäännössignaalin s ; tunnettu siitä, että menetelmässä: (c) määritetään skaalauskerroin k, joka on ennalta määritetyn energiatason ja kvantisoidussa vektorissa d(i) olevan energian välisen suhteen 15 funktio; (d) määritetään ennustettu vahvistusarvo gc yhden tai useamman aiemmin käsitellyn alikehyksen perusteella ja kvantisoidun vektorin d(i) tai mainitun lisävektorin c(i) energian Ec funktiona, kun vektorin amplitudi skaalataan / mainitulla skaalauskertoimella k\ ja ! ^ 20 (e) määritetään kvantisoitu vahvistuksenkorjauskerroin } käyttämällä ·/ ": mainittua vahvistusarvoa gc ja mainittua ennustettua vahvistusarvoa gc. • · · »· · • · · * 2. Patenttivaatimuksen 1 mukainen menetelmä, joka menetelmä on vaihtelevabittinopeuksinen koodausmenetelmä, tunnettu siitä, että menetelmä « « · *; ] t ’ 25 käsittää vaiheet, joissa: ♦ · · • · · generoidaan mainittu painotettu jäännössignaali s olennaisesti poistamalla : ” pitkäaikainen ja lyhytaikainen redundanssi puhesignaalin alikehyksestä; ja ’”·* luokitellaan puhesignaalin alikehys painotetun jäännössignaalin :Λ: s sisältämän energian mukaan ja käytetään luokittelua määrittämään pulssien *•••‘30 määrä m kvantisoidussa vektorissa dii). 'e 113571 i
3. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, tunnettu siitä, että menetelmä käsittää vaiheet, joissa: generoidaan joukko lineaarista ennustusta käyttäviä koodaus (linear 5 predictive coding eli LPC) -kertoimia a jokaiselle kehykselle ja joukko pitkäaikaisia ennuste (long term prediction eli LTP) -parametrejä b jokaiselle alikehykselle, jossa kehys käsittää useita puhealikehyksiä; ja tuotetaan koodattu puhesignaali LPC-kertoimien, LTP-parametrien, kvantisoidun vektorin d(i) ja kvantisoidun vahvistuksenkorjauskertoimen } gc 10 perusteella.
4. Minkä tahansa edellä esitetyn patenttivaatimuksen mukainen menetelmä, tunnettu siitä, että menetelmässä määritellään kvantisoitu vektori d{i) koodatussa signaalissa algebrallisella koodilla u. 15
5. Minkä tahansa edellä esitetyn patenttivaatimuksen mukainen menetelmä, tunnettu siitä, että ennustettu vahvistusarvo määritetään seuraavan yhtälön mukaan: • · o _in0.05(£(n)+£-£c) .: oc : 20 missä E on vakio ja E(n) on nykyisessä alikehyksessä olevan energian ennuste, : joka on määritetty mainittujen aiemmin käsiteltyjen alikehyksien perusteella. • ·
6. Minkä tahansa edellä esitetyn patenttivaatimuksen mukainen menetelmä, tunnettu siitä, että mainittu ennustettu vahvistusarvo gc on jokaisen mainitun 25 aiemmin käsitellyn alikehyksen kvantisoidun vektorin d(i) tai mainitun lisävektorin • · · v *· c(i) keskiarvolla vähennetyn heräte-energian E(n) funktio, kun vektorin amplitudi ; * *.. skaalataan mainitulla skaalauskertoimella k. » · * · ♦ 19 1 13571
7. Minkä tahansa edellä esitetyn patenttivaatimuksen mukainen menetelmä, tunnettu siitä, että vahvistusarvoa gc käytetään skaalaamaan mainittu lisävektori c(i) ja tämä lisävektori generoidaan suodattamalla kvantisoitu vektori d(i).
8. Patenttivaatimuksen 5 mukainen menetelmä, tunnettu siitä, että mainittu ennustettu vahvistusarvo gc on jokaisen aiemmin käsitellyn alikehyksen kvantisoidun vektorin d(i) tai mainitun lisävektorin c(i) keskiarvolla vähennetyn heräte-energian E(ri) funktio, kun vektorin amplitudi skaalataan mainitulla skaalauskertoimella k; 10 vahvistusarvoa gc käytetään skaalaamaan mainittu lisävektori c(i), ja tuo lisävektori generoidaan suodattamalla kvantisoitu vektori d(i); ja ennustettu energia määritetään käyttämällä yhtälöä: E{n)=^bt R(n-i) (=1 missä bt ovat liukuvia keskiarvoennustekertoimia, p on ennustuksen asteluku ja Λ Λ
15 R(J) on virhe ennustetussa energiassa E(J) edellisessä alikehyksessä j, jonka antaa: . . R(n) = E(n)-E(n) missä M.! £(«)=10 log [ ^ Σ (fc(')n - E ,·=o 7 '·* * 9. Patenttivaatimuksen 5 mukainen menetelmä, tunnettu siitä, että termi Ec määritetään käyttämällä yhtälöä: f 1 AT-1 Λ Ec =10 log — Σ(Μ0) vA7 (.=o ; missä N on näytteiden määrä alikehyksessä. * ·» 25 • · 20 113571
10. Minkä tahansa edellä esitetyn patenttivaatimuksen mukainen menetelmä, tunnettu siitä, että jos kvantisointivektori d{i) käsittää kaksi tai useampia pulsseja, kaikilla pulsseilla on sama amplitudi.
11. Minkä tahansa edellä esitetyn patenttivaatimuksen mukainen menetelmä, tunnettu siitä, että skaalauskertoimen antaa: V m missä M on suurin sallittu pulssimäärä kvantisoidussa vektorissa d(i).
12. Minkä tahansa edellä esitetyn patenttivaatimuksen mukainen menetelmä, tunnettu siitä, että haetaan vahvistuksenkorjauskertoimen koodikirja määrittämään kvantisoidun vahvistuksenkorjauskertoimen f gc, joka minimoi virheen: eQ=(8c-rgc8c)2 15 ja koodataan koodikirjaindeksi tunnistetulle kvantisoidulle vahvistuksenkorjauskertoimelle. :, * · j 13. Menetelmä digitoidun näytteistetyn puhesignaalin koodattujen alikehyksien j jonon dekoodaamiseksi, jossa menetelmässä jokaiselle alikehykselle: : 20 (a) regeneroidaan koodatusta signaalista kvantisoitu vektori d(i), joka « · käsittää ainakin yhden pulssin, jossa pulssien määrä m ja paikka vektorissa d(i) Y _ voi vaihdella alikehyksien välillä; * · « (b) regeneroidaan koodatusta signaalista kvantisoitu .·:·. vahvistuksenkorjauskerroin f tunnettu siitä, että menetelmässä: • * · * o*· • · · v : 25 (c) määritetään skaalauskerroin k, joka on ennalta määritetyn :' ·.. energiatason ja kvantisoidussa vektorissa d(i) olevan energian välisen suhteen funktio; : Y: (d) määritetään ennustettu vahvistusarvo gc yhden tai useamman aiemmin käsitellyn alikehyksen perusteella ja kvantisoidun vektorin d(i) tai kvantisoidusta j 21 113571 vektorista johdetun lisävektorin c(i) energian Ec funktiona, kun vektorin amplitudi skaalataan mainitulla skaalauskertoimella k; ja (e) korjataan ennustettu vahvistusarvo gc käyttämällä kvantisoitua vahvistuksenkorjauskerrointa } gc tuottamaan korjatun vahvistusarvon gc;ja 5 (f) skaalataan kvantisoitu vektori d{i) tai mainittu lisävektori c(i) käyttämällä vahvistusarvoa gc generoimaan herätevektori, joka syntetisoi alkuperäiseen alikehyksen puhesignaaliin jääneen jäännössignaalin, kun sieltä on poistettu oleellisesti redundantti tieto.
14. Patenttivaatimuksen 13 mukainen menetelmä, tunnettu siitä, että vastaanotetun signaalin jokainen koodattu alikehys käsittää algebrallisen koodin u, joka määrittelee kvantisoidun vektorin d(i) ja indeksin, joka osoittaa kvantisoidulle vahvistuksenkorjauskertoimen koodikirjalle, mistä kvantisoitu vahvistuksenkorjauskerroin f gc saadaan. 15
15. Laite puhesignaalin koodaamiseksi, joka signaali käsittää jonon alikehyksiä, jotka sisältävät digitoituja puhenäytteitä, jossa laitteessa on välineet jokaisen . mainitun alikehyksen koodaamiseksi vuorollaan, jotka välineet käsittävät: vektorinvalintavälineet (1,2,2a,9) kvantisoidun vektorin d(i) valitsemiseksi, : .·. 20 joka vektori käsittää ainakin yhden pulssin, jossa pulssien määrä m ja paikka vektorissa d(i) voi vaihdella alikehyksien välillä; V,* ensimmäiset signaalinkäsittelyvälineet (9) vahvistusarvon gc 1 » · '·* ' määrittämiseksi kvantisoidun vektorin d(i) tai kvantisoidusta vektorista d(i) ...^ johdetun lisävektorin c(i) amplitudin skaalaamiseksi, jossa skaalattu vektori a a ;25 syntetisoi painotetun jäännössignaalin s ; tunnettu siitä, että välineet käsittävät: :·’ toiset signaalinkäsittelyvälineet skaalauskertoimen k määrittämiseksi, joka , · · . skaalauskerroin on ennalta määritetyn energiatason ja kvantisoidussa vektorissa d(i) olevan energian välisen suhteen funktio; > a » * i « · 22 113571 kolmannet signaalinkäsittelyvälineet (10) ennustetun vahvistusarvon gc määrittämiseksi yhden tai useamman aiemmin käsitellyn alikehyksen perusteella ja kvantisoidun vektorin d{i) tai mainitun lisävektorin c{i) energian Ec funktiona, kun vektorin amplitudi skaalataan mainitulla skaalauskertoimella k; ja 5 neljännet signaalinkäsittelyvälineet (26) kvantisoidun vahvistuksenkorjauskertoimen ^määrittämiseksi käyttämällä mainittua vahvistusarvoa gc ja mainittua ennustettua vahvistusarvoa gc.
16. Laite digitoidun näytteistetyn puhesignaalin koodattujen alikehyksien jonon 10 dekoodaamiseksi, jossa laitteessa on välineet jokaisen mainitun alikehyksen dekoodaamiseksi vuorollaan, jotka välineet käsittävät: ensimmäiset signaalinkäsittelyvälineet (13,20,21) kvantisoidun vektorin d{i) regeneroimiseksi koodatusta signaalista, joka kvantisoitu vektori käsittää ainakin yhden pulssin, jossa pulssien määrä m ja paikka vektorissa d(i) voi 15 vaihdella alikehyksien välillä; toiset signaalinkäsittelyvälineet (13,15) kvantisoidun vahvistuksenkorjauskertoimen } gc regeneroimiseksi koodatusta signaalista; . . tunnettu siitä, että välineet käsittävät: • · v* kolmannet signaalinkäsittelyvälineet skaalauskertoimen k määrittämiseksi, : .·. 20 joka skaalauskerroin on ennalta määritetyn energiatason ja kvantisoidussa * ♦ · · .*··. vektorissa d(i) olevan energian välisen suhteen funktio; » a · neljännet signaalinkäsittelyvälineet (22) ennustetun vahvistusarvon gc »· · ’ määrittämiseksi yhden tai useamman aiemmin käsitellyn alikehyksen perusteella ja kvantisoidun vektorin d(i) tai kvantisoidusta vektorista johdetun lisävektorin ’;# 25 c(i) energian Ec funktiona, kun vektorin amplitudi skaalataan mainitulla • · « .. | skaalauskertoimella k; ja * · · .···. korjausvälineet (15) ennustetun vahvistusarvon gc korjaamiseksi , ·. ·. käyttämällä kvantisoitua vahvistuksenkorjauskerrointa f gc tuottamaan korjatun :: vahvistusarvon gc; ja 23 113571 skaalausvälineet (17) kvantisoidun vektorin d(i) tai mainitun lisävektorin c(i) skaalaamiseksi käyttämällä vahvistusarvoa gc generoimaan herätevektori, joka syntetisoi alkuperäiseen alikehyksen puhesignaaliin jääneen jäännössignaalin s , kun sieltä on poistettu oleellisesti redundantti tieto. 5 • · · * · · · t · · • · · • * » · · ’ · · • · * * · ( * I » · t · * · « i 24 113571
Priority Applications (12)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI980532A FI113571B (fi) | 1998-03-09 | 1998-03-09 | Puheenkoodaus |
DE69900786T DE69900786T2 (de) | 1998-03-09 | 1999-02-12 | Sprachkodierung |
JP2000536069A JP3354138B2 (ja) | 1998-03-09 | 1999-02-12 | 音声符号化 |
KR10-2000-7008992A KR100487943B1 (ko) | 1998-03-09 | 1999-02-12 | 음성 코딩 |
PCT/FI1999/000112 WO1999046764A2 (en) | 1998-03-09 | 1999-02-12 | Speech coding |
AU24270/99A AU2427099A (en) | 1998-03-09 | 1999-02-12 | Speech coding |
EP99903710A EP1062661B1 (en) | 1998-03-09 | 1999-02-12 | Speech coding |
BRPI9907665-9B1A BR9907665B1 (pt) | 1998-03-09 | 1999-02-12 | Método e aparelho para codificar e decodificar o sinal de voz |
CN99803763A CN1121683C (zh) | 1998-03-09 | 1999-02-12 | 语音编码 |
ES99903710T ES2171071T3 (es) | 1998-03-09 | 1999-02-12 | Codificacion de voz. |
US09/263,439 US6470313B1 (en) | 1998-03-09 | 1999-03-04 | Speech coding |
HK01105589A HK1035055A1 (en) | 1998-03-09 | 2001-08-10 | Speech coding |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI980532A FI113571B (fi) | 1998-03-09 | 1998-03-09 | Puheenkoodaus |
FI980532 | 1998-03-09 |
Publications (3)
Publication Number | Publication Date |
---|---|
FI980532A0 FI980532A0 (fi) | 1998-03-09 |
FI980532A FI980532A (fi) | 1999-09-10 |
FI113571B true FI113571B (fi) | 2004-05-14 |
Family
ID=8551196
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FI980532A FI113571B (fi) | 1998-03-09 | 1998-03-09 | Puheenkoodaus |
Country Status (12)
Country | Link |
---|---|
US (1) | US6470313B1 (fi) |
EP (1) | EP1062661B1 (fi) |
JP (1) | JP3354138B2 (fi) |
KR (1) | KR100487943B1 (fi) |
CN (1) | CN1121683C (fi) |
AU (1) | AU2427099A (fi) |
BR (1) | BR9907665B1 (fi) |
DE (1) | DE69900786T2 (fi) |
ES (1) | ES2171071T3 (fi) |
FI (1) | FI113571B (fi) |
HK (1) | HK1035055A1 (fi) |
WO (1) | WO1999046764A2 (fi) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6714907B2 (en) * | 1998-08-24 | 2004-03-30 | Mindspeed Technologies, Inc. | Codebook structure and search for speech coding |
US6604070B1 (en) * | 1999-09-22 | 2003-08-05 | Conexant Systems, Inc. | System of encoding and decoding speech signals |
AU766830B2 (en) * | 1999-09-22 | 2003-10-23 | Macom Technology Solutions Holdings, Inc. | Multimode speech encoder |
ATE420432T1 (de) * | 2000-04-24 | 2009-01-15 | Qualcomm Inc | Verfahren und vorrichtung zur prädiktiven quantisierung von stimmhaften sprachsignalen |
US6947888B1 (en) * | 2000-10-17 | 2005-09-20 | Qualcomm Incorporated | Method and apparatus for high performance low bit-rate coding of unvoiced speech |
US7037318B2 (en) * | 2000-12-18 | 2006-05-02 | Boston Scientific Scimed, Inc. | Catheter for controlled stent delivery |
US7054807B2 (en) * | 2002-11-08 | 2006-05-30 | Motorola, Inc. | Optimizing encoder for efficiently determining analysis-by-synthesis codebook-related parameters |
JP3887598B2 (ja) * | 2002-11-14 | 2007-02-28 | 松下電器産業株式会社 | 確率的符号帳の音源の符号化方法及び復号化方法 |
US7249014B2 (en) * | 2003-03-13 | 2007-07-24 | Intel Corporation | Apparatus, methods and articles incorporating a fast algebraic codebook search technique |
FI119533B (fi) * | 2004-04-15 | 2008-12-15 | Nokia Corp | Audiosignaalien koodaus |
US7386445B2 (en) * | 2005-01-18 | 2008-06-10 | Nokia Corporation | Compensation of transient effects in transform coding |
CN101180676B (zh) * | 2005-04-01 | 2011-12-14 | 高通股份有限公司 | 用于谱包络表示的向量量化的方法和设备 |
JPWO2007129726A1 (ja) * | 2006-05-10 | 2009-09-17 | パナソニック株式会社 | 音声符号化装置及び音声符号化方法 |
US8712766B2 (en) * | 2006-05-16 | 2014-04-29 | Motorola Mobility Llc | Method and system for coding an information signal using closed loop adaptive bit allocation |
KR20090076964A (ko) | 2006-11-10 | 2009-07-13 | 파나소닉 주식회사 | 파라미터 복호 장치, 파라미터 부호화 장치 및 파라미터 복호 방법 |
JPWO2008072733A1 (ja) * | 2006-12-15 | 2010-04-02 | パナソニック株式会社 | 符号化装置および符号化方法 |
WO2009001874A1 (ja) * | 2007-06-27 | 2008-12-31 | Nec Corporation | オーディオ符号化方法、オーディオ復号方法、オーディオ符号化装置、オーディオ復号装置、プログラム、およびオーディオ符号化・復号システム |
US20090094026A1 (en) * | 2007-10-03 | 2009-04-09 | Binshi Cao | Method of determining an estimated frame energy of a communication |
CN101499281B (zh) * | 2008-01-31 | 2011-04-27 | 华为技术有限公司 | 一种语音编码中的增益量化方法及装置 |
CN101609674B (zh) * | 2008-06-20 | 2011-12-28 | 华为技术有限公司 | 编解码方法、装置和系统 |
CN101741504B (zh) * | 2008-11-24 | 2013-06-12 | 华为技术有限公司 | 一种确定信号线性预测编码阶数的方法和装置 |
US7898763B2 (en) * | 2009-01-13 | 2011-03-01 | International Business Machines Corporation | Servo pattern architecture to uncouple position error determination from linear position information |
US20110051729A1 (en) * | 2009-08-28 | 2011-03-03 | Industrial Technology Research Institute and National Taiwan University | Methods and apparatuses relating to pseudo random network coding design |
US8990094B2 (en) * | 2010-09-13 | 2015-03-24 | Qualcomm Incorporated | Coding and decoding a transient frame |
US8862465B2 (en) | 2010-09-17 | 2014-10-14 | Qualcomm Incorporated | Determining pitch cycle energy and scaling an excitation signal |
US8325073B2 (en) * | 2010-11-30 | 2012-12-04 | Qualcomm Incorporated | Performing enhanced sigma-delta modulation |
US9626982B2 (en) | 2011-02-15 | 2017-04-18 | Voiceage Corporation | Device and method for quantizing the gains of the adaptive and fixed contributions of the excitation in a CELP codec |
EP3686888A1 (en) * | 2011-02-15 | 2020-07-29 | VoiceAge EVS LLC | Device and method for quantizing the gains of the adaptive and fixed contributions of the excitation in a celp codec |
CN112741961A (zh) * | 2020-12-31 | 2021-05-04 | 江苏集萃智能制造技术研究所有限公司 | 一种便携式集成tensems功能的电子脉冲刺激器 |
CN114913863B (zh) * | 2021-02-09 | 2024-10-18 | 同响科技股份有限公司 | 数字音信数据编码方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4969192A (en) | 1987-04-06 | 1990-11-06 | Voicecraft, Inc. | Vector adaptive predictive coder for speech and audio |
IT1232084B (it) * | 1989-05-03 | 1992-01-23 | Cselt Centro Studi Lab Telecom | Sistema di codifica per segnali audio a banda allargata |
GB2235354A (en) * | 1989-08-16 | 1991-02-27 | Philips Electronic Associated | Speech coding/encoding using celp |
IL95753A (en) * | 1989-10-17 | 1994-11-11 | Motorola Inc | Digits a digital speech |
CA2010830C (en) | 1990-02-23 | 1996-06-25 | Jean-Pierre Adoul | Dynamic codebook for efficient speech coding based on algebraic codes |
US5754976A (en) | 1990-02-23 | 1998-05-19 | Universite De Sherbrooke | Algebraic codebook with signal-selected pulse amplitude/position combinations for fast coding of speech |
FR2668288B1 (fr) * | 1990-10-19 | 1993-01-15 | Di Francesco Renaud | Procede de transmission, a bas debit, par codage celp d'un signal de parole et systeme correspondant. |
US5293449A (en) * | 1990-11-23 | 1994-03-08 | Comsat Corporation | Analysis-by-synthesis 2,4 kbps linear predictive speech codec |
DE69232202T2 (de) | 1991-06-11 | 2002-07-25 | Qualcomm, Inc. | Vocoder mit veraendlicher bitrate |
US5255339A (en) * | 1991-07-19 | 1993-10-19 | Motorola, Inc. | Low bit rate vocoder means and method |
US5233660A (en) * | 1991-09-10 | 1993-08-03 | At&T Bell Laboratories | Method and apparatus for low-delay celp speech coding and decoding |
US5327520A (en) * | 1992-06-04 | 1994-07-05 | At&T Bell Laboratories | Method of use of voice message coder/decoder |
FI96248C (fi) | 1993-05-06 | 1996-05-27 | Nokia Mobile Phones Ltd | Menetelmä pitkän aikavälin synteesisuodattimen toteuttamiseksi sekä synteesisuodatin puhekoodereihin |
FI98163C (fi) | 1994-02-08 | 1997-04-25 | Nokia Mobile Phones Ltd | Koodausjärjestelmä parametriseen puheenkoodaukseen |
SE506379C3 (sv) * | 1995-03-22 | 1998-01-19 | Ericsson Telefon Ab L M | Lpc-talkodare med kombinerad excitation |
US5664055A (en) * | 1995-06-07 | 1997-09-02 | Lucent Technologies Inc. | CS-ACELP speech compression system with adaptive pitch prediction filter gain based on a measure of periodicity |
US5732389A (en) * | 1995-06-07 | 1998-03-24 | Lucent Technologies Inc. | Voiced/unvoiced classification of speech for excitation codebook selection in celp speech decoding during frame erasures |
CA2177413A1 (en) * | 1995-06-07 | 1996-12-08 | Yair Shoham | Codebook gain attenuation during frame erasures |
US5692101A (en) * | 1995-11-20 | 1997-11-25 | Motorola, Inc. | Speech coding method and apparatus using mean squared error modifier for selected speech coder parameters using VSELP techniques |
-
1998
- 1998-03-09 FI FI980532A patent/FI113571B/fi not_active IP Right Cessation
-
1999
- 1999-02-12 JP JP2000536069A patent/JP3354138B2/ja not_active Expired - Lifetime
- 1999-02-12 CN CN99803763A patent/CN1121683C/zh not_active Expired - Lifetime
- 1999-02-12 WO PCT/FI1999/000112 patent/WO1999046764A2/en active IP Right Grant
- 1999-02-12 EP EP99903710A patent/EP1062661B1/en not_active Expired - Lifetime
- 1999-02-12 DE DE69900786T patent/DE69900786T2/de not_active Expired - Lifetime
- 1999-02-12 BR BRPI9907665-9B1A patent/BR9907665B1/pt active IP Right Grant
- 1999-02-12 ES ES99903710T patent/ES2171071T3/es not_active Expired - Lifetime
- 1999-02-12 KR KR10-2000-7008992A patent/KR100487943B1/ko not_active IP Right Cessation
- 1999-02-12 AU AU24270/99A patent/AU2427099A/en not_active Abandoned
- 1999-03-04 US US09/263,439 patent/US6470313B1/en not_active Expired - Lifetime
-
2001
- 2001-08-10 HK HK01105589A patent/HK1035055A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
FI980532A0 (fi) | 1998-03-09 |
EP1062661B1 (en) | 2002-01-09 |
CN1121683C (zh) | 2003-09-17 |
FI980532A (fi) | 1999-09-10 |
JP2002507011A (ja) | 2002-03-05 |
HK1035055A1 (en) | 2001-11-09 |
BR9907665A (pt) | 2000-10-24 |
DE69900786T2 (de) | 2002-09-26 |
KR20010024935A (ko) | 2001-03-26 |
CN1292914A (zh) | 2001-04-25 |
JP3354138B2 (ja) | 2002-12-09 |
KR100487943B1 (ko) | 2005-05-04 |
WO1999046764A2 (en) | 1999-09-16 |
WO1999046764A3 (en) | 1999-10-21 |
EP1062661A2 (en) | 2000-12-27 |
US6470313B1 (en) | 2002-10-22 |
ES2171071T3 (es) | 2002-08-16 |
DE69900786D1 (de) | 2002-02-28 |
BR9907665B1 (pt) | 2013-12-31 |
AU2427099A (en) | 1999-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FI113571B (fi) | Puheenkoodaus | |
EP2099028B1 (en) | Smoothing discontinuities between speech frames | |
KR100804461B1 (ko) | 보이스화된 음성을 예측적으로 양자화하는 방법 및 장치 | |
EP1202251B1 (en) | Transcoder for prevention of tandem coding of speech | |
US6260009B1 (en) | CELP-based to CELP-based vocoder packet translation | |
EP2313887B1 (en) | Variable bit rate lpc filter quantizing and inverse quantizing device and method | |
EP1181687B1 (en) | Multipulse interpolative coding of transition speech frames | |
EP1204968B1 (en) | Method and apparatus for subsampling phase spectrum information | |
EP1397655A1 (en) | Method and device for coding speech in analysis-by-synthesis speech coders | |
KR100389898B1 (ko) | 음성부호화에 있어서 선스펙트럼쌍 계수의 양자화 방법 | |
JPH05165498A (ja) | 音声符号化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PC | Transfer of assignment of patent |
Owner name: NOKIA TECHNOLOGIES OY |
|
MA | Patent expired |