Re: [linux-audio-dev] hearnet improvement
I did reply to Dmitry earlier by email, but for posterity, I integrated his patch and released a new version. I think I posted to the announce list but I'm not sure if it came through or not. If not, head on over to http://hans.fugal.net/typo/articles/2006/10/10/hearnet-0-0-9 On Thu, 5 Oct 2006 at 22:00 +0400, Dmitry Baikov wrote: Hi! First of all, thanks for a great program! I made two patches for it: 1) make hearnet suid and drop privileges right after libpcap initialization. I had to move libpcap init code above jack So, you can use hearnet as regular user. 2) Mutex in jack_process is a very bad thing. Moreover, it seems there's no need for it, as voice-active field serves as a mutex. Attached patch removes pthread_mutex. If you think voice-active assumption is a weak one, the problem can be solved with a pair of jack_ringbuffers: one for free voices and one for active. Regards, Dmitry. -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: [linux-audio-dev] LADSPA 2 name
What about Llama? The (Llinux|Llibre) Audio Modules Architecture, or just a cool animal that has Ls and As in the name. The Delay Lama is obviously named after the Dalai Lama, I don't think there would be any serious confusion. Maybe someone would write a Delay Lama lama plugin too. ;-) On Wed, 10 May 2006 at 17:19 +0100, Steve Harris wrote: On Wed, May 10, 2006 at 08:16:04PM +0400, Dmitry Baikov wrote: LAMA - Linux(Libre) Audio Modules Architecture I hope The Dalai Lama will not object. Good name, but theres a well known VST plugin called Delay Lama. - Steve -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: [linux-audio-dev] LADSPA2 name early consensus?
ladspalapapluxxap
Re: [linux-audio-dev] ladspa2 and bundles
On Tue, 25 Apr 2006 at 10:07 +0100, Steve Harris wrote: On Mon, Apr 24, 2006 at 12:44:03PM -0400, Taybin Rutkin wrote: I like the bundle idea. What are the reasons to not use it? Reasons to use it include ease of distribution (especially on other platforms like osx). I think bundles are a great idea that should be adopted by other unixen. Or, can we make it so that bundles are a possible method of distribution and either it or the typical installation into various directories could be used? I'd like to see LADSPA 2.0 plugins always being directories, wether we go for bundles or not. It gives the plugin somewhere to stash its auxilarry data (precompiled tables etc.), which otherwise is a bit of a pain. Well, yes and no. Yes if you install it somewhere you have permissions to write to. No if it's installed somewhere by root. It's possible to retrofit bundles to 2.x by reserving the lib/ directory inside the plugin directory for future use in 2.0. zeroinstall, http://0install.net/ uses something similar to bundles at it works well on linux. I like the bundle idea as well. I've found it works pretty well in OS X, it gives a sense of one package to the user, who just drags it around in a file manager, and the power for the developer or power user to poke around in the directory. -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: [linux-audio-dev] Update to LADSPA 2 strawman
On Tue, 25 Apr 2006 at 11:28 +0100, Steve Harris wrote: I've added the port shortnames (ladspa:shortname). This is still tentative in my mind, but as long as it doesn't cause any serious objections it will stay. Following a suggestion from Richard Furze I've removed the LADSPA_Data type and replaced it with void. The ports are datatyped in the data, but currently only ladspa:float is supported. I have misgivings about this, but it seems like a good way to open up to more datatypes in the future. I'd hate to see a future where there are plugins for translating between different kinds of boring PCM data, that would suck, but this could allow Hmm, well couldn't we have one libsndfile plugin that can convert between whatever common boring PCM formats you like? I haven't looked closely at the ladspa2 stuff yet - is it possible to change these port types at runtime, if so the libsndfile plugin would only need an input and an output... -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: [linux-audio-dev] LADSPA 2
On Mon, 24 Apr 2006 at 08:57 +0100, Steve Harris wrote: On Sun, Apr 23, 2006 at 06:40:32 -0400, Dave Robillard wrote: For the sake of the record, it's been duked out on IRC and Steve wins :). (Specifically, ports will be required to have a unique string ID, but it will live in the data file, not the code). Actually I didn't mean to say that they /will/ be required, just that I don't have a problem with it. I've not heard anyone else speak in favour of this, and it is a feature. If theres a critical mass of support I'm OK with adding it, as it should make the lives of some hosts much easier. Well then let me weigh in. I have in the past cursed the insensibility of referencing a port with its arbitrary (from the human's POV) numerical ID. I want human-friendly port IDs. At the risk of upsetting Dave, it can be added a a 3rd party extension without anything really bad happening. It just means that the Pd messages / OSC paths / whatever for some plugins will be ugly. Market pressure will ensire that all plugins support it if its useful to enough users. Ick. I'm all for market pressure, but this is not the place for it, IMHO. -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
[linux-audio-dev] Summer of Code
Google's Summer of Code is upon us. I have a summer without classes coming up and I can think of nothing better to do (besides studying for qualifying exams) than to hack on a Linux Audio project and get paid for it, benefitting that project with code and money ($500). Is any project, or perhaps the LAD community as a whole, applying for mentorship? http://code.google.com/summerofcode.html Ardour comes to mind as being a good mentor organization candidate. -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
[linux-audio-dev] Linux Audio Wiki on port 2500 no more
The wiki that was at http://fugal.net:2500 is no longer there. It now has its own subdomain: http://lawiki.fugal.net I would be perfectly happy to entertain a more dedicated domain name, or more appropriate subdomain of an existing domain, if someone wants to foot the bill. If I can figure out how in a short amount of time, I'll put up a redirect at the old address. -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: [linux-audio-user] RE: [linux-audio-dev] regarding the 2nd Book Of Linux Music Sound
On Thu, 30 Mar 2006 at 21:52 -0500, Lee Revell wrote: On Thu, 2006-03-30 at 19:36 -0500, Ivica Ico Bukvic wrote: Before anyone starts writing new documentation, what is most desperately needed is for someone to remove all the bad documentation out there (for example most of the ALSA wiki dealing with .asoundrc files and dmix) Yes, absolutely. Seems to me that what could solve both the issue of consolidation and of duplicate, mostly outdated documentation is generating a central website that provides one Wiki page for every pertinent topic, whether that be a specific software, system setup topic (i.e. ALSA), and/or distribution-specific how-to. The end-users and/or project devs/contributors could help generate the material IMHO wikis are what got us into this mess - there's nothing to stop users from posting wildly inaccurate information. So you end up with dozens of users posting .asoundrcs that they don't understand, but happened to solve (or hide) some problem for them. I don't think Lee is the only one with concerns about Wikis, and because there are other solutions that would work just as well I recommend we just steer towards them from the get-go. I think Hieraki may be a good choice. It gets its name from wiki+hierarchy (and access control). As their demo is not really working, here's an example hieraki-powered site: http://docs.rubyrake.org/read/book/1 The hieraki website is http://www.hieraki.org/trac/ and a good overview with screenshots is at http://www2.truman.edu/~ah428/noc.html I probably don't have the bandwidth to sustain the site long-term, but if we want to try out hieraki before asking linuxaudio.org (or wherever) to install it, I could host a quick test setup of it. -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: [linux-audio-dev] regarding the 2nd Book Of Linux Music Sound
On Wed, 29 Mar 2006 at 13:08 -0500, Paul Coccoli wrote: The type of info that would be in a second edition, in addition to the tutorial-style stuff mentioned in another post, would be a great reference for everyone if it were on-line and maintained by capable writers (like Dave). However, the current scattered and incomplete tutorials, Howtos, manuals, and wikis make me think that such a resource will never exist. I'm not blaming anyone for that, since I never contribute to those efforts either. Need it always be so? Or can we get a little organized and greatly improve the situation? My own opinion is that the community can do this with a little organization and motivation. Someone well-repsected and experienced in documenting (e.g. Dave) could head the organization, and the publishing carrot would provide just enough motivation for many people. Without the publishing carrot I think we would still benefit from a little organization. Dave, I have always enjoyed reading your articles and posts and of course the linux-audio site. I don't have the old book, simply because it was already too old when I came onto the scene. If you had the time and energy to continue to be a one-man show I would be delighted. But assuming you don't, as you have stated, let's consider organizing the community into documentation cells. One or two people could be in charge of a reasonably-sized topic with a lightweight organizational structure (just big enough). I have a friend who has done just this for the Asterisk community, and in the end it ended up an O'Reilly book, so if we need any advice we can ask them. asteriskdocs.org -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
[linux-audio-dev] VST host for LADSPA plugins
Has anyone written a VST host for LADSPA plugins? I see a lot of work in the other direction on Google. Would such a beast even be possible, considering licensing? -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: [linux-audio-dev] regarding the 2nd Book Of Linux Music Sound
On Thu, 30 Mar 2006 at 13:24 -0500, Lee Revell wrote: On Thu, 2006-03-30 at 06:52 -0700, Hans Fugal wrote: Need it always be so? Or can we get a little organized and greatly improve the situation? My own opinion is that the community can do this with a little organization and motivation. Someone well-repsected and experienced in documenting (e.g. Dave) could head the organization, and the publishing carrot would provide just enough motivation for many people. Without the publishing carrot I think we would still benefit from a little organization. Before anyone starts writing new documentation, what is most desperately needed is for someone to remove all the bad documentation out there (for example most of the ALSA wiki dealing with .asoundrc files and dmix) Yes, absolutely. -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: Fwd: [linux-audio-dev] LADSPA processing: ams, om, ... Anything else?
On Sat, 18 Mar 2006 at 16:28 +0100, fons adriaensen wrote: On Sat, Mar 18, 2006 at 12:02:40PM -0300, Denis Alessandro Altoe Falqueto wrote: when no hostname is supplied, apps IMHO should not try to look up the local host name but just use the loopback interface (127.0.0.1). FWIW I'm with you on this policy. -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: [linux-audio-dev] ANN: Csound 5.00 Release
were wrong Better checking in bqrez minor checking in grain wguide2, wguide1 avoid very low frequencies wgpluck bug fix Some error messages corrected and typos fixed FLsetVal arguments were wrong outo missed out channel 6 fixed bugs and improved error reporting in ^+ and ^- code. kread, kdump and a number of other opcodes will take string arguments from the score bug fix in sinc window (gen20) Added iskip options to moogvcf, vco, bqrez, pareq, tbvcf and rezzy values rounded rather than truncated in deltap, comb, and delay removed spurious initial values from some MIDI opcodes Joystick was upside down lpshold and loopseg changed to agree with csoundAV marimba now allows zero probability of a multiple strike Added skipinit argument to diskin and soundin wave-terrain fixes for phase error accumulation (on long notes) new optional argument to delayr and all deltap opcodes, to allow delay taps to read from any of the nested delayr/delayw pairs, not just the last new optional argument to distort1 opcode (defaults to zero), to select amplitude scaling mode (0: default, compatible with original version; 1: relative to 0dBFS, same as mode 0 if 0dbfs is 32768; 2: unscaled) valpass fixed parameter overwriting Improved accuracy in some filters Improvements in bowedbar JPff -- 1 Feb 2006 Files on Sourceforge Sources: Csound5.00_src.tar.gz Csound5.00_src.zip Csound5.00_OS9_src.smi.bin Csound5.00_src_all.tar.gz (including Loris and STK code) Csound5.00_src_all.zip (including Loris and STK code) Manual Csound5.00_manual_chm.zip Csound5.00_manual_html.zip Csound5.00_manual_pdf.zip Csound5.00_manual_pdf_A4.zip Csound5.00_manual_single_file.zip OS9: Csound5.00_OS9.smi.bin OSX: Csound5.00_OSX10.3.tar.gz Csound5.00_OSX10.4.tar.gz Linux Csound5.00_i686.rpm Csound5.00_x86_64.rpm [Linux for non-root users Csound5.00_x86_64d.tar.gz Csound5.00_x86_64f.tar.gz ] Windows Csound5.00_win32.i686.zip Csound5.00_win32.exe (with installer) -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: [linux-audio-dev] Re: [linux-audio-user] LAD site, linuxdj.com needs a new home
There is an existing wiki you are free to use at http://fugal.net:2500 I don't have the bandwidth or disk space to host multimedia there, however. I know the URL is kind of awkward, and I'm planning to set it up to proxy through apache real soon now, at which point it could be lawiki.fugal.net or something like that (or any other domain name someone wants to set up to point to me). On Tue, 31 Jan 2006 at 12:59 +0100, Frank Barknecht wrote: Hallo, Thomas Vecchione hat gesagt: // Thomas Vecchione wrote: Heh And here I had just offered the same thing;) Paul's hosting would probably be better, but at least you got a backup if needed;) I agree on the comments on the current status of the site. I have been considering setting up a LAU wiki on my site since I got it started, but have been worried it is already pretty well covered by others. However I definitly think a Wiki type setup would be important as Linux Audio changes so much due to it being open source, a combination of a Wiki and archive system would allow I think the most flexibility, or even a Wiki that is organized in versioning information. A Wiki would be great also to do the yearly organizing of shared travelling to the Linux Audio Conference. In the last year my Wiki was used for this, which is is no problem for me, but of course a dedicated LAD/U wiki would be the nicer solution. Ciao -- Frank Barknecht _ __footils.org_ __goto10.org__ -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: [linux-audio-dev] detune
mlang wrote: I'd like to suggest this article: http://www.dspdimension.com/data/html/pshiftstft.html It is wonderfully detailed, includes all the necessary C source code to take the basic idea and make it fly. I used this method to write my instrument tuner by ripping out the last phase of the algorithm (resynthesis) and only using the exact frequency peak info. Its pretty useful, and I learned a lot from this article. Actually, I think thats the single most useful DSP tutorial I've ever read. It made me really grok FFT, which is something by its own right :-) Oh, and it is pretty simple to make this stuff work with libfftw3, just read tuneit.c (http://delysid.org/tuneit.html). Thanks for these excellent links, I think they will help me understand this very well. And thanks to everyone else for their insights as well.
Re: [linux-audio-dev] timemachine auto recorder patch
float stop_threashold = 0; +static float seconds_of_silence = 0; +static int sample_rate = 0; +static int autorecord = 0; +/* end garetts mod */ + /* Peak data for meters */ static volatile float peak[MAX_PORTS]; @@ -69,6 +78,32 @@ fprintf(stderr, bad buffer!\n); break; } + + /* garetts mod here */ + if (autorecord) { + if (rec) { + for (i = 0; i nframes; i++) { + if (fabsf(in[i]) = stop_threashold) { + seconds_of_silence = seconds_of_silence + 1.0/sample_rate; + } + else { + seconds_of_silence = 0; + } + if (seconds_of_silence seconds_of_silence_before_stop) { + recording_stop(); + } + } + } + else { + for (i = 0; i nframes; i++) { + if (fabsf(in[i]) start_threashold) { + recording_start(); + break; + } + } + } + } + /* end garetts mod */ for (i = 0; i nframes; i++) { if (fabsf(in[i]) peak[port]) { @@ -202,7 +236,10 @@ return 0; } -void process_init(unsigned int time) +/* garetts mod here + * void process_init(unsigned int time) + */ +void process_init(unsigned int time, float secs_of_silence_before_stop, float strt_threashold, float stp_threashold, int use_autorecord) { unsigned int port; @@ -220,6 +257,14 @@ pre_size = time * jack_get_sample_rate(client); pre_time = time; +/* garetts mod here */ +seconds_of_silence_before_stop = secs_of_silence_before_stop; +start_threashold = strt_threashold; +stop_threashold = stp_threashold; +sample_rate = jack_get_sample_rate(client); +autorecord = use_autorecord; +/* end garetts mod */ + for (port = 0; port num_ports; port++) { pre_buffer[port] = calloc(pre_size, sizeof(float)); disk_buffer[port] = calloc(DISK_SIZE, sizeof(float)); diff -urN timemachine-0.3.1/src/threads.h timemachine-0.3.1.autorecord/src/threads.h --- timemachine-0.3.1/src/threads.h 2005-07-18 08:03:06.0 -0600 +++ timemachine-0.3.1.autorecord/src/threads.h 2006-01-14 10:56:37.0 -0700 @@ -9,7 +9,10 @@ int process(jack_nframes_t nframes, void *arg); -void process_init(unsigned int time); +/* garetts mod here + * void process_init(unsigned int time) + */ +void process_init(unsigned int time, float secs_of_silence_before_stop, float strt_threashold, float stp_threashold, int use_autorecord); int writer_thread(void *d); -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
[linux-audio-dev] detune
I'm about to write a DSSI/LADSPA plugin that among other things, detunes the signal by up to 15 cents. My understanding is that detuning is accomplished by resampling. If that's the case, what do you do with the time difference? Do you pad/truncate to get the same number of samples you started out with? Wouldn't that introduce undesirables? -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: [linux-audio-dev] detune
On Sun, 15 Jan 2006 at 02:42 +0100, Jens M Andreasen wrote: On Sat, 2006-01-14 at 18:21 -0700, Hans Fugal wrote: I'm about to write a DSSI/LADSPA plugin that among other things, detunes the signal by up to 15 cents. My understanding is that detuning is accomplished by resampling. If that's the case, what do you do with the time difference? Do you pad/truncate to get the same number of samples you started out with? Wouldn't that introduce undesirables? Ehrmm ... perhaps I misunderstand you, but the art of resampling is all about keeping undesireable results at a minimum. If you stretch your input, you'll end up with more samples ... But hey ... Could you rephrase the question? Happy to. I have no doubt that the resampling part will go smoothly, just to clarify. Unless I'm wrong (in which case I'd like to know), resampling necessarily involves changing the duration if it's played back at the original sample rate. In big numbers, when I resample 1 second of 44.1KHz audio to 22050Hz, I end up with 22050 samples. That means one second of 22050Hz audio, or 1/2 second of 44.1KHz audio. This plugin will take as input a block of n samples and return n samples, but if downsampling reduces the number of samples, what am I to do with the extra time? When we're only talking a few cents, there won't be a lot of samples, but can't even a few 0s result in clicks? You mentioned stretching, perhaps that's the solution. Is it better to stretch to the original size after resampling, or to prestretch and then resample? If I've got pitch detuning all wrong, I'd like to know that too. :-) -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
Re: [linux-audio-dev] Channels and best practice
On Tue, 15 Nov 2005 at 07:24 -0500, Paul Davis wrote: On Tue, 2005-11-15 at 11:58 +, James McDermott wrote: What are your thoughts? What is best practice on multichannel audio, or is it always application-specific? According to my experience and understanding: -non-interleaved (multiple channels in separate arrays) is a bit easier to code, but -interleaved could give better performance (because the data you need now is all close together in memory). -libsndfile uses interleaved. -plugins (DSSI, LADSPA) use separate arrays. it depends whether playback + recording is the only goal, or editing is in the potential workflow. editing interleaved data, especially if there are unrelated signals in different channels that will be treated differently, is really, really hard. if all you do is playback and record, interleaved is marginally more efficient. So marginally more efficient vs. really really hard, it sounds like for a general-purpose lib you'd want seperate channels, eh? -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
[linux-audio-dev] Channels and best practice
I'm writing a library in ruby for dealing with audio data, and I'm faced with a design decision. For several reasons, the best thing to use in ruby for numerical data is NArray[1] which is implemented in C for efficiency. So my code is basically a wrapper around NArray which gives some more specific functionality. I want to support multichannel data, and this is where the design decision comes. Most of the time I've seen code that handles multichannel information in an interleaved fashion (each frame is consecutive samples in the array), but I have once or twice seen channels placed end-to-end or in different arrays altogether. It will of course be possible to extract and/or merge channels to deal with libraries (e.g. libsndfile, which I will also be wrapping) or existing code that works one way or the other, but I wonder which should be the internal format to use. What are your thoughts? What is best practice on multichannel audio, or is it always application-specific? For a fluctuating peek (think CVS, although I use darcs) into what I'm doing, check out http://hans.fugal.net/src/ruby-audio 1. http://www.ir.isas.ac.jp/~masa/ruby/index-e.html -- Hans Fugal ; http://hans.fugal.net There's nothing remarkable about it. All one has to do is hit the right keys at the right time and the instrument plays itself. -- Johann Sebastian Bach signature.asc Description: Digital signature
[linux-audio-dev] cs46xx mic recording
My Turtle Beach Santa Cruz (cs46xx) card has a strange problem: mic recording in JACK is really distorted. Records fine (as fine as my cheap mic can) in Audacity. arecord sounds fine as well. When I record with TimeMachine in JACK, it sounds terribly distorted (maybe saturated is the word). Same mixer settings for all of the above. Has anyone else had luck recording with this card in JACK? -- Hans Fugal | If more of us valued food and cheer and http://hans.fugal.net/ | song above hoarded gold, it would be a http://gdmxml.fugal.net/ | merrier world. | -- J.R.R. Tolkien - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
[linux-audio-dev] [OT] OGG on Tiger
On Sat, 17 Sep 2005 at 11:20 +0200, Adrian Prantl wrote: i'm afraid this is slightly offtopic, but does anyone know of an ogg/ vorbis plugin for the new iTunes running on 10.4? XMMS through darwin ports works, and that is what I currently use. I've heard good things about VLC, too. While we're on the subject, I've done a little bit of research on the problem with quicktime. The qtcomponents project that worked before qt7 did things as a component, when they arguably should have made a codec from the start. Apple hadn't (and hasn't) solidified the API, and so things stopped working in Tiger and also with QT7 on Panther. I'm not sure, but if it had been done as a codec to begin with it might still be working. In any case it looks like doing it as a codec is the way to go at this stage. I think this will require basically taking Apple's AudioCodec example and wiring it up to libvorbisfile. I and at least one other person intend to do this when I get time. If anyone out there is good with Apple codecs or good with libvorbisfile, help would be appreciated, and speed up the process. See this discussion for more information: http://tinyurl.com/8z6rb Also this bug reporter got some good info from Apple: http://tinyurl.com/cy35h -- Hans Fugal | If more of us valued food and cheer and http://hans.fugal.net/ | song above hoarded gold, it would be a http://gdmxml.fugal.net/ | merrier world. | -- J.R.R. Tolkien - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] JACK error 4294967295
On Wed, 14 Sep 2005 at 08:49 -0400, Paul Davis wrote: On Tue, 2005-09-13 at 23:45 -0600, Hans Fugal wrote: Ah! It came to me just now - I set the priority field in qjackctl to 0 instead of 1 (where it was) and now jack apps can start. Heads up there. Maybe applications need a way to recognize what rt_priority level to ask for based on what jack is running at? On a tangent, how exactly does that work? Is rt_priority=0 sufficiently prioritized? (because it is the only thing running realtime) i think the problem with zero is that with -R, jackd actually needs 2 (or even 3) priorities: * watchdog thread * driver thread * client threads since it sets the watchdog to run at the stated priority, the others need to be below it. hence ... the classic UINT_MAX-1 error. we should probably add a check for the given priority to make sure this can't happen. care to submit a patch? So you're saying jackd should run at priority 1 or higher, and we ought to check for that? I could probably manage such a patch, but running at priority 1 is what was causing this error for me with jack apps. Is there a way to match priority from jack apps automatically? -- Hans Fugal | If more of us valued food and cheer and http://hans.fugal.net/ | song above hoarded gold, it would be a http://gdmxml.fugal.net/ | merrier world. | -- J.R.R. Tolkien - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] JACK error 4294967295
On Wed, 14 Sep 2005 at 15:51 +0200, Florian Schmidt wrote: On Wed, 14 Sep 2005 07:33:58 -0600 Hans Fugal [EMAIL PROTECTED] wrote: So you're saying jackd should run at priority 1 or higher, and we ought to check for that? I could probably manage such a patch, but running at priority 1 is what was causing this error for me with jack apps. Is there a way to match priority from jack apps automatically? Hi, there's no priority 0 for SCHED_FIFO threads AFAIK, thus, as jackd runs at the prio specified via the comandline, the watchdog at prio +10 and the clients at prio -1, you effectively get a prio of 0 for the clients when starting jackd with -P 1. Which doesn't work. So, a checking whether the argument to -P is = 2 should be enough. Plus the documentation might need some updating to document the behaviour. I'll send in a patch for the Documentation in a little while. Ok, I understand that. So I take it if you set qjackctl priority to 0, it will not specify it and therefore use the JACK default which is =2? I tried setting -P to 2 in qjackctl, and it works fine. -- Hans Fugal | If more of us valued food and cheer and http://hans.fugal.net/ | song above hoarded gold, it would be a http://gdmxml.fugal.net/ | merrier world. | -- J.R.R. Tolkien - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] JACK error 4294967295
On Wed, 14 Sep 2005 at 16:09 +0200, Florian Schmidt wrote: On Wed, 14 Sep 2005 16:01:12 +0200 Florian Schmidt [EMAIL PROTECTED] wrote: Ok, I understand that. So I take it if you set qjackctl priority to 0, it will not specify it and therefore use the JACK default which is =2? I tried setting -P to 2 in qjackctl, and it works fine. I suppose jackd should exit with an error when the prio is undefined. What Oops, hit send too early. I didn't mean undefined. I actually meant out of range. When the pri is undefined as in not specified by user, of course the default should be used. BTW: i think it would make sense to raise the default prio to 70, which would make jackd work better out of the box with RP kernels (which make the prio of the irq handlers all around 50). Only thing left for the user would then be to raise the soundcard irq handler prio. That's good to know about, thanks. I googled and found your page http://tapas.affenbande.org/?page_id=6 which shows me how to set the irq handler prio, however my soundcard seems to be sharing with my video card. Do you know a way to set which IRQs are used for devices? I have a cs46xx card as well. -- Hans Fugal | If more of us valued food and cheer and http://hans.fugal.net/ | song above hoarded gold, it would be a http://gdmxml.fugal.net/ | merrier world. | -- J.R.R. Tolkien - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
[linux-audio-dev] JACK error 4294967295
2.6.13.1-rt6, rlimits-patched pam and configured thus: # in /etc/security/limits.conf * - rt_priority 0 * - nice 0 @audio - rt_priority 50 @audio - nice -10 jack starts happily with realtime enabled, and the xruns are very few. But no jack application will start, they all give this error: jack_create_thread: error -1 switching current thread to rt for inheritance: Unknown error 4294967295 It's like the ol' jack is root apps can't connect days, but I thought rtlimits was supposed to make it possible for a user to get rt_priority. Am I missing something? Ah! It came to me just now - I set the priority field in qjackctl to 0 instead of 1 (where it was) and now jack apps can start. Heads up there. Maybe applications need a way to recognize what rt_priority level to ask for based on what jack is running at? On a tangent, how exactly does that work? Is rt_priority=0 sufficiently prioritized? (because it is the only thing running realtime) -- Hans Fugal | If more of us valued food and cheer and http://hans.fugal.net/ | song above hoarded gold, it would be a http://gdmxml.fugal.net/ | merrier world. | -- J.R.R. Tolkien - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] jack and alsa design issue
On Sun, 20 Mar 2005 at 22:47 -0500, Paul Davis wrote: no, jack_client_open(). its a new API call, designed to deal with the inadequacies of jack_client_new() without breaking every existing client. 1. http://jackit.sourceforge.net/docs/reference/html/jack_8h.html#a1 this covers the current release, not the version in CVS. the version in CVS is actually better in every way that the current release - we are anxious to wrap up the remaining details so that a new release can be made. Ok, that explains my confusion. I look forward to the release! -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] jack and alsa design issue
On Sat, 19 Mar 2005 at 11:35 -0500, Paul Davis wrote: Sorry, the other thread idea is in order to avoid SIGIO. The thread would select on the audio device and drain it into a ringbuffer for the other thread to use. s/select/poll/ = welcome to JACK :)) you really want to do all this work over again? I want to do as little as possible. :-) Part of the problem is that the non-audio thread goes to the network which means blocking, which means I can't just do it all within jack_process(). Thanks to all your comments and questions I think my head has cleared. I will use a ringbuffer between jack_process() and the network thread, and emulate that when using ALSA. Someday, when jack starts itself as needed (as I understand is planned), I wouldn't need to support ALSA. -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] jack and alsa design issue
On Sun, 20 Mar 2005 at 12:00 -0500, Paul Davis wrote: emulate that when using ALSA. Someday, when jack starts itself as needed (as I understand is planned), I wouldn't need to support ALSA. current versions of JACK already do this if the client uses jack_client_open(). Do you mean jack_client_new()? Even without JACK_START_SERVER[1] defined? 0.99.0? 1. http://jackit.sourceforge.net/docs/reference/html/jack_8h.html#a1 -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] jack and alsa design issue
On Fri, 18 Mar 2005 at 23:53 +0100, Jens M Andreasen wrote: On Fri, 2005-03-18 at 08:24 -0700, Hans Fugal wrote: As I understand it, alsa can be asynchronous but it requires using SIGIO which doesn't excite me. So I'd have to create another thread that selects and fills a ringbuffer. Ehrm ... How will putting SIGIO in another thread improve your performance? The job still have to get done, no? Sorry, the other thread idea is in order to avoid SIGIO. The thread would select on the audio device and drain it into a ringbuffer for the other thread to use. -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
[linux-audio-dev] jack and alsa design issue
I'm writing an application that will use alsa in the common case, but be jack-capable. I'm faced with the following design question: Do I wrap the jack part to emulate the read/write of alsa, or do I wrap the alsa part to emulate the callback style of jack? In other words, do I push or pull from the audio segment of the program? As I understand it, alsa can be asynchronous but it requires using SIGIO which doesn't excite me. So I'd have to create another thread that selects and fills a ringbuffer. To adapt jack, I'd have a ringbuffer which is drained when the program pulls the audio. Adapting Jack seems the easier thing to do, but what do you think? -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] strange jack ringbuffer problem
On Fri, 18 Feb 2005 at 09:17 +0100, Magnus Hjorth wrote: Hi Hans! I took a quick look at your code. Shouldn't src_float_to_short_array(bp, (short*)(vec[i].buf), len*sizeof(short)); instead be src_float_to_short_array(bp, (short*)(vec[i].buf), len); YES! Thanks a ton! I think I should have seen that earlier. A good sign I needed to get some sleep. ;-) -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
[linux-audio-dev] strange jack ringbuffer problem
I've been banging my head against this one all evening. Now I'm going to go to sleep on it, but I throw it out for the wiser and more experienced to see if you can see my error. The code is at http://fugal.net/~fugalh/src/alex which you are welcome to refer to and critique. It segfaults on line 171 of jack.cc, but not if I comment out line 158 (or use 0 for the second argument). It seems to segfault once input_rb is nearly or completely to the end (not full, since it is being drained by the other thread; it's just as it would wrap around). The autopsy shows that it is segfaulting because output_rb and consequentially vec is completely hosed. What I don't understand is how jack_ringbuffer_write_advance(input_rb, something_plenty_small) could possibly hose output_rb. something_plenty_small is usually on the order of 160 bytes. I'm running jackd with a 512 byte buffer at 48000Hz. (gdb) bt #0 0xb7f91253 in src_short_to_float_array () from /usr/lib/libsamplerate.so.0 #1 0x0804a01c in Jack::jack_process (this=0xb300, nframes=512, arg=0xb300) at jack.cc:171 #2 0x08049d87 in Jack::jack_process_wrapper (nframes=512, arg=0xb300) at jack.cc:114 #3 0xb7fb255d in jack_stop_freewheel () from /usr/lib/libjack-0.80.0.so.0 #4 0xb7d639b4 in start_thread () from /lib/tls/libpthread.so.0 #5 0x in ?? () (gdb) up #1 0x0804a01c in Jack::jack_process (this=0xb300, nframes=512, arg=0xb300) at jack.cc:171 171 src_short_to_float_array((short*)vec[i].buf, buf, vframes); (gdb) p *output_rb $1 = {buf = 0xd0b0c860 Address 0xd0b0c860 out of bounds, write_ptr = 92858992, read_ptr = 88669736, size = 4291362712, size_mask = 13171512, mlocked = 3735008} (gdb) p vec $2 = {{buf = 0xd5f9c688 Address 0xd5f9c688 out of bounds, len = 4189256}, { buf = 0x804d028 , len = 0}} (gdb) p *input_rb $3 = {buf = 0x804d028 , write_ptr = 16266, read_ptr = 16266, size = 16384, size_mask = 16383, mlocked = 0} I hope someone can see what I'm doing wrong. Consider the code under the GPL. -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460
Re: [linux-audio-dev] LSM: Linux 2.6 Kernel Capability LSM Module Local Privilege Elevation
On Wed, 29 Dec 2004 at 11:07 +0100, Frank Barknecht wrote: Hallo, Fernando Lopez-Lezcano hat gesagt: // Fernando Lopez-Lezcano wrote: Why I think this is a yes. Any kernel that wants to use the realtime-lsm will have to either not build the POSIX capabilities lsm, or build it as a module. In the later case the system will be vulnerable. The realtime-lsm does not depend on the POSIX capabilities lsm but it forces you to build it as a module, I don't understand: Why does it do so? Shouldn't this be fixed in the realtime-lsm then? Someone please correct me if I'm wrong, but it just looks like a case of a simplistic check. It doesn't look like realtime-lsm really depends on posix capabilities being compiled as a module, but on posix capabilities not being compiled in. So I'm going to try this patch (it builds, we'll see if it works fine, but I suspect it will): diff -u /tmp/realtime-lsm-0.8.5/Makefile realtime-lsm-0.8.5/Makefile --- /tmp/realtime-lsm-0.8.5/Makefile2004-11-24 11:38:41.0 -0700 +++ realtime-lsm-0.8.5/Makefile 2004-12-30 08:22:58.0 -0700 @@ -20,7 +20,7 @@ $(MAKE) modules -C $(KERNEL_DIR) SUBDIRS=$(shell pwd) config: - @if grep CONFIG_SECURITY_CAPABILITIES=m $(KERNEL_DIR)/.config; \ + @if ! grep CONFIG_SECURITY_CAPABILITIES=y $(KERNEL_DIR)/.config; \ then ln -sf $(KERNEL_DIR)/security/$(COMMONCAP) .; \ else echo Failed: Security Capabilities not configured as module; \ echo Realtime LSM will not work with $(KERNEL_DIR); \ -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] LSM: Linux 2.6 Kernel Capability LSM Module Local Privilege Elevation
I was actually working with the 0.8.5 tarball outside of the kernel. There doesn't seem to be any problem with SECURITY_CAPABILITIES=n when using the realtime-lsm 2.6.10 patch. (Again, I built but didn't reboot to test) On Thu, 30 Dec 2004 at 10:20 -0600, Jack O'Quin wrote: Hans Fugal [EMAIL PROTECTED] writes: On Wed, 29 Dec 2004 at 11:07 +0100, Frank Barknecht wrote: Hallo, Fernando Lopez-Lezcano hat gesagt: // Fernando Lopez-Lezcano wrote: Why I think this is a yes. Any kernel that wants to use the realtime-lsm will have to either not build the POSIX capabilities lsm, or build it as a module. In the later case the system will be vulnerable. The realtime-lsm does not depend on the POSIX capabilities lsm but it forces you to build it as a module, I don't understand: Why does it do so? Shouldn't this be fixed in the realtime-lsm then? Actually, the bug is not in either. The fix is in security/dummy.c. Someone please correct me if I'm wrong, but it just looks like a case of a simplistic check. It doesn't look like realtime-lsm really depends on posix capabilities being compiled as a module, but on posix capabilities not being compiled in. So I'm going to try this patch (it builds, we'll see if it works fine, but I suspect it will): The actual source code is in security/Kconfig... config SECURITY_REALTIME tristate Realtime Capabilities depends on SECURITY SECURITY_CAPABILITIES!=y default n help This module selectively grants realtime privileges controlled by parameters set at load time or via files in /sys/module/realtime/parameters. If you are unsure how to answer this question, answer N. The reason for this check is that realtime-lsm does not work when the capability LSM is installed built-in (i.e. not as a module). I am not a wizard at Kconfig. Perhaps someone more skilled in this area can explain what to do. Note that capability is not needed when realtime is installed. -- joq -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] Midi over ethernet
Last week, I played with m-dist, a bootable Linux CD setup to demo IEEE P1639 (D-MIDI), which is MIDI over Ethernet - m-dist has it setup with alsa-midi. It seemed to work fine. http://www.plus24.com/m-dist/ I believe the source is available on the author's site under software: http://www.plus24.com/ieeep1639/ There seems to be a Mac OS X version too, but I haven't checked it out myself. That sounds more sophisticated than what I did, but if it's not satisfactory (e.g. if you meant internet instead of ethernet), you can check out nmidi here: http://hans.fugal.net/src/nmidi-0.1.0.tar.gz It runs over tcp/ip, uses alsa, and was intended to be an MWPP (now called rtp-midi I think) implementation, but didn't quite make it there (yet), however it works pretty well anyhow. -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
[linux-audio-dev] cli midi
Is there an app that will dump midi events in human-readable format to stdout (or a file, or gui window, whatever)? Preferably it would work on SMF as well as realtime (ALSA), and have filters to filter out undesirables (e.g. active sensing or perhaps sysex). If such a beast doesn't exist, I'll probably hack something up for myself. If I do, would there be interest in my releasing it? -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] raw pcm information
I think it would be useful to set up a wiki page or something outlining the different sound formats. Is there a lad-related wiki? /* Quoth Benno Senoner [EMAIL PROTECTED] on Thu, 19 Aug 2004 at 17:49 +0200 in [EMAIL PROTECTED] */ not big secrets here. try to look up the docs for the WAV format. or just search for big/little endian encoding 24bit packed words etc in substance there are only a few mainstream raw pcm data encodings. 8bit , in some case signed, in others unsigned (amiga IIRC). 16bit signed (2 complement) (usually little endian, aka x86 endianess, PPCs must swap da) 24bit usually signed (2 complement), little endian 32bit integer 32bit float (IEEE) cheers, Benno http://www.linuxsampler.org Garett Shulman wrote: Hello, I have been googleing around trying to find information on raw pcm data. Does anybody know of any tutorials or references on raw pcm data? I am most curious about different storage types (2s complement, etc), and how multiple channels are stored. Thanks. -Garett -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
[linux-audio-dev] MIDI API
This is along the same lines as the recent question about which API to use for sound (to which I gave a poor answer; I repent!). What are the options for doing MIDI? Is it best to use the ALSA library API, or is there something better? -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] Which audio lib?
ALSA. If you want to tie yourself to KDE and endless misery, try artsd, but I warned you. /* Quoth Doru-Catalin Togea [EMAIL PROTECTED] on Tue, 10 Aug 2004 at 11:16 +0200 in [EMAIL PROTECTED] */ Hi! I want to programme my mic and my speakers on my FC2 box. I am running KDE. Is there a library which I should look at or is the ALSA API the way to go? Thanks, Catalin -- == We are what we repeatedly do. Excellence, therefore, is not an act but a habit. == -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] Which audio lib?
Please pardon the short tone of my previous email - I thought I was replying to my local LUG where I'm known to advocate ALSA and people are known to ignore me. :-) On this list you probably deserve a more in-depth answer. I still recommend ALSA. /* Quoth Doru-Catalin Togea [EMAIL PROTECTED] on Tue, 10 Aug 2004 at 11:16 +0200 in [EMAIL PROTECTED] */ Hi! I want to programme my mic and my speakers on my FC2 box. I am running KDE. Is there a library which I should look at or is the ALSA API the way to go? Thanks, Catalin -- == We are what we repeatedly do. Excellence, therefore, is not an act but a habit. == -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] Which audio lib?
Agreed. Although jack is harder for the user to use, but well worth it in many, but not all applications. Hopefully this will continue to improve over time. /* Quoth Steve Harris [EMAIL PROTECTED] on Tue, 10 Aug 2004 at 14:29 +0100 in [EMAIL PROTECTED] */ Depending on the application you may find jack appropriate. Is easier to write code for than ALSA, in my experience. - Steve On Tue, Aug 10, 2004 at 07:23:27AM -0600, Hans Fugal wrote: Please pardon the short tone of my previous email - I thought I was replying to my local LUG where I'm known to advocate ALSA and people are known to ignore me. :-) On this list you probably deserve a more in-depth answer. I still recommend ALSA. /* Quoth Doru-Catalin Togea [EMAIL PROTECTED] on Tue, 10 Aug 2004 at 11:16 +0200 in [EMAIL PROTECTED] */ Hi! I want to programme my mic and my speakers on my FC2 box. I am running KDE. Is there a library which I should look at or is the ALSA API the way to go? Thanks, Catalin -- == We are what we repeatedly do. Excellence, therefore, is not an act but a habit. == -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
[linux-audio-dev] jack to wav?
Is it within the realm of jack to be able to output to a sound file (e.g. wav) instead of playing the sound? -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460
Re: [linux-audio-dev] Audio over Ethernet / Livewire
Plus considering that midi over jack is being implemented too you would have both midi and audio over ethernet through jack, available to any jack client without the application needing to be changed. That would be convenient, yes. But at the implementation level there is quite a bit of difference between MIDI traffic and audio traffic. MIDI is much less forgiving of errors, or much more if you know which errors to make. You can do a lot of smart things when doing MIDI over a network that you can't do with audio, a la MWPP or whatever it's called now. That said, if you've got the bandwidth and latency issues worked out for audio, MIDI should be a piece of cake and you may not need to worry about the smart things you can do with it. FWIW, I've implemented basic MIDI over TCP/IP at [1], which is loosely based on MWPP and needs some TLC, but already outperforms aseqnet. 1. http://hans.fugal.net/music/nmidi-0.1.0.tar.gz -- .O. Hans Fugal| De gustibus non disputandum est. ..O http://hans.fugal.net | Debian, vim, mutt, ruby, text, gpg OOO| WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 signature.asc Description: Digital signature
Re: [linux-audio-dev] Sharing Music
/* Quoth Mark Constable [EMAIL PROTECTED] on Tue, 9 Dec 2003 at 15:56 +1000 in [EMAIL PROTECTED] */ Yep, very intested in any linux/open music... got a URL ? Like I say, I'm still very much an amateur, but here goes: http://hans.fugal.net/music/ Notes: fuguecm - Bach's Fugue in C minor, rendered with Csound. randblues - Wrote a script to generate a random walking 'melody' that would fit a blues progression. The rest was done mostly in DP on a mac, so perhaps doesn't precisely qualify as linux music. shadow_flame - Inspired by the opening sequence of The Two Towers (and of course the passage in the book). The vocals are by festival. The music and mixing was done in an extreme hurry (class deadline, I had lost my work), made possible thanks to TerminatorX and Audacity. time_flies - Musique concrete, again done in DP. The sounds are my watch on a desk. nmidi - network midi client akin to aseqnet (but performs better). It was intended as a partial mwpp implementation and perhaps will be someday, but as it stands it isn't very faithful to mwpp. :-) -- Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 pgp0.pgp Description: PGP signature
[linux-audio-dev] Sharing Music
As in, how do I share my own? What licenses or other scheme do you all use for music that you create and would like to be widely distributed, with or without any other restrictions. What considerations do you take into account? disclaimer: I don't have any cool music to release (yet), although I have a few almost-cool works for the extremely curious... -- Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 pgp0.pgp Description: PGP signature
[linux-audio-dev] [kconder@interaccess.com: Free music lessons from Berklee.]
This from the csound list. Dr. Boulanger at Berklee has indicated that he is also working on a csound course to be posted there. -- Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 ---BeginMessage--- The Berklee College of Music is offering free music lessons! Similar to MIT's Open CourseWare (which is also very cool), one can download PDFs and MP3s on related topics free-of-charge. Here's the press release: http://www.berklee.edu/news/2003/11/berkleeshares.html Related to Csound, I know Dr. Boulanger teaches Csound at the Berklee College of Music. However, I haven't found anything on BerkleeShares about Csound. But the other information is interesting, so I thought I'd pass the link along. -- Kevin Conder, [EMAIL PROTECTED] ---End Message--- pgp0.pgp Description: PGP signature
Re: [linux-audio-dev] Just for fun - Hearnet
* Joern Nettingsmeier [Fri, 14 Nov 2003 at 11:36 +0100] :-D to further boost the uselessness of this wonderful thing, how about mapping different grains to protocol, port numbers and direction? If boredom allows, I will probably do the following: Make it extensible via a config file, so that you can specify your own grains to play according to whatever libpcap filter you want. Everyone's creativity can really flow then, and it might end up being useful. (I actually wrote this in part to help gauge the rate that we're sending network packets at work - my other attempts at timing are giving ambiguous results, but my ear won't lie to me) Make it stereo (or even more channels) so that inbound goes out one speaker and outbound out the other. Again, probably configurable in a config file along with libpcap filters. Version 0.0.2 is already out. ChangeLog at the site. -- Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 pgp0.pgp Description: PGP signature
Re: [linux-audio-dev] Sick of rebooting
* paul wisehart [Wed, 1 Oct 2003 at 07:56 -0400] I think Hans *is* using alsa. He mentions: Yes, I am. Should have been more explicit but I figured mentioning snd-pcm-oss would tip people off. :) I used to have problems similiar to this when I used OSS w/a sb-live card. But, since switching to alsa, it stopped. This card is a SB AudioPCI 128. Using driver snd-ens1370 Is it possible that devfs is causing some problems ? It may be possible, I'm not a devfs expert. Interestingly, when I try to boot without devfs things don't want to work (alsa or oss) - probably because my non-devfs dev filesystem is broken. The modules load but programs can't find what they're looking for in /dev. I'm happy with devfs anyway for the most part. (the exception being that lsof doesn't seem to tell me anything) I did some more digging and found this: Unable to handle kernel paging request at virtual address cca2c000 printing eip: cc9b4f7b *pde = 01228067 *pte = Oops: CPU:0 EIP:0010:[snd-pcm-oss:__insmod_snd-pcm-oss_S.text_L34102+32507/34292]Not tainted EFLAGS: 00210202 eax: cc9b4f7b ebx: ecx: fff9e73f edx: 04ba03f2 esi: cca28012 edi: c42a6c10 ebp: cca2bffe esp: cab8de8c ds: 0018 es: 0018 ss: 0018 Process timidity (pid: 26074, stackpage=cab8d000) Stack: cc9b c42a6b80 c42c8b00 cab8deb8 03f6 0805 cc9019e8 cc9b4da1 cc9b4ef2 cc9b4f7b c42a6bf0 0004 0004 0001 03f203f2 07d3 0805 0800 c42a6b80 c3429ec0 cc9b546c c42a6b80 Call Trace:[snd-pcm-oss:__insmod_snd-pcm-oss_S.text_L34102+20898/34292] [snd-pcm-oss:__insmod_snd-pcm-oss_O/lib/modules/2.4.20/alsa/snd-pcm-os insmod_snd-pcm-oss_S.text_L34102+32033/34292] [snd-pcm-oss:__insmod_snd-pcm-oss_S.text_L34102+32370/34292] [snd-pcm-oss:__insmod_snd-pcm-oss_S.tex [snd-pcm-oss:__insmod_snd-pcm-oss_S.text_L34102+33772/34292] [snd-pcm-oss:__insmod_snd-pcm-oss_S.text_L34102+21911/34292] [snd-pcm-oss:__insmod_ 34292] [snd-pcm-oss:__insmod_snd-pcm-oss_S.text_L34102+5339/34292] [snd-pcm-oss:__insmod_snd-pcm-oss_S.text_L34102+13331/34292] [sys_write+163/272 [system_call+51/56] Code: 8b 45 00 eb ac 0f b6 45 00 c1 e0 08 eb a3 81 fa 00 80 00 00 So it looks like a driver or OSS emulation problem of some sort. -- Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 pgp0.pgp Description: PGP signature
[linux-audio-dev] oss wrapper
esound has a wrapper of some sort that will take most oss applications and play them via esound. Is there some sort of equivalent for jack or perhaps alsa? It would be different from oss emulation in alsa in that it would be user-space and explicitly invoked. I ask for three reasons. The first might just be ignorance, but I can't figure out how to use the oss emulation for my second card - things just play through the first card. Some sort of wrapper could help direct it to wherever I want it to go. The second (if it were jack) is to do mixing. The third reason is I'm curious to see which programs are still using oss, but not curious enough to go look at the docs/source of every program. This way I'd see sound doesn't work but could still run the program with the wrapper and get sound. -- Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 pgp0.pgp Description: PGP signature
Re: [linux-audio-dev] Sick of rebooting
* Frank Neumann [Wed, 1 Oct 2003 at 17:50 +0200] Are you sure about this driver module choice? Did you look at the card and check the soundchip type? I didn't look at the card itself, but lspci -v says 00:0e.0 Multimedia audio controller: Ensoniq ES1370 [AudioPCI] (rev 01) Subsystem: Unknown device 4942:4c4c Flags: bus master, slow devsel, latency 32, IRQ 5 I/O ports at ac00 [size=64] Thanks -- Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 pgp0.pgp Description: PGP signature
[linux-audio-dev] Sick of rebooting
I'm hoping there's a simple solution to this that I've just missed somewhere along the line. Occasionally something will crash while using oss emulation and I can't use the sound card until I reboot. I've tried lsof /dev/dsp and as many other variations as I can think of and I never get anything (even when sound is playing), which I think is related to using devfs. I've also tried fuser, and good old visual grep on the output of ps and nothing is running that would use the soundcard yet I can't unload the snd-pcm-oss module. This time it was timidity (which I have promptly uninstalled since this version seems capable of nothing other than locking up my soundcard), but it has been mplayer in the past. Is there some way to restore access to the sound card short of rebooting? -- Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 pgp0.pgp Description: PGP signature
Re: [linux-audio-dev] Software Sequencer API?
The code to aseqview would also prove instructive if you go the ALSA route. * Christian Henz [Fri, 12 Sep 2003 at 03:05 +0200] quote On Thu, Sep 11, 2003 at 12:56:06PM -0700, Sean Don wrote: Hi, I'd like to program a player piano under GNU/Linux for OSS/Lite. All it would do is play MIDI files and light up a song's notes on a graphical keyboard. Unfortunately, my old SB16 sound card does not have AWE support and its Yamaha OPL3 FM synthesizer support sounds very inorganic. Hence, I'm looking for a way to use a software sequencer (like Timidity.) I tried Fluidsynth, but it causes midis to break up on my computer. Here are my questions: 1. Is is possible to have a previously written player for OSS (such as SDL Mixer or Timidity) play a stream in the background, and I somehow read into what notes are being played at every moment so I can light up the correct piano key? Unfortunately, Timidity is stand-alone; that is, is has no developmental libraries. Hmm, I don't know about OSS, but you really should consider using ALSA! A simple solution would be to use timidity or fluidsynth as standalone apps and write a simple ALSA-sequencer client(check out http://www.suse.de/~mana/alsa090_howto.html) that just reads incomming events and draws the piano keys accordingly. Then you (a)connect your sequencer's MIDI-out to timidity/fluidsynth AND your app. cheers, Christian Henz /quote -- Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 pgp0.pgp Description: PGP signature
[linux-audio-dev] csound Debian package
The csound Debian package is now available in unstable. -- Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 pgp0.pgp Description: PGP signature
[linux-audio-dev] Csound-like LADSPA 'music compiler'?
--7JfCtLOvnd9MIVvH Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Is there a Csound-esque 'music compiler' that uses LADSPA plugins? It need not read Csound files, just have a similar approach: describe the music and sounds in text files. --=20 Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 --7JfCtLOvnd9MIVvH Content-Type: application/pgp-signature Content-Disposition: inline -BEGIN PGP SIGNATURE- Version: GnuPG v1.2.2 (GNU/Linux) iD8DBQE/Kn7v/JjozeCq1GARAmWAAKDjBWQDPeN1PaCuwVboXIBoRCxQUACghSr3 gPI+ZxBMg3RdVVYxbeDFUkg= =16zi -END PGP SIGNATURE- --7JfCtLOvnd9MIVvH--
Re: [linux-audio-dev] Csound-like LADSPA 'music compiler'?
There also are Common Music (Lisp) and Sfront. I don't know if they support LADSPA. But doesn't Csound have a LADSPA opcode? Not the canonical version. I don't know about other versions... -- Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 pgp0.pgp Description: PGP signature
[linux-audio-dev] ANN: Csound Debian package
--U+BazGySraz5kW0T Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hello Debian users and interested bystanders, I have completed the Debian csound package. Once my sponsor has looked it over, approved of it, and uploaded it, it will be in unstable. In the meantime you can find it at=20 deb http://hans.fugal.net/debian sid/main deb-src http://hans.fugal.net/debian sid/main I use csound, but I wouldn't consider myself a power user; in particular I haven't used any of the utilities (e.g. pvanal, hetro, etc.). If you do use them, please give the manpages a look-over and let me know if you see anything wrong. --=20 Hans Fugal | De gustibus non disputandum est. http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach - GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460 --U+BazGySraz5kW0T Content-Type: application/pgp-signature Content-Disposition: inline -BEGIN PGP SIGNATURE- Version: GnuPG v1.2.2 (GNU/Linux) iD8DBQE/JZ4t/JjozeCq1GARAgsqAJ9yobwpWpih4Pj2voffIuYfLYS0kgCg6N/W G8S6qCatdyQda8jPGfuA7jI= =1NTE -END PGP SIGNATURE- --U+BazGySraz5kW0T--