Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 Apr 2005 01:09:00 -0700
From:      Julian Elischer <julian@elischer.org>
To:        Mathew Kanner <mat@cnd.mcgill.ca>
Cc:        freebsd-multimedia@freebsd.org
Subject:   Re: please test uaudio capabilities patch
Message-ID:  <42636B1C.3090402@elischer.org>
In-Reply-To: <20050417172014.GM2178@cnd.mcgill.ca>
References:  <20050417172014.GM2178@cnd.mcgill.ca>

next in thread | previous in thread | raw e-mail | index | archive | help
Mathew Kanner wrote:
> Hi All,
>    The following patch changes the driver to probe the
>    capabilities.  With this patch I can run mplayer with a non-native
>    speed or format and the internal soft-mixer will get the right
>    chain.  Without the patch, I get stuck and I have to disconnect.
> 
>    I'm going to commit this soon.  This is is against HEAD post my
>    commit to de-dma the driver.
> 
>    --Mat
> 
> 

the code removed below was added by me yesterday to allow my usb microphone to 
work.  it no longer works with this patch.

uaudio0: Logitech product 0x08b1, rev 1.10/0.00, addr 2
uaudio0: audio rev 1.00
pcm1: <USB Audio> on uaudio0

jules# cat /dev/sndstat
FreeBSD Audio Driver (newpcm)
Installed devices:
pcm0: <ESS Technology Maestro-2E> port 0x1400-0x14ff irq 5 at device 8.0 on pci0 
(4p/1r/0v channels duplex default)
pcm1: <USB Audio> kld snd_uaudio (mixer only)
jules#

yesterday (without your change)
it created and audio1.0 device which I could record from
(though I think the format was wrong as it sounded bad)

today it fails to make any device..

note.. the device has only input endpoints and configs.. it's a microphone
it has an audio 'mixer' interface as well but that seems to have been found.

> @@ -76,20 +72,6 @@
>  	ch->dir = dir;
>  
>  	pa_dev = device_get_parent(sc->sc_dev);
> -     	/* Create ua_playfmt[] & ua_recfmt[] */
> -	uaudio_query_formats(pa_dev, (u_int32_t *)&ua_playfmt, (u_int32_t *)&ua_recfmt);
> -	if (dir == PCMDIR_PLAY) {
> -		if (ua_playfmt[0] == 0) {
> -			printf("play channel supported format list invalid\n");
> -			return NULL;
> -		}
> -	} else {
> -		if (ua_recfmt[0] == 0) {
> -			printf("record channel supported format list invalid\n");
> -			return NULL;
> -		}
> -
> -	}
>  
>  	ch->buf = malloc(sc->bufsz, M_DEVBUF, M_NOWAIT);
>          if (ch->buf == NULL)
> @@ -133,6 +115,9 @@



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?42636B1C.3090402>