[alsa-devel] [PATCH 0/4] Intel HDMI audio fixes
Takashi Iwai
tiwai at suse.de
Thu Feb 12 08:54:29 CET 2009
At Thu, 12 Feb 2009 09:25:04 +0800,
Wu Fengguang wrote:
>
> On Thu, Feb 12, 2009 at 12:42:00AM +0200, Takashi Iwai wrote:
> > At Wed, 11 Feb 2009 14:32:41 -0800,
> > Shane W wrote:
> > >
> > > On Wed, Feb 11, 2009 at 03:22:27PM +0800, Wu Fengguang wrote:
> > > > Shane: the first two patches should address the two bugs you reported, i.e.
> > > > - multi-channel HDMI audio playback problem
> > > > - first half-second audio samples missing
> > > > These two bugs was reproduced and fixed in the combination of
> > > > G35 SDVO HDMI + Yamaha RX-V1800 AV receiver. The first problem cannot be
> > > > verified in G45 system because we still cannot make G45 work with
> > > > Yamaha. The second problem is interesting in that it can be fixed by the
> > > > second patch in G35, but still remains in G45.
> > >
> > > Hi,
> > >
> > > Ok mixed results here. I'm using this for my test signal:
> > > http://www.csy.ca/~shane/51test.wav
> > >
> > > when using:
> > > aplay -D hw:0,3 51test.wav
> > >
> > > Front and rear left and right are correct but centre is
> > > missing. The order in the wav is:
> > > front left
> > > centre
> > > front right
> > > rear left
> > > rear right
> > > sub buz
> >
> > The order assumed here doesn't match with ALSA mapping.
> > In ALSA,
> > front left
> > front right
> > rear left
> > rear right
> > center
> > LFE
> >
> > Better to test with speaker-test program whether the mapping is
> > correct.
>
> Hi Takashi,
>
> Yes I've not yet taken care of the channel orders, so disorders are expected.
>
> Before beginning our discussion, I'd like to first submit a patch for
> speaker-test. I guess the ordering in it defines the ALSA order.
The change looks good but the patch is rejected.
Could you create a patch based on the latest version?
thanks,
Takashi
>
> Thanks,
> Fengguang
> ---
> speaker-test.c - add readability comments to speaker channels
>
> Signed-off-by: Wu Fengguang <fengguang.wu at intel.com>
> ---
>
> diff --git a/speaker-test/speaker-test.c b/speaker-test/speaker-test.c
> index 57a7cbc..bf97d33 100644
> --- a/speaker-test/speaker-test.c
> +++ b/speaker-test/speaker-test.c
> @@ -84,48 +84,48 @@ static const char *given_test_wav_file = NULL;
> static char *wav_file_dir = SOUNDSDIR;
>
> static const char *channel_name[MAX_CHANNELS] = {
> - N_("Front Left"),
> - N_("Front Right"),
> - N_("Rear Left"),
> - N_("Rear Right"),
> - N_("Center"),
> - N_("LFE"),
> - N_("Side Left"),
> - N_("Side Right"),
> - N_("Channel 9"),
> - N_("Channel 10"),
> - N_("Channel 11"),
> - N_("Channel 12"),
> - N_("Channel 13"),
> - N_("Channel 14"),
> - N_("Channel 15"),
> - N_("Channel 16")
> + /* 0 */ N_("Front Left"),
> + /* 1 */ N_("Front Right"),
> + /* 2 */ N_("Rear Left"),
> + /* 3 */ N_("Rear Right"),
> + /* 4 */ N_("Center"),
> + /* 5 */ N_("LFE"),
> + /* 6 */ N_("Side Left"),
> + /* 7 */ N_("Side Right"),
> + /* 8 */ N_("Channel 9"),
> + /* 9 */ N_("Channel 10"),
> + /* 10 */ N_("Channel 11"),
> + /* 11 */ N_("Channel 12"),
> + /* 12 */ N_("Channel 13"),
> + /* 13 */ N_("Channel 14"),
> + /* 14 */ N_("Channel 15"),
> + /* 15 */ N_("Channel 16")
> };
>
> static const int channels4[] = {
> - 0,
> - 1,
> - 3,
> - 2
> + 0, /* Front Left */
> + 1, /* Front Right */
> + 3, /* Rear Right */
> + 2, /* Rear Left */
> };
> static const int channels6[] = {
> - 0,
> - 4,
> - 1,
> - 3,
> - 2,
> - 5
> -};
> + 0, /* Front Left */
> + 4, /* Center */
> + 1, /* Front Right */
> + 3, /* Rear Right */
> + 2, /* Rear Left */
> + 5, /* LFE */
> +};
> static const int channels8[] = {
> - 0,
> - 4,
> - 1,
> - 7,
> - 3,
> - 2,
> - 6,
> - 5
> -};
> + 0, /* Front Left */
> + 4, /* Center */
> + 1, /* Front Right */
> + 7, /* Side Right */
> + 3, /* Rear Right */
> + 2, /* Rear Left */
> + 6, /* Side Left */
> + 5, /* LFE */
> +};
>
> static void generate_sine(uint8_t *frames, int channel, int count, double *_phase) {
> double phase = *_phase;
>
More information about the Alsa-devel
mailing list