Author |
Message |
marc.aronson
|
Posted: Sat Aug 13, 2011 9:44 am |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
Thought I would post how I got audio over HDMI working on LINHES 6.04 using OSS drivers instead of ALSA. My box is a foxcon barebone with an Atom N330 and ION graphics. It was quite simple -- the team did a nice job with the audio service menus!
One word of caution -- see TJC's post just below. There are some packages in 6.04 that won't work properly with the OSS audio driver.
1. Goto ServiceMenu->LinHES_Configuration->Audio_Settings
2. Set "Sound Card Driver" to "OSS"
3. Set "Type" to "Digital"
4. Navigate to the "Load OSS driver" button and click on it.
5. The "Type" field will now be a drop-down list with several choices. Mine had 2. The one that worked for me was "HD Audio play spdifout (dsp6)". Toggle through each of the choices and try them by hitting the "Test Audio Settings" button.
I also found it work configuring mythtv:
1. goto Service_Menu->MythTV_Configuration->Setup->General
2. Move to 4th screen ("Audio System")
2.1 Enable "Dolby Digital" if your amp supports it; same logic for the "DTS" .
2,2. If your system is 5.1, set speaker configuration to 5.1 and choose to up-convert stereo to 5.1 surround. I also selected upmix quality of "best". (CPU impact of "best" is not noticeable on Atom N330 during playback).
3. Move to the 5th screen (Audio Mixer).
3.1 Select "use internal volume controls"
3.2 Set master mixer volume to 100%
3.3 Set PCM mixer volume to 90%.
That's all it took -- no hacking any config files. Hope this helps someone!
_________________ Marc
The views expressed are my own and do not necessarily reflect the views of my employer.
Last edited by marc.aronson on Sun Aug 14, 2011 8:05 am, edited 2 times in total.
|
|
Top |
|
 |
tjc
|
Posted: Sat Aug 13, 2011 10:19 am |
|
Joined: Thu Mar 25, 2004 11:00 am
Posts: 9551
Location:
Arlington, MA
|
Just beware that OSS may not play nicely with other applications and components like libflashplayer.so in firefox or other streaming video players.
After going through all the ins and outs of getting the audio drivers working across the board with both OSS and ALSA, my conclusion was that ALSA is simply far better supported and more closely integrated into the system.
|
|
Top |
|
 |
snaproll
|
Posted: Sat Aug 13, 2011 10:20 am |
|
Joined: Sun Jul 24, 2005 4:16 pm
Posts: 508
Location:
Ft. Worth TX
|
Does the analog output continue to work, or does changing drivers mute it ?
(I still gotta figure out how to get HDMI sound outta a 7.02 LH machine with a Nvidia 210 card....)
|
|
Top |
|
 |
marc.aronson
|
Posted: Sat Aug 13, 2011 10:33 am |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
TJC, thanks for the heads-up. I find that when I select Alsa driver with digial output from the LINHES service menu and hit the "test audio" button, no sounds comes out. I know there used to be some config files that used to be tweaked by hand to get ALSA to work over HDMI - is this still the case?
snaproll, I don't know if analog output still works.
_________________ Marc
The views expressed are my own and do not necessarily reflect the views of my employer.
|
|
Top |
|
 |
snaproll
|
Posted: Sat Aug 13, 2011 11:26 am |
|
Joined: Sun Jul 24, 2005 4:16 pm
Posts: 508
Location:
Ft. Worth TX
|
marc.aronson wrote: snaproll, I don't know if analog output still works.
Thanks, I'll eventually get a handle on this, I tried to work through tjc's tutorials, but they didn't click with my cards/equipment, and the only card I had a shot with, kept overheating and taking the machine down (to the junquebox..)
|
|
Top |
|
 |
mattbatt
|
Posted: Sun Aug 14, 2011 6:10 am |
|
Joined: Tue Aug 15, 2006 11:14 am
Posts: 1343
Location:
Orlando FL
|
my experience with 6.03 is that you have to reboot when you switch from ALSA to OSS. Have they fixed that?
_________________ My System
|
|
Top |
|
 |
marc.aronson
|
Posted: Sun Aug 14, 2011 7:46 am |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
mattbatt wrote: my experience with 6.03 is that you have to reboot when you switch from ALSA to OSS. Have they fixed that?
I did not need to reboot.
_________________ Marc
The views expressed are my own and do not necessarily reflect the views of my employer.
|
|
Top |
|
 |
tjc
|
Posted: Sun Aug 14, 2011 9:05 am |
|
Joined: Thu Mar 25, 2004 11:00 am
Posts: 9551
Location:
Arlington, MA
|
You may need to build a newer version of the ALSA drivers, however once you do that and configure it as the default everything just works. While this sounds like more work in the short run, the "everything just works" part pays dividends if you need to change things, or switch between digital and analog, or ...
|
|
Top |
|
 |
marc.aronson
|
Posted: Sun Aug 14, 2011 9:25 am |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
tjc wrote: You may need to build a newer version of the ALSA drivers...
TJC, I've been reading various posts on the topic of ALSA & HDMI on this forum. There are multiple posts on how to update the ALSA drivers, with various feedback that some are the "right way" and some the "wrong way". Would you mind either posting directions or a link to a single post that describes the most appropriate way of doing this on LINHES? Thanks!
_________________ Marc
The views expressed are my own and do not necessarily reflect the views of my employer.
|
|
Top |
|
 |
tjc
|
Posted: Sun Aug 14, 2011 5:44 pm |
|
Joined: Thu Mar 25, 2004 11:00 am
Posts: 9551
Location:
Arlington, MA
|
The "right/wrong way" discussions are usually prompted by jumping the fence on the package system. Using the package system is "right" in that it prevents problems with future updates using pacman.
I'd recommend building packages where it makes sense, i.e. with the alsa-lib, alsa-utils, and alsa-firmware if you need it. The alsa-driver is a tougher proposition since it's normally part of the kernel package and there is no standard package for updating it without building a whole new kernel. After deciding that rebuilding the whole kernel package for one driver built as a loadable module (and thus easily replaced) was silly, I went the /lib/modules/2.6.28-LinHES/updates path. The good news is that a new kernel will go in it's own directory tree, so this doesn't leave a big mess if you upgrade.
So in outline...
- Get the 1.0.24 PKGBUILD files for the three listed above. They were in the LinHES source repo last time I looked. If necessary I can post or PM them. If they're properly set up they'll download the correct source tarball for you. With others I've hacked together the key is getting the right source URL and md5sums.
- Build the packages. Doing this with makepkg is shockingly easy. There are directions around here somewhere. I think these are the ones I read: http://knoppmyth.net/phpBB2/viewtopic.php?t=19849 The Arch wiki was also helpful: https://wiki.archlinux.org/index.php/Makepkg You should build the packages as a non root user. Memory also says that it helps to install the lib package before building the utils package.
- Configure, build and install the kernel driver as a driver update. From the alsa-driver-1.0.24 directory:
Code: ./configure --with-moddir=updates make make install
- Reboot. You can also do the rmmod/insmod dance but that's much more complicated.
- Tweak your configuration to use the correct device(s).
|
|
Top |
|
 |
mattbatt
|
Posted: Wed Aug 17, 2011 11:33 pm |
|
Joined: Tue Aug 15, 2006 11:14 am
Posts: 1343
Location:
Orlando FL
|
where is the like button on this post so that I can find it later? 
_________________ My System
|
|
Top |
|
 |
marc.aronson
|
Posted: Sun Jan 22, 2012 12:20 am |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
TJC, I know it's been a while but I finally decided to attempt to build ALSA on my 6.04 system. I was able to do a "makepkg" and "pacman -U" for both alsa-lib and alsa-firmware, but when I try to do the "makepkg" for "alsa-utils", I get this error message
Code: ==> Making package: alsa-utils 1.0.24.2-1 i686 (Sat Jan 21 22:15:52 PST 2012) ==> Checking Runtime Dependencies... ==> Missing Dependencies: -> alsa-lib>1.0.24 ==> Checking Buildtime Dependencies... ==> ERROR: Could not resolve all dependencies.
Here is my PKGBUILD file: Code: # $Id$ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> # Contributor: judd <jvinet@zeroflux.org>
pkgname=alsa-utils pkgver=1.0.24.2 pkgrel=1 pkgdesc="An alternative implementation of Linux sound support" arch=('i686' 'x86_64') url="http://www.alsa-project.org" #can not use >=$pkgver due to use of letters in alsa-lib update versioning depends=("alsa-lib>1.0.24" 'dialog' 'pciutils' 'ncurses' 'psmisc') makedepends=('xmlto' 'docbook-xsl') license=('GPL') source=(ftp://ftp.alsa-project.org/pub/utils/$pkgname-${pkgver}.tar.bz2 alsa alsaconf.patch alsa.conf.d 90alsa)
backup=(etc/conf.d/alsa)
build() { cd ${srcdir}/${pkgname}-${pkgver} patch -Np1 -i ../alsaconf.patch ./configure --prefix=/usr make }
package() { cd ${srcdir}/${pkgname}-${pkgver} make DESTDIR=${pkgdir} install install -D -m755 ../alsa ${pkgdir}/etc/rc.d/alsa install -D -m644 ../alsa.conf.d ${pkgdir}/etc/conf.d/alsa install -D -m755 ../90alsa ${pkgdir}/etc/pm/sleep.d/90alsa # dir where to save ALSA state install -d ${pkgdir}/var/lib/alsa } md5sums=('8238cd57cb301d1c36bcf0ecb59ce6b2' '3ef812cae83053d01cd560284efad71f' '62ebef77d5617d0036012cc541dcf23c' '93089f0d8872078939f76dd2acaebc2b' '71b67e9578512e071253966f9403e01d')
I suspect that the "source=" line contains an error.
Also, in your instructions you state "- Configure, build and install the kernel driver as a driver update. From the alsa-driver-1.0.24 directory: ". Where is the "alsa-driver-1.0.24" directory located?
Any help you can provide would be greatly appreciated.
_________________ Marc
The views expressed are my own and do not necessarily reflect the views of my employer.
|
|
Top |
|
 |
tjc
|
Posted: Sun Jan 22, 2012 9:18 am |
|
Joined: Thu Mar 25, 2004 11:00 am
Posts: 9551
Location:
Arlington, MA
|
The compile error sounds familiar and probably why I had to install the lib (and headers) package before building the utils.
tjc wrote: Memory also says that it helps to install the lib package before building the utils package.
The "alsa-driver-1.0.24" directory is where ever you put it. Since there isn't a PKGBUILD file for it you have to do that manually. Mine is in /usr/src/alsa-driver-1.0.24 which probably means that I went to /usr/src and did something like this:
Code: cd /usr/src wget ftp://ftp.alsa-project.org/pub/driver/alsa-driver-1.0.24.tar.bz2 tar jxvf alsa-driver-1.0.24.tar.bz2 cd alsa-driver-1.0.24 ...
|
|
Top |
|
 |
marc.aronson
|
Posted: Sun Jan 22, 2012 9:29 am |
|
Joined: Tue Jan 18, 2005 2:07 am
Posts: 1532
Location:
California
|
TJC, thanks for the quick reply. I am stuggling a bit on this one as did do "lib" first, per your instructions. Let me verify that I am doing things correctly.
1. In /use/src I created 3 directories: alsa-lib, alsa-firmware & alsa-utils
2. I put the PKGBUILD you PM'ed me into each of those directories and then processed them in the following order: alsa-lib, alsa-firmware & alsa-utils.
3. The specific steps I took in each of those directories is as follows:
Code: makepkg pacman -U name_of_the_tar.gz_file
Based on the instructions I read in this post I assumed that the "pacman -U' installed the package. Do I need to go into the "src" directory and do a "./configure", "make" and "make install"?
Also, there was a "tar.bz" file in each directory. I didn't do anything with those -- is some processing of that required? Thanks!
Marc
_________________ Marc
The views expressed are my own and do not necessarily reflect the views of my employer.
|
|
Top |
|
 |
tjc
|
Posted: Sun Jan 22, 2012 12:38 pm |
|
Joined: Thu Mar 25, 2004 11:00 am
Posts: 9551
Location:
Arlington, MA
|
Do your directories look more or less like this?
Code: [root@black3 src]# ls -l /usr/src/alsa-lib/ total 1324 -rw-r--r-- 1 mythtv mythtv 775 2011-03-31 00:45 PKGBUILD -rw-r--r-- 1 mythtv mythtv 504083 2011-03-31 00:46 alsa-lib-1.0.24.1-1-i686.pkg.tar.gz -rw-r--r-- 1 mythtv mythtv 832555 2011-03-31 00:45 alsa-lib-1.0.24.1.tar.bz2 drwxr-xr-x 3 mythtv mythtv 4096 2011-03-31 00:46 pkg drwxr-xr-x 3 mythtv mythtv 4096 2011-03-31 00:45 src [root@black3 src]# ls -l /usr/src/alsa-utils/ total 2252 -rw-r--r-- 1 mythtv mythtv 144 2011-02-25 22:12 90alsa -rw-r--r-- 1 mythtv mythtv 1295 2011-02-25 22:15 PKGBUILD -rwxr-xr-x 1 mythtv mythtv 1252 2010-10-28 15:47 alsa -rw-r--r-- 1 mythtv mythtv 1140578 2011-03-31 00:40 alsa-utils-1.0.24.2-1-i686.pkg.tar.gz -rw-r--r-- 1 mythtv mythtv 1130734 2011-03-31 00:40 alsa-utils-1.0.24.2.tar.bz2 -rw-r--r-- 1 mythtv mythtv 475 2010-10-28 15:47 alsa.conf.d -rw-r--r-- 1 mythtv mythtv 1162 2010-10-28 15:47 alsaconf.patch drwxr-xr-x 6 mythtv mythtv 4096 2011-03-31 00:40 pkg drwxr-xr-x 3 mythtv mythtv 4096 2011-03-31 00:40 src
The alsa-lib-1.0.24.1.tar.bz2 and alsa-utils-1.0.24.2.tar.bz2 tarballs are the source bundles downloaded by the makepkg process. Package info according to pacman: Code: [root@black3 src]# pacman -Qi alsa-lib Name : alsa-lib Version : 1.0.24.1-1 URL : http://www.alsa-project.org Licenses : GPL Groups : None Provides : None Depends On : glibc Optional Deps : python: for python smixer plugin Required By : alsa-oss alsa-utils esound gpac libao libsndfile lirc-utils xmms Conflicts With : None Replaces : None Installed Size : 1924.00 K Packager : Unknown Packager Architecture : i686 Build Date : Thu 31 Mar 2011 12:46:10 AM EDT Install Date : Thu 31 Mar 2011 01:26:13 AM EDT Install Reason : Explicitly installed Install Script : No Description : An alternative implementation of Linux sound support
[root@black3 src]# pacman -Qi alsa-utils Name : alsa-utils Version : 1.0.24.2-1 URL : http://www.alsa-project.org Licenses : GPL Groups : None Provides : None Depends On : alsa-lib>1.0.24 dialog pciutils ncurses psmisc Optional Deps : None Required By : None Conflicts With : None Replaces : None Installed Size : 2056.00 K Packager : Unknown Packager Architecture : i686 Build Date : Thu 31 Mar 2011 12:40:24 AM EDT Install Date : Thu 31 Mar 2011 01:26:13 AM EDT Install Reason : Explicitly installed Install Script : No Description : An alternative implementation of Linux sound support
|
|
Top |
|
 |