Linux - AudioEngine testers - Linux only

  Thread Rating:
  • 4 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
wxc200 Offline
Junior Member
Posts: 12
Joined: Apr 2012
Reputation: 1
Post: #436
from your log i found the HBR bits were "0", meaning the High-bit rate features was not working at least in GFX side. it's what i'm confusing now.

AUD_OUT_STR_DESC_A HBR_enable 0

AUD_OUT_STR_DESC_B HBR_enable 0

AUD_OUT_STR_DESC_C HBR_enable 0
find quote
Fneufneu Offline
Team-XBMC BSD Developer
Posts: 37
Joined: Aug 2010
Reputation: 0
Location: Paris
Post: #437
hi,
i have an issue when i try to play TrueHD decoded into LPCM (disable truehd support and enable lpcm)
all works fine except the center channel, i have no sound at all from it.
i checked (with dolby truehd channel check 7.1) and all channel are mapped correctly, except the center.
i dont known if it's ffmpeg or anything related.
my system: FreeBSD + OSS + ffmpeg 0.11.1

also can someone plz pastebin a log of hd files (dtshdma and truehd) successfully played with alsa on a receiver who support it.
i need to make some diff with my OSS log output.
thanks !

HTPC: Asus AT5IONT-I | 4GB DDR3 RAM | XBMC git on FreeBSD 9-STABLE amd64
Home AV: Samsung PS-58C6500 58" Plasma | Denon 4810 | Monitor Audio GS20 GS10 GSLCR GSFX
find quote
direx Offline
Junior Member
Posts: 31
Joined: Apr 2008
Reputation: 2
Location: Germany
Post: #438
(2012-08-09 18:41)wxc200 Wrote:  Thanks a lot. Currently we can manage the hbr bits setting correctly at alsa hda side,but gfx side did not reflect hbr correctly. That's maybe caused by some wrong setting sequence,anyway I hope you can provide the output of intel-audio-dump to check pin status. Sorry I have no hdmi receiver handy to receive hbr formats audio.
I also ran intel-audio-dump (from git), this is the result:

http://pastebin.com/iubEkqJm

Note: I am on the latest drm-intel-next-queued branch, which includes 9a4b63e1ca943743ddb420611af5dcedbfb3953a, 7fc5be186fed4a782338a5feff5745c9c8190f75 and 1227d7f16b08bde70ac8afc71e5d47b610db77e3 (are these your commits, wxc200?).

If I can do anything else to help you, let me know.

Main: CPU: Intel Q9650, GFX: ATI Radeon HD 7850-silent, Gentoo Linux, XBMC-git, H.264 decoding with vaapi
HTPC: CPU: Intel Core i5-3475S, GFX: Intel HD4000, Gentoo Linux (Kernel 3-stable), XBMC-git, H.264 decoding with VAAPI, HD audio, AVR: Pioneer VSX-LX51, TV: Panasonic TX-L37V10E
Fun: Microsoft XBox, with XBMC :)
find quote
Fneufneu Offline
Team-XBMC BSD Developer
Posts: 37
Joined: Aug 2010
Reputation: 0
Location: Paris
Post: #439
ok i found my problem, LFE and center channel are inverted

HTPC: Asus AT5IONT-I | 4GB DDR3 RAM | XBMC git on FreeBSD 9-STABLE amd64
Home AV: Samsung PS-58C6500 58" Plasma | Denon 4810 | Monitor Audio GS20 GS10 GSLCR GSFX
find quote
Fneufneu Offline
Team-XBMC BSD Developer
Posts: 37
Joined: Aug 2010
Reputation: 0
Location: Paris
Post: #440
(2012-08-16 10:51)Fneufneu Wrote:  hi,
i have an issue when i try to play TrueHD decoded into LPCM (disable truehd support and enable lpcm)
all works fine except the center channel, i have no sound at all from it.
i checked (with dolby truehd channel check 7.1) and all channel are mapped correctly, except the center.
i dont known if it's ffmpeg or anything related.
my system: FreeBSD + OSS + ffmpeg 0.11.1

i fixed TrueHD decoding channel mapping in ffmpeg 0.11.1: http://fneufn.eu/freebsd/patch-libavcodec-mlpdec.c
can someone confirm if it's works correctly on ALSA without my patch
and i'll send issue in upstream.

HTPC: Asus AT5IONT-I | 4GB DDR3 RAM | XBMC git on FreeBSD 9-STABLE amd64
Home AV: Samsung PS-58C6500 58" Plasma | Denon 4810 | Monitor Audio GS20 GS10 GSLCR GSFX
find quote
fatal. Offline
Junior Member
Posts: 43
Joined: Mar 2011
Reputation: 1
Location: Atlanta, GA
Post: #441
Hey,

I am using the latest OpenELEC generic build by ericab (r11809 - Frodo-r16812)

On some DTS-HD tracks I am getting a lot of "crackling" when there is a loud sound effect/explosion. This only happens on my htpcs connected to TV and XBMC is set to output using HDIMI with 2.0 speaker configuration (everything else is turned off). I've tried this on 3 different tvs.

Playing the same movie/section while bit-streaming to the receiver everything plays fine, no crackling. Also playing it on my desktop with headphones using MPC also has no issues.

Here is a sample video for which I get crackling: http://www36.zippyshare.com/d/27144396/7...sample.mkv
Debug Log: http://xbmclogs.com/show.php?id=6895

Using GT430.

Take Care
(This post was last modified: 2012-08-19 16:12 by fatal..)
find quote
SiS31 Offline
Junior Member
Posts: 1
Joined: Aug 2012
Reputation: 0
Post: #442
Bug in audio player

Hello,

i use Xtreamer Ultra 2 and i found bug in OpenELEC_frodo-Ultra.x86_64-devel-20120820113649-r11814...idia-v304.37.tar.bz2 audio player. When I play DTS audio file in wav format the time go fastly, but the song sounds good. Then the audio file ends before. MP3 works without problem. Movies play correctly.
Try pls this wav file. share-rapid.com/stahuj/d5880qm1 . Another problem is that album art in DTS wav files is not display correctly.
In OpenELEC 2.0 Beta 6(1.95.6) is everything OK. DTS wav files plaing correctly and too the album art in files are displayed correctly.
Thanks for answer.
find quote
wxc200 Offline
Junior Member
Posts: 12
Joined: Apr 2012
Reputation: 1
Post: #443
(2012-08-16 15:16)direx Wrote:  
(2012-08-09 18:41)wxc200 Wrote:  Thanks a lot. Currently we can manage the hbr bits setting correctly at alsa hda side,but gfx side did not reflect hbr correctly. That's maybe caused by some wrong setting sequence,anyway I hope you can provide the output of intel-audio-dump to check pin status. Sorry I have no hdmi receiver handy to receive hbr formats audio.
I also ran intel-audio-dump (from git), this is the result:

http://pastebin.com/iubEkqJm

Note: I am on the latest drm-intel-next-queued branch, which includes 9a4b63e1ca943743ddb420611af5dcedbfb3953a, 7fc5be186fed4a782338a5feff5745c9c8190f75 and 1227d7f16b08bde70ac8afc71e5d47b610db77e3 (are these your commits, wxc200?).

If I can do anything else to help you, let me know.

Thanks your test. I have one Yamaha RX V571 which supports HBR stream testing now, so i can test my patch easily. About the patches, i used name "xingchao.wang@intel.com".

Currently one clue is about HBR bits setting, another one is about N/CTS programming. Intel driver left the default values for TMDS clock and the HDMI spec has requirement to program N/CTS according to ASP type. There's one recommended talbe for various rates and TMDS clock(according to HDMI SPEC 1.3a, table 7.1). I'm doing more test based on that. I know little about the knowledge on this and how does that work on the enabled-HBR platform such as Nvidia's card. if anyone can share with me some infomation, i will appreciate that much.

thanks
--xingchao
find quote
jz1276 Offline
Fan
Posts: 363
Joined: Jul 2007
Reputation: 0
Post: #444
(2012-08-21 23:39)SiS31 Wrote:  Bug in audio player

Hello,

i use Xtreamer Ultra 2 and i found bug in OpenELEC_frodo-Ultra.x86_64-devel-20120820113649-r11814...idia-v304.37.tar.bz2 audio player. When I play DTS audio file in wav format the time go fastly, but the song sounds good. Then the audio file ends before. MP3 works without problem. Movies play correctly.
Try pls this wav file. share-rapid.com/stahuj/d5880qm1 . Another problem is that album art in DTS wav files is not display correctly.
In OpenELEC 2.0 Beta 6(1.95.6) is everything OK. DTS wav files plaing correctly and too the album art in files are displayed correctly.
Thanks for answer.

I have a similar problem. Any DTS-WAV file with cue sheets are not playing properly. Some dont start where they should and always cut out early.
find quote
wxc200 Offline
Junior Member
Posts: 12
Joined: Apr 2012
Reputation: 1
Post: #445
The HBR stream could work on Intel's chip now, i will update the patch later. Smile
find quote
wxc200 Offline
Junior Member
Posts: 12
Joined: Apr 2012
Reputation: 1
Post: #446
(2012-08-28 07:51)wxc200 Wrote:  The HBR stream could work on Intel's chip now, i will update the patch later. Smile

I didnot find there's attachment option, so i just paste the patch here.
please apply the patch against Takashi's latest sound tree.
i tested this patch on my Yamaha A/V Receiver, both DTS-HD MA and Dolby TrueHD HBR streams
could play well.
Please note this patch is only for test purpose now, it's not the final upstream version.
There's another dependent hack from Anssi, please apply the second patch against Takashi's alsa-lib tree.

If there's any problem during your test, please feel free to let me know:
xingchao.wang@intel.com

[PATCH] ALSA: HDMI - Enable HBR feature on Intel chips

HDMI channel remapping apparently effects HBR packets on Intel's chips.
For compressed non-PCM audio, use "straight-through" channel mapping.
For uncompressed multi-channel pcm audio, use normal mapping.

Signed-off-by: Wang Xingchao <xingchao.wang@intel.com>
Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
---
sound/pci/hda/patch_hdmi.c | 50 +++++++++++++++++++++++++++-----------------
1 file changed, 31 insertions(+), 19 deletions(-)

diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c index d9439c5..fda89e3 100644
--- a/sound/pci/hda/patch_hdmi.c
+++ b/sound/pci/hda/patch_hdmi.c
@@ -231,6 +231,11 @@ static struct cea_channel_speaker_allocation channel_allocations[] = {
{ .ca_index = 0x01, .speakers = { 0, 0, 0, 0, 0, LFE, FR, FL } },
/* Dolby Surround */
{ .ca_index = 0x02, .speakers = { 0, 0, 0, 0, FC, 0, FR, FL } },
+{ .ca_index = 0x03, .speakers = { 0, 0, 0, 0, FC, LFE, FR, FL } },
+{ .ca_index = 0x04, .speakers = { 0, 0, 0, RC, 0, 0, FR, FL } },
+{ .ca_index = 0x05, .speakers = { 0, 0, 0, RC, 0, LFE, FR, FL } },
+{ .ca_index = 0x06, .speakers = { 0, 0, 0, RC, FC, 0, FR, FL } },
+{ .ca_index = 0x07, .speakers = { 0, 0, 0, RC, FC, LFE, FR, FL } },
/* surround40 */
{ .ca_index = 0x08, .speakers = { 0, 0, RR, RL, 0, 0, FR, FL } },
/* surround41 */
@@ -239,22 +244,15 @@ static struct cea_channel_speaker_allocation channel_allocations[] = {
{ .ca_index = 0x0a, .speakers = { 0, 0, RR, RL, FC, 0, FR, FL } },
/* surround51 */
{ .ca_index = 0x0b, .speakers = { 0, 0, RR, RL, FC, LFE, FR, FL } },
- /* 6.1 */
-{ .ca_index = 0x0f, .speakers = { 0, RC, RR, RL, FC, LFE, FR, FL } },
- /* surround71 */
-{ .ca_index = 0x13, .speakers = { RRC, RLC, RR, RL, FC, LFE, FR, FL } },
-
-{ .ca_index = 0x03, .speakers = { 0, 0, 0, 0, FC, LFE, FR, FL } },
-{ .ca_index = 0x04, .speakers = { 0, 0, 0, RC, 0, 0, FR, FL } },
-{ .ca_index = 0x05, .speakers = { 0, 0, 0, RC, 0, LFE, FR, FL } },
-{ .ca_index = 0x06, .speakers = { 0, 0, 0, RC, FC, 0, FR, FL } },
-{ .ca_index = 0x07, .speakers = { 0, 0, 0, RC, FC, LFE, FR, FL } },
{ .ca_index = 0x0c, .speakers = { 0, RC, RR, RL, 0, 0, FR, FL } },
{ .ca_index = 0x0d, .speakers = { 0, RC, RR, RL, 0, LFE, FR, FL } },
{ .ca_index = 0x0e, .speakers = { 0, RC, RR, RL, FC, 0, FR, FL } },
+{ .ca_index = 0x0f, .speakers = { 0, RC, RR, RL, FC, LFE, FR, FL } },
{ .ca_index = 0x10, .speakers = { RRC, RLC, RR, RL, 0, 0, FR, FL } },
{ .ca_index = 0x11, .speakers = { RRC, RLC, RR, RL, 0, LFE, FR, FL } },
{ .ca_index = 0x12, .speakers = { RRC, RLC, RR, RL, FC, 0, FR, FL } },
+ /* surround71 */
+{ .ca_index = 0x13, .speakers = { RRC, RLC, RR, RL, FC, LFE, FR,
+FL } },
{ .ca_index = 0x14, .speakers = { FRC, FLC, 0, 0, 0, 0, FR, FL } },
{ .ca_index = 0x15, .speakers = { FRC, FLC, 0, 0, 0, LFE, FR, FL } },
{ .ca_index = 0x16, .speakers = { FRC, FLC, 0, 0, FC, 0, FR, FL } },
@@ -537,22 +535,36 @@ static void hdmi_debug_channel_mapping(struct hda_codec *codec,

static void hdmi_setup_channel_mapping(struct hda_codec *codec,
hda_nid_t pin_nid,
+ hda_nid_t cvt_nid,
int ca)
{
int i;
int err;
-
- if (hdmi_channel_mapping[ca][1] == 0) {
- for (i = 0; i < channel_allocations[ca].channels; i++)
- hdmi_channel_mapping[ca][i] = i | (i << 4);
+ unsigned short val;
+ int tmp_mapping[8];
+ bool non_pcm = false;
+
+ val = snd_hda_codec_read(codec, cvt_nid, 0, AC_VERB_GET_DIGI_CONVERT_1, 0);
+ non_pcm = !!(val & AC_DIG1_NONAUDIO);
+
+ if (hdmi_channel_mapping[ca][1] == 0 || non_pcm) {
+ for (i = 0; i < channel_allocations[ca].channels; i++) {
+ if (non_pcm)
+ tmp_mapping[i] = i | (i << 4);
+ else
+ hdmi_channel_mapping[ca][i] = i | (i << 4);
+ }
for (; i < 8; i++)
- hdmi_channel_mapping[ca][i] = 0xf | (i << 4);
+ if (non_pcm)
+ tmp_mapping[i] = 0xf | (i << 4);
+ else
+ hdmi_channel_mapping[ca][i] = 0xf | (i << 4);
}

for (i = 0; i < 8; i++) {
err = snd_hda_codec_write(codec, pin_nid, 0,
AC_VERB_SET_HDMI_CHAN_SLOT,
- hdmi_channel_mapping[ca][i]);
+ non_pcm ? tmp_mapping[i] : hdmi_channel_mapping[ca][i]);
if (err) {
snd_printdd(KERN_NOTICE
"HDMI: channel mapping failed\n"); @@ -686,7 +698,7 @@ static bool hdmi_infoframe_uptodate(struct hda_codec *codec, hda_nid_t pin_nid, }

static void hdmi_setup_audio_infoframe(struct hda_codec *codec, int pin_idx,
- struct snd_pcm_substream *substream)
+ hda_nid_t cvt_nid, struct snd_pcm_substream *substream)
{
struct hdmi_spec *spec = codec->spec;
struct hdmi_spec_per_pin *per_pin = &spec->pins[pin_idx]; @@ -731,13 +743,13 @@ static void hdmi_setup_audio_infoframe(struct hda_codec *codec, int pin_idx,
* sizeof(*dp_ai) to avoid partial match/update problems when
* the user switches between HDMI/DP monitors.
*/
+ hdmi_setup_channel_mapping(codec, pin_nid, cvt_nid, ca);
if (!hdmi_infoframe_uptodate(codec, pin_nid, ai.bytes,
sizeof(ai))) {
snd_printdd("hdmi_setup_audio_infoframe: "
"pin=%d channels=%d\n",
pin_nid,
channels);
- hdmi_setup_channel_mapping(codec, pin_nid, ca);
hdmi_stop_infoframe_trans(codec, pin_nid);
hdmi_fill_audio_infoframe(codec, pin_nid,
ai.bytes, sizeof(ai));
@@ -1151,7 +1163,7 @@ static int generic_hdmi_playback_pcm_prepare(struct hda_pcm_stream *hinfo,

hdmi_set_channel_count(codec, cvt_nid, substream->runtime->channels);

- hdmi_setup_audio_infoframe(codec, pin_idx, substream);
+ hdmi_setup_audio_infoframe(codec, pin_idx, cvt_nid, substream);

pinctl = snd_hda_codec_read(codec, pin_nid, 0,
AC_VERB_GET_PIN_WIDGET_CONTROL, 0);
--
1.7.9.5

alsa-lib patch:

From 47b54a7e3b6ba58782348c87c6a83b318d5f8c65 Mon Sep 17 00:00:00 2001
From: Wang Xingchao <xingchao.wang@intel.com>
Date: Tue, 28 Aug 2012 17:11:04 +0800
Subject: [PATCH] HDA-Intel: change CTLINDEX entries for HBR

Fix wrong CTLINDEX for HBR stream.

Signed-off-by: Wang Xingchao <xingchao.wang@intel.com>
---
src/conf/cards/HDA-Intel.conf | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/conf/cards/HDA-Intel.conf b/src/conf/cards/HDA-Intel.conf
index d4f2667..7d6de8f 100644
--- a/src/conf/cards/HDA-Intel.conf
+++ b/src/conf/cards/HDA-Intel.conf
@@ -211,7 +211,7 @@ HDA-Intel.pcm.hdmi.0 {
"cards.HDA-Intel.pcm.hdmi.common:"
"CARD=" $CARD ","
"DEVICE=3,"
- "CTLINDEX=0,"
+ "CTLINDEX=1,"
"AES0=" $AES0 ","
"AES1=" $AES1 ","
"AES2=" $AES2 ","
@@ -234,7 +234,7 @@ HDA-Intel.pcm.hdmi.1 {
"cards.HDA-Intel.pcm.hdmi.common:"
"CARD=" $CARD ","
"DEVICE=7,"
- "CTLINDEX=1,"
+ "CTLINDEX=2,"
"AES0=" $AES0 ","
"AES1=" $AES1 ","
"AES2=" $AES2 ","
@@ -257,7 +257,7 @@ HDA-Intel.pcm.hdmi.2 {
"cards.HDA-Intel.pcm.hdmi.common:"
"CARD=" $CARD ","
"DEVICE=8,"
- "CTLINDEX=2,"
+ "CTLINDEX=3,"
"AES0=" $AES0 ","
"AES1=" $AES1 ","
"AES2=" $AES2 ","
@@ -280,7 +280,7 @@ HDA-Intel.pcm.hdmi.3 {
"cards.HDA-Intel.pcm.hdmi.common:"
"CARD=" $CARD ","
"DEVICE=9,"
- "CTLINDEX=3,"
+ "CTLINDEX=4,"
"AES0=" $AES0 ","
"AES1=" $AES1 ","
"AES2=" $AES2 ","
--
1.7.9.5
(This post was last modified: 2012-08-28 15:47 by wxc200.)
find quote
direx Offline
Junior Member
Posts: 31
Joined: Apr 2008
Reputation: 2
Location: Germany
Post: #447
Thank you so much for looking into this xingchao! I hope I can test your patches by the end of this week.

- direx

Main: CPU: Intel Q9650, GFX: ATI Radeon HD 7850-silent, Gentoo Linux, XBMC-git, H.264 decoding with vaapi
HTPC: CPU: Intel Core i5-3475S, GFX: Intel HD4000, Gentoo Linux (Kernel 3-stable), XBMC-git, H.264 decoding with VAAPI, HD audio, AVR: Pioneer VSX-LX51, TV: Panasonic TX-L37V10E
Fun: Microsoft XBox, with XBMC :)
find quote
tsobanoskilo Offline
Junior Member
Posts: 12
Joined: Feb 2012
Reputation: 0
Post: #448
hi
running about a week now alpha5-commit bc0813f and i think it is the most stable until now
it is running in debian-wheezy
but i cant make 2 days now a new version running
i get xbmc built succesfully but when i try to run it with make install or ./xbmc.bin
it give error unable to create application.Exiting
i use --prefix=$HOME/xbmc --enable-external-libraries --disable-external-ffmpeg and some other options for my hw (no joystick,no vaapi,no pulse etc)
i try to configure it with default options but no go

how can i run it in verbose to get some more debug
(This post was last modified: 2012-08-29 20:29 by tsobanoskilo.)
find quote
DDDamian Offline
Team-XBMC Developer
Posts: 3,028
Joined: Sep 2011
Reputation: 254
Location: Canada
Post: #449
@fatal - sounds like when it's downmixing to PCM it's being clamped or limited which can cause that distortion. It may be we're not using the best downmixing ratios but also check that Settings>System>Audio Output>Boost level on downmix is turned off and see if that helps. If it was already off pls let me know.

System: XBMC HTPC with HDMI WASAPI & AudioEngine - Denon AVR-3808CI - Denon DVD-5900 Universal Player - Denon DCM-27 CD-Changer
- Sony BDP-S580 Blu-Ray - X-Box 360 - Android tablet wireless remote - 7.1 Streem/Axiom/Velodyne Surround System
If I have been able to help feel free to add to my reputation +/- below - thanks!
find quote
tsobanoskilo Offline
Junior Member
Posts: 12
Joined: Feb 2012
Reputation: 0
Post: #450
(2012-08-29 20:27)tsobanoskilo Wrote:  hi
running about a week now alpha5-commit bc0813f and i think it is the most stable until now
it is running in debian-wheezy
but i cant make 2 days now a new version running
i get xbmc built succesfully but when i try to run it with make install or ./xbmc.bin
it give error unable to create application.Exiting
i use --prefix=$HOME/xbmc --enable-external-libraries --disable-external-ffmpeg and some other options for my hw (no joystick,no vaapi,no pulse etc)
i try to configure it with default options but no go

how can i run it in verbose to get some more debug

ok i found it
have to disable external ffmpeg
./configure --disable-external-ffmeg
find quote
Post Reply