Hi,

unfortunately I can't test the mic boost, because I don't have a microphone or 
headset, currently. The codec reported is AD1888.

About the general usage of maxvalue.. I guess I got that, kmix seems to work 
correctly there now. Well, I currently face some problems with its limited 
API, though. That's why I need to ask further questions. 

E.g. I got the following routine to find, whether the given mixext allows 
recording source choice ($mainclass.rec). In there I assume that a 
$mainclass.rec is always one element after $mainclass. Is that assumption 
correct?

(wrapIoctl does some error handling, ignore that)

bool Mixer_OSS4::canRecord(int devnum)
{
        oss_mixext ext;
        ext.dev = m_devnum;

        if( devnum + 1 >= m_numExtensions )
        {
                return false;
        }
        
        ext.ctrl = devnum;

        if ( wrapIoctl ( ioctl ( m_fd, SNDCTL_MIX_EXTINFO, &ext ) ) < 0 )
        {
                return false;
        }

        oss_mixext ext_rec;

        ext_rec.dev = m_devnum;

        //TODO: check whether that assumption is correct
        ext_rec.ctrl = devnum+1;

        if ( wrapIoctl ( ioctl ( m_fd, SNDCTL_MIX_EXTINFO, &ext_rec ) ) < 0 )
        {
                return false;
        }
        
        QString mainClassMain = QString(ext.extname).section('.',0,0);
        QString mainClassRec = QString(ext_rec.extname).section('.',0,0);
        QString subClassRec = QString(ext_rec.extname).section('.', 1);

        kdDebug(67100) << "main: " << mainClassMain << endl
                       << "\t mainClassRec: " << mainClassRec << endl
                       << "\t subClassRec: " << subClassRec << endl;

        if( mainClassMain == mainClassRec && subClassRec == "rec" )
        {
                kdDebug(67100) << ext.extname << " can record" << endl;
                return true;
        }
        return false;
}

I read in the docs about SNDCTL_DSP_GET_RECSRC_NAMES etc., but those 
access /dev/dsp* (well, any sound device) directly. I don't know how to get 
there properly (more precise, which one I'd have to open then), that's why I 
use that function instead.

Another remaining problem: Classify recording mixexts. Take a look at the 
attached screenshot first. This shows the kmix oss4 backend on a machine with 
VIA 823x AC97 (ALC658). None of the controls "Line" (line), "Microphone" 
(mic), Aux1, Phone etc. have the MIXF_RECVOL flag set. 
But "Microphone" for example definetly belongs to the recording controls .. am 
I missing something here?

Regards


> Hi,
>
> Actually the maxvalue doesn't matter with MIXT_ONOFF because it's
> obvious that thare are just two values. However I agree that 1 is more
> correct than 2. I fixed these controls and the change should appear in
> the hg tree within couple of weeks.
>
> For most control maxvalue means the highest possible value. However for
> MIXT_ENUM the maxvalue field returns number of choices. So the largest
> possible value is maxvalue-1.
>
> Some AC97 codecs have a microphone boost bits in two registers. For this
> reason there are two controls. Can you check if they both have effect to
> the input level or which one is correct? Also what is the AC97 codec
> reported by "ossinfo -x"?
>
> Best regards,
>
> Hannu
> -------
>
> [EMAIL PROTECTED] wrote:
> > Hi all,
> >
> > while doing some testing for the kmix oss4 module, I encountered some
> > errors in the named drivers:
> >
> > Via8233:
> > -micboost (MIXT_ONOFF) has a max value of 2, according do the docs that
> > is incorrect behavior. Also its somehow strange that the driver provides
> > two micboost controls, one "micboost" and "mixext.micboost" (with proper
> > min & maxvalue).
> >
> > OSSusb:
> > -mic.agc (MIXT_ONOFF) has a max value of 2
> >
> > Regards
> >
> > apriori
> > _______________________________________________
> > oss-devel mailing list
> > oss-devel@mailman.opensound.com
> > http://mailman.opensound.com/mailman/listinfo/oss-devel
>
> _______________________________________________
> oss-devel mailing list
> oss-devel@mailman.opensound.com
> http://mailman.opensound.com/mailman/listinfo/oss-devel

<<attachment: kmix.png>>

_______________________________________________
oss-devel mailing list
oss-devel@mailman.opensound.com
http://mailman.opensound.com/mailman/listinfo/oss-devel

Reply via email to