Mixes a delayed and filtered portion of one channel into the other to
simulate the spatial cues you’d get from loudspeakers. Particularly useful
on headphones with hard-panned mixes (older rock/jazz).
Setting
Storage
Range
Default
Type
crossfeed
off / meier / custom
off
Direct gain
crossfeed_direct_gain
−60..0 dB (step 5)
−15 dB
Cross gain
crossfeed_cross_gain
−120..−30 dB
−60 dB
HF attenuation
crossfeed_hf_attenuation
−240..−60 dB
−160 dB
HF cutoff
crossfeed_hf_cutoff
500..2000 Hz
700 Hz
Crossfeed can cause output distortion if its settings result in a combined
level that is too high.
Most decoders work at higher than 16-bit precision; dithering adds a small
shaped noise signal before truncation so the residual is uniform rather
than signal-correlated. Most useful with classical music and other
high-dynamic-range material.
dithering_enabled = true
Algorithm: high-pass triangular distribution (HPTPDF)
Noise shaper: third order, biased above ~10 kHz
⌘I
{"docsConfig":{"theme":"linden","$schema":"https://mintlify.com/docs.json","name":"Rockbox Daemon","colors":{"primary":"#FF6B00","light":"#FF9347","dark":"#CC5500"},"logo":{"light":"https://mintcdn.com/rockboxzig/9kP-H_jRBkIO2KOF/logo/light.svg?fit=max\u0026auto=format\u0026n=9kP-H_jRBkIO2KOF\u0026q=85\u0026s=aef84576565438310e1b68d08aea8441","dark":"https://mintcdn.com/rockboxzig/9kP-H_jRBkIO2KOF/logo/dark.svg?fit=max\u0026auto=format\u0026n=9kP-H_jRBkIO2KOF\u0026q=85\u0026s=1de817c23b895c5f3c8ee6038b765263"},"favicon":"https://mintcdn.com/rockboxzig/9kP-H_jRBkIO2KOF/favicon.svg?fit=max\u0026auto=format\u0026n=9kP-H_jRBkIO2KOF\u0026q=85\u0026s=dd84886ca336d7a88e8e0aff96cad6b8","appearance":{"default":"dark","strict":true},"background":{"decoration":"grid","color":{"light":"#fffbf7","dark":"#07080C"}},"navbar":{"links":[{"href":"https://github.com/tsirysndr/rockboxd/issues","label":"Issues"}],"primary":{"type":"github","href":"https://github.com/tsirysndr/rockboxd"}},"footer":{"socials":{"github":"https://github.com/tsirysndr/rockboxd","discord":"https://discord.gg/tXPrgcPKSt"}},"styling":{"codeblocks":{"theme":{"light":"catppuccin-latte","dark":"min-dark"}},"latex":false},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"navigation":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/tsirysndr/rockboxd"},{"anchor":"Discord","icon":"discord","href":"https://discord.gg/tXPrgcPKSt"},{"anchor":"Releases","icon":"rocket","href":"https://github.com/tsirysndr/rockboxd/releases"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"rockboxzig","hasAudioNarration":false,"actualSubdomain":"rockboxzig","customDomains":[],"gitSource":{"type":"github","owner":"tsirysndr","repo":"rockboxd","deployBranch":"master","contentDirectory":"mintlify","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae0cb56c9d0adb3afbd704f","clientVersion":"0.0.4102","searchFilterCounts":[{"language":"default","tag":"API reference","count":82},{"language":"default","tag":"HTTP REST","count":75},{"language":"default","tag":"Guides","count":30},{"language":"default","tag":"Player","count":16},{"language":"default","tag":"Saved playlists","count":13},{"language":"default","tag":"Bindings","count":11},{"language":"default","tag":"Native engine bindings","count":11},{"language":"default","tag":"Playlist (queue)","count":10},{"language":"default","tag":"Audio output","count":8},{"language":"default","tag":"Overview","count":7}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"audio-settings/dsp","slug":"/audio-settings/dsp","pageMetadata":{"title":"DSP effects","description":"Crossfeed, Haas surround, PBE, AFR, compressor and dithering.","icon":"waveform-lines","href":"/audio-settings/dsp"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Crossfeed, Haas surround, PBE, AFR, compressor and dithering.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Table,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`The rbcodec DSP pipeline runs between the codec output and the active sink.\nAll of these are bypassable; turn anything off by zeroing its enable flag.`}),`\n`,_jsx(Heading,{level:`2`,id:`crossfeed`,children:`Crossfeed`}),`\n`,_jsx(_components.p,{children:`Mixes a delayed and filtered portion of one channel into the other to\nsimulate the spatial cues you’d get from loudspeakers. Particularly useful\non headphones with hard-panned mixes (older rock/jazz).`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Setting`}),_jsx(_components.th,{children:`Storage`}),_jsx(_components.th,{children:`Range`}),_jsx(_components.th,{children:`Default`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Type`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`crossfeed`})}),_jsx(_components.td,{children:`off / meier / custom`}),_jsx(_components.td,{children:`off`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Direct gain`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`crossfeed_direct_gain`})}),_jsx(_components.td,{children:`−60..0 dB (step 5)`}),_jsx(_components.td,{children:`−15 dB`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Cross gain`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`crossfeed_cross_gain`})}),_jsx(_components.td,{children:`−120..−30 dB`}),_jsx(_components.td,{children:`−60 dB`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`HF attenuation`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`crossfeed_hf_attenuation`})}),_jsx(_components.td,{children:`−240..−60 dB`}),_jsx(_components.td,{children:`−160 dB`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`HF cutoff`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`crossfeed_hf_cutoff`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:`500..2000 Hz`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`700 Hz`})]})]})]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Crossfeed can cause output distortion if its settings result in a combined\nlevel that is too high.`})}),`\n`,_jsx(Heading,{level:`2`,id:`haas-surround`,children:`Haas surround`}),`\n`,_jsx(_components.p,{children:`Adds an adjustable delay between channels to widen the stereo image. Four\nauxiliary controls move the perceived stage back toward the centre.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Setting`}),_jsx(_components.th,{children:`Storage`}),_jsx(_components.th,{children:`Range`}),_jsx(_components.th,{children:`Default`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Enable`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`surround_enabled`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0 / 5 / 8 / 10 / 15 / 30 ms`}),_jsx(_components.td,{children:`0 (off)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Balance`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`surround_balance`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0..99 %`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`35 %`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`f(x1) HF cut`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`surround_fx1`})}),_jsx(_components.td,{children:`600..8000 Hz (step 200)`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`3400 Hz`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`f(x2) LF cut`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`surround_fx2`})}),_jsx(_components.td,{children:`40..400 Hz (step 40)`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`320 Hz`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Side only`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`surround_method2`})}),_jsx(_components.td,{children:`bool`}),_jsx(_components.td,{children:`false`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Dry/wet mix`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`surround_mix`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0..100 %`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`50 %`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`perceptual-bass-enhancement-pbe`,children:`Perceptual Bass Enhancement (PBE)`}),`\n`,_jsx(_components.p,{children:`Group-delay correction plus a biophonic EQ to boost low-end perception.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Setting`}),_jsx(_components.th,{children:`Storage`}),_jsx(_components.th,{children:`Range`}),_jsx(_components.th,{children:`Default`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Strength`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`pbe`})}),_jsx(_components.td,{children:`0..100 % (step 25)`}),_jsx(_components.td,{children:`0 % (off)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Precut`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`pbe_precut`})}),_jsx(_components.td,{children:`−4.5..0 dB (step 0.1)`}),_jsx(_components.td,{children:`−2.5 dB`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`auditory-fatigue-reduction-afr`,children:`Auditory Fatigue Reduction (AFR)`}),`\n`,_jsx(_components.p,{children:`Reduces energy in frequency bands the human ear is most sensitive to —\nhelpful for long listening sessions.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Setting`}),_jsx(_components.th,{children:`Values`}),_jsx(_components.th,{children:`Default`})]})}),_jsx(_components.tbody,{children:_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`AFR enable`}),_jsx(_components.td,{children:`off / weak / moderate / strong`}),_jsx(_components.td,{children:`off`})]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`compressor`,children:`Compressor`}),`\n`,_jsx(_components.p,{children:`Reduces dynamic range so quiet passages stay audible without loud passages\nclipping.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Setting`}),_jsx(_components.th,{children:`Storage`}),_jsx(_components.th,{children:`Values / range`}),_jsx(_components.th,{children:`Default`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Threshold`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`.threshold`})}),_jsx(_components.td,{children:`off / −3 / −6 / −9 / −12 / −15 / −18 / −21 / −24 dB`}),_jsx(_components.td,{children:`off`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Makeup gain`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`.makeup_gain`})}),_jsx(_components.td,{children:`off / auto`}),_jsx(_components.td,{children:`auto`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Ratio`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`.ratio`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:`2:1 / 4:1 / 6:1 / 10:1 / limit`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`2:1`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Knee`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`.knee`})}),_jsx(_components.td,{children:`hard / soft`}),_jsx(_components.td,{children:`soft`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Attack time`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`.attack_time`})}),_jsx(_components.td,{children:`0..30 ms (step 5)`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`5 ms`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Release time`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`.release_time`})}),_jsx(_components.td,{children:`100..1000 ms (step 100)`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`500 ms`})]})]})]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`toml`,children:_jsx(_components.pre,{className:`shiki shiki-themes catppuccin-latte min-dark`,style:{backgroundColor:`#eff1f5`,\"--shiki-dark-bg\":`#1f1f1f`,color:`#4c4f69`,\"--shiki-dark\":`#b392f0`},language:`toml`,children:_jsxs(_components.code,{language:`toml`,numberOfLines:`7`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#7C7F93`,\"--shiki-dark\":`#B392F0`},children:`[`}),_jsx(_components.span,{style:{color:`#4C4F69`,\"--shiki-dark\":`#B392F0`},children:`compressor_settings`}),_jsx(_components.span,{style:{color:`#7C7F93`,\"--shiki-dark\":`#B392F0`},children:`]`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#4C4F69`,\"--shiki-dark\":`#B392F0`},children:`threshold `}),_jsx(_components.span,{style:{color:`#179299`,\"--shiki-dark\":`#F97583`},children:`=`}),_jsx(_components.span,{style:{color:`#FE640B`,\"--shiki-dark\":`#F8F8F8`},children:` -24`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#4C4F69`,\"--shiki-dark\":`#B392F0`},children:`makeup_gain `}),_jsx(_components.span,{style:{color:`#179299`,\"--shiki-dark\":`#F97583`},children:`=`}),_jsx(_components.span,{style:{color:`#FE640B`,\"--shiki-dark\":`#F8F8F8`},children:` 0`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#4C4F69`,\"--shiki-dark\":`#B392F0`},children:`ratio `}),_jsx(_components.span,{style:{color:`#179299`,\"--shiki-dark\":`#F97583`},children:`=`}),_jsx(_components.span,{style:{color:`#FE640B`,\"--shiki-dark\":`#F8F8F8`},children:` 4`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#4C4F69`,\"--shiki-dark\":`#B392F0`},children:`knee `}),_jsx(_components.span,{style:{color:`#179299`,\"--shiki-dark\":`#F97583`},children:`=`}),_jsx(_components.span,{style:{color:`#FE640B`,\"--shiki-dark\":`#F8F8F8`},children:` 1`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#4C4F69`,\"--shiki-dark\":`#B392F0`},children:`release_time `}),_jsx(_components.span,{style:{color:`#179299`,\"--shiki-dark\":`#F97583`},children:`=`}),_jsx(_components.span,{style:{color:`#FE640B`,\"--shiki-dark\":`#F8F8F8`},children:` 300`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#4C4F69`,\"--shiki-dark\":`#B392F0`},children:`attack_time `}),_jsx(_components.span,{style:{color:`#179299`,\"--shiki-dark\":`#F97583`},children:`=`}),_jsx(_components.span,{style:{color:`#FE640B`,\"--shiki-dark\":`#F8F8F8`},children:` 5`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`dithering`,children:`Dithering`}),`\n`,_jsx(_components.p,{children:`Most decoders work at higher than 16-bit precision; dithering adds a small\nshaped noise signal before truncation so the residual is uniform rather\nthan signal-correlated. Most useful with classical music and other\nhigh-dynamic-range material.`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`toml`,children:_jsx(_components.pre,{className:`shiki shiki-themes catppuccin-latte min-dark`,style:{backgroundColor:`#eff1f5`,\"--shiki-dark-bg\":`#1f1f1f`,color:`#4c4f69`,\"--shiki-dark\":`#b392f0`},language:`toml`,children:_jsxs(_components.code,{language:`toml`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#4C4F69`,\"--shiki-dark\":`#B392F0`},children:`dithering_enabled `}),_jsx(_components.span,{style:{color:`#179299`,\"--shiki-dark\":`#F97583`},children:`=`}),_jsx(_components.span,{style:{color:`#FE640B`,\"--shiki-dark\":`#79B8FF`},children:` true`})]}),`\n`]})})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Algorithm: high-pass triangular distribution (HPTPDF)`}),`\n`,_jsx(_components.li,{children:`Noise shaper: third order, biased above ~10 kHz`}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"codeStyling":{"theme":{"light":"catppuccin-latte","dark":"min-dark"}},"config":{},"pageMetadata":{"title":"DSP effects","description":"Crossfeed, Haas surround, PBE, AFR, compressor and dithering.","icon":"waveform-lines","href":"/audio-settings/dsp"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Crossfeed","slug":"crossfeed","depth":2,"children":[]},{"title":"Haas surround","slug":"haas-surround","depth":2,"children":[]},{"title":"Perceptual Bass Enhancement (PBE)","slug":"perceptual-bass-enhancement-pbe","depth":2,"children":[]},{"title":"Auditory Fatigue Reduction (AFR)","slug":"auditory-fatigue-reduction-afr","depth":2,"children":[]},{"title":"Compressor","slug":"compressor","depth":2,"children":[]},{"title":"Dithering","slug":"dithering","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"rockboxzig","siteName":"Rockbox Daemon","title":"DSP effects - Rockbox Daemon","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-05-02T18:29:54.242Z","originalFileLocation":"audio-settings/dsp.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"dark\";if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Crossfeed, Haas surround, PBE, AFR, compressor and dithering.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Rockbox Daemon\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/rockboxzig/pcYORXdXdl3xldRO/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/rockboxzig/pcYORXdXdl3xldRO/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/rockboxzig/pcYORXdXdl3xldRO/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/rockboxzig/pcYORXdXdl3xldRO/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/rockboxzig/pcYORXdXdl3xldRO/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/rockboxzig/pcYORXdXdl3xldRO/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/rockboxzig/pcYORXdXdl3xldRO/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/rockboxzig/pcYORXdXdl3xldRO/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/rockboxzig/pcYORXdXdl3xldRO/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"DSP effects - Rockbox Daemon\">\u003cmeta data-mint-head property=\"og:description\" content=\"Crossfeed, Haas surround, PBE, AFR, compressor and dithering.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Rockbox Daemon\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://rockboxzig.mintlify.app/audio-settings/dsp\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://rockboxzig.mintlify.site/_mintlify/api/og/v2?division=Audio+settings\u0026amp;title=DSP+effects\u0026amp;description=Crossfeed%2C+Haas+surround%2C+PBE%2C+AFR%2C+compressor+and+dithering.\u0026amp;theme=8993cbb32a9990bfc28bed57\u0026amp;signature=106270d98ac2e21e6439cde8c45cd5ec6e5f3ad49ad6239f0529c0b17bd7e2c3\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"DSP effects - Rockbox Daemon\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Crossfeed, Haas surround, PBE, AFR, compressor and dithering.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://rockboxzig.mintlify.site/_mintlify/api/og/v2?division=Audio+settings\u0026amp;title=DSP+effects\u0026amp;description=Crossfeed%2C+Haas+surround%2C+PBE%2C+AFR%2C+compressor+and+dithering.\u0026amp;theme=8993cbb32a9990bfc28bed57\u0026amp;signature=106270d98ac2e21e6439cde8c45cd5ec6e5f3ad49ad6239f0529c0b17bd7e2c3\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/rockboxzig/pcYORXdXdl3xldRO/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Rockbox Daemon\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#FF6B00\">\u003clink data-mint-head rel=\"canonical\" href=\"https://rockboxzig.mintlify.app/audio-settings/dsp\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/audio-settings/dsp.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://rockboxzig.mintlify.app/#organization\",\"name\":\"Rockbox Daemon\",\"url\":\"https://rockboxzig.mintlify.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/rockboxzig/9kP-H_jRBkIO2KOF/logo/light.svg?fit=max\u0026auto=format\u0026n=9kP-H_jRBkIO2KOF\u0026q=85\u0026s=aef84576565438310e1b68d08aea8441\"}},{\"@type\":\"WebSite\",\"@id\":\"https://rockboxzig.mintlify.app#website\",\"name\":\"Rockbox Daemon\",\"url\":\"https://rockboxzig.mintlify.app\",\"publisher\":{\"@id\":\"https://rockboxzig.mintlify.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://rockboxzig.mintlify.app/audio-settings/dsp#webpage\",\"url\":\"https://rockboxzig.mintlify.app/audio-settings/dsp\",\"name\":\"DSP effects\",\"description\":\"Crossfeed, Haas surround, PBE, AFR, compressor and dithering.\",\"dateModified\":\"2026-05-02T18:29:54.242Z\",\"isPartOf\":{\"@id\":\"https://rockboxzig.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://rockboxzig.mintlify.app/audio-settings/dsp#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://rockboxzig.mintlify.app/audio-settings/dsp#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Audio settings\",\"item\":\"https://rockboxzig.mintlify.app/audio-settings/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"DSP effects\",\"item\":\"https://rockboxzig.mintlify.app/audio-settings/dsp\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://rockboxzig.mintlify.app/audio-settings/dsp#article\",\"headline\":\"DSP effects\",\"name\":\"DSP effects\",\"description\":\"Crossfeed, Haas surround, PBE, AFR, compressor and dithering.\",\"url\":\"https://rockboxzig.mintlify.app/audio-settings/dsp\",\"mainEntityOfPage\":{\"@id\":\"https://rockboxzig.mintlify.app/audio-settings/dsp#webpage\"},\"dateModified\":\"2026-05-02T18:29:54.242Z\",\"publisher\":{\"@id\":\"https://rockboxzig.mintlify.app/#organization\"},\"isPartOf\":{\"@id\":\"https://rockboxzig.mintlify.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Rockbox Daemon\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Rockbox Daemon\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/audio-settings/dsp.md","siteName":"Rockbox Daemon","nav":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/tsirysndr/rockboxd"},{"anchor":"Discord","icon":"discord","href":"https://discord.gg/tXPrgcPKSt"},{"anchor":"Releases","icon":"rocket","href":"https://github.com/tsirysndr/rockboxd/releases"}]},"tabs":[{"tab":"Guides","groups":[{"group":"Getting started","pages":[{"title":"Rockbox Daemon","icon":"music","href":""},{"title":"Quickstart","icon":"rocket","href":"/quickstart"},{"title":"Installation","icon":"download","href":"/installation"},{"title":"Configuration","icon":"gear","href":"/configuration"}]},{"group":"Audio output","pages":[{"title":"Audio output overview","icon":"speaker","href":"/audio-output/overview"},{"title":"Built-in (CPAL)","icon":"volume-high","href":"/audio-output/built-in"},{"title":"HLS + MPEG-DASH (CMAF)","icon":"globe","href":"/audio-output/hls"},{"title":"Snapcast","icon":"network-wired","href":"/audio-output/snapcast"},{"title":"AirPlay","icon":"apple","href":"/audio-output/airplay"},{"title":"Squeezelite","icon":"boxes-stacked","href":"/audio-output/squeezelite"},{"title":"Chromecast","icon":"chromecast","iconType":"brands","href":"/audio-output/chromecast"},{"title":"UPnP / DLNA","icon":"tower-broadcast","href":"/audio-output/upnp"}]},{"group":"Audio settings","pages":[{"title":"Audio settings","icon":"sliders","href":"/audio-settings/overview"},{"title":"Equalizer","description":"10-band parametric EQ — independent gain, frequency and Q per band.","icon":"chart-column","href":"/audio-settings/equalizer"},{"title":"DSP effects","icon":"waveform-lines","href":"/audio-settings/dsp"},{"title":"ReplayGain","description":"Loudness normalisation using ReplayGain tags embedded in your files.","icon":"volume","href":"/audio-settings/replaygain"},{"title":"Crossfade","icon":"shuffle","href":"/audio-settings/crossfade"}]},{"group":"Clients","pages":[{"title":"Web UI","icon":"globe","href":"/clients/web"},{"title":"Desktop app","icon":"display","href":"/clients/desktop"},{"title":"MPD clients","icon":"terminal","href":"/clients/mpd"},{"title":"MPRIS","icon":"keyboard","href":"/clients/mpris"}]},{"group":"Architecture","pages":[{"title":"Architecture","icon":"sitemap","href":"/architecture/overview"},{"title":"Build system","icon":"hammer","href":"/architecture/build"},{"title":"PCM sinks","icon":"plug","href":"/architecture/pcm-sinks"}]},{"group":"Reference","pages":[{"title":"CLI reference","icon":"terminal","href":"/reference/cli"},{"title":"Settings sync","icon":"cloud-arrow-up","href":"/reference/settings-sync"},{"title":"Ports","icon":"plug","href":"/reference/ports"},{"title":"settings.toml reference","icon":"file-code","href":"/reference/settings-toml"},{"title":"Troubleshooting","icon":"wrench","href":"/reference/troubleshooting"},{"title":"FAQ","icon":"circle-question","href":"/reference/faq"}]}]},{"tab":"API reference","pages":[{"title":"API reference","href":"/api-reference/introduction"}]},{"tab":"SDKs","pages":[{"title":"SDKs","href":"/sdks/overview"}]},{"tab":"Bindings","pages":[{"title":"Bindings","href":"/bindings/overview"}]}]},"basePath":"","title":"DSP effects - Rockbox Daemon","buildId":"dpl_596ePT575z4qnAFksq1biRW97aLY","deploymentId":"dpl_596ePT575z4qnAFksq1biRW97aLY","dynamics":[],"chunks":[]}