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