Search:  
Gentoo Wiki

VIA_Vinyl_Envy24PT

Contents

About

This page provides information on configuration a Via Envy24PT for use with Gentoo linux and ALSA.

Configure

ALSA

The ALSA driver required is "ice1724":

File: /etc/make.conf
ALSA_CARDS="ice1724"


Use this .asoundrc:

File: .asoundrc
 pcm.!default {
         type plug
         slave.pcm "dmixer"
 }
 
 pcm.dmixer  {
         type dmix
         ipc_key 1024
         slave {
                 pcm "hw:0,0"
                 format S32_LE
                 period_time 0
                 period_size 1024
 
 # increased buffer_size because in my system 1024 cause bad
 # audio performance (for totem media player and mplayer)
                 buffer_size 8192
 
                 rate 44100
         }
         bindings {
                 0 0
                 1 1
         }
 }
 
 ctl.dmixer {
         type hw
         card 0
         device 0
 }

If you are using the MAudio Revolution 5.1 the ALSA Wiki also has a very nice .asoundrc file that has provisions for 5.1 sound [1]

File: .asoundrc
# 6 channel dmix: 
	pcm.dmix6 { 
	    type dmix 
	       ipc_key 1024 
	       ipc_key_add_uid false 
	       ipc_perm 0660 
	       slave { 
	               pcm "hw:0,0" 
	               rate 48000 
	               channels 6 
	               period_time 0 
	               period_size 1024 
	               buffer_time 0 
	               buffer_size 5120 
	       } 
	    } 
	# upmixing: 
	pcm.ch51dup { 
	       type route 
	       slave.pcm dmix6 
	       slave.channels 6 
	       ttable.0.0 1 
	       ttable.1.1 1 
	       ttable.0.2 1 
	       ttable.1.3 1 
	       ttable.0.4 0.5 
	       ttable.1.4 0.5 
	       ttable.0.5 0.5 
	       ttable.1.5 0.5 
	  } 
	pcm.duplex { 
	    type asym 
	    playback.pcm "ch51dup" # upmix first 
	    capture.pcm "hw:0" 
	} 
	# change default device: 
	pcm.!default { 
	    type plug 
	    slave.pcm "duplex" 
	} 
	# for aoss 
	pcm.dsp "duplex" 
	pcm.dsp1 "duplex" 
	 
	# from http://www.nabble.com/noise-only-t3718152.html 
	defaults.pcm.dmix_max_periods -1 

Troubleshooting

Low pitch sound

Make sure you are using ALSA:

TeamSpeak

TeamSpeak Linux is an old ugly OSS application. This can create some serious problems when using Alsa, a microphone, and the AOSS wrapper. This /etc/asound.conf file is how I managed to get Alsa+OSS audio output mixing and Alsa+OSS audio input mixing to work. You should be able to hear words spoken in TeamSpeak, use your microphone within TeamSpeak, and play music from an Alsa application all simultaneously without any issues on a standard two-channel/analog-out setup.

File: /etc/asound.conf
# This file is my working /etc/asound.conf. (This could just as well be
# ~/.asoundrc, I use /etc/asound.conf because its systemwide.) If you've
# ever looked into audio playback problems with Alsa, you're probably
# familiar with dmix devices. Dsnoop devices kind of do the same thing, only
# with audio input. This file will set up both.
#
# Dmix device. ipc_key doesn't mean anything, but has to be unique.
# ipc_perm sets device permissions (0660 should set root and user read
# access.) The slave section sets the sound card you're using some
# optional info about its expected audio format. The bindings section is
# neat in that you can use it to swap channels if you so desired. We're
# not going to do that here.
pcm.dmixer  {
   type dmix
   ipc_key 1025
   ipc_perm 0660
   slave {
      pcm "hw:0,0"
      period_time 0
      period_size 1024
      buffer_size 8192
      rate 44100
   }
   bindings {
      0 0
      1 1
   }
}
# Dsnoop device. Slave PCM refers to sound card whose input channel
# (microphone) you'll be using.
pcm.dsnooper {
   type dsnoop
   ipc_key 1027
   slave.pcm "hw:0,0"
}
# Combine both half-duplex ("one way") devices into one full-duplex
# ("both ways") device.
pcm.multiplex {
   type asym
   playback.pcm "dmixer"
   capture.pcm "dsnooper"
}
# Replace default alsa device with multiplexing device created above.
pcm.!default {
   type plug
   slave.pcm "multiplex"
}
# Create corresponding ctl device, good form, maybe not necessary?
ctl.!default {
   type hw
   card 0
}
# Finally, this should convince AOSS to work with your mic
pcm.dsp0 {
   type plug
   slave.pcm "multiplex"
}

Stuttering

Comment out everything in the ~/.asoundrc (user) or /etc/asound.conf(all users), play some music with your favorite music player, and execute the following command (note that this assumes you have a Shuttle SN25P),

Code: cat /proc/asound/SN25P/pcm0p/sub0/hw_params
access: MMAP_INTERLEAVED
format: S32_LE
subformat: STD
channels: 2
rate: 48000 (48000/1)
period_size: 1024
buffer_size: 16384
tick_time: 4000

The output above serves as a guide into modifying the above ~/.asoundrc into something that works for you. The following is my modified /etc/asound.conf,

File: /etc/asound.conf
pcm.!default {
    type plug
    slave.pcm "dmixer"
}

pcm.dmixer  {
    type dmix
    ipc_key 1024
    slave {
        pcm "hw:0,0"
        format S32_LE
        period_time 0
        period_size 1024
        buffer_size 16384
        rate 48000
    }
    bindings {
        0 0
        1 1
    }
}

ctl.dmixer {
    type hw
    card 0
    device 0
}


For Rythmbox users

See also

Retrieved from "http://www.gentoo-wiki.info/VIA_Vinyl_Envy24PT"

Last modified: Sat, 30 Aug 2008 07:16:00 +0000 Hits: 7,667