Linux Audio the way to go!? - Page 109 - diyAudio
Go Back   Home > Forums > Source & Line > PC Based

PC Based Computer music servers, crossovers, and equalization

Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Reply
 
Thread Tools Search this Thread
Old 15th April 2009, 08:24 AM   #1081
diyAudio Member
 
soundcheck's Avatar
 
Join Date: Mar 2005
Location: D
Yep. If you want to have access to your files on every machine nfs-shares is
the way to go. You can run an MPD deamon on each machine.
You just switch the hostname in Minion. (I actually havn't checked this out yet)

I describe the NFS share setup (about 3 commands) in the Minion setup section of the MPD Wiki.
This is gonna be just a 5 Minute exercise.

You mentioned, there'd be a new brutefir version!?!? I need to check that out.

Cheers
  Reply With Quote
Old 15th April 2009, 08:30 AM   #1082
phofman is offline phofman  Czech Republic
diyAudio Member
 
Join Date: Apr 2005
Location: Pilsen
What I am looking for (and Theo404 clearly too) is networking the machines on sound-system level, below the actual audio applications.
  Reply With Quote
Old 15th April 2009, 08:35 AM   #1083
Theo404 is offline Theo404  United Kingdom
diyAudio Member
 
Theo404's Avatar
 
Join Date: Mar 2008
Quote:
Originally posted by soundcheck
Yep. If you want to have access to your files on every machine nfs-shares is
the way to go. You can run an MPD deamon on each machine.
You just switch the hostname in Minion. (I actually havn't checked this out yet)
Not 'every' machine. With just two pcs (one linux, one windows) I want to be able to use the magic of brutefir on the linux machine to play the large (and ever expanding) library of music on my windows machine, and control this from windows... doable with MPD, minion and shares?

Quote:
Originally posted by soundcheck You mentioned, there'd be a new brutefir version!?!? I need to check that out.
Yep, 1.0k.... just addresses issues with the latest versions of jack and such, but before that there are newer versions than synaptic in ubuntu installs that do more....
  Reply With Quote
Old 15th April 2009, 08:36 AM   #1084
Theo404 is offline Theo404  United Kingdom
diyAudio Member
 
Theo404's Avatar
 
Join Date: Mar 2008
Quote:
Originally posted by phofman
What I am looking for (and Theo404 clearly too) is networking the machines on sound-system level, below the actual audio applications.
Ultimately yes... but in the mean time we have to make do....
  Reply With Quote
Old 15th April 2009, 09:35 AM   #1085
diyAudio Member
 
soundcheck's Avatar
 
Join Date: Mar 2005
Location: D
Quote:
Originally posted by phofman
What I am looking for (and Theo404 clearly too) is networking the machines on sound-system level, below the actual audio applications.

Fair enough. For the time being I skipped Jack and Pulseaudio and similar.
MPD is exactly doing what I want.

My goal: Keep it simple and usable.

The tool got accepted quite quickly of my family. This never happend before with any other audio application I came up with.

I am working heavily to get away from a system, which needs a 2 hour introduction to get one song played back.

Talking about integrating video and recording are different stories of course.


Cheers
  Reply With Quote
Old 15th April 2009, 09:42 AM   #1086
Theo404 is offline Theo404  United Kingdom
diyAudio Member
 
Theo404's Avatar
 
Join Date: Mar 2008
Default Compiling mpd

I'm trying to compile mpd from source as per your guide and have run into an error I cant get around:

src_mpd-jack_plugin.o: In function `mpd_jack_init':
/usr/src/mpd/src/output/jack_plugin.c:207: undefined reference to `jack_set_info_function'
collect2: ld returned 1 exit status
make[1]: *** [src/mpd] Error 1
make[1]: Leaving directory `/usr/src/mpd'
make: *** [all] Error 2

Any hints?
  Reply With Quote
Old 15th April 2009, 09:56 AM   #1087
diyAudio Member
 
soundcheck's Avatar
 
Join Date: Mar 2005
Location: D
Do you have the jack-dev sources installed?
  Reply With Quote
Old 22nd April 2009, 09:20 AM   #1088
diyAudio Member
 
soundcheck's Avatar
 
Join Date: Mar 2005
Location: D
Hi folks.

I am playing a lot with 24/96 material lately. ( there is some great stuff from hdtracks.com available)

I had difficulties to get it going with MPD-pipe-out/ecasound/brutefir.

I'll quickly share my findings, because it seems, that the Linux audio scene is not 100% in sync when it comes to 24bit formats. It took me quite some time and mail-writing again to get
me on top of the mess.

1. MPD pipe-output is S24_LE ( a 32 bit format with 8MSB padded to 0).
2. The usual base data are available in S24_3LE (3 byte format)
3. ecasound and brutefir can not read S24_LE ( really strange), aplay is able to read it
4. ecasound workaround for the time being: run S32_LE and increase volume by 8bits.

1. I am currently checking out what Sox can do in this context.
2. We can also expect a fix on ecasound.
3. A pity - As usual Anders Torger (brutefir) is not responding to mails.
4. MPD won't move either. ( I asked for configurable pipe output formats)

You can look up the ecasound-workaround-config in MPD Wiki example 6 .


Cheers
  Reply With Quote
Old 22nd April 2009, 10:46 AM   #1089
diyAudio Member
 
uli.brueggemann's Avatar
 
Join Date: Nov 2006
Quote:
I'll quickly share my findings, because it seems, that the Linux audio scene is not 100% in sync when it comes to 24bit formats. It took me quite some time and mail-writing again to get me on top of the mess.
Klaus,

the basic alsa definitions are given in the file pcm.h. The brutefir definitions and connection to alsa are given in the file bfio_alsa.c

You are right, the definitions do not match to each other:

alsa:
Quote:
/** Signed 24 bit Little Endian using low three bytes in 32-bit word */ SND_PCM_FORMAT_S24_LE,
/** Signed 24 bit Big Endian using low three bytes in 32-bit word */ SND_PCM_FORMAT_S24_BE,
/** Unsigned 24 bit Little Endian using low three bytes in 32-bit word */ SND_PCM_FORMAT_U24_LE,
/** Unsigned 24 bit Big Endian using low three bytes in 32-bit word */ SND_PCM_FORMAT_U24_BE,
/** Signed 32 bit Little Endian */ SND_PCM_FORMAT_S32_LE,
/** Signed 32 bit Big Endian */ SND_PCM_FORMAT_S32_BE,
/** Unsigned 32 bit Little Endian */ SND_PCM_FORMAT_U32_LE,
/** Unsigned 32 bit Big Endian */ SND_PCM_FORMAT_U32_BE,

and

/** Signed 24bit Little Endian in 3bytes format */ SND_PCM_FORMAT_S24_3LE = 32,
/** Signed 24bit Big Endian in 3bytes format */ SND_PCM_FORMAT_S24_3BE,
/** Unsigned 24bit Little Endian in 3bytes format */ SND_PCM_FORMAT_U24_3LE,
/** Unsigned 24bit Big Endian in 3bytes format */ SND_PCM_FORMAT_U24_3BE,
whereas brutefir uses:

Quote:
switch (sample_format) {
case BF_SAMPLE_FORMAT_S8:
format = SND_PCM_FORMAT_S8;
*sample_size = 1;
break;
case BF_SAMPLE_FORMAT_S16_LE:
format = SND_PCM_FORMAT_S16_LE;
*sample_size = 2;
break;
case BF_SAMPLE_FORMAT_S16_BE:
format = SND_PCM_FORMAT_S16_BE;
*sample_size = 2;
break;
case BF_SAMPLE_FORMAT_S24_LE:
format = SND_PCM_FORMAT_S24_LE;
*sample_size = 3;
break;
case BF_SAMPLE_FORMAT_S24_BE:
format = SND_PCM_FORMAT_S24_BE;
*sample_size = 3;
break;
case BF_SAMPLE_FORMAT_S16_4LE:
case BF_SAMPLE_FORMAT_S24_4LE:
case BF_SAMPLE_FORMAT_S32_LE:
format = SND_PCM_FORMAT_S32_LE;
*sample_size = 4;
break;
case BF_SAMPLE_FORMAT_S16_4BE:
case BF_SAMPLE_FORMAT_S24_4BE:
case BF_SAMPLE_FORMAT_S32_BE:
format = SND_PCM_FORMAT_S32_BE;
*sample_size = 4;
break;
case BF_SAMPLE_FORMAT_FLOAT_LE:
format = SND_PCM_FORMAT_FLOAT_LE;
*sample_size = 4;
break;
case BF_SAMPLE_FORMAT_FLOAT_BE:
format = SND_PCM_FORMAT_FLOAT_BE;
*sample_size = 4;
break;
case BF_SAMPLE_FORMAT_FLOAT64_LE:
format = SND_PCM_FORMAT_FLOAT64_LE;
*sample_size = 8; break;
case BF_SAMPLE_FORMAT_FLOAT64_BE:
format = SND_PCM_FORMAT_FLOAT64_BE;
*sample_size = 8;
break;
default:
sprintf(errstr, " Unsupported sample format.\n");
return false;
}
It seems the only solution is to modify bfio_alsa.c and to watch for undesired side effects.
  Reply With Quote
Old 22nd April 2009, 11:34 AM   #1090
phofman is offline phofman  Czech Republic
diyAudio Member
 
Join Date: Apr 2005
Location: Pilsen
The 3-byte formats were introduced to alsa-lib in 2002

http://git.alsa-project.org/?p=alsa-...ad4474073a9363

The code in brutefir seems to be from 2004, probably not updated since then.

I guess the best solution is filing a brutefir bug report.

BTW, I could not find a brutefir source code repository with history, only http://brutefir.sourcearchive.com/ which is kind of inadequate for such an important project.
  Reply With Quote

Reply


Hide this!Advertise here!
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off



New To Site? Need Help?

All times are GMT. The time now is 07:35 AM.


vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2014 DragonByte Technologies Ltd.
Copyright 1999-2014 diyAudio

Content Relevant URLs by vBSEO 3.3.2