Repository navigation
OSIRIS v0.4.0
AirPlay and Dolby Digital, and more of the receiver's audio settings.
Highlights
- AirPlay - the receiver shows up as an AirPlay speaker. It switches itself to NET when a sender starts playing, shows the track and play state on the front panel, and the sender's volume slider sets the receiver's volume.
- Dolby Digital - decoded on the DSP from HDMI and optical, played as 5.1 or folded into the speakers there are, and shown on the front panel as Dolby D with its layout.
- A/V sync, Dynamic EQ and Dynamic Volume from the receiver's menus.
- Surround back speakers from 5.1 - they repeat the surrounds.
- Headphones - all channels are folded into them at full range, without the room's speaker distances and equalizer.
- 88.2 and 96 kHz - a half-band filter in and out instead of averaging, flat to 20 kHz. Sources above 96 kHz play silence instead of overloading the DSP.
- Rear USB port - USB sticks now work in both ports.
- Level meter and DSP load -
ubus call dsp statusshows how busy the DSP is.
Fixes
- Left and right were swapped on HDMI sources.
- Speaker distances were read wrong.
- Changing the equalizer cleared the bass management crossovers for a moment.
- Tone controls and Dynamic EQ could clip: the largest boost now comes off every channel first, and the analog volume makes up the level.
- The DSP started only with a source present; it now starts without a clock and waits for one.
Updating from v0.3.0
From a USB stick: copy osiris-v0.4.0.tar to the top directory of a FAT stick and plug it into the receiver; it offers the update on its update screens. Or over the network:
scp osiris-v0.4.0.tar root@TX-NR717:/tmp/
ssh root@TX-NR717 osiris-upgrade /tmp/osiris-v0.4.0.tarNew installs: see docs/install.md.
Changelog
67 commits since v0.3.0
- services: dspd, dspaudio, mcud, osirisd: A/V sync
- services: dspd, dspaudio, mcud, osirisd: Dynamic EQ
- services: mcud: Dynamic Volume is C7 08, the reference level offset 0A
- services: dspd, dspaudio, osirisd: Dynamic Volume
- services: dspd, dspaudio: steady surrounds in the music modes
- services: dspd, mcud, osirisd: follow the source's sample rate
- services: dspd, dspaudio: process every other frame above 48 kHz
- services: dspd, mcud, osirisd: surround back from 5.1
- services: dspd, dspaudio: play audio from Linux through a ring
- services: pcmd: feed audio from Linux to the DSP
- buildroot: shairport-sync for AirPlay
- docs: README: A/V sync, Dynamic EQ and Volume, AirPlay
- buildroot: board: start the clock from the build time only
- services: dspaudio: take the ring's frame in as a whole
- services: pcmd: flatter resampling filter
- services: mcud: send 0x40 on a switch to a network source
- services: osirisd: play the ring on the NET input
- buildroot: libubox: pop the Lua callback table after a callback
- services: pcmd: drop the queued audio on SIGUSR1
- services: dspd, dspaudio: level meter
- services: mcud: front panel text and level meter on NET
- buildroot: shairport-sync: track and play state on a pipe
- services: osirisd: AirPlay track and play state on the front panel
- docs: features page, bring the pages up to date
- services: mcud: input selection and ISCP commands over ubus
- services: osirisd: handle ubus events from the main loop
- services: osirisd: switch to NET when AirPlay starts
- buildroot: shairport-sync: keep one descriptor for the pipe
- services: mcud: set the master volume over ubus
- services: osirisd: the AirPlay slider sets the receiver's volume
- services: mcud: meter for full-level AirPlay, sound means playing
- services: osirisd: drop the queued audio at the end of a session too
- services: dspaudio: import liba52
- services: dspaudio: unpack IEC 61937 bursts
- services: dspaudio: one receive slot in a function of its own
- services: dspaudio: DMA-driven McASP as a build option
- services: dspd: load an image's SDRAM part, name the decoded layout
- services: dspaudio: decode AC-3
- services: mcud: the source's channels, LFE and format in mcu stream
- services: dspd: dsp.bitstream when the bitstream changes
- services: osirisd: decoded AC-3 plays as multichannel, shown as Dolby D
- services: osirisd: tell the MCU the layout of multichannel PCM
- services: dspd, dspaudio: do not swap left and right on HDMI
- services: dspd, dspaudio, mcud, osirisd: Late Night for Dolby Digital
- services: dspaudio: split dspaudio.c up
- services: dspd: split dspd.c up
- services: mcud: split mcud.c up
- services: osirisd: split into modules
- services: dspaudio: start without a clock and wait for one
- services: dspd: the DSP image in /lib/firmware
- services: mcud, osirisd: name the listening modes the MCU's byte gives
- services: mcud: read the speaker distances right
- services: osirisd: keep Dynamic EQ and Dynamic Volume in the state file
- services: dspaudio: headroom for the tone controls
- services: dspaudio, dspd: change the equalizer without clearing the crossovers
- services: osirisd: leave calibration alone on AirPlay
- services: mcud, osirisd: mute NET when the MCU asks
- services: dspd: take the tone boost off every channel
- services: dspd: count Dynamic EQ's boost in the headroom
- services: dspd, dspaudio: report the DSP load
- services: dspd, dspaudio: let the DSP image use the L2 above the shared block
- services: dspaudio: half-band filter at 88.2 and 96 kHz
- services: mcud, osirisd: headphones get every channel
- docs: features: optical, HDMI ARC, CEC and Late Night work
- services: dspd, dspaudio, osirisd: play silence above 96 kHz
- services: pcmd: follow the writer's clock instead of blocking it
- linux: davinci: da830-evm: USB PHY reference is 20 MHz