All of lore.kernel.org
 help / color / mirror / Atom feed
From: "David Härdeman" <david@hardeman.nu>
To: Shane W <shane-alsa@csy.ca>
Cc: alsa-user@lists.sourceforge.net, alsa-devel@alsa-project.org,
	Wu Fengguang <fengguang.wu@intel.com>
Subject: Re: [Intel-gfx] Problems with HDMI audio on Intel DG45FC motherboard
Date: Tue, 27 Oct 2009 00:11:25 +0100	[thread overview]
Message-ID: <20091026231125.GA30634@hardeman.nu> (raw)
In-Reply-To: <20091020224353.GA23186@csy.ca>

On Tue, Oct 20, 2009 at 03:43:53PM -0700, Shane W wrote:
> On Tue, Oct 20, 2009 at 09:26:00AM +0800, Wu Fengguang wrote:
> > HDMI codec/sink seem to take some time to response to the output
> > enable and new infoframe, so there are some delay. I've moved the HDMI
> > output enable command to module load time, this helps. The infoframe
> > is in theory created in run time based on the format of _each_ new
> > audio stream, so infoframe transmission has to be started/stopped
> > for each track..
> 
> I know this has come up before but can't we not start/stop
> the infoframe if the sample format on the new track is the
> same as the old. I mean playing an album, you're gonna get
> 44100, 2ch s16le 95% of the time so that would atleast
> cause the problem to appear much less.

Tried it, still had the second-track-produces-silence bug on my receiver 
so I couldn't test it properly.

I however did manage to create a different patch which fixed my receiver 
bug (yay!)...by sending "refer-to-stream-header" audio infoframes from 
pcm close to pcm open...something like this quick hack:


--- linux-2.6.32-rc5/sound/pci/hda/patch_intelhdmi.c	2009-10-16 02:41:50.000000000 +0200
+++ ../linux-2.6.32-rc5/sound/pci/hda/patch_intelhdmi.c	2009-10-26 23:39:54.000000000 +0100
@@ -552,8 +552,16 @@
 					 struct snd_pcm_substream *substream)
 {
 	struct intel_hdmi_spec *spec = codec->spec;
+	struct hdmi_audio_infoframe ai = {
+		.type		= 0x84,
+		.ver		= 0x01,
+		.len		= 0x0a,
+		.CC02_CT47	= 0x00,
+	};
 
 	hdmi_stop_infoframe_trans(codec);
+	hdmi_fill_audio_infoframe(codec, &ai);
+	hdmi_start_infoframe_trans(codec);
 
 	return snd_hda_multi_out_dig_close(codec, &spec->multiout);
 }
@@ -571,6 +579,7 @@
 
 	hdmi_set_channel_count(codec, substream->runtime->channels);
 
+	hdmi_stop_infoframe_trans(codec);
 	hdmi_setup_audio_infoframe(codec, substream);
 
 	return 0;


Not sure how/if something like that could be turned into an acceptable 
patch though...

-- 
David Härdeman

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference

  reply	other threads:[~2009-10-26 23:11 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20091011214513.GB12771@hardeman.nu>
     [not found] ` <20091014015455.GI13364@zhen-devel.sh.intel.com>
     [not found]   ` <20091014020044.GA10032@localhost>
     [not found]     ` <20091014174053.GA31149@hardeman.nu>
2009-10-20  1:26       ` [Intel-gfx] Problems with HDMI audio on Intel DG45FC motherboard Wu Fengguang
2009-10-20 22:37         ` David Härdeman
2009-10-21  1:38           ` Wu Fengguang
2009-10-25 22:31             ` David Härdeman
2009-10-27  8:57               ` Wu Fengguang
2009-11-08 10:41             ` Takashi Iwai
2009-10-20 22:43         ` Shane W
2009-10-26 23:11           ` David Härdeman [this message]
2009-10-27  9:08             ` Wu Fengguang
2009-10-27  3:28           ` Wu Fengguang
     [not found]           ` <2da93e57183a480510f5b67c24ba11d0.squirrel@www.hardeman.nu>
     [not found]             ` <20091028044621.GA18453@localhost>
     [not found]               ` <0323437dc2fc33a33ec9285505a36434.squirrel@www.hardeman.nu>
     [not found]                 ` <20091029094602.GA3589@localhost>
     [not found]                   ` <20091029222932.GA1109@hardeman.nu>
2009-11-02  9:11                     ` Wu Fengguang
     [not found]                       ` <20091105004655.GA25580@hardeman.nu>
     [not found]                         ` <20091105074731.GB3016@localhost>
     [not found]                           ` <b3e8c2bfd1e1ff82a1e68a4e03950238.squirrel@www.hardeman.nu>
2009-11-05  9:22                             ` Wu Fengguang
     [not found]                               ` <5a703067d8395f3f80e4fb6a5227d117.squirrel@www.hardeman.nu>
2009-11-11  7:05                                 ` Wu Fengguang
2009-11-12  9:49                                   ` Paul Fertser

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20091026231125.GA30634@hardeman.nu \
    --to=david@hardeman.nu \
    --cc=alsa-devel@alsa-project.org \
    --cc=alsa-user@lists.sourceforge.net \
    --cc=fengguang.wu@intel.com \
    --cc=shane-alsa@csy.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.