High Pitched Squeal

OSS specific Solaris discussion (x86/SPARC)

Moderators: cesium, dev, kodachi, hannu

Postby kaiwai » Sun May 04, 2008 5:07 pm

kaiwai wrote:
dev wrote:
kaiwai wrote:
kaiwai wrote:
cesium wrote:I think you can edit /etc/oss/installed_drivers and remove "ossusb" line to get rid of ossusb. (OSS restart required / or remove ossusb module (don't know how on Solaris)).


Yeah, got rid of the ossusb module, plus reverse the removal of the usb things from device_aliases. Hopefully it'll work *fingers crossed*


Nope, didn't work. Damn, all I want is for the squeaking to stop and my mic to work. Is that *really* too much to ask - honestly?


Hi,

Copy this script to: /etc/init.d/oss
http://mercurial.opensound.com/?file/31 ... nOS/S89oss

and do chmod +x /etc/init.d/oss


regards
dev Mazumdar


Ok, I'm going to check that out tonight, I'm sure it'll work. How do I point Flash to the microphone I want to use? my web has a microphone, and when I did a clean install of Solaris, the microphone and webcam were both detected by Sun's native drivers, however, as soon as I installed OpenSound, everything went up the shoot.

Basically, I want to keep the USB Microphone and webcam using the native drivers, and I want the Microphone to be the one provided by the webcam - the problem is that the internal mic on my laptop isn't working, and when oss does install, it forces the system to use the internal one.

Basically, in a nutshell, I would like OpenSound just to provide playback, and nothing more than that. For the microphone, I'll use the one included in the webcam (which does work).

Is it possible to do that?


Pretty much I don't want the microphone to be enabled in my sound card; I don't want to install opensource because it stuffs everything up when I do - all the devices etc. go wrong, my screen goes blank if I try to go to console - basically, its a nightmare once installed.

So I want to get this right before installing it again.
kaiwai
Member
 
Posts: 30
Joined: Thu May 01, 2008 3:09 am

Postby kaiwai » Mon May 05, 2008 4:35 pm

I've given up on the webcam. The I have copied the file into /etc/init.d and it doesn't load. Now what?
kaiwai
Member
 
Posts: 30
Joined: Thu May 01, 2008 3:09 am

Postby zhiqi » Tue May 06, 2008 5:09 am

dev wrote:
kaiwai wrote:
kaiwai wrote:
cesium wrote:I think you can edit /etc/oss/installed_drivers and remove "ossusb" line to get rid of ossusb. (OSS restart required / or remove ossusb module (don't know how on Solaris)).


Yeah, got rid of the ossusb module, plus reverse the removal of the usb things from device_aliases. Hopefully it'll work *fingers crossed*


Nope, didn't work. Damn, all I want is for the squeaking to stop and my mic to work. Is that *really* too much to ask - honestly?


Hi,

Copy this script to: /etc/init.d/oss
http://mercurial.opensound.com/?file/31 ... nOS/S89oss

and do chmod +x /etc/init.d/oss


regards
dev Mazumdar


I tried this script on both Solaris community build svn_87 and OpenSolaris 2008 05. The high squeaking still occurs on both of them.

It seems that there is neither "/etc/oss.conf" nor "/usr/lib/oss" in solaris.

I think what we really need is
" ossmix misc.input-mixamp2 off ".

Is there any way to set "misc.input-mixamp2" default to off/zero?

Thanks,
zhiqi
New Member
 
Posts: 2
Joined: Sun May 04, 2008 11:46 am

Postby kaiwai » Tue May 06, 2008 11:05 am

zhiqi wrote:
dev wrote:
kaiwai wrote:
kaiwai wrote:
cesium wrote:I think you can edit /etc/oss/installed_drivers and remove "ossusb" line to get rid of ossusb. (OSS restart required / or remove ossusb module (don't know how on Solaris)).


Yeah, got rid of the ossusb module, plus reverse the removal of the usb things from device_aliases. Hopefully it'll work *fingers crossed*


Nope, didn't work. Damn, all I want is for the squeaking to stop and my mic to work. Is that *really* too much to ask - honestly?


Hi,

Copy this script to: /etc/init.d/oss
http://mercurial.opensound.com/?file/31 ... nOS/S89oss

and do chmod +x /etc/init.d/oss


regards
dev Mazumdar


I tried this script on both Solaris community build svn_87 and OpenSolaris 2008 05. The high squeaking still occurs on both of them.

It seems that there is neither "/etc/oss.conf" nor "/usr/lib/oss" in solaris.

I think what we really need is
" ossmix misc.input-mixamp2 off ".

Is there any way to set "misc.input-mixamp2" default to off/zero?

Thanks,


Good question; the documentation is woefully out of date; references to soundon/soundoff which don't exist, pointing to /usr/lib/oss which doesn't exist. Its friggin terrible - honestly. If you're going to radically change things and how things are done - update the frigging documentation.
kaiwai
Member
 
Posts: 30
Joined: Thu May 01, 2008 3:09 am

Postby kaiwai » Fri May 09, 2008 4:41 am

HELLO?! WHATS GOING ON?!
kaiwai
Member
 
Posts: 30
Joined: Thu May 01, 2008 3:09 am

Postby dev » Fri May 09, 2008 8:50 am

kaiwai wrote:HELLO?! WHATS GOING ON?!



download the source code and look in hdaudio_codec.c and look at lines:

3026 int
3027 hda_codec_add_inmute (int dev, hdaudio_mixer_t * mixer, int cad, int wid,
3028 int ix, int group, const char *name, int muted, unsigned int flags)


Now look at:
3064 hdaudio_set_control (mixer->mixer_dev,
3065 MIXNUM (widget, CT_INMUTE, ix),
3066 SNDCTL_MIX_WRITE, muted);


change muted to 0 and recomple the drivers and install them (make install from a command line session should do it.


regards
dev
dev
Developer
 
Posts: 580
Joined: Fri Sep 12, 2003 6:08 am
Location: Culver City, CA

Postby kaiwai » Sat May 10, 2008 2:38 pm

dev wrote:
kaiwai wrote:HELLO?! WHATS GOING ON?!



download the source code and look in hdaudio_codec.c and look at lines:

3026 int
3027 hda_codec_add_inmute (int dev, hdaudio_mixer_t * mixer, int cad, int wid,
3028 int ix, int group, const char *name, int muted, unsigned int flags)


Now look at:
3064 hdaudio_set_control (mixer->mixer_dev,
3065 MIXNUM (widget, CT_INMUTE, ix),
3066 SNDCTL_MIX_WRITE, muted);


change muted to 0 and recomple the drivers and install them (make install from a command line session should do it.


regards
dev


I followed the instructions, make build fails (complains about directories and files not existing, executing make by itself works but it only works if I use pfexec infront, when I go make install, none of the device links are made - and basically the whole Solaris installation was cocked up last night. Again, complains that devlist.txt (I think that is the name) doesn't exist. It is basically a giant dogs breakfast with files missing left right and centre.
kaiwai
Member
 
Posts: 30
Joined: Thu May 01, 2008 3:09 am

Postby dev » Sat May 10, 2008 2:58 pm

kaiwai wrote:
dev wrote:
kaiwai wrote:HELLO?! WHATS GOING ON?!



download the source code and look in hdaudio_codec.c and look at lines:

3026 int
3027 hda_codec_add_inmute (int dev, hdaudio_mixer_t * mixer, int cad, int wid,
3028 int ix, int group, const char *name, int muted, unsigned int flags)


Now look at:
3064 hdaudio_set_control (mixer->mixer_dev,
3065 MIXNUM (widget, CT_INMUTE, ix),
3066 SNDCTL_MIX_WRITE, muted);


change muted to 0 and recomple the drivers and install them (make install from a command line session should do it.


regards
dev


I followed the instructions, make build fails (complains about directories and files not existing, executing make by itself works but it only works if I use pfexec infront, when I go make install, none of the device links are made - and basically the whole Solaris installation was cocked up last night. Again, complains that devlist.txt (I think that is the name) doesn't exist. It is basically a giant dogs breakfast with files missing left right and centre.



simple steps:


1) Get SFWgawk and install SunStudio and ensure cc is in the path
2) Download the Stable Source from
http://www.opensound.com/developer/sources/stable/cddl
3) Extract them in /usr/src
4) Edit the code
5) mkdir ~/oss40
6) cd ~/oss40
7) sh /usr/src/oss-v4.0-build1015-cddl/configure
8) make package
9) there will be a oss*.pkg in the ~/oss40 directory
10) pkgadd -d oss*.pkg


regards
Dev Mazumdar
dev
Developer
 
Posts: 580
Joined: Fri Sep 12, 2003 6:08 am
Location: Culver City, CA

Postby kaiwai » Sat May 10, 2008 5:24 pm

dev wrote:
kaiwai wrote:
dev wrote:
kaiwai wrote:HELLO?! WHATS GOING ON?!



download the source code and look in hdaudio_codec.c and look at lines:

3026 int
3027 hda_codec_add_inmute (int dev, hdaudio_mixer_t * mixer, int cad, int wid,
3028 int ix, int group, const char *name, int muted, unsigned int flags)


Now look at:
3064 hdaudio_set_control (mixer->mixer_dev,
3065 MIXNUM (widget, CT_INMUTE, ix),
3066 SNDCTL_MIX_WRITE, muted);


change muted to 0 and recomple the drivers and install them (make install from a command line session should do it.


regards
dev


I followed the instructions, make build fails (complains about directories and files not existing, executing make by itself works but it only works if I use pfexec infront, when I go make install, none of the device links are made - and basically the whole Solaris installation was cocked up last night. Again, complains that devlist.txt (I think that is the name) doesn't exist. It is basically a giant dogs breakfast with files missing left right and centre.



simple steps:


1) Get SFWgawk and install SunStudio and ensure cc is in the path
2) Download the Stable Source from
http://www.opensound.com/developer/sources/stable/cddl
3) Extract them in /usr/src
4) Edit the code
5) mkdir ~/oss40
6) cd ~/oss40
7) sh /usr/src/oss-v4.0-build1015-cddl/configure
8) make package
9) there will be a oss*.pkg in the ~/oss40 directory
10) pkgadd -d oss*.pkg


regards
Dev Mazumdar


There is a problem patching the file; when I try to follow the line number, they don't match up.
kaiwai
Member
 
Posts: 30
Joined: Thu May 01, 2008 3:09 am

Postby kaiwai » Sat May 10, 2008 5:36 pm

I patched all instances of SNDCTL_MIX_WRITE, muted);

muted with 0, and then compiled - it still squeals. there is definately something wrong if none of this is working.

Edit: when I went to the line which you said existed, it didn't match up; line 3066 when using gedit is simply a blank space. So I basically replaced muted with 0 in three places because I didn't know which one.

Is there an easier way - can I just simply remove microphone support from the driver - if it is going to cause this amount of difficulty getting thigs to work?
kaiwai
Member
 
Posts: 30
Joined: Thu May 01, 2008 3:09 am

Postby kaiwai » Mon May 12, 2008 4:57 am

This is the error message I get when Solaris boots up:

May 11 16:52:40 rachmaninov hdaudio: [ID 822741 kern.warning] WARNING: Too many connectionsi(B) for widget 29 (24)

As soon as that occurs it starts squealing. I've tried all manner of ways of stopping it - it hasn't worked. Again I ask, can I remove microphone functionality from the driver? if the driver can't even work properly with my hardware - why even support it?
kaiwai
Member
 
Posts: 30
Joined: Thu May 01, 2008 3:09 am

Postby kaiwai » Mon May 12, 2008 1:22 pm

is it possible to set all volumes to 0?

This simply isn't working; I'm continuing to get feedback no matter what I do.
kaiwai
Member
 
Posts: 30
Joined: Thu May 01, 2008 3:09 am

Postby seawright » Mon May 12, 2008 3:35 pm

Default volume level is 90% but if ossxmix works you should be able to reduce all sliders to zero within a graphical environment.

There is no single command to do this in ossmix.

Edit 80% to 90% (I did not have access to source at time of original posting).
Last edited by seawright on Wed May 14, 2008 8:36 am, edited 1 time in total.
regards
Clive
seawright
Member
 
Posts: 93
Joined: Sat Jan 06, 2007 9:10 pm
Location: Hampshire UK

Postby kaiwai » Mon May 12, 2008 5:11 pm

seawright wrote:Default volume level is 80% but if ossxmix works you should be able to reduce all sliders to zero within a graphical environment.

There is no single command to do this in ossmix.


yes, but I want the squeal to be muted from boot - the problem is that when it oss loads it doesn't read the mixer.save file; and thus, any thing you achieve in ossxmix is lost.

I spent a good 4hours last night trying to trace down how to default the volume level for all parts of the sound card to 0 and then allow me to put them up when I get into the gui.
kaiwai
Member
 
Posts: 30
Joined: Thu May 01, 2008 3:09 am

Postby cesium » Mon May 12, 2008 5:33 pm

To get the mixer set automatically, we need two things:
A) Save the correct settings somewhere in some format.
B) Run a program to restore these settings automatically on boot.

A) Set the wanted configuration using ossxmix. And then:

1) savemixer as root, and see if mixer.save is correctly saved. savemixer -L -v should restore the mixers even without root. (The hg version of savemixer has a -f <filename>, so you can set the file used, and avoid root when saving too).

or:

2) 'ossmix -c' gives a long list of ossmix command to recreate the current mixer settings (The leading '!' is easy to strip). You can redirect this to a script and have it restore the mixer when run.

Now we need to do:
B) Run automatically.
I'm no Solaris expert so I don't know how to do this properly, but I think GDM has Xstartup/Xsession/etc. files? You can add a command to restore settings there. (The comments should tell you when each file is run).
cesium
Developer
 
Posts: 902
Joined: Sun Aug 12, 2007 12:51 am

PreviousNext

Return to Solaris

Who is online

Users browsing this forum: Yahoo [Bot] and 1 guest

cron