Dokumentasjon

    Table of Content
    • 3d
      • 3D-filformater
      • 3DS to DWG
      • 3MF to STL
      • AC
      • AMF
      • BHV
      • BIP
      • FBX to DWG
      • GLB
      • GLB to 3DS
      • GLB to FBX
      • GLB to GLTF
      • GLB to STL
      • GLB to USDZ
      • MDX
      • MTL
      • OBJ
      • PLY
      • SMD
      • STP
    • audio
      • Lydfilformater
      • DFF
      • DSF
      • GP
      • iLBC
      • M3U
      • M3U8
      • M4R
      • MP3
      • MUS
      • MUS Minecraft
      • PKF
      • PTX
      • QCP
      • QOA
      • SESX
      • STY
      • WAV
    • cad
      • CAD-filformater
      • DGN
      • DWFX
      • DWG
      • DXF
      • GCODE
      • IGS
      • PLT
    • compression
      • Komprimeringsfilformater
      • APK
      • GZ
      • ISO
      • LZMA
      • PKG
      • TGS
      • VPK
      • WHL
      • WUX
      • XAPK
      • ZIP
    • data
      • Datafilformater
      • CDX
      • ESX
      • GB
      • INK
      • IO
      • PCB
      • PRT
      • SAFETENSORS
      • VCS
      • XDELTA
    • database
      • Database filformater
      • BAK SQL Server
      • CRYPT14
      • DB
      • DB3
      • DBC
      • DTSX
      • FDB
      • GDB
      • MDF
      • NDF
      • SAV
      • SQL
      • SQLITE
    • disc-and-media
      • Disk- og mediefilformater
      • CUE
      • ISZ
      • MDF
      • OVA
      • TIB
      • Toast
      • WBFS
    • ebook
      • E-bok filformater
      • CBZ
      • JWPUB
      • KFX
    • email
      • Filformater for e-post
      • EML
      • ICS
      • OFT
      • RPMSG
      • VCF
    • executable
      • Kjørbare filformater
      • BAT
      • CMD
      • JSF
      • MST
      • PS1
      • PYC
      • REG
      • RUN
      • WSF
      • XEX
    • finance
      • Finans filformater
      • ABA
      • IXBRL
      • OFX
      • XBRL
    • font
      • Font filformater
      • TTF
      • WOFF2
    • game
      • Spillfilformater
      • 3DSX
      • ASS
      • ASSET
      • BIN
      • BIN PCSX
      • BO2
      • BSP
      • CLIP
      • CT
      • DSV
      • ENC
      • ESP
      • FOMOD
      • GBX
      • GCF
      • GMA
      • KODU
      • MAP
      • MCA
      • MCPACK
      • MCR
      • MII
      • NBT
      • NDS
      • NPA
      • NSP
      • NSZ
      • OSB
      • OSK
      • OSR
      • OSU
      • OSZ
      • PAK
      • PCK
      • PGN
      • PPF
      • PSS
      • RPF
      • RPX
      • RPY
      • RPYC
      • RVZ
      • SFC
      • SIMS3PACK
      • SMC
      • SRM
      • UASSET
      • Unity3D
      • UNITYPACKAGE
      • USX
      • VDF
      • VMF
      • VPK
      • XCI
      • XS
      • Z64
    • gis
      • GIS filformater
      • FIT
      • GPX
      • KMZ
    • image
      • Bildefilformater
      • ARW
      • BMP
      • CDR
      • GIF
      • HDR
      • JFIF
      • JPEG
      • JPF
      • JPG_LARGE
      • JXL
      • MIX
      • PDN
      • PNJ
      • PPF
      • PVT
      • QTIF
      • RPF
      • SKP
      • SPP
      • SVS
      • TIFF
    • misc
      • Diverse filformater
      • BAK Backup
      • CRX
      • CTG
      • ENC
      • FIG
      • GPG
      • H5
      • IPS
      • LIC
      • LOCK
      • LRC
      • MEDIA FILES
      • NOMEDIA
      • PAKKE
      • PDO
      • PES
      • PFX
      • PKPASS
      • PS2 BIOS
      • PSX BIOS
      • SFV
      • SHELL SCRIPT
      • TEXT FORMATS
      • XMDX
      • XMZX
    • pdf
      • PDF
      • FDF
    • plugin
      • Plugin filformater
      • Q1Q
    • presentation
      • Presentasjonsfilformater
      • PPT
      • PPTX
    • programming
      • Programmering
      • ACD
      • ASM
      • AU3
      • C
      • CONFIG
      • CS
      • CSPROJ
      • CXX
      • EGG
      • G4
      • GROOVY
      • H
      • HPP
      • INO
      • Jav
      • JRXML
    • project-management
      • Prosjektledelse filformater
      • MPP
    • video
      • ASS
      • AV1
      • BNP
      • BRAW
      • DIRAC
      • DIVX
      • DRP
      • EVC
      • F4M
      • FCPXML
      • MJP
      • MPD
      • OTRKEY
      • R3D
      • SMK
      • TRP
      • TTML2
      • VVC
      • WebVTT
      • XAVC
    1. Hjem
    2. Lydfilformater
    3. iLBC

    What's on this Page

      • 1. Hva er iLBC-lydformatet?
      • 2. Viktige egenskaper ved iLBC
      • 3. Grundige funksjoner og arkitektonisk design
        • Uavhengig rammekoding (ingen feilpropagering)
        • Doble driftsmoduser ($20\text{ ms}$ vs. $30\text{ ms}$)
        • Avansert pakke-tap skjuling (PLC)
        • Lydkvalitet vs. Bitrate-profil
      • 4. Hvordan åpne og spille av .ilbc-lydfiler
        • Metode 1: Bruke Audacity (Importer rådata)
        • Metode 2: Kommandolinjeavspilling via FFplay
        • Metode 3: Dedikerte VoIP-analyser
      • 5. Hvordan lage og konvertere .ilbc-lydfiler
        • Koding til iLBC med FFmpeg
        • Spesifisering av rammemodus ($20\text{ ms}$ eller $30\text{ ms}$)
        • Dekoding av en .ilbc-fil tilbake til standard WAV
      • 6. Ofte stilte spørsmål (FAQ)
        • Q1: Hva var det primære problemet iLBC-lydformatet ble laget for å løse?
        • Q2: Hva er de to operative bitratene til en .ilbc-fil?
        • Q3: Kan iLBC-formatet brukes til streaming av musikk med høy lydkvalitet?
        • Q4: Er iLBC-lydkodeken royaltyfri?
        • Q5: Hvordan sammenlignes iLBC med den moderne Opus-kodeken?
      • 7. Offisielle spesifikasjoner og referanser

    1. Hva er iLBC-lydformatet?

    Den Internet Low Bitrate Codec ble opprinnelig laget av Global IP Solutions (GIPS) — et svensk lydteknisk firma som ble kjøpt opp av Google i 2010. Definert av Internet Engineering Task Force under RFC 3951 med RTP‑payload‑innkapsling beskrevet i RFC 3952, ble iLBC designet spesielt for robust taleoverføring over ustabile IP‑koblinger.

    Selv om moderne nettlesere ofte bruker Opus‑codec for sanntidskommunikasjon, er iLBC fortsatt en sentral, royalty‑fri standard som er integrert i bedrifts‑telefonistakker, SIP‑klienter, WebRTC‑bakoverkompatibilitetsprofiler og eldre VoIP‑apparater produsert av Cisco, Polycom og Asterisk‑PBX‑systemer.

    2. Viktige egenskaper ved iLBC

    ParameterSpesifikasjon
    StandardiseringIETF RFC 3951 (Codec), RFC 3952 (RTP‑payload)
    Vanlige filendelser.ilbc, .lbc
    MIME-medietypeaudio/iLBC
    Samplingsfrekvens$8\text{ kHz}$ (Smalbånd)
    Kvantiseringsoppløsning16-bit lineær PCM
    LydkanalerMono (Enkeltkanals tale)
    Støttede rammelengder$20\text{ ms}$ modus og $30\text{ ms}$ modus
    Operasjonelle bithastigheter$15.20\text{ kbit/s}$ ($20\text{ ms}$) / $13.33\text{ kbit/s}$ ($30\text{ ms}$)
    Payload-biter per blokk$304\text{ bits}$ ($20\text{ ms}$) / $400\text{ bits}$ ($30\text{ ms}$)
    Magisk header-identifikator#!iLBC20\n ($20\text{ ms}$) or #!iLBC30\n ($30\text{ ms}$)
    LisensieringRoyaltyfri (3-klausul BSD åpen kilde via WebRTC)

    3. Grundige funksjoner og arkitektonisk design

    Uavhengig rammekoding (ingen feilpropagering)

    Tradisjonelle tale-komprimeringsformater som G.729 og CELP-familiecodecs bruker inter-frame prediksjon, hvor hver lydramme avhenger av tilstandsinformasjon og tonehøyde‑prediktorvektorer fra den foregående rammen. Hvis en pakke går tapt på et overbelastet nettverk, sprer den manglende tilstanden seg videre og forvrenger etterfølgende lyd i flere hundre millisekunder.

    iLBC eliminerer denne avhengigheten. Hver taleramme i iLBC blir kodet uavhengig. Hvis pakke $N$ går tapt under overføring, dekodes pakke $N+1$ med full akustisk nøyaktighet.

    Doble driftsmoduser ($20\text{ ms}$ vs. $30\text{ ms}$)

    For å gi telekommunikasjonsingeniører fleksibel latenststyring, definerer iLBC to obligatoriske driftsmoduser:

    1. $20\text{ ms}$ Ramme-modus ($15.20\text{ kbit/s}$):
      • Koder 160 lydprøver per ramme til 38 byte ($304\text{ bits}$).
      • Gir lavere algoritmisk buffringslatens, noe som gjør den godt egnet for interaktiv kommunikasjon.
    2. $30\text{ ms}$ Ramme-modus ($13.33\text{ kbit/s}$):
      • Koder 240 lydprøver per ramme til 50 byte ($400\text{ bits}$).
      • Reduserer bitforbruket med omtrent $12%$, og optimaliserer nettverkspayload-effektiviteten over langdistanseforbindelser.

    Avansert pakke-tap skjuling (PLC)

    Når pakketap oppstår, bruker iLBC et tilstandsvariabel LPC (Linear Predictive Coding) syntesefilter som rekonstruerer manglende tonehøyde-syklusrepresentasjoner ved å bruke grense-tilstander fra naborammer. I stedet for å skape klikk, digitale popp eller harde dempinger, degraderer tapte talepakker seg jevnt.

    Lydkvalitet vs. Bitrate-profil

    Under ideelle nettverksforhold (0% pakkefall), oppnår iLBC en Mean Opinion Score (MOS) på omtrent 4.14 (av 5.0). Selv om den er litt under ukomprimert G.711 PCM ($\mu$-law ved $\sim 4.3$), beholder iLBC stemmeklarhet ved pakkefallshastigheter så høye som $5%\text{ til }10%$, hvor G.729 eller G.711 forståelighet faller betydelig.

    4. Hvordan åpne og spille av .ilbc-lydfiler

    Fordi .ilbc er et spesialisert rå telefonistrømformat snarere enn en generell forbrukermediekontainer (som MP3 eller WAV), kan vanlige forbrukeravspillere ikke alltid oppdage det uten dedikerte kodekpakker.

    Metode 1: Bruke Audacity (Importer rådata)

    Audacity kan importere rå PCM‑dump eller dekodede iLBC‑stemmefiler:

    1. Start Audacity.
    2. Naviger til Fil > Importer > Rådata…
    3. Velg filen og sett koding til Signed 16-bit PCM, byte‑rekkefølge til Little-endian, 1 kanal (Mono), og samplingsfrekvens til 8000 Hz.

    Metode 2: Kommandolinjeavspilling via FFplay

    Hvis din FFmpeg‑bygg er kompilert med libilbc‑utvidelsen:

    ffplay -f ilbc sample.ilbc
    

    Metode 3: Dedikerte VoIP-analyser

    Nettverksdiagnostikkverktøy som Wireshark kan trekke ut og rekonstruere .ilbc‑stemme‑payloads direkte fra fangede SIP/RTP‑pakke‑sesjoner og spille dem av via den innebygde RTP‑spiller‑verktøyet.

    5. Hvordan lage og konvertere .ilbc-lydfiler

    Arbeid med .ilbc-lyd krever 16-bit, enkeltkanal, $8000\text{ Hz}$ inngangslyd.

    Koding til iLBC med FFmpeg

    For å konvertere et eksisterende .wav- eller .mp3-lydklipp til en .ilbc-bitstrøm:

    ffmpeg -i input_speech.wav \
      -ar 8000 \
      -ac 1 \
      -c:a libilbc \
      output_audio.ilbc
    
    • -ar 8000: Resampler lyd til den nødvendige 8 kHz‑frekvensen.
    • -ac 1: Nedblander flerkanalslyd til mono.
    • -c:a libilbc: Bruker libilbc-referanse‑enkoderen.

    Spesifisering av rammemodus ($20\text{ ms}$ eller $30\text{ ms}$)

    Du kan velge rammemodus ved å bruke -mode‑flagget:

    # Encode using 30ms mode (13.33 kbit/s)
    ffmpeg -i input_speech.wav -ar 8000 -ac 1 -c:a libilbc -mode 30 output_30ms.ilbc
    
    # Encode using 20ms mode (15.20 kbit/s)
    ffmpeg -i input_speech.wav -ar 8000 -ac 1 -c:a libilbc -mode 20 output_20ms.ilbc
    

    Dekoding av en .ilbc-fil tilbake til standard WAV

    For å konvertere en .ilbc‑fil til en ukomprimert WAV‑fil som kan spilles av overalt:

    ffmpeg -f ilbc -i voice_message.ilbc converted_audio.wav
    

    6. Ofte stilte spørsmål (FAQ)

    Q1: Hva var det primære problemet iLBC-lydformatet ble laget for å løse?

    iLBC‑formatet ble utviklet for å bevare taleforståelse over IP‑nettverk ved å gjøre hver lydramme uavhengig, slik at pakke‑tapfeil ikke sprer seg til påfølgende talerammer.

    Q2: Hva er de to operative bitratene til en .ilbc-fil?

    En .ilbc-strøm opererer enten med $13.33\text{ kbit/s}$ når den bruker $30\text{ ms}$-rammer eller $15.20\text{ kbit/s}$ når den er konfigurert for $20\text{ ms}$-rammer.

    Q3: Kan iLBC-formatet brukes til streaming av musikk med høy lydkvalitet?

    Nei, iLBC er en smalbånd tale‑codec som er strengt begrenset til en $8\text{ kHz}$ samplingsfrekvens, optimalisert utelukkende for menneskelig tale mellom $90\text{ Hz}$ og $4000\text{ Hz}$.

    Q4: Er iLBC-lydkodeken royaltyfri?

    Ja, iLBC er fullt standardisert under IETF RFC 3951 og utgitt under en åpen kildekode, royalty‑fri 3‑klausul BSD‑lisens via WebRTC‑prosjektet.

    Q5: Hvordan sammenlignes iLBC med den moderne Opus-kodeken?

    Mens iLBC ga pakke‑tap skjuling for smalbånd VoIP i tidlige bredbåndsnettverk, støtter den moderne Opus‑codecen dynamiske bithastigheter, full‑bånd ($48\text{ kHz}$) lyd, og lavere algoritmisk latens.


    7. Offisielle spesifikasjoner og referanser

    • IETF RFC 3951 Spesifikasjon: Internet Low Bit Rate Codec (iLBC) Tale- og lydstandard
    • IETF RFC 3952 Pakkeformat: Real-time Transport Protocol (RTP) Pakkeformat for iLBC
    • WebRTC Åpen kildekode-prosjekt: WebRTC Codec Lisensiering & iLBC-implementering
    • FFmpeg kodek-dokumentasjon: FFmpeg libilbc integrasjonsretningslinjer
     
     Norsk
    Close
     English
     Deutsch
     日本
     中文
     русский
     Français
     한국인
     Español
     Italiano
     Nederlands
     हिन्दी
     Indonesian
     Português
     عربي
     Türkçe
     Ελληνικά
     ไทย
     עִברִית
     Svenska
     українська
     Tiếng Việt
     български
     Magyar
     čeština
     Română
     Polski
     Bengali
     Dansk
     Persian
     Finnish
     Gaeilge
     Lithuanian
     Latvian
     Azeri