Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Correct channel status bit position. #26

Merged
merged 1 commit into from
Feb 23, 2021
Merged

Correct channel status bit position. #26

merged 1 commit into from
Feb 23, 2021

Conversation

bellwood420
Copy link
Contributor

Channel status bit on SPDIF bitstream introduced in #15 is shifted forward by one subframe compared to the specification.

The raw signal capture of SPDIF bitstream(before and after the fix) are attached below.

capture2

Most SPDIF receiver devices seem to be working well with the inconsistent signal before this fix.
Maybe reading the bit only on left ch or giving priority to left ch.

But as reported on the forum, no sound with ES9038Q2M and I also confirmed it.
https://misterfpga.org/viewtopic.php?f=29&t=1972

I guess ES9038Q2M might be considering the bit on right channel.
Bit 1 indicates whether the signal is linear PCM or other.
So if it detects the bit asserted on right ch of frame 1, it could mute since the signal indicates that it is not linear PCM.

Anyway with this fix, ES9038Q2M got sound with SPDIF output containing channel status bit.

I also tested with some devices I have and no problem with them with the fix.

  • Creative Sound Blaster X-Fi PCIe
  • Topping DAC E30 (AK4118)
  • Onkyo FR-N7X

@sorgelig sorgelig merged commit 5d131e3 into MiSTer-devel:master Feb 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants