Tiny Core Linux

Tiny Core Extensions => TCE Talk => Topic started by: wysiwyg on January 09, 2015, 07:34:05 PM

Title: Still no audio
Post by: wysiwyg on January 09, 2015, 07:34:05 PM
Good evening everyone!  This post is related to two other posts I have made in the past:

http://forum.tinycorelinux.net/index.php/topic,17287.msg103684.html#msg103684
http://forum.tinycorelinux.net/index.php/topic,17288.msg103685.html#msg103685

The first one goes on to talk about how I had purchased some new equipment that apparently wasn't going to work until an updated kernel could be installed (referenced in a reply to my second post above).  Basically curaga mentioned that in order for the hardware (audio & video feeding through the HDMI connector) to work, the kernel had to be updated to at least 3.10.  Well a new version of TC has been released (6.x) and it uses the 3.16 kernel!  I updated the corepure64.gz and vmlinuz64 files then booted up and checked alsamixer.  Unfortunately the same results appear as originally described...

What I did notice was a file called modules64.gz in the repo.  Do I perhaps need to utilize some files in that file in order for the audio hardware to be recognized with alsamixer?

I haven't tried to use the correct X11 driver, but I'll report back what I find when I do.

Thanks,
Dave
Title: Re: Still no audio
Post by: wysiwyg on January 09, 2015, 08:18:09 PM
This is a follow-up regarding the video driver.  I ended up upgrading the graphics-3.16 file and removed the xf86-video-vesa files to ensure the system would be using the xf86-video-ati, but I get a "failed to waitforX" boot message and placed at the cli.  Looking the X log, it shows loading all the proper drivers, but obviously fails to load the vesa one of course.  There are also a couple of complaints about a missing /dev/fb0 file, but otherwise doesn't show any errors.  Thoughts on how I can make this use the ati drivers?

Thanks,
Dave
Title: Re: Still no audio
Post by: Juanito on January 10, 2015, 01:07:26 AM
Does your graphics hardware require firmware to be loaded?
Title: Re: Still no audio
Post by: curaga on January 10, 2015, 04:43:13 AM
Please also make sure you have the correct alsa extensions for the new kernel instead of the 5.x (or 4.x) ones. firmware-radeon is needed for ATI graphics (and consequently sound through it).

Please post your dmesg and Xorg.0.log to pastebin if things still don't work.


You can easily update extensions using Apps: first update the dep files, check for updates, and finally "fetch missing".
Title: Re: Still no audio
Post by: wysiwyg on January 10, 2015, 11:21:07 AM
Good morning everyone!

@Juanito yes, there was an error message at the startup about a missing radeon file, but per curaga's advice on loading the firmware-radeon file, that message has been resolved.

@curaga looking through the X log now that I've loaded the firmware file, I can see a whole bunch of RADEON lines so I'm assuming that X is working with the ATI driver instead of the vesa one.  However, for lines that appear to be loading anything for audio, I see "No input driver specified, ignoring this device.  This device may have been added with another device file."  I can pastebin the logs if you desire.  I also made sure I was loading the alsa-modules-3.16.6-tinycore64 file so I would assume this would bring in the latest alsa drivers.

I also wanted to perform the steps you mentioned using the 'Apps' software, but I don't see anywhere in there to update the dep files.  I can only see an option for checking for updates and nothing about "Fetch Missing".  I ended up updating all the files that were found, but now the system takes an extremely long time to get into X with only parts of the TC GUI loading (e.g. still has the default X11 X shaped cursor and no wbar).  I'm just going to start all over with a fresh install...

Dave
Title: Re: Still no audio
Post by: wysiwyg on January 14, 2015, 07:44:14 PM
Ok, so I created a new bootable flash drive with all x86_64 of 6.x TC.  The problem now is that when I boot, it simply goes to the CLI while (apparently) ignoring to load all the files specified in the onboot.txt file to load the basic GUI.  The steps I took to create the boot media:

1. downloaded and installed curepure64-vmlinuz and curepure64.gz to the boot media
2. wget each cde/optional file for the x86_64 port that's in the TinyCore-Current.iso
3. copied the fresh copy2fs.lst, onboot.lst, and xbase.lst files onto the boot media
4. booted the media

Any thoughts on what is going on?

Thanks,
Dave
Title: Re: Still no audio
Post by: gerald_clark on January 14, 2015, 08:11:57 PM
Did you forget the waitusb=5 boot option?
Show the output of 'showbootcodes'.
Title: Re: Still no audio
Post by: Rich on January 14, 2015, 08:40:39 PM
Hi wysiwyg
Quote
2. wget each cde/optional file for the x86_64 port that's in the TinyCore-Current.iso
Did you place the files in  tce/optional  or  cde/optional?
Title: Re: Still no audio
Post by: Juanito on January 14, 2015, 11:54:50 PM
Note also that TinyCorePure64-6.0.iso contains the Xfbdev extension and not the Xorg-7.7 extension

As @Rich mentions, if you create a bootable flash drive, the extensions need to go in tce/optional - cde/optional is only for cd/dvd
Title: Re: Still no audio
Post by: wysiwyg on January 15, 2015, 08:53:42 AM
Good morning everyone!  Here's the responses to the posts from above...

@gerald_clark the output to showbootcodes is:
quiet waitusb=5 tce=LABEL=FIRMWARE/xinix64 home=LABEL=DATA swapfile=sda3 settime

@Rich the directory is actually 'xinix64/optional' and I've confirmed this via 'mount' and the location pointed to by '/etc/sysconfig/tcedir'

@Juanito looking at the files in the optional directory, it appears that neither of those files is listed.  Is Xfbdev required if the media is booting the Xvesa extension?

Thanks,
Dave
Title: Re: Still no audio
Post by: Juanito on January 15, 2015, 11:15:19 AM
Are we speaking of:

TinyCore*iso: uses Xvesa
TinyCorePure64*iso: uses Xfbdev (no 64-bit version of Xvesa)
Title: Re: Still no audio
Post by: wysiwyg on January 15, 2015, 04:40:20 PM
After looking at my tce directory, you are correct Juanito.  I did wget the files for the x86_64 from the 32-bit TC iso.  I have deleted all those files and copied the correct ones from the 64-bit TC iso (verifying the Xfbdev files).  However, the system still will not boot into the GUI and gives the message "failed in waitforX".  There is no X log that's being generated and it still looks like none of the extensions specified in the onboot.lst file (verified via a 'mount' call).  Any thoughts?

Thanks,
Dave
Title: Re: Still no audio
Post by: wysiwyg on January 15, 2015, 06:12:48 PM
Just as additional information, if I do something like "tce-load -i wbar" I get an 'already installed' message.  Shouldn't these extensions also show up when calling the 'mount' command?

Dave
Title: Re: Still no audio
Post by: gerald_clark on January 15, 2015, 07:17:43 PM
Sounds like you have the copy2fs.flg file set.
Title: Re: Still no audio
Post by: wysiwyg on January 15, 2015, 07:43:37 PM
Yes gerald_clark I do have that file with contents in it.  I just copied all the default files out of the cde directory into the corresponding boot media directory.  Do I need to clear its contents or delete it entirely?

Thanks,
Dave
Title: Re: Still no audio
Post by: gerald_clark on January 15, 2015, 08:31:26 PM
Delete copy2fs.flg.
Title: Re: Still no audio
Post by: Juanito on January 16, 2015, 03:53:16 AM
However, the system still will not boot into the GUI and gives the message "failed in waitforX".  There is no X log that's being generated

What does this give:
Code: [Select]
$ cat ~/.xsession
$ cat /etc/sysconfig/desktop

Note that only Xorg-7.x gives an X log (/var/log/Xorg.0.log) - you'd need to look in /tmp/wm_errors for Xvesa and Xfbdev
Title: Re: Still no audio
Post by: wysiwyg on January 16, 2015, 02:36:39 PM
@gerald_clark I have deleted the copy2fs.lst file and now everything is showing up when calling 'mount'.  What does that file do btw?

@Juanito here is the contents of the requested files:

/etc/sysconfig/desktop
flwm

~/.xsession
/usr/local/bin/Xfbdev -mouse /dev/input/mice,5 -nolisten tcp -I >/dev/null 2>&1 &
export XPID=$!
waitforX || ! echo failed in waitforX || exit
"$DESKTOP" 2>/tmp/wm_errors &
export WM_PID=$!
[ -x $HOME/.setbackground ] && $HOME/.setbackground
[ -x $HOME/.mouse_config ] && $HOME/.mouse_config &
[ $(which "$ICONS".sh) ] && ${ICONS}.sh &
[ -d "$HOME/.X.d" ] && find "$HOME/.X.d" -type f -print | while read F; do . "$F"; done
Title: Re: Still no audio
Post by: Juanito on January 17, 2015, 12:20:15 AM
Instead of using "startx" from the command line, what do you get if you use this:
Code: [Select]
$ /usr/local/bin/Xfbdev -mouse /dev/input/mice,5 -nolisten tcp -I
Title: Re: Still no audio
Post by: wysiwyg on January 17, 2015, 11:09:50 AM
Good morning everyone!  So I ran the command you requested Juanito and here are the results:

Error opening framebuffer /dev/fb0: No such device
Fatal server error:
no screens found

I have confirmed that there is no /dev/fb0 file.  Not sure why its not being created...

Dave
Title: Re: Still no audio
Post by: wysiwyg on January 17, 2015, 11:58:09 AM
Since I will be working mostly with Xorg, I ended up loading that, the xf86-video-ati, firmware-radeon, and the alsa package and got a working system (can even see the /dev/fb0 file).  I would still like to get the issue with using the framebuffer resolved though (I preserved that boot option).

The above mentioned packages are all I've installed on a fresh TC 6.x.  While it looks like X is using the ATI driver, I'm still having the audio problems originally described. Looking through the X log for lines that appear to be loading anything for audio, I see "No input driver specified, ignoring this device.  This device may have been added with another device file."  I can pastebin the logs if you desire.  Any thoughts on what's going on?

Thanks,
Dave

Title: Re: Still no audio
Post by: Juanito on January 17, 2015, 12:42:30 PM
Perhaps the order in which the extensions are loaded is important - I'd suggest loading the radeon firmware, then alsa and then Xorg-7.7.

It seems common that hdmi sound devices also have an analogue sound device. On my laptop, hdmi sound is the default device 0 and the analogue sound is device 1, which means that many applications will not use the laptop speakers without adjusting the configuration. In addition the laptop speakers will not work unless the headpones output is muted (regardless of whether headphones are actually connected).

It would be worth looking at the results of "aplay -l" to see what device is the default on your hardware and "alsamixer" to see what outputs are muted.
Title: Re: Still no audio
Post by: wysiwyg on January 17, 2015, 01:15:06 PM
@Juanito Here's all the info:

# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: HDMI [HDA ATI HDMI], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA ATI HDMI], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Generic [HD-Audio Generic], device 0: ALC892 Analog [ALC892 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Generic [HD-Audio Generic], device 1: ALC892 Digital [ALC892 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0


# head -5 onboot.lst
firmware-radeon.tcz
xf86-video-ati.tcz
alsa.tcz
Xfbdev.tcz
Xlibs.tcz


When I go in alsamixer and hit F6 to switch between audio devices, I see the following options:

- (default)
0 HDA ATI HDMI
1 HD-Audio Generic

Both the "(default)" and "0 HDA ATI HDMI" just give values for "S/PDIF" and "S/PDIF 1", the "1 HD-Audio Generic" has the proper range of options.  I've unmuted every option in alsamixer, but it doesn't appear to affect anything - still no sound.  X log is also showing same error messages.

Dave
Title: Re: Still no audio
Post by: wysiwyg on January 18, 2015, 10:42:19 AM
I was looking at reviews for the motherboard that I'm using and it appears that nobody has any issues with it and Linux (although they are using full distros like Debian or Ubuntu).  Could this still be a driver issue or an issue with alsa?  It appears to have all its audio components detected, but for some reason they are not being configured correctly in alsamixer.  X logs show they are being ignored for some reason...  Is it weird that the 'aplay' results like 4 audio devices, but alsa only shows 3?

Dave
Title: Re: Still no audio
Post by: Juanito on January 18, 2015, 11:28:59 AM
aplay is from the alsa package...

I'll try to give hdmi a go on my hardware tomorrow and see if that throws up any clues.
Title: Re: Still no audio
Post by: wysiwyg on January 18, 2015, 01:20:01 PM
I figured aplay was part of the alsa package. :)  Did you recommend going to pulse audio?  Could that be a possible solution?  Not sure what that would have to do with things in X, but...

Thanks for all your help though Juanito!

Dave
Title: Re: Still no audio
Post by: core-user on January 18, 2015, 02:51:22 PM

- (default)
0 HDA ATI HDMI
1 HD-Audio Generic

Both the "(default)" and "0 HDA ATI HDMI" just give values for "S/PDIF" and "S/PDIF 1", the "1 HD-Audio Generic" has the proper range of options.  I've unmuted every option in alsamixer, but it doesn't appear to affect anything - still no sound. 

Dave
I think you need to change your default soundcard from card0 to card1.

Below is what I made a note of, maybe give it a try, (no guarantees as I haven't had to use it myself).

Quote
the easiest way to solve this is to create a hidden file called .asoundrc (don't forget the dot in front of the name) in your home directory. Then open it and paste in this code:
Code:
        pcm.!default {
           type hw
           card 1
        }

        ctl.!default {
           type hw           
           card 1
        }
Save it, log out and back in, and you should be good to go.
Title: Re: Still no audio
Post by: coreplayer2 on January 18, 2015, 05:37:18 PM
To help those still having issues with Sound, I tried to find a common set of extensions which worked on all my systems which guys new to tc could try.   First remove all sound related extensions from the onboot.lst.  Then install to OnBoot using Apps,  pci-utils.tcz and alsa-config.tcz

Again make sure these are in your onboot.lst file:
Quote
pci-utils.tcz
alsa-config.tcz

Downloading and Installing these two extensions using APPS to OnBoot will ensure you have all the required dependencies (like alsa.tcz etc etc) loaded.

after a reboot, open alsamixer and unmute any sound controls (using arrow keys to select the sound control and "m" key to unmute).  Most folks will only need to unmute the Master column, if you take your sound out via an S/PDIF passthrough then you'll need to unmute only the S/PDIF column.

test your sound from the command line with
Code: [Select]
speaker-test [-Ddefault:1] -c2 -t wav -l1copy and paste works better :p


A quick note: I found that while pci-utils was not needed for any of my hardware using tc-6.0-x86, However I had great difficulty with some hardware getting alsa to detect the sound chips properly without pci-utils installed when using tc-6.0-x86_64

Title: Re: Still no audio
Post by: Juanito on January 19, 2015, 02:36:06 AM
A couple of additional points from extensive testing this morning with my laptop connected to a tv via an hdmi cable:

* stating the obvious perhaps, but hdmi will not work with the xf86-video-vesa driver - you will need the driver for your hardware loaded (eg xf86-video-intel, xf86-video-ati, etc). The hdmi cable needs to be connected to laptop and tv before "startx"

* hdmi sound would not work without the alsa-config extension loaded - analogue sound did work without alsa-config loaded. It was not necessary to issue any alsa commands nor un-mute anything.

* hdmi sound would not work with alsa alone - I did not try to make things work with any .asoundrc settings.

* hdmi sound worked with pulseaudio and xmms-pulse (remember to start the dbus daemon before "startx"). Note that pavucontrol had to be used to switch the output from "hdmi" to "hdmi 5,1" (surround sound).

* hdmi sound would not work with pulseaudio and totem - the picture was OK, but no sound.

* hdmi sound did work with gnome-session and totem. Note that gnome-control-center had to be used to switch the output from "hdmi" to "hdmi 5,1" (surround sound).

The difficulties could be related to my specific hardware, but it does show that hdmi sound is not straightforward.
Title: Re: Still no audio
Post by: wysiwyg on January 19, 2015, 10:40:41 AM
Good morning everyone, thanks for the continued help!

@core-user I don't think that the issue is with the default selected card (although this would be valuable to know for other system adjustments down the road).  The problem is that when the various cards are selected in alsamixer, there are only two selections (S/PDIF and S/PDIF 1) for the HDMI 'cards'.  I need the full range of audio options (e.g. Master, Surround, Center, etc).

@coreplayer2 I did as you prescribed, but the same results are appearing.  As Juanito pointed out, could it be an issue with the order that the extensions are being loaded?

If I try running speaker-test as you describe, I can see a test being run, but it looks like its over an audio output that isn't plugged in.  I tried using various values for the -D command, but I constantly got a list of errors or this error:

ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
Playback open error: -2,No such file or directory

But under no circumstances could I get any test playback unless -Ddefault:1 was used!

@Juanito Looking through the X log, it does appear that the ATI driver is being loaded and not vesa.  The HDMI cable remains plugged into the device at all times.  Alsa-config is currently being loaded (per coreplayer2's advice) without any differences to audio playback.  Not sure if there is something you would like me to try regarding some of your other list items.

Thanks,
Dave
Title: Re: Still no audio
Post by: Juanito on January 19, 2015, 11:45:59 AM
I'd guess (I might be wrong), you either need to google for an .asoundrc (alsa config file) suggestion for your hardware/hdmi and try that or try with pulseaudio/pavucontrol.

Pulseaudio is added bloat, but it does make it easier to try things out in some circumstances. To try it out, start the dbus daemon ("sudo /usr/local/etc/init.d/dbus start" before "startx" and then, once in the gui, open a terminal window and type "pulseaudio" to start it. You can then play an mp3 or similar and use pavucontrol to switch through the various output options until you (hopefully) hear something.
Title: Re: Still no audio
Post by: wysiwyg on January 19, 2015, 01:02:45 PM
So I wanted to provide some additional information...

The one thing I did notice was that the 'aplay' output did not match the format that was being referenced in the documentation of the binary.  I continue to play with things for a bit, but couldn't get any farther.  I decided to continue to build the project and wanted to get the TV turner card working so I installed the drivers and firmware.  Just to see if that may have fixed alsa, I went back into alsamixer only to find no changes.  I now wanted to see if the card was being seen correctly so I ran an 'lspci', 'lsmod', and 'dmesg' to see that the drivers and everything seemed to be installed correctly for the tv card (which they were).  For fun I decided to run 'aplay -L' again, only this time things were dramatically different!

null
    Discard all samples (playback) or generate zero samples (capture)
hdmi:CARD=HDMI,DEV=0
    HDA ATI HDMI, HDMI 0
    HDMI Audio Output
hdmi:CARD=HDMI,DEV=1
    HDA ATI HDMI, HDMI 1
    HDMI Audio Output
default:CARD=Generic
    HD-Audio Generic, ALC892 Analog
    Default Audio Device
sysdefault:CARD=Generic
    HD-Audio Generic, ALC892 Analog
    Default Audio Device
front:CARD=Generic,DEV=0
    HD-Audio Generic, ALC892 Analog
    Front speakers
surround21:CARD=Generic,DEV=0
    HD-Audio Generic, ALC892 Analog
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=Generic,DEV=0
    HD-Audio Generic, ALC892 Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=Generic,DEV=0
    HD-Audio Generic, ALC892 Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=Generic,DEV=0
    HD-Audio Generic, ALC892 Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=Generic,DEV=0
    HD-Audio Generic, ALC892 Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=Generic,DEV=0
    HD-Audio Generic, ALC892 Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=Generic,DEV=0
    HD-Audio Generic, ALC892 Digital
    IEC958 (S/PDIF) Digital Audio Output

I can now change the value of the -D parameter to 'speaker-test' and while the test seems to go through, no sound still is.  Any thoughts?

Thanks,
Dave
Title: Re: Still no audio
Post by: wysiwyg on January 19, 2015, 03:51:18 PM
After doing some more testing, it appears that I now have audio.  I was using the wrong speaker-test parameters.  After getting everything set correctly, the audio is now working just fine.  So it looks like the issue I was having was related to the TV turner card not having its drivers and firmware installed.  Once I got that going, the audio portion seemed to work as designed.

Thanks to everyone for their continued help!

Dave
Title: Re: Still no audio
Post by: wysiwyg on January 19, 2015, 05:17:08 PM
So now I'm trying to change the default sound card to the HDMI connection and have created the ~/.asoundrc file as specified by core-user, however that doesn't work.  I have tried a value of 0 through 7 for the 'card' parameter and all display errors unless the value is set to 1, but that has to be for some other interface as the sound isn't coming through the speakers.  I can successfully play sound using the following command:

speaker-test -Dhdmi:HDMI -c6 -t wav -l1

Per the alsa documentation, it says that you can see the 'card' values for the sound cards by viewing /proc/asound/cards.  Mine looks like:

 0 [HDMI           ]: HDA-Intel - HDA ATI HDMI
                      HDA ATI HDMI at 0xfea44000 irq 50
 1 [Generic        ]: HDA-Intel - HD-Audio Generic
                      HD-Audio Generic at 0xfea40000 irq 16

So 'card 0' should be the correct value in the .asoundrc file, but it fails every time.  I've tried adding 'device' and 'subdevice' parameters with values of 0 or 1, but all end up giving an error too.  I'm at a loss, any ideas?

Thanks,
Dave
Title: Still no audio
Post by: coreplayer2 on January 20, 2015, 02:20:56 AM
Good job
But did you try pavucontrol and PulseAudio to select your desired configuration now that Alsa is working  ?




Sent from my iPhone using Tapatalk
Title: Re: Still no audio
Post by: wysiwyg on January 20, 2015, 08:39:28 AM
Good morning coreplayer2!  At this point we will most likely stay with alsa since it is working and that is what our staff is most familiar with.  We just need to have the default audio device updated.

Thanks,
Dave
Title: Re: Still no audio
Post by: coreplayer2 on January 20, 2015, 04:22:32 PM
you still need a working alsa, please see pulseaudio info file

pulseaudio might help you troubleshoot the alsa configuration
Title: Re: Still no audio
Post by: wysiwyg on January 21, 2015, 08:48:13 AM
Good morning coreplayer2.  I do have a working alsa system, I just need to update the default device.

Thanks,
Dave
Title: Re: Still no audio
Post by: wysiwyg on January 26, 2015, 09:45:34 AM
It seems like the documentation says that you can use names for devices in the .asoundrc file.  Has anyone tried this successfully?

Thanks,
Dave