FI113571B - Puheenkoodaus - Google Patents

Puheenkoodaus Download PDF

Info

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
Application number
FI980532A
Other languages
English (en)
Swedish (sv)
Other versions
FI980532A0 (fi
FI980532A (fi
Inventor
Pasi Ojala
Original Assignee
Nokia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Corp filed Critical Nokia Corp
Publication of FI980532A0 publication Critical patent/FI980532A0/fi
Priority to FI980532A priority Critical patent/FI113571B/fi
Priority to EP99903710A priority patent/EP1062661B1/en
Priority to CN99803763A priority patent/CN1121683C/zh
Priority to KR10-2000-7008992A priority patent/KR100487943B1/ko
Priority to PCT/FI1999/000112 priority patent/WO1999046764A2/en
Priority to AU24270/99A priority patent/AU2427099A/en
Priority to DE69900786T priority patent/DE69900786T2/de
Priority to BRPI9907665-9B1A priority patent/BR9907665B1/pt
Priority to JP2000536069A priority patent/JP3354138B2/ja
Priority to ES99903710T priority patent/ES2171071T3/es
Priority to US09/263,439 priority patent/US6470313B1/en
Publication of FI980532A publication Critical patent/FI980532A/fi
Priority to HK01105589A priority patent/HK1035055A1/xx
Application granted granted Critical
Publication of FI113571B publication Critical patent/FI113571B/fi

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/16Vocoder architecture
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/002Dynamic bit allocation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/06Determination 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
FI980532A 1998-03-09 1998-03-09 Puheenkoodaus FI113571B (fi)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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