Codec 2 – David Rowe
- Open speech Codec. Low bitrate 2400 b/s down to 1400 b/s
- Applcations for digital radio
- Fills <5000 b/s gap
- http://rowetel.com/codec2.html
- Not a DSP talk
- Can send 45 calls inside 64 kb/s chanel
- Not useful for VOIP due to IP/UDP overhead of 8kb/s on 1400b/s data
- Main use radio spectrum. Less data = less power required since your power gets concentrate on less bits
- doesn’t matter too much if odd packet dropped
- proprietary codecs slowing digital voice over radio
- Proprietary codes: hardware or licensed software form, difficult to distribute, can’t modify
- Example g729 license $40k. Doesn’t believe closed source codecs benefit society
- Authors of propriety/patented codecs borrowed heavily from public domain. perhaps 5% is original. Good news is only 5% needs to be replaced
- Speech coding: eg 16bit samples at 8kHz, comprss to 1400-2400 b/s . What can we thrown away, retain intelligible speech, retain natural speech. Use a model of speech, send model parameters, for effecient than coding waveform
- Model: example is pitch, humans 50-500 Hz , can be represented with 7 bits, updated every 20ms 7/0.02 = 350b/s to represent pitch
- Codec 2 uses Sinusoidal speech coding. Multiple Sine waves added togeather
- Bit allocation: 56bits every 40ms. Of these: Amplitude 32 , Frame energy 10 , voicing 4, pitch 10
- Developing Codecs: complex DSP algorithms, run codecs in non-realtime, dump values from codecs every “frame” ( 80 samples, 10 ms of speech) . Gnu Octave
- Banned exports list includes ” Speech codecs below 2400 b/s ” . Have been advised by DECO that Codec 2 has “assessed as not controlled” but waiting for certificate
UEFI and Linux – Matthew Garrett
- Replacement for PC BIOS
- BSD licensed core
- Adds standardized support for new hardware features
- Platform init
- EFI image load – loaded drivers
- EFI OS loader load – oot from ordered list of EFIOS loaders
- Boot services terminate -> OS handover
- Boot services – memory allocation, timers, image loading, GUIDs.
- Runtime services – non-volatile variable store, boot data, system information, crash dumps (already in Linux 3.2)
- Able to update firmware by reset and grab new firmware out of variables on bootup
- GPT – GUID partition table – no practical restrictions on size and number – more metadata about partition type and service
- That all sounds good …. but ….
- TianoCore – Open Intel reference UEFI reference implementation, 7061 files, >100MB of code, 10% of size of Linux kernel. Bigger than Linux core kernel
- Large codebase, some bugs
- UEFI is poorly tested in the real world. UEFI contains a lot of code. UEFI contains a lot of bugs
- Some problems with secure boot 🙂