NO341726B1 - Fremgangsmåte for å skape en representasjon av et beregnet resultat, lineært avhengig av kvadratet av en verdi - Google Patents

Fremgangsmåte for å skape en representasjon av et beregnet resultat, lineært avhengig av kvadratet av en verdi Download PDF

Info

Publication number
NO341726B1
NO341726B1 NO20072916A NO20072916A NO341726B1 NO 341726 B1 NO341726 B1 NO 341726B1 NO 20072916 A NO20072916 A NO 20072916A NO 20072916 A NO20072916 A NO 20072916A NO 341726 B1 NO341726 B1 NO 341726B1
Authority
NO
Norway
Prior art keywords
representation
logarithmic
spectral
bit
group
Prior art date
Application number
NO20072916A
Other languages
English (en)
Swedish (sv)
Other versions
NO20072916L (no
Inventor
Stefan Geyersberger
Manfred Lutzky
Johannes Hilpert
Marc Gayer
Sascha Disch
Markus Lohwasser
Bernhard Grill
Original Assignee
Fraunhofer-Ges Zur Förderung Der Angewandten Forschung Ev
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 Fraunhofer-Ges Zur Förderung Der Angewandten Forschung Ev filed Critical Fraunhofer-Ges Zur Förderung Der Angewandten Forschung Ev
Publication of NO20072916L publication Critical patent/NO20072916L/no
Publication of NO341726B1 publication Critical patent/NO341726B1/no

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/02Speech 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 spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49942Significance control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49936Normalisation mentioned as feature only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/5443Sum of products
    • 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/02Speech 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 spectral analysis, e.g. transform vocoders or subband vocoders

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Complex Calculations (AREA)

Abstract

Overgang til det logaritmiske felt krever ikke hele bitfeltet som er lineært avhengig av kvadratet av verdien. For en verdi med x bits kan resultatet derimot skaleres på en slik måte at en fremstilling med mindre enn x bits i resultatet er tilstrekkelig for å fremskaffe en logaritmisk fremstilling basert på denne. Virkningen av skaleringsfaktoren på den resulterende logaritmiske fremstilling kan utliknes ved addering av en korreksjonsverdi fremskaffet ved å benytte den logaritmiske funksjon på skaleringsfaktoren til, eller subtrahering av den fra, den skalerte logaritmiske funksjon uten dynamisk tap. Oppfinnelsen tilveiebringer en fremgangsmåte og en anordning for å fremstille en fremstilling av et beregningsresultat som er lineært avhengig av kvadratet av en verdi for på den måte å tillate å utføre beregningen lett eller med lite maskinvare.

Description

Fagfelt
Foreliggende oppfinnelse angår skapingen av en fremstilling av et beregningsresultat som er lineært avhengig av et kvadrat av en verdi, så som en sum av kvadrater av en gruppe av verdier som påkrevd, for eksempel i enkelte audiokodere der frekvenslinjer blir kombinert ifølge en psykoakustisk modell for å danne frekvensgrupper i den hensikt å utføre ytterligere koding ved hjelp av signalenergiene i frekvensgruppene.
Bakgrunn
I moderne filterbankbaserte audiokodefremgangsmåter så som MPEG Layer-3 eller MPEG AAC, benyttes en psykoakustisk modell i koderen. I denne psykoakustiske modell blir det totale spektrum i audiosignalet som er transformert inn til frekvensbåndet, delt opp i individuelle frekvensgrupper av varierende bredder og/eller varierende antall frekvenslinjer pr. frekvensgruppe. For beregningen av de psykoakustiske lytteterskler, for avgjørelsen hvorvidt senter/sidestereokoding skal benyttes, og for evalueringen og/eller beregningen av skaleringsfaktorene i kvantiseringsmodulen i audiokoderen, blir signalenergiene i audiosignaldelene i de individuelle frekvensgrupper beregnet i den psykoakustiske modell. Dette utføres ved kvadrering av hver enkelt frekvenslinje, hvilket resulterer i at linjeenergiene, og påfølgende summering av alle linjeenergier i en frekvensgruppe, danner båndenergien i en frekvensgruppe, av hvilke der kan være rundt 40-60 pr. audiokanal i tilfellet eksempelvis MPEG AAC.
Kjent teknikk fremgår av US6754618B1, US5570454A, US6728739 B1 og Chhabra, A. et al "A Block Floating Point Implementation on the TMS320C54x DSP", Application Report SPRA610, Dec. 1999, (http://www.eeng.dcu.ie/~ee206/pdf/block_flt_pt.pdf)
Oppsummering
Oppfinnelsen angår en audiokoder, som omfatter et apparat implementert i en fastpunkt-prosessor for å beregne spektrale gruppeenergier av et audiosignal, som omfatter transformasjonsmidler og gruppeenergi-beregningsmidler. Sistnevnte omfatter Styringsmidler, skaleringsmidler, kvadreringsmidler, oppsummeringsmidler, midler for å beregne logaritmen, omskaleringsmidler og en MPEG kodestrømgenerator. For øvrig henvises til krav 1 og tilhørende uselvstendig krav 2-9.
Oppfinnelsen angår også en tilsvarende fremgangsmåte for audiokoding i henhold til selvstendig krav 10 som omfatter å beregne spektralgruppeenergier av et audiosignal som bruker en fastpunkt-prosessor ved hjelp av å dekomponere audiosignalet til rammer i et tidsdomene, å omdanne audiosignalet i hver ramme fra tidsdomenet til et spektraldomene, for å tilveiebringe en gruppe med spektralverdier for hver ramme, hvor hver omfatter en amplitudeverdi i en ikke-logaritmisk x-bitrepresentasjon, slik at serier med amplitudeverdier fremkommer som er delt inn i ulike spektralgrupper. Fremgangsmåten omfatter videre å beregne spektralgruppeenergi for hver spektralgruppe i den respektive rammen som summen av kvadrater av amplitudeverdiene ved å justere en respektiv skaleringsfaktor for hver spektralgruppe i avhengighet av antall (N) amplitudeverdiene av den respektive spektralgruppen og det minste antall ubrukte bitposisjoner i de x-bit-representasjoner av amplitudeverdiene av den respektive spektralgruppen, å skalere den ikke-logaritmiske x-bit-representasjonen for hver amplitudeverdi for hver spektralgruppe med den respektive skaleringsfaktoren for å tilveiebringe skalerte amplitudeverdier i en x-bit-representasjon; å kvadrere de skalerte amplitudeverdiene i x-bit-representasjon for å tilveiebringe skalerte kvadratiske amplitudeverdiene i en 2x-bit-representasjon; å oppsummere de skalerte kvadrerte amplitudeverdiene for hver spektralgruppe for å tilveiebringe en respektiv sum av kvadrater i en ikke-logaritmisk representasjon; å anvende en logaritmisk funksjon på y bit av den ikke-logaritmiske representasjonen for hver sum av kvadrater for hver spektralgruppe for å tilveiebringe en respektiv skalert logaritmisk representasjon, hvor y er mindre enn 2x; og å legge til eller å trekke fra en respektiv korrekturverdi, som fremkommer ved å anvende den logaritmiske funksjonen på kvadratet av den respektive skalerings-faktoren, til eller fra henholdsvis den skalerte logaritmiske representasjonen for hver skalert logaritmisk representasjon, for å tilveiebringe en logaritmisk representasjon for hver spektralgruppeenergi, hvor spektralgruppeenergiene av alle spektralgruppene har samme skaleringsnivå; og å generere en kodet MPEG datastrøm som representerer en kodet versjon av audiosignalet basert på spektralgruppeenergiene av spektralgruppene i en logaritmisk representasjon som har samme skaleringsnivå.
Endelig angår oppfinnelsen et dataprogram med en programkode for å utføre ovenfor nevnte fremgangsmåte når datamaskinprogrammet kjører på en datamaskin.
Detaljert beskrivelse
I det følgende skal de spesielle anvendelser av en utførelse av en slik fremgangsmåte i en fastpunktsprosessor vurderes.
I fastpunktsfremstillingen blir frekvenslinjene fremstilt med en ordbredde på for eksempel 24 bits eller 32 bits. En ordbredde på bare 16 bits er ikke tilstrekkelig. En global skaleringsfaktor eller en skiftfaktor blir benyttet, hvilket anvendes på alle frekvenslinjer i en audiokanal og også på alle frekvenslinjer i alle audiokanaler som blir prosessert i en koder, og hvilket avgjør med hvor mange posisjoner hver frekvenslinjeverdi må skiftes til venstre eller høyre slik at den opprinnelige skaleringen kan fremskaffes, hvilket refereres til som blokkflyttallsfremstilling. Dette vil si at alle frekvenslinjer i minst én audiokanal er likt styrt ut og/eller er på det samme skaleringsnivå. I vurderingen av de generelt høye dynamikker i de enkelte amplituder av frekvenslinjene, har enkelte av frekvenslinjene blitt fremstilt med relativt høy nøyaktighet, slik som for eksempel 22 gyldige bits med en ordbredde av 24 bits eller 30 gyldige bits med en ordlengde på 32 bits, mens andre blir fremstilt med bare få gyldige bit og er derfor nokså unøyaktig.
I utførelsen av de tidligere nevnte filterbankbaserte audiokodingsfremgangsmåtene i en fastpunktsprosessor, vil problemer som beskrevet over komme frem.
For det første angår problemene fremstillingen av signalenergiene selv. Ved kvadreringen, får signalenergiene, dvs. de summerte kvadrater av frekvenslinjene, en fremskaffet dynamikk som er det dobbelte av frekvenslinjene dersom den totale nøyaktighet skal opprettholdes.
Det finnes ganske klart forskjellige muligheter for å fremstille signalenergiene. En mulighet er fremstillingen av signalenergiene med en datatype som har en ordbredde som er det dobbelte av datatypen benyttet for fremstillingen av frekvenslinjene, dvs. eksempelvis at en datatype med en bredde på 48 bits eller 64 bits. Man kan eksempelvis se for seg frekvenslinjer med 22 gyldige bits fremstilt med et 24 bits datatype. Basert på summeringen vil signalenergien sammen med de andre frekvenslinjer ha i det minste 44 gyldige bits og vil bli fremstilt i en 48 bits datatype. Denne fremgangsmåte er likevel ikke realistisk i det minste for 64 bits energier, dvs. i tilfeller der frekvenslinjene blir representert med en 32 bits datatype, siden de fleste konvensjonelle fastpunktsprosessorer enten ikke støtter en 64 bits datatype i det hele tatt eller at minetilgangsoperasjoner og beregninger som benytter en 64 bits datatype er ekstremt langsomt sammenliknet eksempelvis med 32 bits tilgangsoperasjoner og beregninger. I tillegg er mineforbruket betydelig høyere i tilfellet med 64 bits data.
Basert på spektrogrammet 168 dannet på denne måte vil kodestrømgeneratoren 156 generere den kodede datastrøm. For å gjøre dette vil kodestrømgeneratoren 156 imidlertid ikke, eller ikke alltid, kreve en spektraldekomponering av alle spektralkomponentene. Frekvenslinjene splittes snarere opp i grupper 170 i henhold til psykoakustiske aspekter, slik som angitt ved sirkler.
For kodestrømgenereringen for hver gruppe 170 vil kodestrømgeneratoren 156 for hver av rammene 166 spesifikt kreve den tilknyttede verdi for signalenergien, dvs. summen av kvadratene av amplitudeverdiene, det vil igjen si summen av kvadratene av frekvenslinjeverdiene.
Denne beregning foretas av en gruppe energiberegningsmidler 154. Disse vil beregne signalenergien for hver gruppe 170 av frekvenslinjer som summen av kvadratene av frekvenslinjene, der gruppeenergiberegningsmidlene 154 for eksempel kan være konfigurert slik som vist på figurene 4 og 5 og/eller slik som friksjonene beskrevet i forbindelse med figurene 4-6. Anvendelse av gruppeenergiberegningsmidlene 154 vil resultere i sekvenser 172 av signalenergiverdier, dvs. en sekvens 172 pr. gruppe 170. Derfor vil signalenergisekvensene 172 omfatte en signalenergiverdi pr. ramme 166, noe som er illustrert langs pilene 172 i form av en prikk.
Basert på disse sekvenser 172 av signalenergier vil kodestrømgeneratoren 156 så generere den kodede datastrøm 160 på basis av den psykoakustiske modell 162. Her vil fordelen med å reprodusere signalenergiverdiene i midlene 156 ikke bare være at verdiene presenteres i et fastpunkt-dataformat med samme antall bits som frekvenslinjeverdiene ble presentert med, men også at verdiene presenteres logaritmisk, idet dette vil tillate en enklere utføring av multiplikasjonen, potenseringer og divideringer, da disse beregninger vil gi enklere addisjoner/subtraksjoner og multiplikasjoner/divisjoner i det logaritmiske området.
For å illustrere dette vises det til koderen ifølge fig. 7, som avgir en MPEG-datastrøm.
Audiokoderen ifølge fig. 7 er for eksempel en MPEG AAC-koder. I dette tilfellet vil kodestrømgeneratoren 156 omfatte en TNS (temporal noise shaping)-modul, der kodestrømgeneratoren 156 vil utføre en effektiv beregning av det energivektede spektrum. TNS-modulen vil spesifikt utføre en beregning hvor signalenergiene SE benyttes, av typen x = 1/ SE . Dette kan utføres enklere når signalenergiene er gitt i det logaritmiske format LD64, da dette benyttes av gruppeenergiberegningsmidlene 154. TNS-modulen vil rett og slett beregne x i LD64-1 (-LD64_SE >> 1), hvor a >> b angir en forskyvningsoperasjon mot høyre for operanden a på venstresiden, av antallet bits b på høyresiden, der LD64-1 () er en inversfunksjon av logaritmefunksjonen LD64 () og en LD64_SE er signalenergiverdien i det logaritmiske format LD64, slik den avgis fra gruppeenergiberegningsmidlene 154. ”>> 1” vil derfor angi en forflytning mot høyre med 1 bit, hvilket korrespondere til en divisjon med 2. Denne divisjonen med 2 vil når den utføres i logaritmeområdet korrespondere til en kvadratrot i det lineære området. Minustegnet vil korrespondere til den inverse funksjon 1/x i det lineære området. Beregningen av LD64-1-funksjonen kan realiseres mindre komplisert enn det å beregne kvadratroten og så invertere resultatet, hvilket ville være påkrevd dersom signalenergiene blir matet til kodestrømgeneratoren 156 i det lineære området.
Kodestrømgeneratoren 156 kunne også generere en kodet MPEG 4 AAC datastrøm, og den ville da omfatte en PNS (perceptual noise substitution) modul. PNS-modulen vil utføre en intern beregning av avstanden mellom lytteterskelen og signalenergien i frekvensgruppen 170. PNS-modulen vil spesifikt ved hjelp av avstanden mellom lytteterskelen og signalenergien avgjøre om det kan eller bør utføres en støyerstatning. Den mer dynamiske og tilsvarende mer nøyaktige logaritmiske representasjon av signalenergiene når disse avgis fra gruppeenergiberegningsenheten 154, samt lyttetersklene som også er tilveiebrakt i den logaritmiske representasjon LD64 i kodestrømgeneratoren 156, vil i det vesentlige være det som bidrar til en korrekt PNS-bestemmelse. Mer spesifikt vil en dividering og en rotutdragning i form av Y = (SE1/ SE2 � SE3 ) bli utført i en koherensfunksjon i PNS-modulen, der SE1, SE2 og SE3 er signalenergier avgitt fra gruppeenergiberegningsmidlene 154. Den logaritmiske representasjon av signalenergien vil i stor grad legge til rette for og akselerere denne beregningen. Mer spesifikt kan PNS-modulen i kodestrømgeneratoren 156 utføre beregningen av LD64_Y, dvs. beregne Y i LD64-formatet, ved å utføre følgende bergning:
LD64_Y = LD64_SE1 – ((LD64_SE2 LD64_SE3) >> 1),
hvor LD64_SE# er den logaritmiske representasjon av den respektive signalenergiverdi SE#, slik den avgis fra gruppeenergiberegningsmidlene 154.
Kode strømgeneratoren 156 kan for eksempel også omfatte en senter/sidestereomodul som vil foreta en senter/side-kodingsavgjørelse. I denne CS-modul vil det bli foretatt mange divisjoner, dvs. fra lytteterskelen til signalenergien, for å avgjøre om en senter/side (CS)-koding skal benyttes eller ikke. Ved å anvende LD64-formatet, slik dette avgis fra gruppeenergiberegningsmidlene 154, vil disse divideringene bestå av enkle subtraksjoner. Tersklene, for hvilke en CS-koding skal benyttes, vil være konstante, og de kan derfor konverteres til logaritmeområdet allerede i kildekoden, hvorved det ikke vil være påkrevd med ytterligere regnetid utover programkjøretiden. Dette vil gjelde også når det benyttes mange flere konstanter i den modifiserte kode i forbindelse med LD64-beregningene. Det ovenfor angitte vil spesifikt også gjelde for intensitetsstereomodulen i en MPEG Layer-3 eller AAC-koder.
Kodestrømgeneratoren 156 kan videre omfatte en skaleringsfaktorestimator som vil utføre en beregning av lydstyrken. I skaleringsfaktorestimatoren, som for eksempel kan være plassert i en kvantiseringsmodul i kodestrømgeneratoren 156, vil det bli utført en beregning av fjerde roten av lyttetersklene, dvs. en lydstyrkeberegning. Ved å representere lytteterskelen i et logaritmisk dataformat, dvs. LD64, kan beregningen av denne fjerde rot utføres svært effektivt ved rett og slett å flytte de logaritmiske gjennomsnittsterskler til høyre med 2 bits. Det omvendte, dvs. en involusjon med 4, kan også utføres på en svært enkel måte ved en forflytning mot venstre med 2 bits.
I skaleringsfaktorestimatoren i kodestrømgeneratoren 156 kan videre for eksempel en beregning av skaleringsfaktorene SCF, som utgjør en del av kvantiseringstrinnbredden, utføres på grunnlag av de modifiserte lytteterskler LT og signalenergiene SE. Denne beregning omfatter et beregningstrinn av typen SCF = log (k*LT/SE), der log () er en vanlig logaritme og k er en konstant. Denne beregning kan utføres svært elegant og effektivt ved å anvende LD64-formatet, og en korresponderende konvertering av den opprinnelige formel. Skaleringsfaktorestimatoren ville spesifikt utføre beregningen på følgende måte:
SCF = log(k) log2*64* (LD64_LT – LD64_SE).
Eksemplene på mulige moduler i kodestrømgeneratoren 156 gitt ovenfor viser at anvendelse av det logaritmiske dataformat LD64 vil legge til rette for økt effektivitet i fastpunktsprosessorer. Når en bestemt audiokvalitet er påkrevd vil det logaritmiske dataformat LD64 i mange tilfeller muliggjøre en implementering på disse plattformer av en audiokodek med høy audiokvalitet. Eksemplene på mulige moduler i kodestrømgeneratoren 156 gitt ovenfor har spesifikt vist at en representasjon av signalenerigene, lyttetersklene og ytterligere energiverdier i et logaritmisk dataformat vil være ekstremt velegnet, idet at ved prosesseringen av signalenergiene og lyttetersklene vil de fleste beregningstrinn bli utført ved hjelp av en divisjon eller en multiplikasjon. En divisjon kan derfor utføres i form av en subtraksjon og en multiplikasjon i form av en addisjon, hvilket vil resultere i at en effektiv representasjon og prosessering av signalenergiene og lyttetersklene i en audiokodek kan oppnås ved hjelp av det illustrerte logaritmiske dataformat. Signalenergiene i det lineære området, dvs. det ikke-logaritmiske området, vil være representert i det fraksjonale fastpunktsdataformat, hvilket antar verdier i området av -1,0 til 0,99999…
I utførelsesformene ovenfor blir logaritmer med grunntall 2 (dual-logaritmer LD) anvendt. For en dual-logaritme vil en signalenergiverdi på 0,25 i det lineære området tilsvare en LD-verdi på -2. En signalenergiverdi på 0,3 i det lineære området vil tilsvare en LD-verdi på -1,7369656. Siden denne fastpunktsprosessor typisk enten vil representere heltallsdelen eller sifrene bak komme, men ikke en blanding av disse, ble LD-verdiene i de foregående utførelsesformene skalert slik i LD64-formatet at bare sifrene bak komma oppnås. En annen mulighet ville selvsagt være å velge en skalering slik at bare heltallsdelene ble fremskaffet. En skalering med en faktor 1/64 ble spesifikt valgt siden denne faktor kan anvendes på alle ordbredder opp til 64 bits og således også vil dekke de konvensjonelle ordbredder på 48 bits og 32 bits. Beregningen av duallogaritmen skalert med 1/64, dvs. i LD64-formatet, utføres i henhold til formelen y = log2(x)/64 = LD64(x). Dersom det blir gitt avkall på en utvidet bærbarhet, kunne selvsagt denne faktor også økes, dvs. opp til 1/y, der y ville være antallet bits av den skalerte sum av kvadratene uten at logaritmen tas.
Fig. 3 viser grafen til logaritmefunksjonen. Her vil karakteristikkene for logaritmefunksjon kunne ses, idet den for mindre inngangsverdier x (nærmere 0,0), dvs. med en fastpunkts representasjon som faktisk vil være mindre nøyaktig, vil gi et større antall utgangsverdier y i det logaritmiske området, dvs. med mindre oppløsning, som idet de vil anta en større absoluttverdi, dvs. de vil være nærmere lik -1,0, således vil de gi en mer nøyaktig fastpunkts representasjon. I utførelsesformene gitt ovenfor unngås tap av nøyaktighet ved beregningen av signalenergiene før overføringen til det logaritmiske området ved å anvende en felles skaleringsfaktor og/eller en felles forskyvningsverdi før kvadreringen.
Utførelsesformen ifølge fig. 7 representerer derfor en koder som anvender et skalert, eller til og med ikke-skalert logaritmisk dataformat i den psykoakustiske modell og/eller i kvantiseringsmodulen, for representasjon og prosessering av signalenergiene og lyttetersklene. Det skal imidlertid forstås at beskrivelsen gitt ovenfor av dual-logaritmen og skaleringen med 1/64 bare er et eksempel. I ethvert tilfelle vil den logaritmiske representasjon tjene til å oppnå en hurtigere utførelse av mange beregninger, slik som for eksempel i senter/side-avgjørelsesmodulen og skaleringsfaktorestimatoren i kvantiseringsmodulen, siden de opprinnelige divideringer ved å anvende det logaritmiske format som omtalt vil omformes til enkle subtraksjoner som kan utføres mange ganger raskere i en fastpunkts prosessor. Det samme gjelder rotberegninger, slik som beretninger av kvadratrot, fjerde rot etc., hvilket vil omformes til enkle forflytninger mot høyre. Beregningsomkostningene i forbindelse med overføringen til det logaritmiske området vil enkelt kompenseres for gjennom hastigheten som oppnås ved de senere trinn i algoritmeberegningen. Fordelene med utførelsesformene utlagt ovenfor vil derfor spesifikt være den høyere nøyaktighet av verdiene som representeres logaritmisk, så vel som en høyere prosesseringshastighet når en logaritmisk representasjon anvendes.
Idet det refereres til beskrivelsen ovenfor skal det forestås at foreliggende oppfinnelse ikke er begrenset til fastpunkts dataformater. Utførelsesformene ovenfor relatert til dannelsen av summer av kvadrater av verdier, kan også i rimelig grad anvendes for verdier som foreligger i et heltalls-dataformat og ikke i et fastpunkts dataformat. I dette tilfellet vil høyere verdis y-bits fra kvadratsummene av 2x-bits bli forsynt til logaritmeberegningene.
I utførelsesformene gitt ovenfor anvendes en funksjon for beregning av logaritmer, der en skalering med 1/64 utføres. Denne faktor vil være egnet dersom en og samme koding skal kjøres på forskjellige plattformer og med forskjellige fastpunkts dataformater. Det vil imidlertid også være mulig at faktoren i logaritmefunksjonen bare settes større enn x, dvs. større enn antallet bits for verdiene som forsynes til summeringen av kvadratene.
Når det gjelder de foregående utførelsesformer skal det videre forstås at foreliggende oppfinnelse ikke er begrenset til dannelsen av summer av kvadrater. Foreliggende oppfinnelse kunne for eksempel være fordelaktig dersom gruppene besto av bare en verdi, slik at bare en koding ble utført. I dette tilfellet ville det selvsagt ikke være nødvendig for styremidlene 36 å på noen måte måtte forutse skaleringsfaktorinformasjonen. I dette tilfellet ville skaleringsfaktoren anvendt for skaleringen av verdien før kvadreringen snarere være et automatisk resultat av antallet gyldige bits og/eller antallet ubenyttede bits. Svært generelt kan foreliggende oppfinnelsen anvendes for dannelsen av en representasjon av et resultat som er lineært avhengig av et kvadrat av en verdi.
Idet det refereres til beskrivelsen ovenfor skal det også forstås at foreliggende oppfinnelse selvsagt ikke er begrenset til bruk i forbindelse med audiokoding. Den samme fordel beskrevet ovenfor i forhold til audiokoding, dvs. en oppnåelse av samme skaleringsnivå for individuelle signalenergier, og med det dynamiske området opprettholdt, samtidig som kostnadene i forbindelse med audiokodingen reduseres, kan også oppnås på andre anvendelsesområder, for eksempel for å tilveiebringe en audiofil med et vannmerke eller liknende.
Det skal spesielt forstås at det er avhengig av omstendighetene kan den oppfinneriske fremgangsmåte også implementeres i programvaren. Implementeringen kan utføres i et digitalt lagringsmedium, mer spesifikt i en diskett eller en CD med elektronisk lesbare styresignaler som samvirker med et programmerbart datamaskinsystem slik at den aktuelle fremgangsmåte utføres. Oppfinnelsen består derfor generelt av et datamaskinprogramprodukt med en programkode for utførelse av den oppfinneriske fremgangsmåte lagret i en maskinlesbar bærer, når datamaskinprogramproduktet kjøres i en datamaskin. Med andre ord kan oppfinnelsen derfor realiseres som et datamaskinprogram med en programkode for utførelse av fremgangsmåten, når datamaskinprogrammet kjøres i en datamaskin.
NO20072916A 2004-12-13 2007-06-07 Fremgangsmåte for å skape en representasjon av et beregnet resultat, lineært avhengig av kvadratet av en verdi NO341726B1 (no)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102004059979A DE102004059979B4 (de) 2004-12-13 2004-12-13 Vorrichtung und Verfahren zur Berechnung einer Signalenergie eines Informationssignals
PCT/EP2005/013383 WO2006063797A2 (de) 2004-12-13 2005-12-13 Verfahren zum bilden einer darstellung eines von einem quadrat eines wertes linear abhängigen berechnungsergebnisses

Publications (2)

Publication Number Publication Date
NO20072916L NO20072916L (no) 2007-09-13
NO341726B1 true NO341726B1 (no) 2018-01-08

Family

ID=36390168

Family Applications (1)

Application Number Title Priority Date Filing Date
NO20072916A NO341726B1 (no) 2004-12-13 2007-06-07 Fremgangsmåte for å skape en representasjon av et beregnet resultat, lineært avhengig av kvadratet av en verdi

Country Status (19)

Country Link
US (1) US8037114B2 (no)
EP (2) EP1825356B1 (no)
JP (2) JP4954087B2 (no)
KR (1) KR100921795B1 (no)
CN (1) CN101147122B (no)
AU (1) AU2005315826B2 (no)
BR (1) BRPI0517176B1 (no)
CA (1) CA2590509C (no)
DE (1) DE102004059979B4 (no)
ES (1) ES2596275T3 (no)
HK (1) HK1105233A1 (no)
IL (1) IL183835A (no)
IN (1) IN266829B (no)
MX (1) MX2007006805A (no)
NO (1) NO341726B1 (no)
PL (1) PL1825356T3 (no)
PT (1) PT1825356T (no)
RU (1) RU2375743C2 (no)
WO (1) WO2006063797A2 (no)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004059979B4 (de) 2004-12-13 2007-11-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zur Berechnung einer Signalenergie eines Informationssignals
GB0817977D0 (en) * 2008-10-01 2008-11-05 Craven Peter G Improved lossy coding of signals
US8311843B2 (en) * 2009-08-24 2012-11-13 Sling Media Pvt. Ltd. Frequency band scale factor determination in audio encoding based upon frequency band signal energy
WO2011046130A1 (ja) * 2009-10-14 2011-04-21 日本製紙株式会社 異物の沈積度合いを測定する方法
JP2012235832A (ja) * 2011-05-10 2012-12-06 Canon Inc 被検体情報取得装置
EP2980801A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method for estimating noise in an audio signal, noise estimator, audio encoder, audio decoder, and system for transmitting audio signals
US10020002B2 (en) * 2015-04-05 2018-07-10 Qualcomm Incorporated Gain parameter estimation based on energy saturation and signal scaling
US10559315B2 (en) * 2018-03-28 2020-02-11 Qualcomm Incorporated Extended-range coarse-fine quantization for audio coding
DE102022200283A1 (de) * 2022-01-13 2023-07-13 Robert Bosch Gesellschaft mit beschränkter Haftung Radarsystem und Verfahren zum Betreiben eines Radarsystems

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5570454A (en) * 1994-06-09 1996-10-29 Hughes Electronics Method for processing speech signals as block floating point numbers in a CELP-based coder using a fixed point processor
US6728739B1 (en) * 1998-06-15 2004-04-27 Asahi Kasei Kabushiki Kaisha Data calculating device and method for processing data in data block form
US6754618B1 (en) * 2000-06-07 2004-06-22 Cirrus Logic, Inc. Fast implementation of MPEG audio coding

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3587251T2 (de) * 1984-12-20 1993-07-15 Gte Laboratories Inc Anpassbares verfahren und vorrichtung fuer sprachkodierung.
JPS61188624A (ja) * 1985-02-15 1986-08-22 Fujitsu Ltd 固定小数点演算装置
US5197024A (en) 1989-06-14 1993-03-23 Pickett Lester C Method and apparatus for exponential/logarithmic computation
JP2948378B2 (ja) * 1991-09-28 1999-09-13 富士ゼロックス株式会社 重力多体系および電気力多体系用相互作用力計算用処理装置
JP3217576B2 (ja) * 1993-02-22 2001-10-09 テキサス インスツルメンツ インコーポレイテツド 集積オーディオデコーダ装置及び動作方法
US5764698A (en) * 1993-12-30 1998-06-09 International Business Machines Corporation Method and apparatus for efficient compression of high quality digital audio
JPH08237497A (ja) * 1995-02-23 1996-09-13 Canon Inc 画像処理装置及び方法
US5608663A (en) 1995-03-03 1997-03-04 Motorola, Inc. Computational array circuit for providing parallel multiplication
KR0154387B1 (ko) * 1995-04-01 1998-11-16 김주용 음성다중 시스템을 적용한 디지탈 오디오 부호화기
US5699485A (en) * 1995-06-07 1997-12-16 Lucent Technologies Inc. Pitch delay modification during frame erasures
US5719998A (en) 1995-06-12 1998-02-17 S3, Incorporated Partitioned decompression of audio data using audio decoder engine for computationally intensive processing
JP3110288B2 (ja) * 1995-07-21 2000-11-20 日本電気株式会社 指数対数変換回路
DE19638997B4 (de) * 1995-09-22 2009-12-10 Samsung Electronics Co., Ltd., Suwon Digitales Toncodierungsverfahren und digitale Toncodierungsvorrichtung
KR100335609B1 (ko) 1997-11-20 2002-10-04 삼성전자 주식회사 비트율조절이가능한오디오부호화/복호화방법및장치
JPH11242585A (ja) * 1998-02-24 1999-09-07 Sony Corp 除算回路およびグラフィック演算装置
WO1999050828A1 (en) * 1998-03-30 1999-10-07 Voxware, Inc. Low-complexity, low-delay, scalable and embedded speech and audio coding with adaptive frame loss concealment
JP3515903B2 (ja) * 1998-06-16 2004-04-05 松下電器産業株式会社 オーディオ符号化のための動的ビット割り当て方法及び装置
JP2000151414A (ja) * 1998-11-12 2000-05-30 Matsushita Electric Ind Co Ltd ディジタルオーディオ符号化装置、同符号化方法、及び同符号化プログラムを記録した記録媒体
US6341300B1 (en) * 1999-01-29 2002-01-22 Sun Microsystems, Inc. Parallel fixed point square root and reciprocal square root computation unit in a processor
US6516049B1 (en) * 2000-06-06 2003-02-04 Ikanos Communications, Inc. Method and apparatus for insertion loss estimation in wireline communications
JP2002196792A (ja) * 2000-12-25 2002-07-12 Matsushita Electric Ind Co Ltd 音声符号化方式、音声符号化方法およびそれを用いる音声符号化装置、記録媒体、ならびに音楽配信システム
US6732071B2 (en) 2001-09-27 2004-05-04 Intel Corporation Method, apparatus, and system for efficient rate control in audio encoding
DE10217297A1 (de) 2002-04-18 2003-11-06 Fraunhofer Ges Forschung Vorrichtung und Verfahren zum Codieren eines zeitdiskreten Audiosignals und Vorrichtung und Verfahren zum Decodieren von codierten Audiodaten
DE10234130B3 (de) 2002-07-26 2004-02-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Erzeugen einer komplexen Spektraldarstellung eines zeitdiskreten Signals
SG135920A1 (en) 2003-03-07 2007-10-29 St Microelectronics Asia Device and process for use in encoding audio data
DE102004059979B4 (de) 2004-12-13 2007-11-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zur Berechnung einer Signalenergie eines Informationssignals

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5570454A (en) * 1994-06-09 1996-10-29 Hughes Electronics Method for processing speech signals as block floating point numbers in a CELP-based coder using a fixed point processor
US6728739B1 (en) * 1998-06-15 2004-04-27 Asahi Kasei Kabushiki Kaisha Data calculating device and method for processing data in data block form
US6754618B1 (en) * 2000-06-07 2004-06-22 Cirrus Logic, Inc. Fast implementation of MPEG audio coding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Chhabra, A. et al., Texas Instruments Inc., "A Block Floating Point Implementation on the TMS320C54x DSP", Application Report SPRA610, Dec. 1999, pp. 1-10. [Hentet fra internet 2016.12.22] (http://www.eeng.dcu.ie/~ee206/pdf/block_flt_pt.pdf), Dated: 01.01.0001 *

Also Published As

Publication number Publication date
ES2596275T3 (es) 2017-01-05
US8037114B2 (en) 2011-10-11
HK1105233A1 (zh) 2008-02-06
PL1825356T3 (pl) 2017-01-31
AU2005315826A1 (en) 2006-06-22
NO20072916L (no) 2007-09-13
CA2590509C (en) 2014-10-28
CA2590509A1 (en) 2006-06-22
IL183835A0 (en) 2007-10-31
CN101147122B (zh) 2012-07-18
BRPI0517176A (pt) 2008-09-30
DE102004059979B4 (de) 2007-11-22
KR20070086097A (ko) 2007-08-27
JP2008026912A (ja) 2008-02-07
RU2375743C2 (ru) 2009-12-10
US20070276889A1 (en) 2007-11-29
JP4954087B2 (ja) 2012-06-13
EP1843246A3 (de) 2008-01-02
EP1843246A2 (de) 2007-10-10
BRPI0517176B1 (pt) 2022-05-17
MX2007006805A (es) 2007-07-20
IN266829B (no) 2015-06-04
EP1825356A2 (de) 2007-08-29
DE102004059979A1 (de) 2006-06-14
JP2008523450A (ja) 2008-07-03
JP4953978B2 (ja) 2012-06-13
AU2005315826B2 (en) 2009-06-11
WO2006063797A3 (de) 2006-09-21
KR100921795B1 (ko) 2009-10-15
RU2007126655A (ru) 2009-01-20
EP1825356B1 (de) 2016-08-03
PT1825356T (pt) 2016-11-04
CN101147122A (zh) 2008-03-19
WO2006063797A2 (de) 2006-06-22
IL183835A (en) 2013-07-31

Similar Documents

Publication Publication Date Title
NO341726B1 (no) Fremgangsmåte for å skape en representasjon av et beregnet resultat, lineært avhengig av kvadratet av en verdi
CN102592602B (zh) 对音频信号的时间伸缩改进变换编码
RU2601188C2 (ru) Способы и системы для эффективного восстановления высокочастотного аудиоконтента
JP6422813B2 (ja) 符号化装置、復号装置、これらの方法及びプログラム
US20190355369A1 (en) Coding device, decoding device, and method and program thereof
CA2718857A1 (en) Time warp contour calculator, audio signal encoder, encoded audio signal representation, methods and computer program
JP6979048B2 (ja) 低複雑度の調性適応音声信号量子化
WO2016167216A1 (ja) マッチング装置、判定装置、これらの方法、プログラム及び記録媒体
KR20070015790A (ko) 프로그래머블 프로세서에서 mpeg-2 또는 mpeg-4aac 오디오 복호 알고리즘을 처리하기 위한 연산 회로및 연산 방법
JPH07199996A (ja) 波形データ符号化装置、波形データ符号化方法、波形データ復号装置、及び波形データ符号化/復号装置
US10529350B2 (en) Coding device, decoding device, and method and program thereof
CN1711592A (zh) 用于产生音频成分的方法和设备
US7317958B1 (en) Apparatus and method of additive synthesis of digital audio signals using a recursive digital oscillator
US20090319589A1 (en) Using fractional exponents to reduce the computational complexity of numerical operations
CN115101033A (zh) 一种混音的方法及相关装置
CN103503064B (zh) 用于信号的低复杂度组合代码化和解码的装置和方法
JPH0527800A (ja) ベクトル量子化方式
KR20050100620A (ko) 수정된 이산 코사인 변환 계산
WO2001033556A1 (en) A method of reducing memory requirements in an ac-3 audio encoder