SE522261C2 - Kodning och avkodning av en digital signal - Google Patents
Kodning och avkodning av en digital signalInfo
- Publication number
- SE522261C2 SE522261C2 SE0001728A SE0001728A SE522261C2 SE 522261 C2 SE522261 C2 SE 522261C2 SE 0001728 A SE0001728 A SE 0001728A SE 0001728 A SE0001728 A SE 0001728A SE 522261 C2 SE522261 C2 SE 522261C2
- Authority
- SE
- Sweden
- Prior art keywords
- samples
- digital
- digital samples
- descriptions
- block
- Prior art date
Links
- 238000013139 quantization Methods 0.000 claims abstract description 73
- 238000000034 method Methods 0.000 claims abstract description 58
- 230000005236 sound signal Effects 0.000 claims description 39
- 230000005540 biological transmission Effects 0.000 claims description 30
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 3
- 230000001143 conditioned effect Effects 0.000 claims 3
- 239000000523 sample Substances 0.000 description 37
- 230000003111 delayed effect Effects 0.000 description 11
- 230000008901 benefit Effects 0.000 description 7
- 238000012546 transfer Methods 0.000 description 7
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000001934 delay Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 235000009300 Ehretia acuminata Nutrition 0.000 description 1
- 244000046038 Ehretia acuminata Species 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000001404 mediated effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/38—Flow control; Congestion control by adapting coding or compression rate
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
Description
20 25 30 35 522 261 2 ankommer för sent till en realtidstillämpning kan inte utnyttjas för att återskapa motsvarande signal eftersom denna signal redan har blivit, eller borde ha blivit, levererad till mottagarhögtalaren. Följaktligen är ett paket som ankommer för sent ekvivalent med ett förlorat paket.
Ett kännetecken för ett IP-nätverk är att om ett paket ankommer så är innehållet oskadat. Ett IP-paket har ett huvud som innefattar ett CRC-fält (Cyclic Redundancy Check, cyklisk redundanskontroll). CRCn utnyttjas för att kontrollera om innehàllet i paketet är oskadat. Om CRCn indikerar ett fel, förkastas paketet. Med andra ord existerar inte bitfel, bara förlorade paket.
Det huvudsakliga problemet med förlorade eller fördröjda datapaket är införandet av distorsion i den äterskapade tal- eller ljudsignalen. Distorsionen härrör sig frän det faktum att signalsegment, förmedlade av förlorade eller fördröjda datapaket, inte kan àterskapas.
Talkodarna, som utnyttjas idag, konstruerades ursprungligen för kretsförmedlade nätverk med felfria kanaler eller med kanaler som kännetecknades av bitfel.
Därför är det ett problem med dessa talkodare att de inte hanterar paketförluster så bra.
Med tanke pà det som beskrivits ovan, såväl som andra egenheter i paketförmedlade nätverk, finns det problem knutna till hur samma kvalitet pá telefoni över paketförmedlade nätverk ska tillhandahållas som pà ordinär telefoni över kretsförmedlade nätverk. För att lösa dessa problem mäste det paketförmedlade nätverkets kännetecken tas i beaktande.
För att överkomma problemen associerade med förlorade eller fördröjda datapaket under Q realtidsöverföringar, är det lämpligt att introducera diversitet för överföringar över paketförmedlade nätverk.
Diversitet är ett förfarande som ökar robustheten för överföring genom spridning av information i tiden (som vid interfoliering i mobiltelefoni) eller över någon u n n | n . Q » n ø . nu 10 15 20 25 30 35 522 261 3 fysisk enhet (som när multipla mottagarantenner utnyttjas). I paketförmedling introduceras diversitet företrädesvis på paketnivà genom finnandet av något sätt att skapa diversitet mellan paket. Det enklaste sättet att skapa diversitet i ett paketförmedlat nätverk är att sända samma paketnyttolast två gånger i två olika paket.
På detta sätt kommer inte ett förlorat eller fördröjt paket att störa överföringen av nyttolastinformationen, eftersom ett annat paket med identisk nyttolast troligtvis kommer att mottagas i sinom tid. Det är uppenbart att informationsöverföringen i ett diversitetssystem kommer att kräva mer bandbredd än informationsöverföring i ett vanligt system.
Många av diversitetsförfarandena eller diversitetssystemen i känd teknik har nackdelen att ljudsignalsöverföringen inte drar fördel av den ytterligare bandbredd som behövs av den överförda redundansinformationen under normala driftsförhàllanden.
När det inte finns några paketförluster eller fördröjningar kommer den ökade bandbredden, för det mesta, att sålunda bara utnyttjas för överföring av administrationsinformation.
Eftersom bandbredd för det mesta är en begränsad resurs skulle det vara önskvärt om en överförd ljudsignal, på något sätt, kunde dra fördel av den ytterligare bandbredden som krävs av ett diversitetssystem. Företrädesvis skulle det vara önskvärt om den ytterligare bandbredden kunde utnyttjas för att förbättra kvaliteten på den avkodade ljudsignalen vid mottagaränden.
I ”Design of Multiple Description Scalar Quantizers”, V. A. Vaishampayan, IEEE Transactions on Information Theory, vol. 39, nr. 3, maj 1993, beskrivs utnyttjandet av multipla beskrivningar i ett diversitetssystem. Kodaren skickar tvâ olika beskrivningar av samma källsignal över två olika kanaler, och avkodaren återskapar källsignalen baserat på Lgççí-.LQ Qi? 1-5 pg; o; .,,ï"'~.-;~.*_.~-_=z:.~".2=. a ...ap-e ...nu 2:. u-~V.«_ -.. .~ _~>.å.:-.:::<; lO 15 20 25 30 35 v ~ - | .f n n. 522 261 f2Fq;;g= . o | | n - o nu 4 information mottagen från kanalen/kanalerna som för närvarande fungerar. Sålunda kommer kvaliteten på den àterskapade källsignalen att baseras pà en beskrivning om bara en kanal fungerar. Om båda kanalerna fungerar kommer den återskapade källsignalen att baseras på två beskrivningar och högre kvalitet kommer att erhållas vid mottagaränden. I artikeln adresserar författaren problemet med indextilldelning för att maximera fördelen av multipla beskrivningar i ett diversitetssystem.
I ett system som överför data över paketförmedlade nätverk adderas ett eller flera informationshuvuden till varje datapaket. Dessa huvuden innehåller datafält med information om paketets destination, avsändaradressen, mängden data inom paketet såväl som andra datafält som hänför sig till transporten av paketet. Storleken av huvudena som är adderade till paketen utgör administrationsinformation som måste tas i beaktande. För att hålla fördröjningen av datapaketeringen liten, har datapaketens nyttolast begränsad storlek. Nyttolasten är informationen inom ett paket som utnyttjas av en tillämpning. Storleken av nyttolasten, jämfört med storleken av det faktiskt överförda datapaketet med dess innefattade administrationsinformation, är ett viktigt mått när storleken av tillgänglig bandbredd beaktas. Ett problem med överföring av flera relativt små datapaket är att storleken av huvudena kommer att vara betydande i jämförelse med storleken av den information som är användbar för tillämpningen. Faktum är att storleken av huvudena inte sällan kommer att vara större än storleken av den användbara informationen.
För att lindra bandbreddsproblem är det önskvärt att minska bittakten genom lämplig kodning av informationen som ska överföras. Ett förfaringssätt som ofta utnyttjas är att koda informationsdata med utnyttjande av prediktioner för nämnda data. Dessa prediktioner genereras baserat på föregående informationsdata i samma informationssignal. På grund av fenomenet att paket kan : o a u .- 10 15 20 25 30 35 522 261 » . n - | - ø ø n n n n. 5 förloras under överföring är det dock inte en bra idé att införa beroenden mellan olika paket. Om ett paket förloras och âterskapandet av ett följande informationssegment är beroende pà informationen innefattad av det förlorade paketet, kommer àterskapandet av följande informationssegment att bli lidande. Det är viktigt att undvika denna typ av felfortplantning. Det vanliga sättet att utnyttja prediktion för att minska bittakten för en tal- eller ljudsignal är därför inte effektivt för denna typ av överföringskanaler, eftersom sådan prediktion skulle leda till felfortplantning. Det ligger därför ett problem i hur prediktion ska tillhandahållas i ett paketförmedlat system när datapaket med tal- eller ljudsignalsinformation ska överföras.
Utnyttjandet av prediktion är ett vanligt förfarande vid talkodning för att förbättra kodeffektiviteten, d.v.s. för att minska bittakten. Ett exempel är den prediktiva kodningstekniken för differentiella PCM-kodare (DPCM) beskriven i "Digital Coding of Waveforms: Principles and Applications to Speech and Video", N.S.
Jayant och P. Noll, Prentice Hall, ISBN O-13-211913-7 01, 1984. Prediktionen av ett signalsampel beräknas av en prediktor baserat på ett föregående kvantiserat signalsampel, d.v.s. prediktionen är bakàtanpassningsbar.
Det beräknade prediktionssamplet subtraheras därefter fràn det ursprungliga samplet som ska predikteras.
Resultatet av subtraktionen är felet som erhållits vid prediktionen av signalsamplet med utnyttjande av prediktorn. Detta resulterande prediktionsfel kvantiseras därefter och överförs till en mottagarände. Vid mottagaren adderas prediktionsfelet till en regenererad prediktionssignal från en prediktor som motsvarar prediktorn vid sändaränden. Denna kombination av det mottagna prediktionsfelet med ett beräknat prediktionsvârde kommer möjliggöra ett àterskapande av det ursprungliga signalsamplet vid mottagaränden. Detta slag av kodning leder till besparingar vad gäller ¿¿,f:j_ If 131-13 fo: ,.=<,ï=..-_LL,. oss: 3.; .\.::\¿L~ífi_-~~-_ _ .z i:.;.;.,l\,r, 10 15 20 25 30 35 522 261 . 6 bittakten eftersom redundans borttages och prediktionsfelsignalen är av lägre ordning än ursprungssignalen, varigenom färre bitar behövs för kvantiseringen av felsignalen pà en given ljudbrusnivà.
Som nämndes ovan leder detta slag av kodning/avkodning av tal eller ljud över ett paketförmedlat nätverk till felfortplantning om ett paket förloras. När ett paket inte mottages kommer prediktionsvärdet, beräknat i avkodaren, att baseras pà sampel i det senast mottagna paketet. Detta kommer att resultera i ett prediktionsvärde i avkodaren som skiljer sig fràn motsvarande prediktionsvärde i kodaren. Det mottagna kvantiserade prediktionsfelet kommer sålunda att adderas till fel prediktionsvärde i avkodaren. Ett förlorat paket kommer följaktligen att leda till felfortplantning. Om man skulle överväga att nollställa prediktionstillstàndet efter varje skickat/mottaget paket skulle det inte bli någon felfortplantning. Detta skulle emellertid leda till en lág kvalitet pá den avkodade signalen. Orsaken är att om prediktionstillstàndet nollställs kommer det att resultera i en låg kvalitet pà prediktionsvärdet under kodning och sàlunda en generering av ett prediktionsfel med mer informationsinnehàll. Detta kommer i sin tur att resultera i en låg kvalitet på den kvantiserade signalen med en hög ljudbrusnivà, eftersom kvantiseraren inte är anpassad att kvantisera signaler med sådant högt informationsinnehàll.
Om ett diversitetssystem realiseras baserat pà multipla beskrivningar kommer införandet av prediktion att möta ytterligare problem som beror pà det faktum att ljudsignalen har flera representationer. Om det ovan beskrivna förfaringssättet för prediktiv kodning/avkodning utnyttjas tillsammans med multipla beskrivningskvantiserare kommer ett av två problem att uppstå. Problemet kommer att bero på hur prediktorerna utnyttjas vid sändar-/mottagaränden. 10 15 20 25 30 35 522 261 7 Om var och en av de multipla beskrivningskvantiserarna vid mottagaränden skulle mata oberoende prediktionsfilter, skulle prediktionsvärdet för varje beskrivning vara oberoende av ankomsten av de andra multipla beskrivningarna. Med denna lösning kommer emellertid förskjutningen av de olika kodade representationerna att skilja sig mellan olika oberoende prediktorutdata. Därigenom försvinner det regelbundna mellanrummet mellan representationer från de multipla kvantiserarna, och med det försvinner även den optimerade förbättringen som mottagandet av multipla beskrivningar ger.
Alternativt skulle alla multipla beskrivningar kunna skapas från samma prediktor varigenom den optimerade förbättringen av att mottaga multipla beskrivningar upprätthålls. Om denna prediktion är från en fördefinierad representation, t.ex. en bästa representation mottagen från en sammanslagning av alla beskrivningar, kommer dock synkroniseringen av avkodaren med kodaren att gå förlorad om en (eller flera) beskrivning av de multipla beskrivningarna inte mottages på grund av en paketförlust vid överförandet av den beskrivningen från kodaren vid sändaränden till avkodaren vid mottagaränden.
Som nämnts ovan föreligger det sålunda ett problem i hur prediktion ska utnyttjas för att minska bittakten av en tal- eller ljudsignal för överföring över ett paketförmedlat nätverk, eftersom ett förlorat paket med ett signalinformationssegment negativt kommer att påverka återskapandet av det följande signalinformations- segmentet.
När multipla beskrivningar utnyttjas kommer överföringen av ljudsignalen att kräva mer bandbredd än om en enda beskrivning utnyttjades. I ett sådant system skulle det vara än mer intressant att utnyttja prediktion för att minska den erforderliga bandbredden. Som det beskrivits ovan föreligger det emellertid ett problem i -\<~- ='=~:_.f; .13-3 »-.-~.;¿^=~~;:~.~~ ~~ ra ., ~. f... .~..-:-¿\.-ï:~-..\- ___; .\.-_.,-...».»..~'.... t., .._.._.»,-..\.\, o n ~ . n o ø . . u n u n en 10 15 20 25 30 35 n n n. n o u o . n n n u I 0 O I I O I I CI g' p 0 Q q g Q g g I Ü Û I O I I I 0 I I I II I l 1- :-- v" nu n u a - . - . . . u . . o . n p . . . . o u - u . o »n n. u.. .- 8 hur den prediktiva kodnings-/avkodningsmekanismen i ett sådant system skall implementeras under bibehållande av den grundläggande vinsten med multipel beskrivningskvantisering.
Sammanfattning av uppfinningen Ett syfte med föreliggande uppfinning är att oundanröja åtminstone nâgra av de ovannämnda problemen med att utnyttja prediktiv kodning/avkodning för att minska bandbredden som krävs för överföring av en digitaliserad ljudsignal över ett paketförmedlat nätverk.
Enligt föreliggande uppfinning uppnås detta syfte med förfaranden som har de särdrag som definieras i de bifogade kraven.
Föreliggande uppfinning tillhandahåller sålunda ett fördelaktigt sätt att koda/avkoda digitala sampel för sändning/mottagning över ett paketförmedlat nätverk.
Detta utförs genom förlustfri kodning av de digitala samplen och förlustfri avkodning av de motsvarande kodorden baserat på genererade prediktionssampel. Under kodning kvantiseras de genererade prediktionssamplena separat från kvantiseringen av de digitala samplen.
Prediktionerna utnyttjas i indexdomänen i form av kvantiserade index under kodning/avkodning av den digitala signalen.
En fördel med utnyttjandet av prediktioner på detta sätt är att prediktorn kan konfigureras för att fungera på samma sätt vid mottagaränden som vid såndaränden, och det är inte nödvändigt att överföra någon extra prediktionsinformation till mottagaränden.
Enligt en första aspekt på uppfinningen tillhandahålls ett förfarande för kodning av en digital signal och dess block av digitala sampel för överföring över ett paketförmedlat nätverk, varvid förfarandet innefattar stegen: kvantisering av de digitala samplen; generering av prediktionssampel baserat pà föregående kvantiserade digitala sampel av nämnda digitala signal; ::.; .=\..:_:.=\.W-_>:_; tr; _':.:.: 10 15 20 25 30 35 522 261 9 samt förlustfri kodning av de kvantiserade digitala samplen baserat pà de genererade prediktionssamplen.
Följaktligen, enligt en andra aspekt pà uppfinningen, tillhandahålls ett förfarande för avkodning av en digital signal och dess block av digitala sampel som mottages från ett paketförmedlat nätverk, varvid förfarandet innefattar stegen: förlustfri avkodning av kodord i mottagna datapaket till mottagna kvantiseringsnivàer; generering av prediktionssampel baserat pà föregående mottagna kvantiserade digitala sampel av nämnda digitala signal; härledning av, baserat pà de genererade prediktionssamplen, mottagna kvantiserade digitala sampel av nämnda digitala signal från nämnda kvantiseringsnivàer; samt dekvantisering av nämnda mottagna kvantiserade digitala sampel till digitala sampel av nämnda digitala signal.
Prediktioner baserade på de kvantiserade digitala samplen genereras antingen direkt som kvantiserade index av prediktionssamplen, eller som sampel som är kvantiserade efter sin generering med utnyttjande av samma uppsättning av kvantiseringsnivàer som utnyttjats för de kvantiserade digitala samplen, eller en helt annan uppsättning av kvantiseringsnivàer.
När den förlustfria kodningen/avkodningen baseras pà prediktionsfel, genereras sålunda dessa fel i den kvantiserade indexdomänen som skillnaden mellan kvantiserade prediktionssampel och kvantiserade digitala sampel av signalen. Detta kan jämföras med traditionell prediktiv kodning/avkodning där prediktionsfelen genereras före kvantisering, i motsats till efter kvantiseringen. Om prediktion sker före kvantiseraren kommer inte kvantiseraren, som kvantiserar prediktionsfelen, att vara optimerad för kvantiseringssignaler med ett högt informationsinnehàll.
Pà liknande sätt skulle signaler med högt informationsinnehàll vara närvarande om ett prediktionstillstànd forceras till noll i början av ett “ * ' ' - > _ ' 'i Vi ÜLLH-f-Iš ,:~.;._ .flßíi 10 15 20 25 30 35 522 261 10 nytt block för undvikande av felfortplantning mellan I ett sådant fall kommer prediktionsfelsignalen huvudsakligen att vara den olika block av digitala sampel. ursprungliga digitala signalen. I lösningen enligt uppfinningen, utnyttjas emellertid prediktionsfelet för att öka prestanda för en förlustfri kodare.
Med utnyttjande av föreliggande uppfinning kommer sålunda ett dåligt prediktionsvärde fortfarande att möjliggöra en god kvalitet pà det överförda signalsamplet; kompromissen ligger i att bitbesparingarna hos kodningen/avkodningen kommer att vara låga.
Prediktionstillstàndet för varje prediktor sätts med fördel till noll vid generering av prediktionssampel under förlustfri kodning/avkodning i början av ett block av digitala sampel. I allmänhet baseras genereringen av ett prediktionssampel under det förlustfria kodnings- /avkodningsförfarandet på ett eller flera föregående kvantiserade digitala sampel. Eftersom ett paket med ett block av sampel kan förloras eller bli fördröjt, är det emellertid önskvärt att inte utnyttja prediktion över blockgränser för att därmed undvika felfortplantning.
Alla kanteffekter som beror pà manipuleringen av prediktionstillstàndet kommer att undvikas eftersom samplen av den digitala signalen i sig själva kontinuerligt kvantiseras innan de kombineras med kvantiserade prediktioner. I motsats till detta skulle ett baserande av kvantiseringen på prediktionsfelen enbart leda till kanteffekter pà grund av den stora variationen av prediktionerna när dessa manipuleras i början av ett block.
I en utföringsform är den förlustfria kodningen/avkodningen villkorligt baserad på ett kvantiserat index av ett genererat prediktionssampel. Det kvantiserade indexet utnyttjas för att välja ut en av flera uppslagstabeller med vilken kvantiserade digitala sampel förlustfritt kodas till kodord, eller kodord förlustfritt avkodas till kvantiserade digitala sampel. 2212 12 Liv-al* ;.~: .a 10 15 20 25 30 35 I u u.. ; n N s . n n g.
I Il I I f V I I. i.) I I l Il I 1 co o n o u u u , q g n nu n. u; » f n a . . f . . n l I I OI i I I I i I I I Û O I' [OI I Il IS o en-pos . ll Den kvantiserade prediktionen, utnyttjad för att villkora den förlustfria kodningen/avkodningen, kan kompletteras med t.ex. en grovt kvantiserad uppskattning av signal- eller prediktionsfelvariansen, eller andra grovt kvantiserade egenskaper som är extraherade från signalens förflutna. Ett antal egenskaper kan sålunda extraheras från signalens förflutna, grovt kvantiseras och därefter utnyttjas för att villkora en förlustfri kodare eller avkodare. Följaktligen kan en förlustfri kodare/avkodare oberoende optimeras och utnyttjas för varje möjlig kombination av index från kvantiseringen av de extraherade egenskaperna. Exempel pà användbara egenskaper för kodningen av talsignaler är: en kvantiserad prediktion; det kvantiserade indexet från inte bara en utan från flera föregående sampel i signalen; en kvantiserad uppskattning av signal- eller prediktionsfelvarians; en uppskattning av riktningen för vågformen och/eller en tonande/icke-tonande klassificering.
Några av de ovanstående egenskaperna kan extraheras per sampel eller per block av sampel i kodaren och överföras som sidoinformation. Vågformsriktningen är ett exempel på en sådan egenskap som är lämplig för överföring som sidoinformation, t.ex. genom utnyttjande av en högdimensionell blockkod. En tonande/icke-tonande klassificering är en annan. Sidoinformationen resulterar i en produktkod för den förlustfria kodningen. Kodningen av denna produktkod kan göras antingen sekventiellt eller med syntesanalys.
Emellertid är fördelen med bittaktsreduktionen vid förlustfri kodning/avkodning baserad på prediktion mindre betydelsefull, och bandbredden fortfarande ett problem om, ett mycket stort administrationstillägg, i form av ett huvud, adderas till den kodade informationen före överföringen av datapaketet. Detta problem uppstår om multipla beskrivningar av den digitala signalen utnyttjas 10 15 20 25 30 35 522 261 n q a o | ø ø ~ n . n | o ø n oo 12 för att erhålla diversitet; ett problem som emellertid löses av föreliggande uppfinning.
Företrädesvis är kodaren/avkodaren enligt föreliggande uppfinning en kodare/avkodare av typen multipel beskrivning, d.v.s. en kodare/avkodare som genererar/mottager åtminstone tvà olika beskrivningar av en digital signal. De multipla beskrivningarna tillhandahåller sålunda multipla blockbeskrivningar för varje block av digitala sampel.
Uppfinningen tillhandahåller diversitet baserat pà multipla beskrivningar genom sändandet/mottagandet av olika individuella blockbeskrivningar av samma block av digitala sampel i olika datapaket vid olika tidpunkter.
Denna sà kallade tidsdiversitet tillhandahàllen av fördröjningen mellan blockbeskrivningarna är i synnerhet fördelaktig när en flaskhals lokaliserad i tiden uppstår i det paketförmedlade nätverket, eftersom chansen att mottaga åtminstone en blockbeskrivning av ett visst block ökar när de olika blockbeskrivningarna överförs vid olika tidpunkter i olika paket. Företrädesvis introduceras ett fördefinierat tidsintervall mellan sändningarna av tvà individuella blockbeskrivningar av samma block av digitala sampel.
Blockbeskrivningar av olika beskrivningar av den digitala signalen, och som hänför sig till olika block av digitala sampel, grupperas med fördel i samma paket. Åtminstone tvà på varandra följande block representeras av individuella blockbeskrivningar fràn olika beskrivningar av den digitala signalen. Detta är fördelaktigt eftersom det undviker den extra administrationsinformationen som erfordras av pakethuvudena som överför de olika blockbeskrivningarna för ett och samma block av digitala sampel, medan alltjämt bara en blockbeskrivning av ett specifikt block av digitala sampel förloras eller fördröjs när ett paket förloras eller fördröjs. 10 15 20 25 30 35 522 261 | | | ~ | - | u Q u . a. 13 Förlustfri kodning/avkodning utförs med fördel individuellt för var och en av de olika blockbeskrivningarna. Detta reducerar den bittakt som behövs för de multipla beskrivningarna som överförs.
Individuella prediktorer av samma typ utnyttjas vidare för de olika beskrivningarna vid sändaränden respektive mottagaränden. Detta eliminerar problemet med förlorad synkronisering mellan en kodare och en avkodare som annars kan inträffa om ett paket med en blockbeskrivning förloras när en enda prediktor utnyttjas för den förlustfria kodningen/avkodningen vid den sändande/mottagande änden.
Uppfinningen är lämplig för en digital signal som består av en digitaliserad ljudsignal, i vilken fall ett block av digitala sampel överensstämmer med ett ljudsegment av den digitaliserade ljudsignalen.
Enligt uppfinningen är den digitala signalen eventuellt en n-bitars PCM-kodad digitaliserad ljudsignal. Företrädesvis en 64kbit/s PCM-signal enligt standarden G.711. Den n-bitars PCM-kodade signalbeskrivningen kodomvandlas av en multipelbeskrivningskodare till åtminstone två beskrivningar som utnyttjar färre än n bitar för dess representation, t.ex. två (n-1)-bitarsrepresentationer, tre (n-1)-bitarsrepresentationer eller fyra (n-2)- bitarsrepresentationer. Vid mottagaränden kodomvandlar en 'multipelbeskrivningsavkodare de mottagna beskrivningarna tillbaka till en enda n-bitars PCM-kodad ljudsignal.
Kodomvandlingen motsvarar en översättning mellan ett kodord av en beskrivning och respektive kodord av åtminstone tvà olika beskrivningar. Genom kodomvandling av den PCM-kodade signalen till multipla beskrivningar finns det inget behov av att först koda och därefter áterkoda den PCM-kodade signalen för att kunna tillhandahålla multipla beskrivningar.
Uppfinningen möjliggör sålunda utnyttjandet av prediktiv kodning/avkodning när multipla beskrivningar 'íàfilïQïífflïifiš'.avfktviv ärr.- .~.^I:}¿;,kfl.. ___-ni, ..^:..__f~ ZïI-L LiM-L: Jcfl; 10 15 20 25 30 35 522 261 n n u o o - v o | u u oo 14 utnyttjas för att överföra en digital signal, sàsom en digitaliserad ljudsignal, över ett paketförmedlat nätverk.
Det inses att uttrycket digitalt signalsampel, använt häri, är ämnat att tolkas som antingen själva samplet eller som vilken form som helst av representation av signalen som är erhàllen eller extraherad frän en eller flera av dess sampel. Dessutom är ett prediktionssampel ämnat att tolkas som antingen en prediktion av ett faktiskt digitalt signalsampel eller som vilken form som helst av prediktion av en representation som är erhàllen, eller extraherad, fràn en eller flera av de digitala signalsamplen. Slutligen är en kvantiseringsnivà av ett digitalt sampel antingen indexet eller värdet av ett kvantiserat digitalt sampel.
Kort beskrivning av ritningarna Ytterligare särdrag os och fördelar med uppfinningen kommer att framgå tydligt av de bifogade kraven och av den följande detaljerade beskrivningen av ett antal exemplifierande utföringsformer av uppfinningen när denna läses tillsammans med de bifogade ritningarna, i vilken samma hänvisningsbeteckningar utnyttjas för samma särdrag, och i vilka: Fig. 1 visar ett exemplifierande sätt att realisera multipla beskrivningar enligt känd teknik; Fig. 2 visar en översikt av den sändande delen av ett system för överföring av ljud över ett paketförmedlat nätverk; Fig. 3 visar en översikt av den mottagande delen av ett system för överföring av ljud över ett paketförmedlat nätverk; Fig. 4a och 4b visar Översikter av en Ljudkodare vid den sändande delen respektive en Ljudavkodare vid den mottagande delen av ett system för överföring av ljud över ett paketförmedlat nätverk enligt en utföringsform av föreliggande uppfinning; 10 15 20 25 30 35 522 261 n - - . .a n o - . ~ | n - n o | ø ø nu 15 Fig. Sa och 5b visar översikter av en Ljudkodare vid den sändande delen respektive en Ljudavkodare vid den mottagande delen av ett system för överföring av ljud över ett paketförmedlat nätverk enligt en annan utföringsform av föreliggande uppfinning; Fig. 6a och 6b visar översikter av en Ljudkodare vid den sändande delen respektive en Ljudavkodare vid den mottagande delen av ett system för överföring av ljud över ett paketförmedlat nätverk enligt ytterligare en annan utföringsform av föreliggande uppfinning; och Fig. 7 visar några av elementeten i den sändande delen av ett system för överföring av ljud över ett paketförmedlat nätverk enligt ytterligare en utföringsform av föreliggande uppfinning.
Detaljerad beskrivning av föredragna utföringsformer I fig. 1 visas ett exemplifierande sätt att realisera multipla beskrivningar av en källsignal, såsom en ljudsignal. Detta är ett känt tillvägagångssätt och är ett exempel på multipla beskrivningar som kan utnyttjas av föreliggande uppfinning. Emellertid kan andra lämpliga sätt att realisera multipla beskrivningar lika väl utnyttjas tillsammans med föreliggande uppfinning. I fig. 1 visas kvantiseringsnivåerna för två olika beskrivningar 100, visar har båda beskrivningarna samma 110 från två motsvarande Kvantiserare. Som figuren kvantiseringsstegsstorlek Q, men beskrivning 110 har kvantiseringsnivåer som skiftats med halva kvantiseringsstegsstorleken Q med avseende pà kvantiseringsnivàerna i beskrivning 100. Från dessa två beskrivningar 100 och 110 leder en kombination till en kombinerad beskrivning 120 med finare kvantiseringsstegsstorlek Q/2. Utnyttjande av de två grova kvantiserarna kräver en bittakt på 2R för att matcha prestanda hos en enkel fin Kvantiserare med en bittakt R+1. Om varje beskrivning 100 och 110 till exempel har 4 kvantiseringsnivåer kommer varje 10 15 20 25 30 35 522 261 » - . - .- n u | . n ø a . o c u n u nu 16 kvantiseringsnivà att kräva 2 bitar för att koda dessa nivåer, d.v.s. totalt 4 bitar. Om en finare Kvantiserare skulle utnyttjas för den kombinerade beskrivningen 120 skulle de 7 kvantiseringsnivàerna kräva 3 bitar vid kodning. För höga R kommer detta utgöra en signifikant ökning av bittakten när tvà grova Kvantiserare utnyttjas för tillhandahàllet av multipla beskrivningar istället för en finare Kvantiserare som tillhandahåller en enkel beskrivning.
I fig. 2 visas ett blockschema av den sändande delen i ett system för överföring av ljud över ett paketförmedlat nätverk. Ljudet upptas av en mikrofon 210 för att producera en analog elektrisk signal 215 som samplas och kvantiseras till ett digitalt format av en A/D-omvandlare 220. Samplingstakten av ljudsignalen beror på ljudsignalens källa och den önskade kvaliteten.
Samplingstakten är typiskt 8 eller 16 kHz för talsignaler och upp till 48 kHz för ljudsignaler. Kvaliteten på den digitala signalen påverkas också av noggrannheten hos kvantiseraren i A/D-omvandlaren. För talsignaler är noggrannheten vanligtvis mellan 8 och 16 bitar per sampel. I ett typiskt system innefattar sândaränden en Ljudkodare 230 för att ytterligare komprimera den samplade digitala signalen. Enligt föreliggande uppfinning är ett ytterligare syfte med Ljudkodaren 230 att modifiera representationen av ljudsignalen före överföring, med avsikten att öka robustheten mot paketförluster och fördröjningar i det paketförmedlade nätverket. Den samplade signalen 225 inmatas i Ljudkodaren 230 som kodar den samplade signalen och paketerar den erhållna kodade signalen i datapaket.
Datapaketen 235 överförs därefter till en Styrenhet 240 som adderar sekvensering och information om destinationsadressen till datapaketen för att göra paketen lämpliga för överföring över paketförmedlade nätverk. Datapaketen 245 sänds därefter över det paketförmedlade nätverket till en mottagande ände. 10 l5 20 25 30 35 522 261 | u . ~ a. u n 17 I fig. 3 visas ett blockschema av den mottagande delen i ett system för överföring av ljud över ett paketförmedlat nätverk. En Styrenhet 350 mottager datapaket från det paketförmedlade nätverket, borttager adresseringsinformation och placerar datapaketen 355 i en Jitterbuffert 360. Jitterbufferten 360 är ett typiskt RAM, vilken datapaket 365 lämnar Jitterbufferten 360. Den fysiska kapaciteten hos Jitterbufferten är sådan att lagringsmedium, som reglerar takten med inkommande datapaket 355 kan lagras. Datapaket 365 som lämnar Jitterbufferten 360 inmatas i en Ljudavkodare 370.
Ljudkodaren 370 avkodar informationen i datapaketen till reproducerade sampel av en digital ljudsignal. Den digitala signalen 375 omvandlas därefter av en D/A-_ omvandlare 380 till en analog elektrisk signal 385, vilken analog signal driver ett ljudreproducerande system 390, t.ex. en högtalare, för att producera ljud vid mottagaränden.
Konstruktionen och arbetssättet för Ljudkodaren och Ljudavkodaren, enligt en utföringsform av föreliggande uppfinning, kommer nu att beskrivas i mer detalj med hänvisning till fig. 4a och 4b. Bortsett från det som beskrivs nedan avseende ljudkodnings- /ljudavkodningsblock, motsvarar det övergripande arbetssättet det som tidigare beskrivits med hänvisning till fig. 2 och 3.
I fig. 4a visas en Ljudkodare för kodning av en digital signal vid en sändarände enligt en utföringsform av föreliggande uppfinning. Ljudkodaren innefattar en ett Fördröjningsblock 420, en Prediktor 430, en andra första Kvantiserare 400, en Dekvantiserare 410, Kvantiserare 440 och en Förlustfri Kodare 450.
Dekvantiseraren 410 och den andra Kvantiseraren 440 är avbildade med streckade linjer eftersom de inte är nödvändiga element i denna utföringsform. Utnyttjandet av dessa valfria element kommer att beskrivas senare i en alternativ utföringsform. lO 15 20 25 30 35 522 261 | n n - n- n o 18 På motsvarande sätt visas, i fig. 4b, en Ljudavkodare för avkodning av en digital signal vid mottagaränden enligt en utföringsform av föreliggande uppfinning. Ljudavkodaren innefattar en Förlustfri Avkodare 455, en Prediktor 480, Fördröjningsblock 490 samt Dekvantiserare 460 och 463. en Kvantiserare 470, ett Kvantiseraren 470 och Dekvantiseraren 463 är avbildade med streckade linjer eftersom de inte är nödvändiga element i denna utföringsform. Utnyttjandet av dessa valfria element kommer att beskrivas senare i en alternativ utföringsform.
Syftet med att utföra förlustfri kodning/avkodning, med hjälp av den Förlustfria Kodaren 450 och den Förlustfria Avkodaren 455, är att finna ett mindre bitförbrukande sätt att beskriva data som överförs från sändaränden till mottagaränden utan att förlora någon information. Förlustfri kodning utnyttjar statistisk information om den inmatade signalen för att reducera den genomsnittliga bittakten. Detta utförs, t.ex., på ett sådant sätt att kodorden är ordnade i en tabell efter hur ofta de förekommer i den inmatade signalen. De vanligaste kodorden representeras därvid med färre bitar än resten av kodorden. Ett exempel på en känd Förlustfri Kodare som utnyttjar denna idé är Huffman-kodaren.
Förlustfri kodning fungerar bra enbart i nätverk utan bitfel i mottagen data. Kodorden utnyttjade i samband med förlustfri kodning är av olika längd, och om ett bitfel uppstår är det inte möjligt att veta när ett kodord slutar och ett nytt börjar. Ett enstaka bitfel introducerar sålunda inte bara ett fel i avkodningen av det aktuella kodordet, utan i hela datablocket. När det paketförmedlade nätverket är ett IP-nätverk (Internet Protocol) förkastas automatiskt alla skadade datapaket. I ett sådant paketförmedlat nätverk kommer det sålunda inte att finnas några bitfel i mottagna datapaket vid mottagaränden. Enligt föreliggande uppfinning är därför förlustfri kodning, såsom Huffmankodning med hjälp av 10 15 20 25 30 35 522 261 n o u o » | u n n ø n n n e . vc 19 skalärer eller block, lämplig att utnyttjas för oberoende komprimering av vart och ett av de kodade blocken av digitala sampel, vilka block tillsammans utgör den digitala signalen.
Den Förlustfria Kodaren 450 och den Förlustfria Avkodaren 455 i utföringsformen i fig. 4a och 4b innefattar båda en tabell som är skapad att innefatta alla möjliga kodord och deras bitrepresentationer.
Tabelluppslagning utförs för att förlustfritt koda ett block av digitala sampel som kvantiserats av Kvantiseraren 400 före överföring som kodord över det paketförmedlade nätverket. Vid mottagaränden avkodas förlustfritt, på motsvarande sätt, kodorden i ett kodat block av kvantiserade digitala sampel till kvantiserade digitala sampel, vilka därefter dekvantiseras av Dekvantiseraren 460 till ett àterskapat originalblock av digitala sampel.
I fig. 4a kvantiseras digitala sampel av en digital signal, mottagen från A/D-omvandlaren, av Kvantiseraren 400 till kvantiserade digitala sampel. För varje kvantiserat digitalt sampel genereras ett prediktionssampel av Prediktorn 430 baserat pà en eller flera föregående kvantiserade digitala sampel. Prediktorn 430 genererar ett kvantiseringsindex för prediktionssamplet baserat pà kvantiseringsnivàerna, d.v.s. kvantiseringsindex eller kvantiseringsvärden, för dessa föregående kvantiserade digitala sampel, vars nivåer utmatats av Kvantiseraren 400 och fördröjts av Fördröjningsblocket 420. Kvantiseringsindexet för ett prediktionssampel överförs därefter till en Subtraherare 445 där det subtraheras från kvantiseringsindexet för ett aktuellt kvantiserat digitalt sampel som utmatats fràn Kvantiseraren 400. Resultaten fràn Subtraheraren 445, d.v.s. skillnaden mellan kvantiseringsindexet för prediktionssamplet och kvantiseringsindexet för det aktuella kvantiserade digitala samplet, överförs till den Förlustfria Kodaren 450. Den Förlustfria Kodaren kodar 10 15 20 25 30 35 52 2 261 -- 20 det aktuella kvantiserade digitala samplet genom utnyttjande av indexskillnaden mottagen från Subtraheraren 445 som en ingàng i en uppslagstabell för utmatning av ett motsvarande kodord. Kodorden i ett komplett kodat block av kvantiserade digitala sampel hopsätts slutligen till ett separat paket som överförs till en Styrenhet. Alternativt samlas varje kodord i ett kodat block in av Styrenheten och hopsätts till ett separat paket för det kodade blocket. Styrenheten adderar huvudinformation före sändning av datapaketet över ett paketförmedlat nätverk.
I fig. 4b visas motsvarande Ljudavkodare enligt Paket med kodord, eller kodord ur de-assemblerade paket, mottages fràn en Jitterbuffert utföringsformen i fig. 4a. av den Förlustfria Avkodaren 455. Varje kodord utnyttjas av den Förlustfria Avkodaren för att välja en ingång i en uppslagstabell för utmatning av en motsvarande indexskillnad, vilket i sin tur motsvarar ett kvantiserat digitalt sampel. För varje kvantiserat digital sampel genereras ett prediktionssampel av Prediktorn 480 baserat pà en eller flera föregående kvantiserade digitala sampel. Prediktor 480 vid mottagaränden är konfigurerad för att arbeta på samma sätt som Prediktorn 430 vid sändaränden. Konfigurationen av dessa prediktorer är typiskt sådan att prediktortillstàndet är noll, eller nära noll, vid generering av prediktionssampel som motsvarar de initiala kvantiserade digitala samplen av en digital signal. På samma sätt som vid sändaränden genererar prediktor 480 ett kvantiseringsindex baserat på kvantiseringsniváerna, d.v.s. kvantiseringsindex eller kvantiseringsnivàer, av föregående kvantiserade digitala sampel, vilka nivåer implicit har utmatats av den Förlustfria Avkodaren 455 och fördröjts av Fördröjningsblocket 490. Kvantiseringsindexet av det genererade prediktionssamplet överförs därefter till en Adderare 465, där det adderas till indexskillnaden som utmatats från den Förlustfria Avkodaren 455. Resultatet 10 15 20 25 30 35 522 261 s'=e"==._w___.= _ o n - 1 ø u nu 21 från Adderaren 465, d.v.s. av prediktionssamplet och den aktuella utmatade summan av kvantiseringsindexet indexskillnaden, överförs till Dekvantiseraren 460 där det dekvantiseras före överföringen till en D/A- omvandlare.
I alternativa utföringsformer innefattar Ljudkodaren Dekvantiseraren 410 och/eller den andra Kvantiseraren 440 som det är avbildat i fig. 4a. Enligt dessa alternativa utföringsformer innefattar Ljudavkodaren på motsvarande sätt Kvantiseraren 470 och/eller Dekvantiseraren 463.
Med utnyttjande av Dekvantiserare 410 och 463 kommer kvantiseringsvärden av kvantiserade digitala sampel att inmatas till Prediktor 430 och 480 istället för kvantiseringsindex, och Prediktorerna kommer att generera prediktionssampel baserade på värden istället för index.
Om Prediktorerna 430 och 480 inte innefattar kvantiseringstabeller för utmatning av kvantiseringsnivåer, såsom index, av de genererade prediktionssamplen, kommer Ljudkodaren/Ljudavkodaren att innefatta Kvantiserare 440, 470 för tillhandahållande av kvantiseringsnivåer, t.ex. index, av de genererade prediktionssamplen. På detta sätt kommer Subtraheraren 445 och Adderaren 465 fortfarande att matas med kvantiseringsnivàerna av prediktionssamplen. Med utnyttjande av Kvantiserarna 440 och 470 säkerställs dessutom att kvantiseringsnivàerna för de genererade prediktionssamplen kommer att vara giltiga nivåer som tillhör en fördefinierad uppsättning nivåer, och inte nivåer som faller mellan olika giltiga kvantiseringsnivàer.
För undvikande av felfortplantning skall enligt uppfinningen ett genererat prediktionssampel som motsvarar ett digitalt sampel av ett block av digitala sampel inte baseras på digitala sampel av ett föregående block. Enligt en utföringsform uppnås detta genom att ett prediktortillstånd för Prediktor 430 sätts till noll innan ett nytt block med kvantiserade digitala sampel 10 15 20 25 30 35 522 261 nu una. n o n o 22 kodas. I Ljudavkodaren vid mottagaränden sätts på motsvarande sätt prediktortillståndet för Prediktorn 480 till noll före avkodning av ett block med kvantiserade digitala sampel. Som ett alternativ till att prediktortillståndet sätts till noll, kan tillstàndsinformation innefattas i varje block av digitala sampel, eller så kan kodningen/avkodningen följa ett förfarande som utnyttjar ingen eller lite tillstàndsinformation vid kodning/avkodning av blockets början.
Enligt en annan utföringsform av föreliggande uppfinning utnyttjas villkorad förlustfri kodning/avkodning vid sändaränden/mottagaränden såsom visas i fig. Sa och 5b. Den övergripande funktionen liknar det som beskrivits ovan förutom utnyttjandet av de genererade prediktionssamplen och konfigurationerna av uppslagstabellerna. I Ljudkodaren vid sändaränden utnyttjas prediktionssamplen genererade av en Prediktor 530, vilka valbart är kvantiserade av Kvantiseraren 540 i enlighet med vad som tidigare har beskrivits, för att välja ut en av flera uppslagstabeller med kodord inom en Villkorad Förlustfri Kodare 550. Den kvantiserade nivån, såsom indexet, av det aktuella kvantiserade digitala samplet från Kvantiseraren 500 utnyttjas för att välja ut en specifik ingång i den valda uppslagstabellen. Den Villkorade Förlustfria Kodaren kommer därefter att mata ut ett kodord som motsvarar denna specifika ingång i den valda tabellen och överföra det till Styrenheten.
Alternativt hopsamlas först alla kodord som representerar ett block av digitala sampel till ett paket som därefter överförs till Styrenheten.
Med hänvisning till fig. 5b utnyttjas på motsvarande sätt det genererade prediktionssamplet vid mottagaränden för att välja en av flera uppslagstabeller inom en Villkorad Förlustfri Avkodare 555. Ett kodord mottaget från Jitterbufferten utnyttjas för att adressera en specifik ingång i den valda tabellen, varefter ett 10 15 20 25 30 35 522 261 23 motsvarande kvantiserat digitalt sampel utmatas för dekvantisering av en Dekvantiserare 560.
Sålunda är Ljudkodaren/Ljudavkodaren enligt föreliggande uppfinning konstruerad för att reducera bittakten som behövs för överföring av en digital signal över ett paketförmedlat nätverk. Blocket av digitala sampel på vilket Ljudkodaren/Ljudavkodaren verkar på är företrädesvis ljudsegment med digitaliserade ljudsampel.
Föreliggande uppfinning är inte optimerad för en speciell sorts prediktor. Vad gäller ljudsignaler är ett möjligt val av prediktor den som erhålls med hjälp av LPC-analys av den kvantiserade signalen, möjligen förfinad med en làngtidsprediktor såsom är väl känt för fackmannen inom området. Även icke-linjära prediktorer, såsom den som definieras av oscillatormodellen beskriven i “Time-Scale Modification of Speech Based on a Non- linear Oscillator Model", G. Kubin och W. B. Kleijn, i Proc. Int. Conf. Acoust. Speech Sign. Process., (Adelaide), s. I453-I456, /avkodningsförfarandet enligt föreliggande uppfinning. Om 1994, kan utnyttjas i kodnings- en grundläggande oscillatormodell utnyttjas kommer prediktionen redan att vara i den kvantiserade domänen och ytterligare kvantisering av prediktionen kan undvikas.
Enligt uppfinningen är Ljudkodaren/Ljudavkodaren vidare konstruerad att öka robustheten mot paketförluster och fördröjningar i det paketförmedlade nätverket. Denna konstruktion för att öka robustheten bygger på att ljudsignalen, eller vilken digital signal som helst i allmänhet, representeras av multipla beskrivningar. Denna konstruktion visas i fig. 6a och 6b enligt en utföringsform av föreliggande uppfinning. Bortsett från det som beskrivs nedan med avseende på ljudkodande/ljudavkodande block, motsvarar den övergripande funktionen den som tidigare beskrivits med hänvisning till fig. 2 och 3. ..¿-__ï-_l“.'.;~ rf-fšiaf: a: anwa..- ..-_ . .v kr.. 10 15 20 25 30 35 522 261 24 I fig. 6a innefattar Ljudkodaren 630 vid sändaränden en Multipelbeskrivningskodare 610 och en Diversitetsstyrenhet 620. På motsvarande sätt innefattar Ljudavkodaren 670 i fig. 6b vid mottagaränden en Diversitetsstyrenhet 650 och en Multipelbeskrivnings- avkodare 680.
I fig. 6a visas att Ljudavkodarens 630 Multipelbeskrivningskodare 610 kodar en samplad ljudsignal 625 på två olika sätt, varigenom två olika tvà olika beskrivningar, erhålles av ljudsignalen. Som tidigare bitflödesrepresentationer, d.v.s. beskrivits har varje beskrivning sin egen uppsättning av kvantiseringsnivàer, erhållna t.ex. genom skiftning av kvantiseringsnivàerna av en beskrivning med ett halvt kvantiseringssteg. På motsvarande sätt, om tre skulle kvantiseringsnivåerna av den andra beskrivningen skiftas beskrivningar skulle tillhandahållas, med ett tredje steg med avseende pà den första beskrivningen och den tredje beskrivningen med ett tredje steg med avseende på den andra beskrivningen. Som det indikeras i fig. 6a kan sålunda ljudsignalen kodas genom utnyttjande av fler än två beskrivningar utan avvikelse fràn föreliggande uppfinnings omfattning. För att underlätta beskrivningen kommer dock bara två signalbeskrivningar att utnyttjas i de häri nedan beskrivna utföringsformerna av föreliggande uppfinning.
Varje beskrivning tillhandahåller en segmentbeskrivning av ett kodat ljudsignalssegment av ljudsignalen. Den Multipelbeskrivningskodaren 610 genererar varje beskrivning och dess segmentbeskrivningar genom förlustfri kodning av de digitaliserade ljudsamplen i enlighet med vad som tidigare har beskrivits med hänvisning till fig. 4a. Sålunda kommer en respektive uppsättning av alla elementen visade i fig. 4a att vara närvarande för varje genererad beskrivning i en Multipelbeskrivningskodare 410 hänvisad till i fig. 6a.
På motsvarande sätt kommer en respektive uppsättning av 10 15 20 25 30 35 522 261 25 alla elementen visade i fig. 4b att vara närvarande för varje beskrivning utnyttjad i en Multipelbeskrivningsavkodare 410 hänvisad till i fig. 4b.
I fig. 6a överförs de olika segmentbeskrivningarna av samma ljudsegment i respektive paket till Diversitetsstyrenheten 620. I fig. 6a har två beskrivningar, D1 och D2, indikerats. De pà varandra följande segmenten n, n+l, n+2 och så vidare representeras av beskrivning D1 som segmentbeskrivningar D1(n), D1(n+1), D1(n+2). ., vilka segmentbeskrivningar överförs i respektive pà varandra följande datapaket 615, 616, 617 från den Multipelbeskrivningskodaren 610 till Diversitetsstyrenheten 620. På motsvarande sätt representeras samma segment även som segmentbeskrivningar D2(n), D2(n+1), D2(n+2). överförs också i respektive datapaket till genom beskrivning D2 och Diversitetsstyrenheten. Sålunda representeras varje ljudsegment av ljudsignalen 625 av en segmentbeskrivning av varje beskrivning, i fig. 6a representeras t.ex. ljudsegment n+1 av segmentbeskrivning D1(n+1) av beskrivning D1 och av segmentbeskrivning D2(n+1) av beskrivning D2.
Diversitetsstyrenheten 620 expedierar paketen mottagna fràn den Multipelbeskrivningskodaren 610 i enlighet med det utnyttjade diversitetsförfarandet. I fig. 6a sekvenserar Diversitetsstyrenheten 620 varje segmentbeskrivning av ett ljudsegment i separata paket.
Paketen som innehåller olika segmentbeskrivningar av samma ljudsegment överförs till Styrenheten 640 vid olika tidpunkter. Till exempel, som det indikerats i fig. 6a, levereras de två segmentbeskrivningarna D1(n) och D2(n) av ljudsegment n till Styrenheten 640 i separata paket 621 och 622 vid olika tidpunkter tl och tg. Sålunda introduceras en fördröjning t2-tl för att skapa tidsdiversitet. En typisk fördröjning tg-tl som kan utnyttjas i samband med typiska ljudsegmentslängder pà 20 ms, är 10 ms. Vid mottagande av ett paket fràn u . | s o u ; v u | » . n. 10 15 20 25 30 35 522 261 a Q | u Q ; ,, 26 Diversitetsstyrenheten 620 formaterar Styrenheten 640 paketet, såsom addering av sekvensering och information om leveransadress, för omedelbar överföring över det paketförmedlade nätverket. Sålunda adderar Styrenheten 640 ett huvud H med information till varje paket. Vad gäller Ipv4-transport som utnyttjar UIP (User Datagram Protocol, användardatagramsprotokoll) och RTP (Real Time Protocol, realtidsprotokoll) är storleken pà huvudet 320 bitar. För en typisk talsegmentslängd på 20 ms leder detta till 320 bitar per 20 ms, d.v.s. till 16 kbit/s för huvudena för varje beskrivning som används. Om varje talsegment representeras av två segmentbeskrivningar kommer huvudena för paketen som överför segmentbeskrivningarna att tillsammans att erfordra en bittakt på 2*16 = 32 kbit/s. Detta kan jämföras med bittakten 64 kbit/s för Standardiserad PCM-telefoni (Pulse Code Modulated, pulskodsmodulerad). Följaktligen kommer bittakten för administrationsdata att vara 50% (32 dividerat med 64) av nyttolasttakten.
Som det tidigare beskrivits med hänvisning till fig. 3 mottages paket vid mottagaränden av en Styrenhet 350.
Styrenheten borttager administrationsinformation i form av huvuden och överför paketen till Jitterbufferten 360, som i sin tur överför paketen till Ljudavkodaren 370. I fig. 6b visas att Ljudavkodarens 670 Diversitetsstyrenheten 650 mottager paketen med de olika segmentbeskrivningarna från en jitterbuffert.
Diversitetsstyrenheten schemalägger därefter de olika segmentbeskrivningarna av samma ljudsegment för överföring till Multipelbeskrivningsavkodaren 680 vid samma tidpunkt. Sålunda, som det visas i fig. 6b, kommer den Multipelbeskrivningsavkodaren 680 t.ex. att mottaga båda paketen 671 och 672 med respektive segmentbeskrivningar D1(n) och D2(n) av ljudsegment n vid samma tidpunkt och därefter båda paketen 674 och 675 med respektive segmentbeskrivningar D1(n+1) och D2(n+l) av ljudsegment n+l, och så vidare. Multipelbeskrivnings- ø u o ~ I. 10 15 20 25 30 35 522 261 » v . . .- I . » . ~ « | . o I - n - ,. 27 avkodaren 680 kommer för varje ljudsegment extrahera den hopsatta informationen fràn de olika paketen och avkoda ljudsignalsegmentet för överföring till en D/A- omvandlare. Om t.ex. segmentbeskrivning D1(n) inte ankom vid mottagaränden, eller ankom för sent, kommer Diversitetsstyrenheten 650 endast att schemalägga D2(n) (om tvà beskrivningar utnyttjas) till Multipel- beskrivningsavkodaren 680, som därefter kommer att avkoda ljudsegment n av ljudsignalen med tillfredsställande kvalitet fràn den enda mottagna segmentbeskrivningen D2(n)- I fig. 7 visas en annan utföringsform av föreliggande uppfinning. Denna utföringsform skiljer sig från den som tidigare beskrivits med hänvisning till fig. 6a och 6b med avseende på organisationen av segmentbeskrivningar i paketen som överfördes av det paketförmedlade nätverket. Sålunda ligger skillnaden i hopsättningen/demonteringen av paketet, vilken utförs vid sändaränden/mottagaränden av Ljudkodarens/Ljudavkodarens Diversitetsstyrenhet. Denna skillnad kommer nu att beskrivas nedan.
Som beskrivits med hänvisning till fig. 6a och 6b är administrationen resulterande från huvudena av de olika paketen som överför olika segmentbeskrivningar av samma ljudsegment ganska omfattande. För att lindra detta hopgrupperas segmentbeskrivningar av olika beskrivningar och som hänför sig till olika ljudsegment i samma paket före sändning av paketet över det paketförmedlade nätverket. Som det visas i fig. 7 grupperar Ljudkodarens Diversitetsstyrenhet 720 vid sändaränden två individuella segmentbeskrivningar av två pà varandra följande ljudsegment tillsammans i varje paket. De två segmentbeskrivningarna av ett paket tillhör respektive beskrivningar av ljudsignalen. T.ex. kommer ett paket att innehålla segmentbeskrivning D2(n-1) av ljudsegment n-1 och segmentbeskrivning D1(n) av ljudsegment n.
Styrenheten 740 kommer som tidigare beskrivits att addera 10 15 20 25 30 35 522 261 | Q u ; a ~ n ø . .. 28 administrationsinformation i form av huvuden till varje paket före sändning av paketet innefattande de två segmentbeskrivningarna över det paketförmedlade nätverket.
Precis som i utföringsformen i fig. 6 kommer sålunda Diversitetsstyrenheten 720 i denna utföringsform att sekvensera varje segmentbeskrivning av ett ljudsegment i separata paket, och som i utföringsformen i fig. 6 kommer paketen, som innehåller olika segmentbeskrivningar av samma ljudsegment, att överföras till Styrenheten 740 vid olika tidpunkter. I fig. 7 levereras de två segmentbeskrivningarna D2(n) och D1(n+l) av ljudsegment n och n+l till Styrenheten 740 i paket 722. Sàlunda måste segment n+l ha kodats före segmentbeskrivningen D2(n) kan överföras till Styrenheten. Segmentbeskrivning D1(n) överfördes à andra sidan i ett föregående paket 721 till Styrenheten. Om ett ljudsegment är 20 ms, mäste överföringen av D2(n) fördröjas med 20 ms jämfört med överföringen av D1(n) eftersom D2(n) ska schemaläggas i samma paket 722 som D1(n+l). Sålunda kommer detta förfarande att automatiskt tillhandahålla tidsdiversitet eftersom olika segmentbeskrivningar av samma ljudsegment kommer att överföras till Styrenheten 740 med ett 20 ms intervall (givet att ljudsegmentslängden är 20 ms). I jämförelse med utföringsformen i fig. 6 kommer sålunda en ytterligare fördröjning mellan de två segmentbeskrivningarna av samma ljudsegment att automatiskt introduceras med detta förfarande för hopsättning av paket med olika segmentbeskrivningar.
Denna ytterligare fördröjning mellan segmentbeskrivningarna tillhandahåller en ytterligare tidsdiversitetsfördel och kan kompenseras för senare i överföringskedjan, t.ex. genom lägre fördröjningsinstàllningar i Jitterbufferten vid mottagaränden.
Dessutom motsvarar mängden nyttolastdata i ett paket enligt denna utföringsform den totala mängden data ÃQÄ-l-'ÅÉ-'Äf ltiw.. \;I'...--~it'.,'..; _'-«..^»:::'¿;.š:.:: Wïrru >.\,:~“<.\\«..-¿- .mf -..»..._».t_,-.' 10 15 20 25 30 35 522 261 I u « a v . | uu 29 genererad fràn ett ljudsegment och därför ökar inte administrationsinformationen när tidsdiversitet skapas med detta förfarande.
I överensstämmelse med vad som har beskrivits ovan kommer Diversitetsstyrenheten vid mottagarànden i denna utföringsform att dela upp de mottagna paketen i deras segmentbeskrivningsdelar före överföring av segmentbeskrivningarna till Multipelbeskrivningsavkodaren i enlighet med vad som tidigare visats i fig. 6b.
Resultatet av tidsdiversitetsförfarandet som hänvisas till av fig. 7 är återigen att om ett paket förloras eller fördröjs under överföring över det paketförmedlade nätverket, kommer beskrivningar av alla ljudsegment att fortfarande vara tillgängliga vid mottagaränden och inga ljudsegmentsförluster kommer att förnimmas.
Enligt en utföringsform av föreliggande uppfinning kodar/avkodar Ljudkodaren/Ljudavkodaren PCM-index av ett standardiserad 64 kbit/s PCM-bitflöde. beskrivningen kommer denna utföringsform att återigen För att underlätta beskrivas genom hänvisning till fig. 4a och 4b. Som det tidigare beskrivits är elementen i respektive fig. 4a och 4b närvarande för varje beskrivning som är genererad/avkodad av Ljudkodaren/Ljudavkodaren.
Emellertid byts Kvantiseraren 400 i fig. 4a och Dekvantiseraren 460 i fig. 4b ut mot en respektive Kodomvandlare som beskrivs nedan. Dessutom, utifall att den digitala signalen inte redan är en PCM-kodad signal, innefattar Ljudkodaren en PCM-kodare före sin Kodomvandlare och Ljudavkodaren innefattar en PCM- avkodare efter sin Kodomvandlare. I denna utföringsform innefattar Ljudkodaren återigen en Multipelbeskrivningskodare som matar en Diversitetsstyrenhet med multipla beskrivningar av ett och samma ljudsegment. På motsvarande sätt innefattar Ljudavkodaren en Multipelbeskrivningavskodare som mottager multipla beskrivningar av ett och samma 10 15 20 25 30 35 522 261 30 ljudsegment från en Diversitetsstyrenhet vid mottagaränden.
Ljudkodarens Multipelbeskrivningskodare består av en vanlig PCM-kodare följt av en Kodomvandlare. Sålunda kommer den digitala signalen som är mottagen av Ljudkodaren från A/D-omvandlaren att kodas genom utnyttjande av en vanlig PCM-avkodare..Det erhållna PCM- bitflödet kodomvandlas därefter, översätts, till flera olika bitflöden av Kodomvandlaren, efter vilket d.v.s. varje bitflöde ger en grov representation av PCM- signalen. Motsvarande Multipelbeskrivningsavkodare vid mottagaränden innefattar en Kodomvandlare för kodomvandling av mottagna multipla bitflödesbeskrivningar till ett enda PCM-bitflöde. Detta PCM-bitflöde avkodas därefter av en vanlig PCM-avkodare innan det överförs till en D/A-omvandlare. Förfarandet med kodomvandling, eller översättning, exemplifieras nedan där ett 64 kbit/s PCM-bitflöde kodomvandlas till två bitflöden vilka tillhandahåller multipla beskrivningar av PCM-signalen.
En 64 kbit/s PCM-kodare av standardtyp som utnyttjar log-komprimering av p-lagstyp kodar samplen genom utnyttjande av 8 bitar/sampel. Detta ger 256 olika kodord, men kvantiseraren består bara av 255 olika nivåer. Nollnivån representeras av två olika kodord för att förenkla implementeringen i hårdvara. Enligt utföringsformen representeras varje kvantiseringsnivå av ett heltalsindex, med början på noll för den mest negativa nivån och upp till 254 för den högsta nivån. Det första av de två bitflödena erhålles genom borttagning av den minst signifikanta biten av var och en av heltalsindexen. Detta nya index representerar en kvantiseringsnivå i den första av de två grova kvantiserarna. Det andra bitflödet erhålles genom addering av ett till varje index före borttagning av den minst signifikanta biten. Sålunda erhålles två 7- bitarsrepresentationer från den ursprungliga 8-bitars PCM-representationen. Avkodning av de två rxïï _. -4~1.\ ..::-i..- »_,~: tum , J; ._.---..w=t: 4.1t ëoJc lO 15 20 25 30 35 522 261 0 I I ~ .- « a o ~ n u 31 representationerna kan antingen utföras pà varje individuell representation, om paketförlust föreligger, eller pà de tvâ representationerna i vilket fall den ursprungliga PCM-signalen àterskapas. Avkodningen är helt enkelt en kodomvandling tillbaka till PCM-indexen, följt av tabelluppslagning.
Alternativt är PCM-kodaren en 64 kbit/s PCM-kodare av standardtyp som utnyttjar log-komprimering av A- lagstyp. 256, vilket är en mer än i en p-lagkodare.
I detta fall är antalet nivàer i kvantiseraren För att representera dessa 256 nivåer genom utnyttjande av två nya kvantiseringsrutnät, och för att vara i stånd till fullständig áterskapning av signalen, behövs det ett rutnät med 128 nivåer och ett med 129 nivåer. Det skulle vara önskvärt att utnyttja två 7~bitars rutnät som i p- lagfallet, dock mäste problemet med den extra kvantiseringsnivàn lösas. Enligt uppfinningen representeras varje kvantiseringsnivà av ett heltalsindex, med början pà noll för den mest negativa nivån och upp till 255 för den högsta nivån. Exakt samma regel som i p-lagfallet utnyttjas för att bilda de nya indexen, förutom vid representering av indexnummer 255.
Indexnummer 255 representeras med indexnummer 126 för den första kvantiseraren och indexnummer 127 för den andra, istället för 128 och 127, vilket skulle erhållas om regeln skulle följas. Avkodaren mäste kontrollera denna indexrepresentation vid kodomvandling av de tvà bitflödena till A-lags PCM-bitflödet. Om bara den första av de två beskrivningarna mottages efter överföring och det 255:e indexet var kodat skulle avkodaren introducera ett kvantiseringsfel som är lite högre än för de andra indexen.
En kodad PCM-signal innefattar en högre grad av redundans. Därför är det speciellt fördelaktigt att kombinera utnyttjandet av PCM-signaler med förlustfri kodning/avkodning av de multipla beskrivningarna härledda fràn en PCM-signal. 10 15 20 25 522 261 v v ~ ~ o n. 32 Om den digitala signalen som mottages av Ljudkodaren redan vore representerad som ett 64 kbit/s PCM-bitflöde, och om Ljudavkodaren vid mottagaränden ska mata ut ett 64 kbit/s PCM-bitflöde, skulle inte PCM-kodaren vid sändaränden och PCM-avkodaren vid mottagaränden behövas.
I detta fall mottager Multipelbeskrivningskodaren enligt föreliggande uppfinning PCM-bitflödet och omvandlar PCM- indexen till representationen O-254 som beskrivits ovan.
Denna representation matas direkt till Kodomvandlaren som kodomvandlar bitflödet till två nya bitflöden genom utnyttjande av de enkla reglerna givna ovan. Vid systemets mottagarände insamlas informationen i de mottagna paketen av Diversitetsstyrenheten. Om alla paketen ankommer slàr Kodomvandlaren ihop och översätter informationen frán de multipla beskrivningarna tillbaka till det ursprungliga PCM-bitflödet. Om nàgra paket förloras kan det ursprungliga bitflödet ej exakt àterskapas, men en bra approximation kan erhållas från beskrivningarna som faktiskt anlände. Även om uppfinningen har beskrivits ovan såsom exempel med hänvisning till olika utföringsformer därav, inses det att flera olika modifieringar och ändringar kan göras utan att avvika från uppfinningens omfattning, såsom den definieras i de bifogade kraven. p n uuuu u.
Claims (28)
1. Förfarande för kodning av en digital signal och dess block av digitala sampel för överföring över ett paketförmedlat nätverk, vilket förfarande innefattar stegen: att kvantisera de binära representationerna av nämnda digitala sampel till mer grövre representationer av nämnda digitala sampel; att generera prediktionssampel som fixpunkts- eller flyttalsrepresentationer baserat pá tidigare, kvantiserade digitala sampel i nämnda kvantiseringssteg; och att förlustfritt koda de kvantiserade digitala samplen villkorat av fixpunkts- eller flyttalsrepresentationerna av de genererade prediktionssamplen.
2. Förfarande enligt krav 1, varvid den förlustfria kodningen av de kvantiserade digitala samplen baseras på tabelluppslagningar.
3. Förfarande enligt krav 1 eller 2, varvid nämnda steg att förlustfritt koda, för ett specifikt kvantiserat digitalt sampel, innefattar att mata ut ett specifikt kodord som motsvarar en specifik ingång i en tabell med kodord, varvid nämnda specifika ingång härleds med hjälp av det genererade prediktionssamplet som motsvarar nämnda specifika kvantiserade digitala sampel.
4. Förfarande enligt krav 3, varvid nämnda tabell med kodord väljs ut bland flera tabeller med kodord baserat pá nämnda genererade prediktionssampel, varvid nämnda specifika ingàng härleds som den ingàng som motsvarar nämnda kvantiseringsindex för nämnda kvantiserade digitala sampel. 10 15 20 25 30 V35 522 261 Jil
5. Förfarande nàgot av kraven 1-4, varvid nämnda steg att generera prediktionssampel föregàs av dekvantisering av de kvantiserade digitala samplen, varigenom kvantiseringsvärdena av nämnda kvantiserade digitala sampel erhålls.
6. Förfarande enligt något av kraven 1-5, innefattande steget att kvantisera de genererade prediktionssamplen, varvid nämnda steg att förlustfritt koda baseras pà genererade prediktionssampel som har kvantiseringsnivàer av en fördefinierad uppsättning av kvantiseringsnivàer.
7. Förfarande enligt något av kraven 1-6, innefattande steget att sätta ett tillstànd hos en prediktor, som genererar nämnda prediktionssampel, till noll före pàbörjande av kodning av ett av nämnda block med digitala sampel.
8. Förfarande enligt krav 6 eller 7, varvid nämnda steg att förlustfritt koda villkoras av kvantiseringsindexen för nämnda genererade prediktionssampel.
9. Förfarande enligt nàgot av kraven 1-8, varvid nämnda kodning utförs av en multipel beskrivningskodare, vilken multipel beskrivningskodare kodar varje block av nämnda block av digitala sampel med hjälp av multipla blockbeskrivningar genom utförande av stegen för kodningsförfarandet individuellt för varje genererad blockbeskrivning.
10. Förfarande enligt krav 9, innefattande det ytterligare steget att överföra, för varje block av nämnda block av digitala sampel, åtminstone tvà olika 10 15 20 25 30 35 522 261 35' blockbeskrivningar i respektive datapaket med ett fördefinierat tidsintervall mellan paketen.
11. Förfarande enligt krav 10, innefattande att gruppera en respektive blockbeskrivning av åtminstone tvà olika block av digitala sampel tillsammans för överföring i ett och samma datapaket.
12. Förfarande enligt något av kraven 9-11, varvid nämnda digitala signal är en digitaliserad ljudsignal och nämnda block av digitala sampel är ljudsegment, och varvid kodningsförfarandet i nämnda multipla beskrivningskodare innefattar ett initialt steg att kodomvandla en n-bitars PCM-representerad digitaliserad ljudsignal till åtminstone tvà representationer, var och en representerade av färre än n bitar och med respektive uppsättningar av kvantiseringsnivàer för segmentbeskrivningarna av ljudsegmenten av nämnda digitaliserade ljudsignal.
13. Förfarande enligt något av kraven 1-ll, varvid nämnda digitala signal är en digitaliserad ljudsignal och nämnda block av digitala sampel är ljudsegment.
14. Förfarande för avkodning av en digital signal och dess block av digitala sampel mottagna från ett paketförmedlat nätverk, vilket förfarande innefattar stegen: att generera prediktionssampel som fixpunkts- eller flyttalsrepresentationer baserat pà tidigare kvantiserade digitala sampel av nämnda digitala signal resulterande från en förlustfri avkodning av mottagna kodord; att förlustfritt avkoda mottagna kodord villkorat av fixpunkts- eller flyttalsrepresentationer av de genererade prediktionssamplen; och att dekvantisera kvantiserade digitala sampel resulterande från det förlustfria avkodningssteget till 10 15 20 25 30 35 522 261 ;§;q~*~ ZG a a | s o - o. binära representationer av de digitala samplen av nämnda digitala signal.
15. Förfarande enligt krav 14, varvid den förlustfria avkodningen av de mottagna kodorden baseras pà tabelluppslagningar.
16. Förfarande enligt krav 14 eller 15, varvid nämnda steg att förlustfritt avkoda, för ett specifikt kvantiserat digitalt sampel, innefattar att mata ut en specifik kvantiseringsnivå som motsvarar en specifik ingång i en tabell med kvantiseringsnivåer, varvid nämnda ingång väljs ut med hjälp av ett mottaget kodord som motsvarar nämnda specifika kvantiserade digitala sampel.
17. Förfarande enligt krav 16, varvid nämnda tabell med kvantiseringsniväer väljs ut bland flera tabeller med kvantiseringsnivåer baserat på ett genererat prediktionssampel som motsvarar nämnda specifika kvantiserade digitala sampel.
18. Förfarande enligt något av kraven 14-17, varvid nämnda steg att generera prediktionssampel föregås av att dekvantisera de kvantiserade digitala samplen resulterande från det förlustfria avkodningssteget, varigenom kvantiseringsvärdena för nämnda kvantiserade digitala sampel erhålls.
19. Förfarande enligt något av kraven 13-18, innefattande steget att kvantisera de genererade prediktionssamplen, varvid nämnda förlustfria avkodningssteg baseras på genererade prediktionssampel som har kvantiseringsnivåer i en fördefinierad uppsättning av kvantiseringsnivåer.
20. Förfarande enligt något av kraven 13-19, innefattande steget sätta ett tillstånd hos en prediktor, 10 15 20 25 30 35 522 261 ° 3? till noll före pàbörjande av avkodning av ett av nämnda block med som genererar nämnda prediktionssampel, digitala sampel.
21. Förfarande enligt krav 19 eller 20, varvid nämnda förlustfria avkodningssteg villkoras av kvantiseringsindexen för nämnda genererade prediktionssampel.
22. Förfarande enligt något av kraven 14-21, varvid nämnda avkodning utförs av en multipel beskrivningsavkodare, vilken multipel beskrivningsavkodare avkodar varje block av nämnda block av digitala sampel baserat pà åtminstone tvâ olika mottagna blockbeskrivningar genom utförande av stegen för avkodningsförfarandet som föregår dekvantiseringssteget individuellt för varje mottagen blockbeskrivning.
23. Förfarande enligt något av kraven 14-22, innefattande stegen: att invänta en fördefinierad tidsperiod för mottagning av åtminstone två olika paket som innefattar olika blockbeskrivningar av ett och samma block av digitala sampel; att utföra stegen för avkodningsförfarandet som föregår dekvantiseringssteget med avseende pà de, en eller flera, olika blockbeskrivningar av nämnda block av digitala sampel som är mottagna inom nämnda fördefinierad tidsperiod; och att dekvantisera den, eller en sammanslagning av de flera, blockbeskrivningarna.
24. Förfarande enligt krav 23, varvid varje mottaget paket innefattar flera blockbeskrivningar av flera olika block av digitala sampel som är hopgrupperade, vilket förfarande innefattar steget att dela upp successivt mottagna paket med avseende på de innefattade 10 15 20 25 30 :fana u un nu o nu nu: an: i. 522 261 3? owman n »penne u blockbeskrivningarna, varigenom flera olika blockbeskrivningar för varje block av digitala sampel som ska avkodas erhålls.
25. Förfarande enligt något av kraven 23-24, varvid nämnda digitala signal är en digitaliserad ljudsignal och nämnda block av digitala sampel är ljudsegment, och varvid nämnda digitaliserad ljudsignal är ett PCM-kodat bitflöde, och varvid en sammanslagning i nämnda dekvantiseringssteg innefattar kodomvandling av åtminstone två segmentrepresentationer, var och en representerad av färre än n bitar, till en enda n-bitars PCM-representation av nämnda ett och samma ljudsignalsegment.
26. Förfarande enligt något av kraven 14-24, varvid nämnda digitala signal är en digitaliserad ljudsignal och nämnda block av digitala sampel är ljudsegment.
27. Datorläsbart medium innefattande datorexekverbara instruktioner för att åstadkomma kodning av en digital signal och dess block av digitala sampel för överföring över ett paketförmedlat nätverk, varvid de datorexekverbara instruktionerna utför stegen i förfarandet enligt något av kraven 1-13.
28. Datorläsbart medium innefattande datorexekverbara instruktioner för att åstadkomma avkodning av en digital signal och dess block av digitala sampel mottagna från ett paketförmedlat nätverk, varvid de datorexekverbara instruktionerna utför stegen i förfarandet enligt något av kraven 14-26.
Priority Applications (8)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| SE0001728A SE522261C2 (sv) | 2000-05-10 | 2000-05-10 | Kodning och avkodning av en digital signal |
| EP01930394A EP1299879B1 (en) | 2000-05-10 | 2001-05-10 | Encoding and decoding of a digital signal |
| AT01930394T ATE333696T1 (de) | 2000-05-10 | 2001-05-10 | Kodierung und dekodierung eines digitalen signals |
| CNB018112749A CN1201289C (zh) | 2000-05-10 | 2001-05-10 | 数字信号的编码和解码方法 |
| AU2001256925A AU2001256925A1 (en) | 2000-05-10 | 2001-05-10 | Encoding and decoding of a digital signal |
| DE60121592T DE60121592T2 (de) | 2000-05-10 | 2001-05-10 | Kodierung und dekodierung eines digitalen signals |
| US09/853,883 US6970479B2 (en) | 2000-05-10 | 2001-05-10 | Encoding and decoding of a digital signal |
| PCT/SE2001/001022 WO2001086636A1 (en) | 2000-05-10 | 2001-05-10 | Encoding and decoding of a digital signal |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| SE0001728A SE522261C2 (sv) | 2000-05-10 | 2000-05-10 | Kodning och avkodning av en digital signal |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| SE0001728D0 SE0001728D0 (sv) | 2000-05-10 |
| SE0001728L SE0001728L (sv) | 2001-12-28 |
| SE522261C2 true SE522261C2 (sv) | 2004-01-27 |
Family
ID=20279622
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| SE0001728A SE522261C2 (sv) | 2000-05-10 | 2000-05-10 | Kodning och avkodning av en digital signal |
Country Status (8)
| Country | Link |
|---|---|
| US (1) | US6970479B2 (sv) |
| EP (1) | EP1299879B1 (sv) |
| CN (1) | CN1201289C (sv) |
| AT (1) | ATE333696T1 (sv) |
| AU (1) | AU2001256925A1 (sv) |
| DE (1) | DE60121592T2 (sv) |
| SE (1) | SE522261C2 (sv) |
| WO (1) | WO2001086636A1 (sv) |
Families Citing this family (29)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3415126B2 (ja) * | 2001-09-04 | 2003-06-09 | 三菱電機株式会社 | 可変長符号多重化装置、可変長符号分離装置、可変長符号多重化方法及び可変長符号分離方法 |
| US6882685B2 (en) * | 2001-09-18 | 2005-04-19 | Microsoft Corporation | Block transform and quantization for image and video coding |
| DE50212082D1 (de) * | 2001-11-27 | 2008-05-21 | Nokia Siemens Networks Gmbh | Verfahren zum austauschen von nach unterschiedlichen codierungsgesetzen erzeugten nutzinformationen zwischen wenigstens 2 teilnehmerendeinrichtungen |
| SE521600C2 (sv) | 2001-12-04 | 2003-11-18 | Global Ip Sound Ab | Lågbittaktskodek |
| US7408918B1 (en) * | 2002-10-07 | 2008-08-05 | Cisco Technology, Inc. | Methods and apparatus for lossless compression of delay sensitive signals |
| US7313236B2 (en) * | 2003-04-09 | 2007-12-25 | International Business Machines Corporation | Methods and apparatus for secure and adaptive delivery of multimedia content |
| US7602851B2 (en) | 2003-07-18 | 2009-10-13 | Microsoft Corporation | Intelligent differential quantization of video coding |
| US7580584B2 (en) | 2003-07-18 | 2009-08-25 | Microsoft Corporation | Adaptive multiple quantization |
| US7738554B2 (en) | 2003-07-18 | 2010-06-15 | Microsoft Corporation | DC coefficient signaling at small quantization step sizes |
| TWI236819B (en) * | 2003-07-18 | 2005-07-21 | Hon Hai Prec Ind Co Ltd | A network telephony system and method |
| US10554985B2 (en) | 2003-07-18 | 2020-02-04 | Microsoft Technology Licensing, Llc | DC coefficient signaling at small quantization step sizes |
| WO2005033198A1 (en) * | 2003-10-07 | 2005-04-14 | Coloplast A/S | A composition useful as an adhesive and use of such a composition |
| US8121836B2 (en) * | 2005-07-11 | 2012-02-21 | Lg Electronics Inc. | Apparatus and method of processing an audio signal |
| GB2436191B (en) * | 2006-03-14 | 2008-06-25 | Motorola Inc | Communication Unit, Intergrated Circuit And Method Therefor |
| EP1855271A1 (en) * | 2006-05-12 | 2007-11-14 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for re-encoding signals |
| US9635315B2 (en) | 2006-08-07 | 2017-04-25 | Oovoo Llc | Video conferencing over IP networks |
| US8856371B2 (en) | 2006-08-07 | 2014-10-07 | Oovoo Llc | Video conferencing over IP networks |
| US8557393B2 (en) * | 2006-10-31 | 2013-10-15 | Exxonmobil Chemical Patents Inc. | Adhesive thermoplastic vulcanizates |
| KR101299155B1 (ko) * | 2006-12-29 | 2013-08-22 | 삼성전자주식회사 | 오디오 부호화 및 복호화 장치와 그 방법 |
| US8942289B2 (en) * | 2007-02-21 | 2015-01-27 | Microsoft Corporation | Computational complexity and precision control in transform-based digital media codec |
| US7844539B2 (en) * | 2007-03-02 | 2010-11-30 | Chicago Board Options Exchange, Incorporated | Hybrid trading system for concurrently trading combined orders for financial instruments through both electronic and open-outcry trading mechanisms |
| EP2232833A2 (fr) * | 2007-12-10 | 2010-09-29 | France Telecom | Traitement d'erreurs binaires dans une trame binaire audionumerique |
| US8855211B2 (en) | 2008-01-22 | 2014-10-07 | At&T Intellectual Property I, Lp | Method and apparatus for managing video transport |
| JP2011024066A (ja) * | 2009-07-17 | 2011-02-03 | Sony Corp | 画像処理装置および方法 |
| CN103003877B (zh) * | 2010-08-23 | 2014-12-31 | 松下电器产业株式会社 | 声音信号处理装置及声音信号处理方法 |
| US8818797B2 (en) * | 2010-12-23 | 2014-08-26 | Microsoft Corporation | Dual-band speech encoding |
| US9325639B2 (en) | 2013-12-17 | 2016-04-26 | At&T Intellectual Property I, L.P. | Hierarchical caching system for lossless network packet capture applications |
| EP4409748A1 (en) * | 2021-09-27 | 2024-08-07 | Qualcomm Incorporated | Efficient packet-loss protected data encoding and/or decoding |
| CN116193156B (zh) * | 2022-12-30 | 2024-09-20 | 北京天兵科技有限公司 | 航天遥测码流地面传输分组压缩编码方法、装置和系统 |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4726019A (en) * | 1986-02-28 | 1988-02-16 | American Telephone And Telegraph Company, At&T Bell Laboratories | Digital encoder and decoder synchronization in the presence of late arriving packets |
| JP2783534B2 (ja) * | 1986-11-13 | 1998-08-06 | キヤノン株式会社 | 符号化装置 |
| US6006174A (en) * | 1990-10-03 | 1999-12-21 | Interdigital Technology Coporation | Multiple impulse excitation speech encoder and decoder |
| FR2700632B1 (fr) * | 1993-01-21 | 1995-03-24 | France Telecom | Système de codage-décodage prédictif d'un signal numérique de parole par transformée adaptative à codes imbriqués. |
| KR950008637B1 (ko) * | 1993-04-08 | 1995-08-03 | 삼성전자주식회사 | 부밴드 코딩시스템의 신호처리장치 |
| US5528625A (en) * | 1994-01-03 | 1996-06-18 | At&T Corp. | High speed quantization-level-sampling modem with equalization arrangement |
| GB9509831D0 (en) * | 1995-05-15 | 1995-07-05 | Gerzon Michael A | Lossless coding method for waveform data |
| JP2856185B2 (ja) * | 1997-01-21 | 1999-02-10 | 日本電気株式会社 | 音声符号化復号化システム |
| GB2323754B (en) * | 1997-01-30 | 2002-03-20 | Peter Graham Craven | Lossless compression using iir prediction filters |
| US6009387A (en) * | 1997-03-20 | 1999-12-28 | International Business Machines Corporation | System and method of compression/decompressing a speech signal by using split vector quantization and scalar quantization |
| US6463410B1 (en) * | 1998-10-13 | 2002-10-08 | Victor Company Of Japan, Ltd. | Audio signal processing apparatus |
| IL129752A (en) * | 1999-05-04 | 2003-01-12 | Eci Telecom Ltd | Telecommunication method and system for using same |
-
2000
- 2000-05-10 SE SE0001728A patent/SE522261C2/sv not_active IP Right Cessation
-
2001
- 2001-05-10 DE DE60121592T patent/DE60121592T2/de not_active Expired - Lifetime
- 2001-05-10 AT AT01930394T patent/ATE333696T1/de not_active IP Right Cessation
- 2001-05-10 WO PCT/SE2001/001022 patent/WO2001086636A1/en not_active Ceased
- 2001-05-10 CN CNB018112749A patent/CN1201289C/zh not_active Expired - Lifetime
- 2001-05-10 AU AU2001256925A patent/AU2001256925A1/en not_active Abandoned
- 2001-05-10 EP EP01930394A patent/EP1299879B1/en not_active Expired - Lifetime
- 2001-05-10 US US09/853,883 patent/US6970479B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| SE0001728L (sv) | 2001-12-28 |
| US6970479B2 (en) | 2005-11-29 |
| DE60121592T2 (de) | 2007-06-28 |
| WO2001086636A1 (en) | 2001-11-15 |
| DE60121592D1 (de) | 2006-08-31 |
| CN1436347A (zh) | 2003-08-13 |
| AU2001256925A1 (en) | 2001-11-20 |
| US20020018490A1 (en) | 2002-02-14 |
| ATE333696T1 (de) | 2006-08-15 |
| EP1299879A1 (en) | 2003-04-09 |
| EP1299879B1 (en) | 2006-07-19 |
| CN1201289C (zh) | 2005-05-11 |
| SE0001728D0 (sv) | 2000-05-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| SE522261C2 (sv) | Kodning och avkodning av en digital signal | |
| EP1290835B1 (en) | Transmission over packet switched networks | |
| KR100919868B1 (ko) | 패킷 손실 보상 | |
| Jayant et al. | Effects of packet losses in waveform coded speech and improvements due to an odd-even sample-interpolation procedure | |
| JP3542610B2 (ja) | オーディオ信号処理装置およびオーディオ情報データ・フレーム処理方法 | |
| JPH04127747A (ja) | 可変レート符号化方式 | |
| US20100324913A1 (en) | Method and System for Block Adaptive Fractional-Bit Per Sample Encoding | |
| WO2004105404A2 (en) | Soft packet dropping during digital audio packet-switched communications | |
| CN102057425A (zh) | 用于数字信号的压缩或解压缩的方法、系统和设备 | |
| Valin et al. | RFC 6716: Definition of the Opus audio codec | |
| US20030231617A1 (en) | Method, apparatus, and system for reducing memory requirements for echo cancellers | |
| JP2002221994A (ja) | 音声信号の符号列のパケット組立方法、装置及びパケット分解方法、装置並びにこれらの方法を実行するプログラム、プログラムを記録する記録媒体 | |
| US20010012993A1 (en) | Coding method facilitating the reproduction as sound of digitized speech signals transmitted to a user terminal during a telephone call set up by transmitting packets, and equipment implementing the method | |
| JPS60245316A (ja) | 同期式近即時符号化装置 | |
| US20040100955A1 (en) | Vocoder and communication method using the same | |
| US5799272A (en) | Switched multiple sequence excitation model for low bit rate speech compression | |
| JP3942523B2 (ja) | ディジタル信号符号化方法、復号化方法、符号器、復号器及びこれらのプログラム | |
| KR20050024651A (ko) | 패킷 망에서의 프레임 손실 은닉 방법 및 장치 | |
| CN1135529C (zh) | 传送语音信号的通信网络 | |
| US5956320A (en) | Cell assembling/disassembling system for asynchronous transfer mode network | |
| Jayant et al. | Adaptive aperture coding for speech waveforms—I | |
| Terriberry | Network Working Group JM. Valin Internet-Draft Mozilla Corporation Intended status: Standards Track K. Vos Expires: May 3, 2012 Skype Technologies SA | |
| Moriya et al. | Hierarchical lossless audio coding in terms of sampling rate and amplitude resolution | |
| JPH02220523A (ja) | 音声パケット伝送方式 | |
| JPH0221600B2 (sv) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| NUG | Patent has lapsed |