Bug#635290: puredata-gui needs tcllib for base64

2011-07-25 Thread Robin Gareus
On 07/25/2011 02:03 PM, IOhannes m zmoelnig wrote:
 [...]
 
 the message itself - I can not read much into it. Maybe it is PiDiP
 which is loaded just before it. But PiDiP works just fine.
 
 indeed this is most likely the culprit.
 pidip requires base64 for the pdp_colorgrid object, and issues a
 package require base64.
 i guess that you haven't tested the pdp_colorgrid object when confirming
 the that PiDiP works just fine.

Wow, you're quick: It does indeed. - no no use for pdp_colorgrid here so
far.

I take it, you and/or Paul still maintaing pd-pdp, so I don't need to
file a new bugreport against it, right?

 please confirm that removing pidip from the loaded libraries indeed
 fixes the problem.

`dpkg -r pd-pdp` solves the problem. `apt-get install pd-pdp` makes it
re-appear.

 ghmasdr
Grusse herzlichst mit ausserordenlich saftigen dankes r?

robin



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#635290: puredata-gui needs tcllib for base64

2011-07-25 Thread Robin Gareus
On 07/25/2011 03:12 PM, IOhannes m zmoelnig wrote:
 On 2011-07-25 14:59, IOhannes m zmoelnig wrote:
 `dpkg -r pd-pdp` solves the problem. `apt-get install pd-pdp` makes it
 re-appear.
 
 it seems like you have PiDiP installed somewhere on your disk.
 afaik, PiDiP is not in debian.

 uninstalling pd-pdp will also disable pidip, since pidip depends on pdp.

Oh right. that explains it then.

 since the bug is triggered by an external not in debian, i think we
 cannot do much about it.
 can i therefore close this bug as illegal?

OK.

What about the gem/libavcodec issue. Shall I file a new bug-report for
that for package 'gem'?

http://packages.debian.org/sid/gem - it does not depend on libavcodec
but Pd log says:

  /usr/lib/pd/extra/Gem/Gem.pd_linux: libavcodec.so.51: cannot open
  shared object file: No such file or directory

# ldd /usr/lib/pd/extra/Gem/Gem.pd_linux | grep found
libavcodec.so.51 = not found

# apt-file search /usr/lib/pd/extra/Gem/Gem.pd_linux
gem: /usr/lib/pd/extra/Gem/Gem.pd_linux


 mgasdr
 IOhannes



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#635366: gem: missing dependency on ffmpeg/libavcodec

2011-07-25 Thread Robin Gareus
Package: gem
Version: 1:0.92.3-2+b1
Severity: grave
Justification: renders package unusable


gem does not load: the Pd message window reports:
  /usr/lib/pd/extra/Gem/Gem.pd_linux: libavcodec.so.51: cannot open
  shared object file: No such file or directory

# ldd /usr/lib/pd/extra/Gem/Gem.pd_linux | grep found
libavcodec.so.51 = not found

# apt-file search /usr/lib/pd/extra/Gem/Gem.pd_linux
gem: /usr/lib/pd/extra/Gem/Gem.pd_linux

debian currently provides libavcodec52 and libavcodec53.

http://packages.debian.org/sid/gem - gem does not depend on libavcodec
though shlibdebs should find the dependency ?!


-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (700, 'testing'), (500, 'unstable'), (300, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.39 (SMP w/2 CPU cores; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages gem depends on:
ii  libavifile-0.7 1:0.7.48~20090503.ds-2+b2 shared libraries for AVI read/writ
ii  libc6  2.13-7Embedded GNU C Library: Shared lib
ii  libftgl2   2.1.3~rc5-3   library to render text in OpenGL u
ii  libgavl1   1.2.0-3   low level audio and video library 
ii  libgcc11:4.6.1-4 GCC support library
ii  libgl1-mesa-gl 7.10.3-3  free implementation of the OpenGL 
ii  libglu1-mesa [ 7.10.3-3  The OpenGL utility library (GLU)
ii  libgmerlin-avd 1.1.0~dfsg-2  a general multimedia decoding libr
ii  libmagick++4   8:6.6.9.7-5   object-oriented C++ interface to I
ii  libmagickcore4 8:6.6.9.7-5   low-level image manipulation libra
ii  libmpeg3-1 1.5.4-5   MPEG streams decoding library
ii  libquicktime2  3:1.2.2-0.5   library for reading and writing Qu
ii  libstdc++6 4.6.1-4   GNU Standard C++ Library v3
ii  libv4l-0   0.8.4-3   Collection of video4linux support 
ii  libx11-6   2:1.4.3-2 X11 client-side library
ii  libxext6   2:1.3.0-3 X11 miscellaneous extension librar
ii  libxxf86vm11:1.1.1-2 X11 XFree86 video mode extension l
ii  puredata [pd]  0.43.0-4  realtime computer music and graphi
ii  puredata-core  0.43.0-4  realtime computer music and graphi
ii  zlib1g 1:1.2.3.4.dfsg-3  compression library - runtime

gem recommends no packages.

Versions of packages gem suggests:
ii  pd-zexy   2.2.3-2General Purpose addon library for 
ii  ttf-dejavu2.33-1 Metapackage to pull in ttf-dejavu-

-- no debconf information



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#635366: gem: missing dependency on ffmpeg/libavcodec

2011-07-25 Thread Robin Gareus
Package: gem
Version: 1:0.92.3-2+b1
Severity: grave
Justification: renders package unusable


gem does not load: the Pd message window reports:
  /usr/lib/pd/extra/Gem/Gem.pd_linux: libavcodec.so.51: cannot open
  shared object file: No such file or directory

# ldd /usr/lib/pd/extra/Gem/Gem.pd_linux | grep found
libavcodec.so.51 = not found

# apt-file search /usr/lib/pd/extra/Gem/Gem.pd_linux
gem: /usr/lib/pd/extra/Gem/Gem.pd_linux

debian currently provides libavcodec52 and libavcodec53.

http://packages.debian.org/sid/gem - gem does not depend on libavcodec
though shlibdebs should find the dependency ?!


-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (700, 'testing'), (500, 'unstable'), (300, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.39 (SMP w/2 CPU cores; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages gem depends on:
ii  libavifile-0.7 1:0.7.48~20090503.ds-2+b2 shared libraries for AVI read/writ
ii  libc6  2.13-7Embedded GNU C Library: Shared lib
ii  libftgl2   2.1.3~rc5-3   library to render text in OpenGL u
ii  libgavl1   1.2.0-3   low level audio and video library 
ii  libgcc11:4.6.1-4 GCC support library
ii  libgl1-mesa-gl 7.10.3-3  free implementation of the OpenGL 
ii  libglu1-mesa [ 7.10.3-3  The OpenGL utility library (GLU)
ii  libgmerlin-avd 1.1.0~dfsg-2  a general multimedia decoding libr
ii  libmagick++4   8:6.6.9.7-5   object-oriented C++ interface to I
ii  libmagickcore4 8:6.6.9.7-5   low-level image manipulation libra
ii  libmpeg3-1 1.5.4-5   MPEG streams decoding library
ii  libquicktime2  3:1.2.2-0.5   library for reading and writing Qu
ii  libstdc++6 4.6.1-4   GNU Standard C++ Library v3
ii  libv4l-0   0.8.4-3   Collection of video4linux support 
ii  libx11-6   2:1.4.3-2 X11 client-side library
ii  libxext6   2:1.3.0-3 X11 miscellaneous extension librar
ii  libxxf86vm11:1.1.1-2 X11 XFree86 video mode extension l
ii  puredata [pd]  0.43.0-4  realtime computer music and graphi
ii  puredata-core  0.43.0-4  realtime computer music and graphi
ii  zlib1g 1:1.2.3.4.dfsg-3  compression library - runtime

gem recommends no packages.

Versions of packages gem suggests:
ii  pd-zexy   2.2.3-2General Purpose addon library for 
ii  ttf-dejavu2.33-1 Metapackage to pull in ttf-dejavu-

-- no debconf information



-- 
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#635290: puredata-gui needs tcllib for base64

2011-07-24 Thread Robin Gareus
Package: puredata
Version: 0.43.0-4
Severity: normal


Everytime I opened Pd I got an error message that base64 missing. 
Pd worked fine nevertheless except for the fact that
it stopped after the error and did not load patches
if they're specified at the commandline (e.g. `pd test.pd`).
I need to use the menu File-Open.

To resolve the issue, I just installed 'tcllib' which provides the tcl
implementation of base64. 

-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (700, 'testing'), (500, 'unstable'), (300, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.39 (SMP w/2 CPU cores; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages puredata depends on:
ii  puredata-core 0.43.0-4   realtime computer music and graphi
ii  puredata-dev  0.43.0-4   realtime computer music and graphi
ii  puredata-doc  0.43.0-4   realtime computer music and graphi
ii  puredata-extra0.43.0-4   realtime computer music and graphi
ii  puredata-gui  0.43.0-4   realtime computer music and graphi
ii  puredata-utils0.43.0-4   realtime computer music and graphi

Versions of packages puredata recommends:
ii  gem1:0.92.3-2+b1 Graphics Environment for Multimedi

Versions of packages puredata suggests:
ii  pd-aubio   0.3.2-4.2 aubio external for PureData
ii  pd-csound  1:5.13.0~dfsg-3.1 Csound external for PureData
ii  pd-pdp 1:0.12.5-1Graphics system for Pd
ii  pd-zexy2.2.3-2   General Purpose addon library for 

-- no debconf information



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: [Lguest] [PATCH] Various fixups from first bug reports

2011-07-23 Thread Robin Gareus
On 07/23/2011 05:17 AM, hermann wrote:
 Am Freitag, den 22.07.2011, 21:20 +0200 schrieb Uwe Kleine-König:
 I don't understand that and didn't try to reproduce. 
 hermann, maybe you can follow up with your failing .config and try to
 reproduce on v3.0 (without rt)?

 Best regards
 Uwe 
 
 well, it also didn't build from the 3.0 mainline with that config. After
 modules build stage 2, it comes to :
 . . . . .
 IHEXfirmware/yam/9600.bin
 make[1]: Leaving directory `/home/brummer/Projekte/Kernel/linux-3.0'
 /usr/bin/makeARCH=i386 \
-C Documentation/lguest
 make: *** Documentation/lguest: Datei oder Verzeichnis nicht gefunden.
 Schluss.
 make: *** [debian/stamp/build/kernel] Fehler 2
 
Hello Herman,

Are you using make-kpkg?  You need to change the path to lguest
in /usr/share/kernel-package/ruleset/targets/doc.mk and two or three
other files there as Rusty outlined.

HTH,
robin
___
Lguest mailing list
Lguest@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/lguest


Re: [Lguest] [PATCH] Various fixups from first bug reports

2011-07-23 Thread Robin Gareus
On 07/23/2011 04:19 PM, hermann wrote:
 Am Samstag, den 23.07.2011, 11:57 +0200 schrieb Robin Gareus:
 Hello Herman,

 Are you using make-kpkg?  You need to change the path to lguest
 in /usr/share/kernel-package/ruleset/targets/doc.mk and two or three
 other files there as Rusty outlined.

 HTH,
 robin 
 
 Hi Robin
 
 Yes, using make-kpkg. I changed line 61 from 
 [..]
 but it didn't help, the result is still the same.
 /usr/bin/makeARCH=i386 \
-C Documentation/lguest

That's the one in /usr/share/kernel-package/ruleset/targets/image.mk

I don't remember all locations, there were around a dozen, also
including some $CONFIG_* checks. It was pretty straight forward and -
alas - I did not keep a diff.

`grep -rli lguest /usr/share/kernel-package/` should get you going.

If you're really stuck I can `apt-get --reinstall` and create a diff.
Let me know. If it is Debian, be aware that there are also various other
scripts in need of patching (e.g. /etc/init.d/udev supported_kernel()
does not match the 3.X series, yet),..


 Schluss.
ende, aus :)

robin
___
Lguest mailing list
Lguest@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/lguest


Re: [LAD] excellent overview article on realtime audio programming

2011-07-22 Thread Robin Gareus
On 07/22/2011 05:24 AM, Ronald Stewart wrote:
 the state of the war is were dropping bombs today. Great! Thanks

There's a war going on? Where? Why?

Cheers!
robin

PS. of course you're right: The article - although a nice read - barely
scratches the surface. But it's a good collection of information that is
otherwise scattered over the interwebs. It's a good introduction and it
includes links to tech documentation for PPL who want to dig deeper.
Besides, you can not say it often enough Real-time waits for nothing
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] [LAU] from 4 to 400 Hz

2011-07-18 Thread Robin Gareus
On 07/19/2011 02:45 AM, pshir...@boosthardware.com wrote:
 On 07/18/2011 04:02 AM, pshir...@boosthardware.com wrote:
 On 07/17/2011 10:41 AM, Rustom Mody wrote:
 On Sun, Jul 17, 2011 at 1:21 PM, Philipp Überbacher
 hollun...@lavabit.comwrote:

 Excerpts from Rustom Mody's message of 2011-07-17 05:33:44 +0200:
 I am preparing to give a talk on the wider ramifications of music.
 One of the things I wish to demonstrate is that things that look
 different
 are merely analogs but at different scales.

 eg if something vibrates at 400Hz we hear a sound of A-flat. If it
 'vibrates' at 4 Hz we hear a beat.
 In the same analogy a 2 vs 3 poly-rhythm (should?) change to a do-so
 chord.
 And so on.

 I suggest you do some experiments before you give a talk. At 4 Hz you
 won't be able to hear anything, you won't even be able to reproduce a
 4 Hz sound with common speakers.


 You took me quite literally,  [I did put the vibrate into quotes :-) ]
 Let me spell out the experiment in more detail:
 Say I have a rhythm in 4/4 time -- 4 even quarter notes, bar repeating
 every
 second played by say a click. [What kind of click I am not very sure;
 sharp
 with few harmonics would be best I expect]

 Exactly. Just take a short audio-sample (aka grain) and trigger it
 repeatedly. Increase the trigger freq. (aka grain-speed) from 4 Hz -
 400Hz.

 Search the net for granular-synthesis. Your use-case is not the typical
 grain-synth application, but the principle is the same.

 Now if there were some (realtime) way of sliding the tempo from 1 sec
 to
 millisec I expect the separate clicks would vanish into a hum at some
 stage.

 This (and other such experiments) is what I want to demo.
 Ive started looking at chuck.
 How does it compare with puredata?


 It's a bit of an apples vs oranges question.

 the main difference: Chuck you program in text, pure-data you
 graphically connect objects (if you know Max/MSP: pure-data is
 similar).

 AFAIK, Chuck does not offer GUI elements - you'll need to implement the
 slider via OSC or use a text slider.

 Is there some kind of software where I can make a 4 Hz beat and pull
 a
 slider or a freq text box entry until it sound like a A-flat note?

 puredata springs to mind, it's easy to use and has everything you
 need.

 Indeed. Though chuck, supercollider, csound,... could all do the trick.

 If you know neither of those. Pure-data is probably the easiest to get
 started with.

 http://www.timvets.net/video/grains.php will do what you want with Pd.



 I'm not sure that does what he wants. He asked for a tool that takes an
 existing signal/tone and then down tunes it. What you are suggesting
 creates an emulation of that process but generates a completely new
 signal/tone.

 It would achieve a similar sound but is functionally quite a different
 process.

 You are right or course. It's not modeling the desired effect correctly;
 Yet it's close enough and much more robust and convicing for a Demo.

 Actually http://www.sonicvisualiser.org/ may be the tool of choice.
 Here's a video where it is used to slow down some Bach so that you can
 hear the beating/pulsing introduce by equal-temperament tuning:
 http://www.youtube.com/user/mcldx#p/a/u/0/uOOhvw89jc4

 
 
 That's an interesting feature of that tool. I was not aware of that
 functionality.  It appears to work on the time domain not the
 amplitude/phase of the signal. I assume as it uses a similar code base to
 librubber band to achieve that functionality.
 
 IIRC,  It is still not quite doing what the original request appeared to
 be asking for.  i.e. down tuning an existing signal. ( He didn't require
 time adjustment )
 
 Would it just be a case for a pitch shifter with a automation fade curve
 sone in Ardour/qtractor, etc...?
 

The SuperCollider one-liner that Bernardo posted is actually brilliant.

robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] LAC proceedings

2011-07-18 Thread Robin Gareus
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 07/19/2011 03:18 AM, pshir...@boosthardware.com wrote:
 Hi,
 
 Are the proceedings from the LAC printed in any journals? I know Dave did
 a report this year but I'm not sure if that counts as published
 proceedings when it comes to making things official.
 

Had you been attending the LAC2011 you could have bought a printed copy
of the proceedings there.

It comes with a nice cover depicting a singing Penguin with Irish Harp,
the NUIM logo, and cost 15 euros. The papers inside have been
peer-reviewed and it certainly is an official release from the University.

ciao,
robin





-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)

iEYEARECAAYFAk4k3qcACgkQeVUk8U+VK0LzuACaA2jMfGl22urk8tJep8XIFUUh
VT8AoKKjJF0JvevfJ3pUnUGVnq8GwLcQ
=dJt7
-END PGP SIGNATURE-
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


packaging supercollider for debian

2011-07-14 Thread Robin Gareus
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hi all,

I was in need for a supercollider [1] debian package and since I could
not find one..
..I took Dan 'MCLD' Stowell's Ubuntu package [2], more specifically the
Natty-2 version [3] and helped myself.

After two small patches (a fix for wiimote + gcc4.6 [4], and override to
shlibdeps [5]) it compiles, installs and works on debian/wheezy+sid.

All the hard work is done already: debianization, separate -emacs -gedit
and -vim plugins, debian-readme's and whatnot. I don't know if Dan
(CCed) is the sole author of the packaging (it looks like Free Ekanayaka
and Paul Brossier had their fingers in there years ago) but it's a job
well done and pretty much lintian clean though there are some scattered
warnings.

It's be great to get supercollider into debian [again]!
Is anyone here interested and qualified to push this forward?!

Cheers!
robin


[1] http://supercollider.sourceforge.net/
[2] https://launchpad.net/~supercollider/+archive/ppa
[3]
https://launchpad.net/~supercollider/+archive/ppa/+files/supercollider_3.4.3-0ubuntu1%7Enatty2.tar.gz
[4] http://rg42.org/_media/wiki/sc_wiimote_gcc46.diff
[5] http://rg42.org/_media/wiki/sc_debian_shlibs.diff
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (GNU/Linux)

iEYEARECAAYFAk4e5bAACgkQeVUk8U+VK0JJhwCfV3D/jrpnufe6IuzBf+6YnlYi
SDcAnAvfXduUvtYNBJjLQpKmAow6lWrv
=gCtt
-END PGP SIGNATURE-

___
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-multimedia-maintainers


Re: packaging supercollider for debian

2011-07-14 Thread Robin Gareus
Hi Felipe,

On 07/14/2011 03:30 PM, Felipe Sateler wrote:
 Hi,
 (CCing you because I don't know if you are subscribed)

I am subscribed though mostly lurking.

 On Thu, Jul 14, 2011 at 08:48, Robin Gareus ro...@gareus.org wrote:
[..]
 
 I've been a bit MIA the past few weeks/months, but we already have a
 package in the works. Please check it out of our git repository[1] and
 check if any of your fixes still apply. We would be very happy to have
 you join us in maintaining this package!
 
 [1] 
 http://anonscm.debian.org/gitweb/?p=pkg-multimedia/supercollider.git;a=summary
 

Thanks for this link. Of course I searched around but this one was
hidden from view.

To build the debian-git-checkout both patches [1,2] are still needed
here. Without the wiimote fix it I get:

  Source/lang/LangPrimSource/SC_Wii.cpp: In member function
'cwiid_wiimote_t* SC_WIIManager::discover()':
  Source/lang/LangPrimSource/SC_Wii.cpp:364:12: error: taking address
of temporary [-fpermissive]
  scons: *** [Source/lang/LangPrimSource/SC_Wii.os] Error 1

and without overriding the shlibdeps:

  dh_shlibdeps -psupercollider
  dpkg-shlibdeps: error: no dependency information found for /usr/lib
/libstdc++.so.6 (used by debian/supercollider/usr/bin/sclang).
  dh_shlibdeps: dpkg-shlibdeps -Tdebian/supercollider.substvars
debian/supercollider/usr/bin/sclang returned exit code 2
  make: *** [binary-predeb-IMPL/supercollider] Error 2
  dpkg-buildpackage: error: fakeroot debian/rules binary gave error
exit status 2

The latter may be specific to my system.. overriding it was a pragmatic
solution to actually make some music instead of playing with dpkg.
I suppose you guys know how to properly fix this in a jiffy. I'll watch
and learn.

As for joining the maintainer-team: Alas, I have to refuse. I am already
tied up in too many projects.

ciao,
robin


[1] http://rg42.org/_media/wiki/sc_wiimote_gcc46.diff
[2] http://rg42.org/_media/wiki/sc_debian_shlibs.diff

___
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-multimedia-maintainers


Re: [LAD] a *simple* ring buffer, comments pls?

2011-07-11 Thread Robin Gareus
[oops forgot to CC the list at first]

On 07/11/2011 11:15 PM, Tim E. Real wrote:
 On July 11, 2011 04:50:06 pm Chris Cannam wrote:
 I know taking locks in a RT process is deeply frowned upon
 
 Likely been answered before, but good time for me to ask:
 What is the reason it is not recommended?
 Is it simply because of a long time involved in acquiring the lock, or is it 
  because the lock might block some other Jack thread from running?

The latter. The real-time thread would block until the other thread
(that currently holding the lock) releases the lock.

How long it takes until the other thread releases the lock is undefined
(context switches, process priority dependent, etc) and thus the concept
is not suitable for real-time.

 The same reason why other things like 'malloc' or 'new' are not 
  recommended either?

Yes. malloc, printf, etc can not guarantee to return in time.

Allocation of new memory may involve various system-calls, flush
cache-lines, result in swapping, context-switches, etc... On most
systems the worst-case execution time it takes to allocate new memory
can not be guaranteed to be below a certain limit.

There are various attempts to provide constant time - O(1) - memory
allocation and de-allocation code for real-time systems. None of them
have reached widespread adoption. Often the drawbacks (e.g. decreased
available memory due to fragmentation) outweigh the benefits, and
pre-allocation on application level is easier to implement.

HTH,
robin


 Thanks. Tim.
 ___
 Linux-audio-dev mailing list
 Linux-audio-dev@lists.linuxaudio.org
 http://lists.linuxaudio.org/listinfo/linux-audio-dev
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] a *simple* ring buffer, comments pls?

2011-07-11 Thread Robin Gareus
On 07/12/2011 12:12 AM, Arnold Krille wrote:
 On Monday 11 July 2011 23:15:26 Tim E. Real wrote:
 On July 11, 2011 04:50:06 pm Chris Cannam wrote:
 I know taking locks in a RT process is deeply frowned upon

 Likely been answered before, but good time for me to ask:
 What is the reason it is not recommended?
 Is it simply because of a long time involved in acquiring the lock, or is
 it because the lock might block some other Jack thread from running?
 The same reason why other things like 'malloc' or 'new' are not
  recommended either?
 
 Real-time means as fast as possible.

No, real-time means - _guaranteed_ to be done before time X.
AKA. guaranteed response time.

real-time (tasks|kernels) are often slower on average than non-RT
(tasks|kernels).
As for the linux-kernel: This is due to the overhead introduced by
real-time scheduling (take care of process priority)

While non-real-time (tasks|kernels) may be faster on average; they may
also occasionally take more time than they should. For RT-tasks this is
not acceptable.

e.g.

non-RT task 5 runs: 10 sec, 11 sec, 9 sec,*20sec*,  9 sec (avg 11.8)
RT task 5 runs: 12 sec, 12 sec, 11sec, 12sec,  13 sec (avg 12.0)

I hope that explains it well for you.
Cheers!
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] [ANN] jack-file 1.0

2011-07-05 Thread Robin Gareus
Hi Dan,

On Jul 5, 2011, at 12:24 PM, Dan Muresan wrote:

 Hi, and thanks for checking out my project.
 
 1) make fails when it can't find help2man. it then complains (twice)
 file2jack isn't found either (an ls after the fact shows it is):

I've stumbled over this one, too.. I did not know help2man. very handy tool!

 Well, help2man is listed as a build dependency, and I don't think it's
 proper style to verify dependencies in the makefile. In ./configure,
 yes -- but I'm not using one.
 
 2) floating point exception when command issued without options:
 
 That, indeed, is not nice. It happened because I left the arg parsing
 routine open till the last moment. Fixed in git.
 
 To tell the whole story, I was hoping eventually to make both
 file2jack and jacktransportloop infrastructure-apps that could be
 controlled via stdin. So file2jack could start with nothing, and
 accept commands to add/remove files to the transport timeline.

nice!  1+

I suppose one could do that already with ecasound but I never
manage to remember the ecasound syntax to do that. 
I hope file2jack will keep it simple. 

Are you planning to add other decoder backends? If file2jack could play
sound from .avi, .mov and .mp3s, etc along to jack-transport, 
I could finally retire the kludgy jplay2 http://rg42.org/oss/jplay2/ player.

jacktransportloop is a very nifty tool; but it's not very accurate:
Calling jack_transport_locate() will make jackd go back to the Starting state:
http://jackaudio.org/files/docs/html/transport-design.html
Just launch some other jack-transport apps (e.g. ardour with a few tracks)
and you'll notice a short hiccup.

One alternative would be to just wrap the timecode internally in file2jack
(fold back, modulo) and keep going.. what do you think?

 Plus there would be a tkJackTransport app that actually scrolls the
 timeline (unlike gjacktransport, which is unhelpful when the transport
 overshoots the display limit) and has a loop checkbox and two time
 entries. I couldn't fit this in the first release. If anybody wants to
 help...

You can tell gjacktransport the start/end position of its timeline on startup:
   gjacktransport 10 100.2 # from 10 seconds - 100.2 seconds
and one can also write a custom .rc file which can include N99 predefined 
ranges 
and load it with  gjacktransport -l file on startup e.g.
http://gjacktransport.git.sourceforge.net/git/gitweb.cgi?p=gjacktransport/gjacktransport;a=blob;f=src/gjacktransportrc

It would not be too hard to add an OSC interface so that one can update those 
from an external app. But depending on your goals (loop checkbox, paging, maybe 
even display audio-chunk position, etc) you may indeed want a custom 
application.

 But otherwise -- did it work for you when you passed proper args

yes.

An *option* to specify JACK ports to auto-connect would be nice.
and I'd like to file a feature request for libSRC integration instead of 
calling 'sox'.

Cheers!
robin



___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] [ANN] jack-file 1.0

2011-07-05 Thread Robin Gareus
On Jul 5, 2011, at 9:50 PM, Dan Muresan wrote:

 jacktransportloop is a very nifty tool; but it's not very accurate:
 Calling jack_transport_locate() will make jackd go back to the Starting 
 state:
 http://jackaudio.org/files/docs/html/transport-design.html
 One alternative would be to just wrap the timecode internally in file2jack
 (fold back, modulo) and keep going.. what do you think?
 
 Before I answer anything else, have you noticed the comments to that
 order in README.txt (and in the announcement)?

only in part.. it's a bit sparse on that matter and I must have overlooked 
the warning in there.

 file2jack does exactly
 this (it computes what to send at every time point, and it can behave
 like a periodic function).

great. That was not obvious to me at first; but I understood it just
after sending the previous email from `file2jack --help`  LOOP option.

 It does not move the transport at all.
 
 -- Dan

Thanks for shedding some more light on this matter.
keep up the good work.

ciao,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] MeeGo for better handheld/tablet multimedia? (was Re: Android audio plugins)

2011-07-02 Thread Robin Gareus

On Jul 2, 2011, at 10:46 PM, Niels Mayer wrote:

 Given all the needed Linux dependencies, and the difficulties of
 getting decent audio performance on Android, what about not using
 Android and using good ol' Linux instead?
 
 Specifically, MeeGo on the  Nokia N9 (
 https://flors.wordpress.com/2011/06/20/nokia-n9-state-of-the-art-of-mobile-linux-and-qt/
 ). I'm sure that it will be easier to create handheld multimedia
 applications on an in-production and widely-distributed, supported
 product that supports the full stack of libs and development tools
 already in use by the LAD community
 
 ..
 
 Fortunately,  a bunch of interesting multimedia projects will be
 getting a Nokia N950 to develop applications for the upcoming Nokia N9
 ( see also 
 http://shootspeak.com/2011/06/24/nokia-n9-extra-facts-tidbits-updates/
 ).
 
 The following are excerpted from
 http://wiki.meego.com/Community_Office/Community_device_program/Nokia#Accepted
 as of July 2 2011:
 
 -- Porting Maesynth and Maelophone from N900 Python to QML and C++.
 Stress testing the new Qt Game Enabler to see if we finally have low
 latency audio support in Qt. Will also look to see if we can get midi
 sample support via Wild Midi or equivalent.
 
 -- Porting FunkeySynth, a MeeGo Tablet synthesizer to Harmattan
 http://sandst1.wordpress.com/
 
 -- Develop an audio recording application with geo-location support,
 plus other applications to improve personal productivity utilising the
 Harmattan notification/event view.
 
 -- Develop FM RDS applications with focus in the new standards from
 RadioDNS like the RadioVIS (partly based in the already existent the
 N900-fmvis http://code.google.com/p/n900-fmvis/). I'm a member of a
 university radio station (Radio Muda FM, 88.5MHz) and my plan is to
 develop real life radio station applications.

You may be interested in airtime
http://www.sourcefabric.org/en/products/airtime_overview/


 I'll also rewrite an application I did for audio streaming, darknow (a
 gui for darkice, http://darksnow.radiolivre.org) which is an icecast2
 client, and also write an audio/video icecast2 client (based in a
 software I did called theorur, http://theorur.sarava.org), all using
 QT.

Theorur is a GUI for Ogg/Theora streaming, written using gtk2, under GLPv2, by 
Rafael Diniz.

http://wiki.theartcollider.org/tools/qiph is a thin QT frontend 
to ffmpeg2theora  oggfwd - source as well as binaries for OSX, win32 and 
GNU/Linux
are avail for download.


 -- Porting XBMC + MeeGo TV stuff + doing audio continuums using pulseaudio.
 
 -- Creating a Libre.fm radio client and porting Jokosher to small
 screen devices.
 
 -- Meex, a portable DJing application http://jenkins.vitaminj.co.uk/job/meex/
 
 -- Porting Amarok to tablets and handsets running MeeGo/Harmattan.
 
 -- Developing an audio player to access to more than 47 000 webradios
 referenced on AOL shoutcast (by name, genre, current track)
 
 -- Panucci - Resuming audiobook and podcast player
 
 -- http://mediadownloader.cz.cc/?page_id=2
 
 -- LinuxMCE is a next generation smart home platform encompassing
 media, home automation, telecom, and security features.
 http://www.linuxmce.org/
 
 -- Porting Flumotion an open source streaming solution to Harmattan
 taking advantage of the hardware encoding and the camera
 
 -- magnus-plus photo: an application that combines a camera-based
 magnifier with more advanced image processing techniques
 
 -- Photographer's application suite (SnapGo, currently) to include
 feature like a light meter and GPS track recording.
 
 -- And last, but not least, I'm Looking forward to getting mine soon.
 :-) [For: http://wiki.meego.com/tubelet-and-cutetube-port and
 http://code.google.com/p/ytd-meego/wiki/CitizenJournalismWithYoutubeDirectForMeego
 ]
 

sounds like you'll be busy for a while :)
have fun,
robin

 Niels
 http://nielsmayer.com
 
 PS: As long as floating-point limited CPU's (ARM) are the norm among
 mobile processors, there may be a final calling for really complicated
 audio synthesis to be done entirely with integer arithmetic. Which may
 necessitate a different and more monolithic architecture -- one where
 everything is done/controled inby the application itself, as opposed
 to using jack. Given the limited screen real estate available, how
 much can you expect to successfully control and mix simultaneously
 anyways?
 
 PPS: The successful apps figure out dedicated gestural/haptic/vocal
 interfaces to control all the knobs-and-dials underneath, e.g..
 http://smule.com/ 's http://ocarina.smule.com/ (see
 http://www.youtube.com/watch?v=uHtCAAj8jFI ).
 
 PPPS: speaking of having a complete Linux stack , what about WebOS
 and the HP Touchpad? http://www.wired.com/reviews/2011/06/hp-touchpad/

tl;dr


 ___
 Linux-audio-dev mailing list
 Linux-audio-dev@lists.linuxaudio.org
 http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [PD] OT: getting electrical signals from muscle contraction

2011-06-30 Thread Robin Gareus
On 06/30/2011 02:05 PM, ronni montoya wrote:
 Hello, is there any specific sensor that can let me get the electrical
 signals from muscle contraction?
 I need to control a pd patch with my muscle contractions, Do anybody
 have tried something like this?

Marco Donnarumma has presented the Xth Sense at this year's LAC. He's
using microphones to pick up muscle contractions:

http://lac.linuxaudio.org/2011/?page=programpdb_filterauthor=21

ciao,
robin

___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [LAD] wiki page: dead projects

2011-06-29 Thread Robin Gareus
On 06/29/2011 10:25 AM, Renato wrote:
 Hello, I created this wiki page
 
 http://wiki.linuxaudio.org/apps/all/dead_projects
 
 which stems from a thread I had started about a year ago here on LAD, asking 
 for people to tell what software they found very valuable
 but no longer maintained. 
 
 I have no prior experience with the wiki so I probably have made some
 mistakes, first of all for example I'm not sure if the page is placed
 in the right place. Would someone with more experience kindly point out
 or even better correct these mistakes?

I've started doing that. But I'm short on time these days. I May not get
around to attend to this before the week after next.

The generic way to do this it to simply add the tag unmaintained to
each project, then they'll automatically end up at

  http://wiki.linuxaudio.org/apps/categories/unmaintained

Just add {{OTHER TAGS unmaintained}} to the page of the app e.g.
http://wiki.linuxaudio.org/apps/all/rezound

 Also, maybe a distinction should be made: for example, while jack-rack
 AFAIK doesn't have a dev periodically maintaining it, I think no one
 would call it dead, since it is quite usable and used;

That's why we call it unmaintained :)

 I'm pretty
 sure that if in the future it wouldn't compile anymore due for example
 to some gtk libraries not backwards compatible, someone would pretty
 fast come up with a patch. So, does it belong to the list? Or should we
 just change the name to abandoned projects, and thus even examples
 like jack-rack would fit in?

For non-generic info, create a wiki page.  f.i.
   http://wiki.linuxaudio.org/wiki/projects_that_need_loving
link to the app in question (e.g. [[:apps:all:rezound]]) - and add
detailed info there.

The :apps:all:* name-space at http://wiki.linuxaudio.org/apps/all/*
should only contain applications and no custom-pages.

 As of now there are two problems with the content of the page:
 1) Tau physical modelling is a software that was mentioned in the said
 LAD thread, but I couldn't find it anywhere online. links anyone?
 2) Softwerk by Paul Davis was mentioned, but then Paul chimed in and
 said he had just committed to svn, however I couldn't find the svn
 address... So, Paul, could you kindly provide us the svn address, to
 add maybe here
 http://apps.linuxaudio.org/apps/all/softwerk
 or if you're no longer working on it, could we add it to the list?
 
 Ideally this page would be a place where developers in search for a
 nice project would go, so I would find it good to link to it in some
 places, but I'm not sure where... probably here
 
 http://wiki.linuxaudio.org/apps/categories/development

The development tag is intended for libraries - handy for developers.

I'm in touch with Emanuel Rumpf off-list to update the wiki, re-style it
and clean out the tag mess.. it's on the top of my ToDo list for
July/August.

 would be a good idea, but I wasn't able to edit the page. Then maybe
 even some place more upfront like here?:
 
 http://www.linuxaudio.org/resources
 
 cheers
 renato
 

Thanks for your contribution,
Cheers!
robin

___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Fwd: Re: [Icecast] Icecast authentication cant resolve address on Debian

2011-06-05 Thread Robin Gareus
IMHO it will come in handy to include this information in README.Debian
- or as comment in the example config file.

just my 2 cent,
robin

 Original Message 
Subject: Re: [Icecast] Icecast authentication cant resolve address on Debian
Date: Fri, 03 Jun 2011 19:44:31 +0100
From: Karl Heyes k...@xiph.org
To: mar...@thelightingshed.co.uk
CC: icec...@xiph.org

On 03/06/11 19:14, Martin Harrison wrote:
 Hi,

 I am trying to use the url authentication method but am having trouble
 getting icecast to work on a Debian installation on a VPS platform.

 I have logged in my VPS as root and installed icecast using

 apt-get install icecast2
 setup the config file and then set ENABLE=true in /etc/init.d/icecast2

 This initialy didn't work as it couldn't access log files and then had
 trouble with the graphics on the admin pages.
 I fixed this by copying the graphics from /usr/share/icecast2/web into
 /etc/icecast/web and by changing the log/web/admin paths
 from /var/log/icecast to /log and /usr/share/icecast2/web to /web.
 I also had to change the base dir fromto /usr/share/icecast2 to
 /etc/icecast as none of the linked xmls files could be read.

 At this point icecast will run, display the admin pages correctly, allow a
 source to conenct and users can listen.

 However when I enable the authentication it fails to resolve the address
 for the authentication script. The log files contain just two warnings
 that I don't understand the implications of/can't resolve.

 [2011-06-03  16:47:46] WARN stats/stats_event_conv No charset found for
 ISO8859-1
 [2011-06-03  16:55:11] WARN auth_url/url_add_listener auth to server
 http://www.***.co.uk/online/auth.php failed with Couldn't resolve host
 'www.***.co.uk'


 I am assuing that this is something to do with access rights but am no
 unix expert (I developed my authentication system with icecast on a
 windows box trouble free).

 The relevant sections of the config file are below. any help is really
 appreciated.

  paths
  basedir/etc/icecast2/basedir

  /paths

  security
  chroot1/chroot

The distribution package makers should take more care in such cases. If
you want to use DNS names then the mechanism for name lookups needs to
be complete if you want to use a chroot jail.  This means that the
configuration files or libraries need to exist within the jail.  The
simplest change would be to use the IP address as that won't require the
lookup or avoid the chroot to avoid the restricted directories (use full
paths) but if you want the DNS lookup in a jail then the mechanism is
basically

/etc/nsswitch.conf
   read hosts: entry
   lib load of /lib/libnss_... (file, dns etc depending on the protocol)

/lib/libnss_dns... reads /etc/resolv.conf


karl.
___
Icecast mailing list
icec...@xiph.org
http://lists.xiph.org/mailman/listinfo/icecast

___
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-multimedia-maintainers


Re: [LAD] LAC 2011

2011-06-03 Thread Robin Gareus
On 06/03/2011 04:17 PM, Dominique Michel wrote:
 Le Thu, 02 Jun 2011 14:46:14 +0200,
 Robin Gareus ro...@gareus.org a écrit :
 
 Hi *,

 The LAC 2011 site just ascended. All conference material (proceedings,
 video recordings, slides, etc) has been made publicly available.

 http://lac.linuxaudio.org/2011/

 We'd like to thank all speakers and everyone who volunteered to make
 this an enjoyable event; in particular Frank Neumann, John Lato,
 Victor Lazzarini and special thanks to Jörn Nettingsmeier.

 enjoy,
 robin for the LAC-2011 team.
 
 Thank you all.
 
 The link at
 http://lac.linuxaudio.org/2011/download/lac2011_jeremy_jongepier_slides.pdf
 is wrong.
[..]
 The file open fine in libreoffice. I guess that the correct extension
 for this file is .odp and not .pdf

Thanks for the heads-up. I've fixed that (made a pdf out of it).

The odp is still available
http://lac.linuxaudio.org/2011/download/lac2011_jeremy_jongepier_slides.odp

It may certainly be possible that there are some other typos or minor
issues. Please don't hesitate to contact me or l...@linuxaudio.org should
you stumble over those.

Cheers!
robin

___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


[LAD] LAC 2011

2011-06-02 Thread Robin Gareus
Hi *,

The LAC 2011 site just ascended. All conference material (proceedings,
video recordings, slides, etc) has been made publicly available.

http://lac.linuxaudio.org/2011/

We'd like to thank all speakers and everyone who volunteered to make
this an enjoyable event; in particular Frank Neumann, John Lato, Victor
Lazzarini and special thanks to Jörn Nettingsmeier.

enjoy,
robin for the LAC-2011 team.
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Any package builders here?

2011-06-01 Thread Robin Gareus
On 06/01/2011 11:50 AM, Ralf Mardorf wrote:
 Hi :)
 
 could you please add a dependency to audio/MIDI app packages for your
 distros, that will set up real-time usage?
 
[..incorrect code snippet..]

On Debian, both jack1 and jack2 packages do already include that.

/etc/security/limits.d/audio.conf
# Provided by the jackd package.
#
# Changes to this file will be preserved.
#
# If you want to enable/disable realtime permissions, run
#
#dpkg-reconfigure -p high jackd

@audio   -  rtprio 95
@audio   -  memlockunlimited
#@audio   -  nice  -19
---8-

Maybe it's time to notify the debian-mm-team to remove the 'nice' line
instead of commenting it out.  OTOH it shows that they are aware that
it's not strictly needed but may come in handy.


 I can't see any reason not do add such a dependency. Or is there a
 good reason not to do?

I suppose it's simply pragmatic.
Pulling this config out into a dedicated package might be a good idea.
However I don't think there's any real-world use-case:

How many audio apps support 'rtprio' directly (without JACK)?  ..and how
many pro-audio users do use this software but do not have JACK
installed. I bet the number is zero.

robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] mp3-player needs sendmail - really?

2011-05-29 Thread Robin Gareus
On 05/29/2011 10:15 AM, Jens M Andreasen wrote:
 On Sun, 2011-05-29 at 09:44 +0200, Ralf Mardorf wrote:
 

 Btw. do you need realplayer or did you just test it ;)?

 
 I need to get rid of Totem which is borked beyond recognition here ..

May I ask which distribution is that?

gstreamer can work OK, but it's easy to screw up with the plugins being
separated in lots of sub-packages..

Personally I stick mostly with [g]mplayer and ff[mpeg|play].

 Indeed, creepy.
 
 It is the same with GoogleEarth (which will also install 'ed' as an
 automation convenience for spammers?)
 

What's wrong with 'ed'? You won't find a more advanced editor in just
37k linked only against libc. It's as essential as 'sed' or 'grep' (and
to certain extend 'awk' and 'perl') to any un*x system.

It's just a text-editor anyway, not a system-service - like sendmail.

Half of the services on linuxaudio.org would not be what they are
without 'ed'. love it.

 OT: I wonder what will ship with the  German Ausweis App (RFID
 identity card application) for Linux ;).

see for yourself: `apt-cache show rfdump` - works fine to read those.

Cheers!
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Bug#623256: icecast2: added config/templates/postinst configuration

2011-04-18 Thread Robin Gareus
Package: icecast2
Version: 2.3.2-6
Severity: wishlist
Tags: patch


I've added config-templates and postinst configuration (passwords, 
hostname, enable-service) to icecast2.

Attached patch applies to revision baf67ba (currently HEAD) on
  http://git.debian.org/?p=pkg-multimedia/icecast2.git


-- System Information:
Debian Release: 6.0
  APT prefers unstable
  APT policy: (400, 'unstable'), (300, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.33.7.2-rt30 (SMP w/2 CPU cores; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages icecast2 depends on:
ii  adduser   3.112+nmu2 add and remove users and groups
ii  debconf [debconf-2.0] 1.5.36 Debian configuration management sy
ii  libc6 2.11.2-7   Embedded GNU C Library: Shared lib
ii  libcurl3-gnutls   7.21.0-1   Multi-protocol file transfer libra
ii  libkate1  0.3.8-1Kate is a codec for karaoke and te
ii  libogg0   1.2.0~dfsg-1   Ogg bitstream library
ii  liboggkate1   0.3.8-1Kate is a codec for karaoke and te
ii  libspeex1 1.2~rc1-1  The Speex codec runtime library
ii  libssl0.9.8   0.9.8o-4   SSL shared libraries
ii  libtheora01.1.1+dfsg.1-3 The Theora Video Compression Codec
ii  libvorbis0a   1.3.1-1The Vorbis General Audio Compressi
ii  libxml2   2.7.8.dfsg-2   GNOME XML library
ii  libxslt1.11.1.26-6   XSLT 1.0 processing library - runt

icecast2 recommends no packages.

Versions of packages icecast2 suggests:
ii  ices2 2.0.1-8Ogg Vorbis streaming source for Ic

-- Configuration Files:
/etc/default/icecast2 changed [not included]
/etc/icecast2/icecast.xml [Errno 13] Permission denied: 
u'/etc/icecast2/icecast.xml'

-- no debconf information

*** /tmp/0001-added-configuration-template-postinst-setup.patch
From 58b10173268e252f87a7e021d61a0e43ba3d13aa Mon Sep 17 00:00:00 2001
From: Robin Gareus ro...@gareus.org
Date: Mon, 18 Apr 2011 19:22:15 +0200
Subject: [PATCH] added configuration templatepostinst setup.

---
 debian/config|   25 +
 debian/icecast2.postinst |   35 ++-
 debian/templates |   37 +
 3 files changed, 96 insertions(+), 1 deletions(-)
 create mode 100644 debian/config
 create mode 100644 debian/templates

diff --git a/debian/config b/debian/config
new file mode 100644
index 000..742ddf3
--- /dev/null
+++ b/debian/config
@@ -0,0 +1,25 @@
+#!/bin/bash
+# Debconf config script for icecast2
+
+set -e
+
+. /usr/share/debconf/confmodule
+
+db_input high icecast2/icecast-setup || true
+db_go ||true
+
+db_get icecast2/icecast-setup
+if [ $RET = true ]; then
+   db_input high icecast2/hostname || true
+   db_go ||true
+   db_input high icecast2/sourcepassword || true
+   db_go ||true
+   db_input high icecast2/relaypassword|| true
+   db_go ||true
+   db_input high icecast2/adminpassword || true
+   db_go ||true
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/icecast2.postinst b/debian/icecast2.postinst
index ca9a341..eb12a54 100644
--- a/debian/icecast2.postinst
+++ b/debian/icecast2.postinst
@@ -3,8 +3,10 @@
 
 set -e
 
+. /usr/share/debconf/confmodule
+
 case $1 in
-configure)
+configure|reconfigure)
 
 ;;
 
@@ -34,6 +36,37 @@ id icecast2 /dev/null 21 || \
adduser --system --quiet --disabled-password --disabled-login \
--home /usr/share/icecast2 --no-create-home --ingroup icecast icecast2
 
+# set passwords
+db_get icecast2/icecast-setup
+if test $RET = true; then
+   if [ -f /etc/default/icecast2 -a -f /etc/icecast2/icecast.xml ]; then
+   echo Configuring icecast2.. 2
+   cat  _EOF_ \
+   | ed /etc/default/icecast2 2/dev/null 12 || true
+%s/^.*ENABLE=.*$/ENABLE=true/
+wq
+_EOF_
+
+   db_get icecast2/sourcepassword
+   ICESOURCE=$RET
+   db_get icecast2/relaypassword
+   ICERELAY=$RET
+   db_get icecast2/adminpassword
+   ICEADMIN=$RET
+   db_get icecast2/hostname
+   ICEHOST=$RET
+   cat  _EOF_ \
+   | ed /etc/icecast2/icecast.xml 2/dev/null 12 || true
+%s/source-password[^]*\/source-password/source-password$ICESOURCE\/source-password/
+%s/relay-password[^]*\/relay-password/relay-password$ICERELAY\/relay-password/
+%s/admin-password[^]*\/admin-password/admin-password$ICEADMIN\/admin-password/
+%s/hostname[^]*\/hostname/hostname$ICEHOST\/hostname/
+wq
+_EOF_
+   echo Done Configuring icecast2.. 2
+   fi
+fi
+
 chown -R icecast2: /var/log/icecast2 /etc/icecast2
 # Set all file readable by default
 chmod -R ug=rw,o=r,ugo+X /etc/icecast2
diff --git a/debian

Re: [LAD] Decode and Info about media

2011-04-18 Thread Robin Gareus
On 04/18/2011 12:22 PM, Alfs Kurmis wrote:
 
  Hello Experts.
  Is here library with C  #include headers for so what ?
  How can i gotta info about  Wav, mp3, ogg, m4a, wma [wmv] ... files
  SampleRate, Channels, PlayLen( in samples ), bytesPerSample ,
  bitrate, VBR ... ,
  and after i gotta this info , decode em to RAW stream ?
  At least i need everything about Wav, mp3, ogg.
  Info about sound file should not  be printf()'ed to stdout , but must
  be filled in info structure.
Decoder library should have functions - loadFile, Play,
  SeekToSample , Stop.
  At least possibility - play file from sample or second.part .
  Or should be used 2 libs, one for gotta info and one for decoding ?
  Any C example and pointer welcomed.
Tnx in advance @ all.
  Alfs Kurmis

libavformat from ffmpeg [1]; see `ffprobe` for example-code to get info
and libavcodec for playback, it can do all that you want and will
read/play any file you throw at it.

gavl/gmerlin [2] offers an easier-to-use wrapper around ffmpeg libs.

gstreamer (actually libgstreamer) [3] is another option.

libsndfile [4] is very easy to use and well designed, but has no support
for mp3, wma, m4a or other proprietary/license-encumbered formats.

All of the above are available on most GNU/Linux distributions.

[1] http://ffmpeg.org/
[2] http://gmerlin.sourceforge.net/
[2] http://gstreamer.freedesktop.org/
[4] http://www.mega-nerd.com/libsndfile/

HTH,
robin

PS. another option is to use many small libs directly: libmad,
libsndfile, libogg, libquicktime,... but gmerlin/gavl conveniently wraps
those.
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


icecast2 config/postinst

2011-04-18 Thread Robin Gareus
Hi Alessio et al,

I've added config-templates and postinst configuration (passwords,
hostname, enable-service) to icecast2.

Attached patch applies to revision baf67ba (currently HEAD) on
  http://git.debian.org/?p=pkg-multimedia/icecast2.git

What would be needed to get this into the official icecast2 debian package?

Cheers!
robin
From 58b10173268e252f87a7e021d61a0e43ba3d13aa Mon Sep 17 00:00:00 2001
From: Robin Gareus ro...@gareus.org
Date: Mon, 18 Apr 2011 19:22:15 +0200
Subject: [PATCH] added configuration templatepostinst setup.

---
 debian/config|   25 +
 debian/icecast2.postinst |   35 ++-
 debian/templates |   37 +
 3 files changed, 96 insertions(+), 1 deletions(-)
 create mode 100644 debian/config
 create mode 100644 debian/templates

diff --git a/debian/config b/debian/config
new file mode 100644
index 000..742ddf3
--- /dev/null
+++ b/debian/config
@@ -0,0 +1,25 @@
+#!/bin/bash
+# Debconf config script for icecast2
+
+set -e
+
+. /usr/share/debconf/confmodule
+
+db_input high icecast2/icecast-setup || true
+db_go ||true
+
+db_get icecast2/icecast-setup
+if [ $RET = true ]; then
+	db_input high icecast2/hostname || true
+	db_go ||true
+	db_input high icecast2/sourcepassword || true
+	db_go ||true
+	db_input high icecast2/relaypassword|| true
+	db_go ||true
+	db_input high icecast2/adminpassword || true
+	db_go ||true
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/icecast2.postinst b/debian/icecast2.postinst
index ca9a341..eb12a54 100644
--- a/debian/icecast2.postinst
+++ b/debian/icecast2.postinst
@@ -3,8 +3,10 @@
 
 set -e
 
+. /usr/share/debconf/confmodule
+
 case $1 in
-configure)
+configure|reconfigure)
 
 ;;
 
@@ -34,6 +36,37 @@ id icecast2 /dev/null 21 || \
 	adduser --system --quiet --disabled-password --disabled-login \
 	--home /usr/share/icecast2 --no-create-home --ingroup icecast icecast2
 
+# set passwords
+db_get icecast2/icecast-setup
+if test $RET = true; then
+	if [ -f /etc/default/icecast2 -a -f /etc/icecast2/icecast.xml ]; then
+		echo Configuring icecast2.. 2
+		cat  _EOF_ \
+		| ed /etc/default/icecast2 2/dev/null 12 || true
+%s/^.*ENABLE=.*$/ENABLE=true/
+wq
+_EOF_
+
+		db_get icecast2/sourcepassword
+		ICESOURCE=$RET
+		db_get icecast2/relaypassword
+		ICERELAY=$RET
+		db_get icecast2/adminpassword
+		ICEADMIN=$RET
+		db_get icecast2/hostname
+		ICEHOST=$RET
+		cat  _EOF_ \
+		| ed /etc/icecast2/icecast.xml 2/dev/null 12 || true
+%s/source-password[^]*\/source-password/source-password$ICESOURCE\/source-password/
+%s/relay-password[^]*\/relay-password/relay-password$ICERELAY\/relay-password/
+%s/admin-password[^]*\/admin-password/admin-password$ICEADMIN\/admin-password/
+%s/hostname[^]*\/hostname/hostname$ICEHOST\/hostname/
+wq
+_EOF_
+		echo Done Configuring icecast2.. 2
+	fi
+fi
+
 chown -R icecast2: /var/log/icecast2 /etc/icecast2
 # Set all file readable by default
 chmod -R ug=rw,o=r,ugo+X /etc/icecast2
diff --git a/debian/templates b/debian/templates
new file mode 100644
index 000..64e00e7
--- /dev/null
+++ b/debian/templates
@@ -0,0 +1,37 @@
+Template: icecast2/icecast-setup
+Type: boolean
+Default: false
+Description: Setup Icecast2 - Enable Live HTTP Streaming?
+ This option allows enable icecast2 on this server
+ and configure passwords for icecast-server.
+ .
+ If you have already manually tweaked icecast2 configuration
+ it may not work as expected.
+
+Template: icecast2/hostname
+Type: string
+Default: localhost
+Description: Icecast2 Hostname:
+ Specify a fully qualified domain name.
+ Icecast2 uses this as prefix to all streams.
+
+Template: icecast2/sourcepassword
+Type: string
+Default: hackme
+Description: Icecast2 Source Password:
+ Specify a password to send A/V sources to icecast
+
+Template: icecast2/relaypassword
+Type: string
+Default: hackme
+Description: Icecast2 Relay Password:
+ Specify the default password for stream relay access.
+
+Template: icecast2/adminpassword
+Type: string
+Default: hackme
+Description: Icecast2 Admin Password:
+ Specify the admin password. 
+ You can access icecast2's admin interface via
+ http://localhost:8000/ - and both monitor connection as
+ well as block users.
-- 
1.7.2.3

___
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/pkg-multimedia-maintainers


Bug#623256: icecast2: added config/templates/postinst configuration

2011-04-18 Thread Robin Gareus
Package: icecast2
Version: 2.3.2-6
Severity: wishlist
Tags: patch


I've added config-templates and postinst configuration (passwords, 
hostname, enable-service) to icecast2.

Attached patch applies to revision baf67ba (currently HEAD) on
  http://git.debian.org/?p=pkg-multimedia/icecast2.git


-- System Information:
Debian Release: 6.0
  APT prefers unstable
  APT policy: (400, 'unstable'), (300, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.33.7.2-rt30 (SMP w/2 CPU cores; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages icecast2 depends on:
ii  adduser   3.112+nmu2 add and remove users and groups
ii  debconf [debconf-2.0] 1.5.36 Debian configuration management sy
ii  libc6 2.11.2-7   Embedded GNU C Library: Shared lib
ii  libcurl3-gnutls   7.21.0-1   Multi-protocol file transfer libra
ii  libkate1  0.3.8-1Kate is a codec for karaoke and te
ii  libogg0   1.2.0~dfsg-1   Ogg bitstream library
ii  liboggkate1   0.3.8-1Kate is a codec for karaoke and te
ii  libspeex1 1.2~rc1-1  The Speex codec runtime library
ii  libssl0.9.8   0.9.8o-4   SSL shared libraries
ii  libtheora01.1.1+dfsg.1-3 The Theora Video Compression Codec
ii  libvorbis0a   1.3.1-1The Vorbis General Audio Compressi
ii  libxml2   2.7.8.dfsg-2   GNOME XML library
ii  libxslt1.11.1.26-6   XSLT 1.0 processing library - runt

icecast2 recommends no packages.

Versions of packages icecast2 suggests:
ii  ices2 2.0.1-8Ogg Vorbis streaming source for Ic

-- Configuration Files:
/etc/default/icecast2 changed [not included]
/etc/icecast2/icecast.xml [Errno 13] Permission denied: 
u'/etc/icecast2/icecast.xml'

-- no debconf information

*** /tmp/0001-added-configuration-template-postinst-setup.patch
From 58b10173268e252f87a7e021d61a0e43ba3d13aa Mon Sep 17 00:00:00 2001
From: Robin Gareus ro...@gareus.org
Date: Mon, 18 Apr 2011 19:22:15 +0200
Subject: [PATCH] added configuration templatepostinst setup.

---
 debian/config|   25 +
 debian/icecast2.postinst |   35 ++-
 debian/templates |   37 +
 3 files changed, 96 insertions(+), 1 deletions(-)
 create mode 100644 debian/config
 create mode 100644 debian/templates

diff --git a/debian/config b/debian/config
new file mode 100644
index 000..742ddf3
--- /dev/null
+++ b/debian/config
@@ -0,0 +1,25 @@
+#!/bin/bash
+# Debconf config script for icecast2
+
+set -e
+
+. /usr/share/debconf/confmodule
+
+db_input high icecast2/icecast-setup || true
+db_go ||true
+
+db_get icecast2/icecast-setup
+if [ $RET = true ]; then
+   db_input high icecast2/hostname || true
+   db_go ||true
+   db_input high icecast2/sourcepassword || true
+   db_go ||true
+   db_input high icecast2/relaypassword|| true
+   db_go ||true
+   db_input high icecast2/adminpassword || true
+   db_go ||true
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/icecast2.postinst b/debian/icecast2.postinst
index ca9a341..eb12a54 100644
--- a/debian/icecast2.postinst
+++ b/debian/icecast2.postinst
@@ -3,8 +3,10 @@
 
 set -e
 
+. /usr/share/debconf/confmodule
+
 case $1 in
-configure)
+configure|reconfigure)
 
 ;;
 
@@ -34,6 +36,37 @@ id icecast2 /dev/null 21 || \
adduser --system --quiet --disabled-password --disabled-login \
--home /usr/share/icecast2 --no-create-home --ingroup icecast icecast2
 
+# set passwords
+db_get icecast2/icecast-setup
+if test $RET = true; then
+   if [ -f /etc/default/icecast2 -a -f /etc/icecast2/icecast.xml ]; then
+   echo Configuring icecast2.. 2
+   cat  _EOF_ \
+   | ed /etc/default/icecast2 2/dev/null 12 || true
+%s/^.*ENABLE=.*$/ENABLE=true/
+wq
+_EOF_
+
+   db_get icecast2/sourcepassword
+   ICESOURCE=$RET
+   db_get icecast2/relaypassword
+   ICERELAY=$RET
+   db_get icecast2/adminpassword
+   ICEADMIN=$RET
+   db_get icecast2/hostname
+   ICEHOST=$RET
+   cat  _EOF_ \
+   | ed /etc/icecast2/icecast.xml 2/dev/null 12 || true
+%s/source-password[^]*\/source-password/source-password$ICESOURCE\/source-password/
+%s/relay-password[^]*\/relay-password/relay-password$ICERELAY\/relay-password/
+%s/admin-password[^]*\/admin-password/admin-password$ICEADMIN\/admin-password/
+%s/hostname[^]*\/hostname/hostname$ICEHOST\/hostname/
+wq
+_EOF_
+   echo Done Configuring icecast2.. 2
+   fi
+fi
+
 chown -R icecast2: /var/log/icecast2 /etc/icecast2
 # Set all file readable by default
 chmod -R ug=rw,o=r,ugo+X /etc/icecast2
diff --git a/debian

Re: icecast2 config/postinst

2011-04-18 Thread Robin Gareus
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 04/18/2011 07:53 PM, Jonas Smedegaard wrote:
 Hi Robin,
 
 On 11-04-18 at 07:29pm, Robin Gareus wrote:
 I've added config-templates and postinst configuration (passwords, 
 hostname, enable-service) to icecast2.
 
 Nice!
 
 
 Attached patch applies to revision baf67ba (currently HEAD) on
   http://git.debian.org/?p=pkg-multimedia/icecast2.git

 What would be needed to get this into the official icecast2 debian 
 package?
 
 Please open a bugreport against the package and include the patch there.

done.
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=623256

I inadvertently attached the patch twice (`reportbug` did not list the
attachments; so I thought it missing.. sorry).

 Also, it seems to me from briefly reading it, that you (briefly) expose 
 passwords to all local users by printing it as part of an ed command.

AFAICT it does not. It's
   cat  _EOF_ | ed ...

So the password is piped to ed and not visible to other process.

 That is (if correctly read) a security flaw and should be avoided.

 One way to avoid it is to export the passwords as environment variables 
 and then run a short perl script which uses those same variables.
 
 Like this (from a CipUX routine):
 
 export pw=bla
 
 perl -i -pe s/[ \t]*#([ \t]*password[ \t]*=).*/\$1\$ENV{'pw'}/ file
 
 
 But please, instead of discussing further here, file a bugreport and 
 let's continue the discussion there :-)

sure. It's also not-using-po-debconf for internationalization, yet.
Anyway, one step at a time.

Cheers!
robin
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAk2shiUACgkQeVUk8U+VK0Ko3QCgiMrJbgnY4Go9BO3JafeTF6vQ
LDUAoJ5kOTymrxrjOLSz/lSLBNnEyJI/
=9PO7
-END PGP SIGNATURE-

___
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/pkg-multimedia-maintainers


[LAD] LAC 2011 programme is online.

2011-04-13 Thread Robin Gareus
Hi all,

It's been online for a while, but with 4 weeks to go: the
conference-programme is now officially fixed:
  http://lac.linuxaudio.org/2011/?page=program
and for your xPhone or googol-calendar:
  http://lac.linuxaudio.org/2011/vcal.php

Should you attend LAC, please register if you have not done so:
  http://lac.linuxaudio.org/2011/?page=registration

If you can not make it to Maynooth: live streams will be available
during the conference and the recordings and papers will also be
published online afterward.


Looking forward to seeing you in Maynooth!


PS. We are going to provide some printed copies of the programme at
the conference registration-desk, but if you wish to do a colorful print
yourself:
  http://lac.linuxaudio.org/2011/printprogram.php

Set your browser's File-Print-Options-Print background colors
or simply run:
 wkhtmltopdf -s A4 --minimum-font-size 18 \
   http://lac.linuxaudio.org/2011/printprogram.php \
   lac2011.pdf

-- 
Robin Gareus
84bis Rue de Grenelle
75007 Paris, France

mobile: +33 612 738 346
mailto: ro...@gareus.org
jabber: xmpp:rgar...@ik.nu

phone  fax: +33 95 222 567 2

Public Key at http://pgp.mit.edu/
Fingerprint : 7107 840B 4DC9 C948 076D 6359 7955 24F1 4F95 2B42
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [oauth] signature_invalid.base_string problem with liboauth on google account api

2011-04-11 Thread Robin Gareus
On Apr 11, 2011, at 4:29 AM, greenfish wrote:

 i'll make a google api client application in Windows with liboauth(c+
 +).
 
 my consumer key is greenfishblog.tistory.com and
 customersecret is Eo/rFfNmK4NGxYlvGpdrK+fF.
 
 but, on requesting a token, the reply from google is
 signature_invalid.base_string.
 what's ploblem?
 
 psuedo code
 
 #include oauth.h
 ...
 oauth_split_url_parameter(https://www.google.com/accounts/
 OAuthGetRequestToken, argv);
 oauth_sign_array2_process(argc, argv, NULL, OA_HMAC, NULL,
 greenfi, Eo/r..., NULL, NULL);
 req_hdr = oauth_serialize_url_sep(argc, 1, argv, , , 6);
 req_url = oauth_serialize_url_sep(argc, 0, argv, , , 1);
 sprintf(http_hdr, Authorization: OAuth scope=\%s\, %s, (http://
 www.google.com/calendar/feeds/default/allcalendars/full), req_hdr);
 reply = oauth_http_get2(https://www.google.com/accounts/
 OAuthGetRequestToken, NULL, http_hdr);
 
 at last,
 reply is signature_invalid.base_string:GEThttp ...



Pseudo code is not very useful for debugging. 
A shot in the dark: If you use an OAuth scope header,  it needs to add it to 
the request parameters to be singed.

oauth_split_url_parameter(https://my.url?scope=MYOAUTHSCOPE;,...);

best,
robin

-- 
You received this message because you are subscribed to the Google Groups 
OAuth group.
To post to this group, send email to oauth@googlegroups.com.
To unsubscribe from this group, send email to 
oauth+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/oauth?hl=en.



Re: [LAD] [ann] CAPS 0.4.5

2011-04-10 Thread Robin Gareus

On Apr 10, 2011, at 3:52 PM, Tim Goetze wrote:

 [Paul Davis]
 On Sun, Apr 10, 2011 at 3:43 AM, Tim Goetze t...@quitte.de wrote:
 Following your suggestion and changing the plugin's UniqueID would
 break perfectly good saved session files in these and other properly
 designed host applications - instead of *preventing* breakage, it'd
 actually *cause* it.
 
 Strongly disagree. The CAPS package would just continue to include the
 old version of the plugin.
 
 Surely you will understand that I'm not inclined to maintain two 
 versions of a plugin whose code differs in only one line.
 

That sounds like a good case of an #ifdef, no?
Just generate two plugins from the same code: old one: unchanged; updated 
version: new UniqueID.

just an idea..
robin

___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Bug#620587: RFP: dbus-triggerd -- invoke custom hook scripts on dbus-signals

2011-04-02 Thread Robin Gareus
Package: wnpp
Severity: wishlist


* Package name: dbus-triggerd
  Version : 0.3.2
  Upstream Author : Robin Gareus
* URL : http://www.gareus.org/oss/dbustriggerd/
* License : GPL
  Programming Lang: C
  Description : invoke custom hook scripts on dbus-signals

 dbus-triggerd is a tool to trigger shell-commands upon receiving
 a given dbus-signal.
 .
 It is useful as instrumentation and development tool for 
 dbus applications, and also simplifies using dbus on
 the commandline or within shell scripts.
 



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#620587: RFP: dbus-triggerd -- invoke custom hook scripts on dbus-signals

2011-04-02 Thread Robin Gareus
Package: wnpp
Severity: wishlist


* Package name: dbus-triggerd
  Version : 0.3.2
  Upstream Author : Robin Gareus
* URL : http://www.gareus.org/oss/dbustriggerd/
* License : GPL
  Programming Lang: C
  Description : invoke custom hook scripts on dbus-signals

 dbus-triggerd is a tool to trigger shell-commands upon receiving
 a given dbus-signal.
 .
 It is useful as instrumentation and development tool for 
 dbus applications, and also simplifies using dbus on
 the commandline or within shell scripts.
 



-- 
To UNSUBSCRIBE, email to debian-wnpp-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/20110402225216.15830.46393.reportbug@soyuz.local



Re: [LAD] QT3 and KDE3 removal in Debian

2011-03-14 Thread Robin Gareus
On 03/14/2011 05:16 PM, Adrian Knoth wrote:
 Hi!
 
 I guess this could be important for some of you:
 
 Debian is currently dropping QT3 and KDE3 from unstable. This in turn
 means that apps depending on those libs either need to be ported to
 QT4/KDE4 or will also be removed.
 
 As always, saying Debian sooner or later also means Ubuntu and
 derivatives.
 
 Of course, all software remains installable from squeeze (current
 release) for the next few years (let me lie: 5?).
 
 I know that fmit and creox use QT3, probably some other audio software,
 too.
 
 The creox author has no time for porting, so if somebody feels bored or
 is looking for a little project, you might want to consider this.
 
 
 Cheers
 
Hi Adrian,

Thanks for the heads-up. A quick-question: does that also affect the
libqt4-qt3support ? AFAIK that's the easiest way to port qt3 projects
to qt4.

robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Realtime threads and security

2011-02-24 Thread Robin Gareus
On 02/24/2011 03:59 PM, Olivier Guilyardi wrote:
 Hello Robin,
 
 Now, say I'm only focusing on playback now. Is there something wrong with
 calling a blocking output API from a realtime thread as I ask below?


mmh. it depends on how the blocking is done. If it is a spin-lock it
will consume CPU and block other processes which are running at lower
priority in the meantime (but only up to sched_rt_runtime_us per second.
Other processes won't starve). Is there a poll (or select) function
available as part of the libaudio API?

If the i/o block waits for a signal (e.g. IRQ), it will work just fine.

 On Android, the closest that one can get to hardware in a more or less 
 portable
 way is libaudio [1]. It's Android's audio HAL. This API exposes blocking 
 read()
 and write() calls, with fixed buffer sizes (input and output buffer sizes
 generally do not match, but that's another problem).

 So, this may be a silly/newbie question, but can one access this blocking 
 API
 from a realtime thread? What will happen when it blocks? How does the 
 read/write
 period relate to sched_rt_period_us?

 [1] http://source.android.com/porting/audio.html
 
 --
   Olivier
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Realtime threads and security

2011-02-23 Thread Robin Gareus
On 02/23/2011 11:22 AM, Olivier Guilyardi wrote:
 Hi,
 
 On 02/17/2011 10:53 PM, Robin Gareus wrote:
 
 /proc/sys/kernel/sched_rt_runtime_us
 /proc/sys/kernel/sched_rt_period_us

 kernel-source/Documentation/scheduler/sched-rt-group.txt
 
 There's something which confuses me. But I'm not sure how this realtime period
 settings relate to the audio I/O period.

It only does iff the audio-I/O thread (or process) is executed with
realtime privileges (`man chrt` - man `pthread_setschedparam` ).

if you have a RT_PREEMPT kernel you can also raise the priority of the
audio-device interrupt handler.

Well, it's a bit more complex than that.. not sure if you can go that
way on Android easily.

 On Android, the closest that one can get to hardware in a more or less 
 portable
 way is libaudio [1]. It's Android's audio HAL. This API exposes blocking 
 read()
 and write() calls, with fixed buffer sizes (input and output buffer sizes
 generally do not match, but that's another problem).
 
 So, this may be a silly/newbie question, but can one access this blocking API
 from a realtime thread? What will happen when it blocks? How does the 
 read/write
 period relate to sched_rt_period_us?
 
 [1] http://source.android.com/porting/audio.html
 
 --
   Olivier
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Realtime threads and security

2011-02-17 Thread Robin Gareus
On 02/17/2011 10:27 PM, Olivier Guilyardi wrote:
 On 02/17/2011 09:48 PM, Paul Davis wrote:
 On Thu, Feb 17, 2011 at 3:40 PM, Olivier Guilyardi l...@samalyse.com wrote:

 in earlier versions of 2.6, the kernel patch to allow SCHED_FIFO for
 everyone was incredibly simple. i recall kjetil posting a couple of
 lines, at most.

 whether this a security risk depends on which other parts of the
 kernel android uses. on regular linux, its no longer possible for any
 process to steal all the CPU time. there are files in the /proc/sys
 filesystem that control the amount available.

 note that patching the kernel in this way means that any process by
 any user can get SCHED_FIFO so its hardly clear that this is actually
 any better than using rlimits from a security perspective.
 
 I know that patching is not a requirement anymore for realtime on Linux. But I
 was just asking about some possible security enhancement patch.
 
 What are those files in /proc/sys that you mention?

Hi Olivier,

Paul must have been talking about

/proc/sys/kernel/sched_rt_runtime_us
/proc/sys/kernel/sched_rt_period_us

kernel-source/Documentation/scheduler/sched-rt-group.txt

 Also I'm a bit confused about rlimits. IIUC, realtime processes always run
 before non-realtime processes. And the realtime priority as set with
 set_rlimits() only affects the priority of realtime processes between each
 other. It doesn't seem to affect the priority between realtime and 
 non-realtime
 processes.
 
 I've been told than on OSX, when a process runs in realtime, it is only 
 allowed
 to use a certain ratio of CPU time. And if it goes over this limit, it loses 
 its
 priority. Is there something comparable on Linux? Maybe with the files in
 /proc/sys that you mention?

not exactly. /proc kernel.sched_rt_runtime_us globally limits realtime
scheduling time. To limit it per process you'll need cgroups.

 What I'm looking for is some way to say: ok, this thread can run in realtime,
 but if it ever uses more than 10% of CPU time it will lose realtime priority.
 
 Aside of that, what about locks? I've many times been told that one mustn't do
 anything that could block in a realtime thread. What are the consequences of
 that? Could a malicious app freeze the system by blocking in a realtime 
 thread?
 
 --
   Olivier
 ___
 Linux-audio-dev mailing list
 Linux-audio-dev@lists.linuxaudio.org
 http://lists.linuxaudio.org/listinfo/linux-audio-dev
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


[LAD] OT - git rebase - was [LAU] OpenOctaveMidi2 (OOM2) beta release

2011-01-29 Thread Robin Gareus
On 01/28/2011 04:37 PM, torbenh wrote:

 you really need to keep your history clean. 
 take a bit of time. use git rebase -i
 before you push stuff upstream.
 (or at least before you merge it into the master branch)
 
 this makes me sad.

Hi Torben,

Was that meant as sarcasm (kill the git hitory) or seriously - allow
upsteam to cherry-pick easily?

I rarely use rebase and only on local topic branches that have never
been pushed to a public repo. It changes the history and will cause
problems to anyone who has pulled that branch before.

Since you are a git guru, could you please elaborate?

TIA,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] OT - git rebase - was [LAU] OpenOctaveMidi2 (OOM2) beta release

2011-01-29 Thread Robin Gareus
On 01/29/2011 10:01 PM, Robin Gareus wrote:
 On 01/28/2011 04:37 PM, torbenh wrote:
 
 you really need to keep your history clean. 
 take a bit of time. use git rebase -i
 before you push stuff upstream.
 (or at least before you merge it into the master branch)

 this makes me sad.
 
 Hi Torben,
 
 Was that meant as sarcasm (kill the git hitory) or seriously - allow
 upsteam to cherry-pick easily?
 
 I rarely use rebase and only on local topic branches that have never
 been pushed to a public repo. It changes the history and will cause
 problems to anyone who has pulled that branch before.
 
 Since you are a git guru, could you please elaborate?
 

answering [part of] my own question, git guru was the key:
 http://gitguru.com/2009/02/03/rebase-v-merge-in-git/

Rebases are how changes should pass from the top of hierarchy downwards
and merges are how they flow back upwards.

Is that what you were alluding to?

robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: foo-yc20_1.2.0-1_amd64.changes is NEW

2011-01-22 Thread Robin Gareus
Hi Alessio and Adrian,

The debian foo-yc20 package is - alas - mostly useless. The Synth
algorithm is _really_ heavy on the CPU.
You _need to_ compile it at least with
  -O3 -ffast-math -ftree-vectorize

The current i386 package can barely be used on a 2GHz system and is not
reliable even then.

Using  -mtune=native -march=native -mfpmath=sse and providing an i686
arch is highly recommended.


On 01/20/2011 10:02 PM, Debian FTP Masters wrote:
 (new) foo-yc20_1.2.0-1.debian.tar.gz optional sound
 (new) foo-yc20_1.2.0-1.dsc optional sound
 (new) foo-yc20_1.2.0-1_amd64.deb optional sound
 YC-20 organ emulation
  The YC-20 is a divide-down combo organ designed in the late 60's. This
  emulation faithfully copies the features, sounds and flaws of the original
  organ.
  .
  Features:
 - 61 keys
 - Two main voice sections
 - Switchable bass section
 - Generator + matrix mixer = no polyphony restrictions
 - A realism control to add flaws found in the real organ

- LV2 plugin
- Parameter control via MIDI

  .
  Flaws:
 - Takes quite a bit of CPU power
 - No touch vibrato
  .
  The emulation is written in Faust and uses Jack for audio and MIDI.
 (new) foo-yc20_1.2.0.orig.tar.bz2 optional sound
 Changes: foo-yc20 (1.2.0-1) unstable; urgency=low
  .
   [ Adrian Knoth ]
   * Improve package description.
  .
   [ Alessio Treglia ]
   * New upstream release.
   * Update debian/copyright.
   * debian/rules:
 - Set buildsystem to makefile.
 - Rely on dh_auto_build rather than calling make.
 - Append -Wl,--as-needed to LDFLAGS.
   * debian/control:
 - Add Provides: lv2-plugin
 - Replace libgtkmm-2.4-dev with libgtk2.0-dev, build-depend on
   lv2core.
   * debian/patches/0002-makefile.patch: Pass LDFLAGS to the linker.
 

best,
robin

___
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/pkg-multimedia-maintainers


Re: [LAD] [OT] 3ghz coax and soldering...

2011-01-19 Thread Robin Gareus
On 01/19/2011 06:35 AM, gene heskett wrote:
 On Wednesday, January 19, 2011 12:12:05 am Robin Gareus did opine:
 
 On 01/19/2011 03:39 AM, gene heskett wrote:
 On Tuesday, January 18, 2011 09:16:00 pm Robin Gareus did opine:
 Hi Joern,

 If it is an option: use Leerrohre (DE for empty tubes ?) to make it
 future-proof, rather than to rely on cable-standards. In a few years
 you may want to replace coax with optical or whatever.

 I think that would translate to wave-guides in English

 nope. I mean tubes like pipes in the wall or floor that allow one to
 easily replace cables that run inside those tubes. It'd still be a major
 re-wiring task but at least one can change the wires easily compared to
 in-wall mounted cables.

 
 Ahh, so, here that is called conduit and can be metallic or more likely 
 in recent years, plastic, glued up just like water pipe and smoother to 
 pull wires through than the metallic stuff.  Both need plenty of snot on 
 the wires for a temp lubricant if going very far, and about 3 bends is 
 still the limit for one pull run.

I guess Joern's Studio is only 3 or 4 rooms. It's mostly because he
mentioned wall sockets that I suggested this.
It can also be the wall (or ceiling-mounted) type. I think they're
called raceways or just cable-tray.

[..]

 It is currently running inside the ALICE detector @LHC.
 
 Yikes.  If that ever collapses, it will emp into smoke, and and all 
 electrical stuff for many meters around it. 

nah It will pull itself into a black hole of course :)

 That, it can be said is NOT a 
 friendly environment.  Even your $15 Casio wrist watch is in danger if you 
 move too fast in that.

The magnetic field you mean? The tricky part is get close enough. You'll
need a few weeks to undo all the screws on the enclosure and not get
kicked out in the meantime. Once you get in there you don't need to
move, the electrons inside the watch are already moving fast enough. The
only workaround is to have only short interconnects and lots of bulk in
between them.  Luckily this is an OT post:
http://blogs.discovermagazine.com/badastronomy/2010/09/21/dont-cross-the-lhc-stream/

 I will allow the comment that when fabricating wave-guide parts and
 filters for 7Ghz work, which I have done a few of decades ago, those
 were usually silver soldered because the regular tin/lead solders
 surfaces oxidized with time much worse, screwing with the skin effect
 losses.  Silver oxide may look fugly, but is still a pretty fair
 conductor when frequencies are in the realm where skin effect reigns
 supreme.  Just as true inside the wave- guide as it is on the skin of
 a coax conductor.

 interesting. I do remember a drawer with at least 15 different kind of
 solder. Now I know what that silver stuff in there was in there for :)
 
 Silver solder, or just silver bearing solder?  

likely both. It is a very well equipped lab. There was a small
hand-torch in there as well. Though I think it was mostly used as a
spare lighter :)

 The latter seems to top out 
 at about 3% siver in an otherwise eutectic allow, but is a noticeably 
 stronger solder mechanically that doesn't oxidize near as fast.  I don't 
 use anything else myself but it does raise the iron temps needed by 
 50-100F, which leads to needing to clean the tips more often.
 
 Real silver solder needs a propane or better torch or a tig for heat and 
 you use a borax based flux that melts and forms an airtight puddle of 
 liquid glass over the joint so the oxygen is sealed away from the hot 
 metal, facilitating a nice clean joint when you feed the silver wire in to 
 make a 'sweat' joint, like the plumbers do for copper piping.  But the 
 borax should be chipped away and removed once it has cooled as its a bit 
 lossy at those frequencies.  Properly done, you get the 'sweat' started, 
 and pull it along by moving the heat (it crawls to the heat) until you have 
 the joint level full of silver but no extra beads sticking out.  Don't 
 apply any more silver than what it takes to just seal the joint.  Dry fit 
 accuracies of less than a 5 thou gap work very well, wider gaps are 
 correspondingly harder to control.  You really need a milling machine to do 
 wave-guide parts correctly.
  
 Thanks robin

Thank you for the lengthy explanation.

ciao,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] [OT] 3ghz coax and soldering...

2011-01-19 Thread Robin Gareus
On 01/19/2011 12:39 PM, Jörn Nettingsmeier wrote:
[..]
 it's a music school, their investment
 cycles are long and they won't be able to afford cutting-edge gear anyways.
 

Oh and I was already becoming jealous thinking you're planning your own
studio and was planning a trip to Essen to admire it..

just curious: Will there be any Linux-boxes inside or would those fall
in the cutting-edge gear category? :)

robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] [OT] 3ghz coax and soldering...

2011-01-18 Thread Robin Gareus
Hi Joern,

If it is an option: use Leerrohre (DE for empty tubes ?) to make it
future-proof, rather than to rely on cable-standards. In a few years you
may want to replace coax with optical or whatever.

The only question I can answer is #4: The problem is reflections caused
by skin-effect if you do solder them. Back in the days that I spent in
the physics dept. we used solder-less crimp connectors for everything
high-freq.

On 01/18/2011 10:59 PM, Jörn Nettingsmeier wrote:
 hi everybody!
 
 
 forgive the ot post, but i hope there are some brains to pick here.
 
 i'm planning a studio, and to make it future-proof, there is coax in
 every room. currently it's going to be used for rgbhv and composite
 video, but i want it to be future-proof for MADI and HD-SDI.
 
 the cabling itself is of sufficient quality, but i'm doubtful about the
 connectors. the whole installation has a star topology, so the worst
 case is
 
 * source
 * 5m or so of suitable cable
 * bnc wall socket
 * 20m installation cable (-63dB/100m @ 3ghz)
 * a ghielmetti patchbay (which includes two canare contacts to the patch
 cord and two bnc on the rear, unfortunately)
 * another 20m installation cable
 * bnc wall socket
 * another 5m cable
 * sink
 
 question 1: any hopes for reliable hd-sdi?
 
 question 2: how can it be that a kick-ass company like ghielmetti does
 not offer video patchbays that allow direct connection of coax
 installation cables, but require rear bnc connections instead?
 
 question 2b: is there an alternative for direct rear coax connection,
 thereby cutting out two potentially disruptive contact surfaces?
 
 question 3: i'm thinking of getting neutrik isolated bnc connectors (the
 d-type ones that are semi-recessed and thus well protected from clumsy
 passers-by). but their soldering lugs break the coaxial structure -
 cause for concern?
 
 question 4: do i really want to solder hf stuff (even though the
 voltages are not too high), or will it unsolder itself eventually? any
 recommendations as to procedures and tin?
 
 
 thanks in advance,
 
 
 jörn
 
 ___
 Linux-audio-dev mailing list
 Linux-audio-dev@lists.linuxaudio.org
 http://lists.linuxaudio.org/listinfo/linux-audio-dev
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] [OT] 3ghz coax and soldering...

2011-01-18 Thread Robin Gareus
On 01/19/2011 03:39 AM, gene heskett wrote:
 On Tuesday, January 18, 2011 09:16:00 pm Robin Gareus did opine:
 
 Hi Joern,

 If it is an option: use Leerrohre (DE for empty tubes ?) to make it
 future-proof, rather than to rely on cable-standards. In a few years you
 may want to replace coax with optical or whatever.
 
 I think that would translate to wave-guides in English

nope. I mean tubes like pipes in the wall or floor that allow one to
easily replace cables that run inside those tubes. It'd still be a major
re-wiring task but at least one can change the wires easily compared to
in-wall mounted cables.

Some trivial mechanical suggestion for a future-proof studio (not an
electrical one) at least if future  10 years and esp. if you don't want
to rip the whole studio apart for major renovation.

but wave-guides are a good drift.

 but check your 
 sizes, at 3Ghz, they are hundreds of times greater cross sectional area 
 than a coax would be.  Also, a lot less loss if properly terminated. 250 
 feet of it has less loss than 3 feet of this mini-coax in common use now, 
 but you would have at least $20k in that 250 feet too.
 
 In short, optical seems the best way to go. I helped setup a fiber link 
 several years ago that was 39 kilometers long, and the end to end optical 
 loss was 0.5 db.  You can't do that with wave-guide or a G-Line, and coax 
 would have likely been 60-80db of loss and much less bandwidth, we stuffed 
 4 television channels though that fiber.
 
 The only question I can answer is #4: The problem is reflections caused
 by skin-effect if you do solder them. Back in the days that I spent in
 the physics dept. we used solder-less crimp connectors for everything
 high-freq.
 
 I can't testify about 3Gb+ solder joints, but I do know that properly done, 
 they are invisible at .6 Ghz.  You may have to putz with it a bit, but it 
 CAN be done.

sure, one question is if it can be done by Joern and another is if
shelling out more euros for a proper crimp-on connectors is worth not to
worry about possible bad solder joints.

 And, I have yet to see a physics prof that actually knew which end of the 
 iron got hot, let alone could actually make a good joint.  Too many have 
 the attitude that their hands do not fit the tools and make no effort to 
 teach themselves how to do it.

LOL.
This was/is experimental physics in cooperation with
hardware-informatics. Eventually we designed custom ASICs and did the
PCBs and soldering of the prototypes ourself, pretty much everything is
non-standard since it must be able to work in a 5 Tesla magnetic field.
It is currently running inside the ALICE detector @LHC.

 I will allow the comment that when fabricating wave-guide parts and filters 
 for 7Ghz work, which I have done a few of decades ago, those were usually 
 silver soldered because the regular tin/lead solders surfaces oxidized with 
 time much worse, screwing with the skin effect losses.  Silver oxide may 
 look fugly, but is still a pretty fair conductor when frequencies are in 
 the realm where skin effect reigns supreme.  Just as true inside the wave-
 guide as it is on the skin of a coax conductor.
 

interesting. I do remember a drawer with at least 15 different kind of
solder. Now I know what that silver stuff in there was in there for :)

Cheers!
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Devs needed for opensource virtual analog softsynth idea

2011-01-07 Thread Robin Gareus
On 01/06/2011 08:57 AM, Sascha Schneider wrote:
 Hi Loki,
 
 2011/1/6 Loki Davison loki.davi...@gmail.com:
 On Mon, Jan 3, 2011 at 12:35 AM, Sascha Schneider
 ungleichkl...@gmail.com wrote:
 Hi folks,

 inspired by a plan of a german onlinemag called amazona.de
 I came up with the idea that a virtual analogue opensource softsynth
 nativly running on Linux
 would be really nice. (a nice filterbank too, but thats another thing)
 Amazona planned a complete synth based on userpolls (only in german, sorry):
 http://www.amazona.de/index.php?page=26file=2article_id=3191
 which is now realized as vst: (only german, too)
 http://www.amazona.de/index.php?page=26file=2article_id=3202

 I know that Zynaddsubfx/yoshimi has a really strong soundengine and I
 asked myself,
 if it would be possible to take this engine or the DSSI-API and build
 a polyphonic softsynth
 with a nice UI like the new calf plugins or guitarix, a bit like the
 loomer aspect, with some discoDSP,
 a bit from the Tyrell or the Roland Gaia SH-01 with midilearn, ..

 The problem I have are my programming skills, that are not good enough
 to code this kind of software
 by myself.

 Are there some LAD's willing to join/take/realise this idea??
 If there is interest I could translate the ideas of amazona.de and we
 all could share our visions for a
 new kind of controllable virtual analogue softsynth.

 kind regards, saschas
 ___
 Linux-audio-dev mailing list
 Linux-audio-dev@lists.linuxaudio.org
 http://lists.linuxaudio.org/listinfo/linux-audio-dev


 You do have the required skills, just need to choose the right tool.

 Actually that is my problem, my terrain till now was more in
 Webdevelopment - CMS-CRM, custom modules
 I did Java and Python, mainly object oriented.
 Most synth apps I see in Linux are coded in C, at least the engine,
 and stuff like pointers really don't fit into my brain .. might be my
 age ...

Something for a rainy afternoon:
http://cslibrary.stanford.edu/102/PointersAndMemory.pdf

Just reading Page 3 and 5 of the PDF should make it clear.

There's a lot of nice, tidy code you can write without knowing about
pointers. But once you learn to use the power of pointers, you can never
go back.


As for JAVA: there's a concept like C/C++ pointers it's called
references. Pointers are also common in many scripting langs. e.g in
PHP using 'variable' or the backslash operator in perl.

A bit over-simplified: These two main reason why some programming
languages are not suitable to write *reliable* audio-engines:
 - Memory allocation can not be done in real-time.
 - Some scripting langs (f.i. python) have a global lock (meaning
program execution can block and wait for some event - causing audio drop
out).

Besides C/C++ provides for fine-grained optimizations (such as binding
variables to CPU registers).

 User Ingen. It is far too awesome to describe in simple words. :)
 http://drobilla.net/blog/software/ingen/

 
 I will have a look at that ...
 Loki

 regards, Sascha

A higher level programming environment - e.g. http://faust.grame.fr/
does abstract many many gory details, but I don't know if the right tool
for the job at hand.

2c,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


[LAD] glib-threads and c-pointers - was Re: Devs needed for opensource virtual analog softsynth idea

2011-01-07 Thread Robin Gareus
On 01/07/2011 03:50 PM, Harry Van Haaren wrote:
 Hi!
 
 On Fri, Jan 7, 2011 at 2:01 PM, Robin Gareus ro...@gareus.org wrote:
 
 Something for a rainy afternoon:
 http://cslibrary.stanford.edu/102/PointersAndMemory.pdf

 
 Thanks for the pointer to that!  :-D
 Short concise very informative.. downloaded for future reference!
 
 There wouldn't happen to be something similar you know of for threads / Glib
 threading by chance?
 -Harry


Alas no, not really. Maybe someone else does.

I like the manual pages `man 3 pthread_create` and
`man pthread_mutex_init` - both do include SEE ALSO references as well
as example code.

As far as documentation with a bit of introduction goes: check out the
Description section of:
 http://library.gnome.org/devel/glib/unstable/glib-Threads.html
 http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html
 http://library.gnome.org/devel/glib/unstable/glib-Thread-Pools.html


There's been some glib-thread discussion on this list last July
(Subject: Can someone add 2 features to Kluppe? -
http://lists.linuxaudio.org/pipermail/linux-audio-dev/2010-July/028694.html
) and I whipped up a small example demonstrating glib thread creation
and mutexes: http://rg42.org/_media/wiki/async-timer2.c
It's not annotated but may get you started.

best,
robin


-- 
Robin Gareus
web: http://gareus.org/mail: ro...@gareus.org
lab: http://citu.fr/   chat: xmpp:rgar...@ik.nu

Public Key at http://pgp.mit.edu/  http://gareus.org/public.asc
Fingerprint : 7107 840B 4DC9 C948 076D 6359 7955 24F1 4F95 2B42
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


ALSA-plugins Torben's JACK patch

2010-11-27 Thread Robin Gareus
Hi *,

This might be rather sth. for pkg-alsa-devel - is anyone here subscribed
there? Does anyone here have a connection to ALSA-devs?

Torben Hohn has recently /greatly improved/ the JACK alsa-plug [1].
His patch only touches src/pcm_jack.c [2]. It has not yet been merged
upstream [3] but JACK users would really benefit from this.

For 64studio I'm thinking about rolling a small package that simply
diverts /usr/lib/alsa-lib/libasound_module_pcm_jack.so from
libasound2-plugins until things have settled down upstream.
That'd be a somewhat ugly solution but I still consider it less ugly
than branching alsa-plugins downstream.

Are any of you pro-audio packagers interested in helping out?

Cheers!
robin

[1]
http://lists.linuxaudio.org/pipermail/linux-audio-user/2010-October/073562.html

[2] git://hochstrom.endofinternet.org/alsa-plugins.git

[3] http://git.alsa-project.org/?p=alsa-plugins.git;a=summary

___
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/pkg-multimedia-maintainers


Re: [LAD] [LAA] [ANN] gjacktransport 0.5.0

2010-11-15 Thread Robin Gareus
On 11/15/10 19:03, Niels Mayer wrote:
 On Fri, Nov 12, 2010 at 9:50 AM, Robin Gareus ro...@gareus.org wrote:
 http://gjacktransport.sourceforge.net/ is a tool that provides graphical
 control over JACK-transport [1].
 
 IAt some point, either from installing version 0.4 or 0.5, whenever I
 browsed a directory out of the web browser, such as the show in
 folder option for downloaded files, gjacktransport would get invoked
 instead.
 
 I finally figured out what happened. Somehow, the following setting
 got installed along with gjacktransport:
 KDE's System Settings - File Manager - gjacktransport
 
 Whereas it should have been set to dolphin .

LOL :)

 Investigating further, I noticed that gjacktransport got added as a
 viewer for file type inode/directory which seems to be a bug.

It sounds like it - but I can't see how gjacktransport is involved in
this. GJT uses a simple autotools install script and it only deploys two
executables and gjacktransportrc + gjackclockrc to @sysconf...@.


 I'm
 not sure why adding it as a MIME type would also select it as the
 default directory viewer in KDE, but that's what I've been seeing. But
 perhaps my system has been cobbled on too much as it is a hybrid of
 KDE and Gnome.
 
 In either case, I finally figured out the issue, and fixed it for
 myself. Just thought I'd share in case others had the same problem,
 and hopefully, if this is a bug in gjacktransport, that'll get fixed
 as well.
 
 Thanks,
 Niels
 http://nielsmayer.com
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


[PD] [PD-announce] Linux Audio Conference - Call for Participation - website

2010-11-02 Thread Robin Gareus
[Apologies for cross-postings] [Please distribute]

Paper-submission, call-for-music and registration are now open
for the Linux Audio Conference 2011 - May 6-8 2011, Maynooth, Ireland

More information: http://lac.linuxaudio.org/2011/

As in previous years, we will have a full program of talks, workshops
and music.

The Linux Audio Conference 2011 will include several concerts. We are
looking for music that has been produced or composed entirely or mostly
using GNU/Linux or other Open Source music software for:
* The Electroacoustic Music Concerts
* The Linux Sound Night
* Sound installations

___
Pd-announce mailing list
pd-annou...@iem.at
http://lists.puredata.info/listinfo/pd-announce

___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [LAD] [LAA] [ann] gjacktransport 0.4.0

2010-10-29 Thread Robin Gareus
On 10/29/10 20:25, alex stone wrote:
 On Fri, Oct 29, 2010 at 10:22 PM, Niels Mayer nielsma...@gmail.com wrote:
 On Tue, Oct 26, 2010 at 10:05 AM, Robin Gareus ro...@gareus.org wrote:
 http://gjacktransport.sourceforge.net/ is a tool that provides graphical

 Thanks!! Works great and provides functionality I was looking for just 
 recently.

 One small nitpick is that when the transport is rolling, the area
 displaying the rolling  HH:MM:SS.mmm timecode jiggles around since the
 font is proportionally spaced. (at least w/ my display and fonts and
 setup). Monospaced fonts for such rolling values can prevent this
 minor visual distraction.

 -- Niels
 http://nielsmayer.com
 ___
 Linux-audio-dev mailing list
 Linux-audio-dev@lists.linuxaudio.org
 http://lists.linuxaudio.org/listinfo/linux-audio-dev

 
 gjackclock -C black -c yellow -S Sans
 
 Smooth as silk...
 
 Alex.

I think Nils is refering to gjacktransport not gjackclock.

The former is using the gtk-theme-fonts and there's no dedicated
config-option for gjacktransport's SMPTE font, yet.

You should be able to override it with some fancy GTK-config or by
changing the desktop-theme until I get around to fix it.
Thanks for the report. I did not notice it because it's not an issue
with the gtk-theme here.

I do have a few more updates in the queue: both apps still need a man
page, the website is out-of-date and Paul Davis suggested to make
gjackclock's font scale with window-size...

stay tuned,
robin

___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] [LAA] [ann] gjacktransport 0.4.0

2010-10-29 Thread Robin Gareus
On 10/29/10 20:39, Robin Gareus wrote:
 On 10/29/10 20:25, alex stone wrote:
 On Fri, Oct 29, 2010 at 10:22 PM, Niels Mayer nielsma...@gmail.com wrote:
 On Tue, Oct 26, 2010 at 10:05 AM, Robin Gareus ro...@gareus.org wrote:
 http://gjacktransport.sourceforge.net/ is a tool that provides graphical

 Thanks!! Works great and provides functionality I was looking for just 
 recently.

 One small nitpick is that when the transport is rolling, the area
 displaying the rolling  HH:MM:SS.mmm timecode jiggles around since the
 font is proportionally spaced. (at least w/ my display and fonts and
 setup). Monospaced fonts for such rolling values can prevent this
 minor visual distraction.

 -- Niels
 http://nielsmayer.com
 ___
 Linux-audio-dev mailing list
 Linux-audio-dev@lists.linuxaudio.org
 http://lists.linuxaudio.org/listinfo/linux-audio-dev


 gjackclock -C black -c yellow -S Sans

 Smooth as silk...

 Alex.
 
 I think Nils is refering to gjacktransport not gjackclock.
 
 The former is using the gtk-theme-fonts and there's no dedicated
 config-option for gjacktransport's SMPTE font, yet.
 
 You should be able to override it with some fancy GTK-config or by
 changing the desktop-theme until I get around to fix it.
 Thanks for the report. I did not notice it because it's not an issue
 with the gtk-theme here.
 
 I do have a few more updates in the queue: both apps still need a man
 page, the website is out-of-date and Paul Davis suggested to make
 gjackclock's font scale with window-size...

Font-scaling with window-size (gjackclock)
and fixed (but not yet configurable) SMPTE font (gjacktransport)
is in SVN:

https://gjacktransport.svn.sourceforge.net/svnroot/gjacktransport/trunk

 stay tuned,
 robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] [LAA] [ann] gjacktransport 0.4.0

2010-10-29 Thread Robin Gareus
On 10/29/10 22:06, Niels Mayer wrote:
 On Fri, Oct 29, 2010 at 12:37 PM, Robin Gareus ro...@gareus.org wrote:
 and fixed (but not yet configurable) SMPTE font (gjacktransport)
 is in SVN:

 https://gjacktransport.svn.sourceforge.net/svnroot/gjacktransport/trunk
 
 This fix both improves the looks and doesn't wobble around. Thanks!
 For some reason, although I don't like unecessary software emulations
 of the way hardware looks (rivets, screws, etc) having a rolling
 timecode display use a realistic-looking red 8-segment-LED-looking
 font is somehow reassuring and suggestive of what's being looked at.
 Having a distinctive monospaced font like you're using is the next
 best thing, and easier to implement.

IMHO the best solution would be to look for a 7-segment font. There must
be one freely available. If not it can't be too hard to make one.

Anyway while they may still around in the audio-world, in Film Post-Prod
7seg displays are not that common anymore. Timecode is rendered nicely
on the picture :)

FWIW: if you're into tinkering: I built a jack-transport and LTC display
using real 7 segment displays and a arduino a while ago:
http://rg42.org/gitweb/?p=arduino.git;a=tree

 Niels
 http://nielsmayer.com
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Bug#600751: RFP: libltcsmpte -- linear timecode and framerate convertion library

2010-10-19 Thread Robin Gareus
Package: wnpp
Severity: wishlist


* Package name: libltcsmpte
  Version : 0.4.2
  Upstream Author : Robin Gareus ro...@gareus.org
* URL : http://ltcsmpte.sourceforge.net/
* License : LGPL
  Programming Lang: C
  Description : linear timecode and framerate convertion library

Linear (or Longitudinal) Timecode (LTC) is an encoding of SMPTE timecode data 
as a Manchester-Biphase encoded audio signal. The audio signal is commonly 
recorded on a VTR track or other storage media.
libltcsmpte provides functionality to both encode and decode LTC from/to SMPTE
and can perform framerate conversion tasks.



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#600751: RFP: libltcsmpte -- linear timecode and framerate convertion library

2010-10-19 Thread Robin Gareus
Package: wnpp
Severity: wishlist


* Package name: libltcsmpte
  Version : 0.4.2
  Upstream Author : Robin Gareus ro...@gareus.org
* URL : http://ltcsmpte.sourceforge.net/
* License : LGPL
  Programming Lang: C
  Description : linear timecode and framerate convertion library

Linear (or Longitudinal) Timecode (LTC) is an encoding of SMPTE timecode data 
as a Manchester-Biphase encoded audio signal. The audio signal is commonly 
recorded on a VTR track or other storage media.
libltcsmpte provides functionality to both encode and decode LTC from/to SMPTE
and can perform framerate conversion tasks.



-- 
To UNSUBSCRIBE, email to debian-wnpp-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/20101019182711.10011.77187.report...@soyuz.local



Re: [LAD] jackd and usb hub

2010-10-13 Thread Robin Gareus
On 10/13/10 08:58, Luis Garrido wrote:
 PS. Did you have luck with your UA-25?

 Nothing new, I am waiting to get my hands on different hubs to see if
 there is any difference.

There is. I just got my hands on both a USB2 hub and a PCMCIA [1] card.

With the USB2 hub I also get
ALSA urb.c:856: cannot submit datapipe for urb 0, error -28: not enough
bandwidth
ALSA midi.c:214: urb status -32
messages and jackd won't start.

but connecting the UA-25 directly to the PCMCIA/USB2 card works if I
also connect some external power supply to the PCMCIA card. Did you try
that?

It also still works with an old USB1.1 hub.

HTH,
robin

[1] it's some cheap mycom thingy which shows up as

16:00.0 USB Controller: NEC Corporation USB (rev 41)
16:00.1 USB Controller: NEC Corporation USB (rev 41)
16:00.2 USB Controller: NEC Corporation USB 2.0 (rev 02)

Subsystem: 1033:0035 (ohci_hcd) and
Subsystem: 13e6:1201 (ehci_hcd)
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] jackd and usb hub

2010-10-13 Thread Robin Gareus
On 10/13/10 20:01, Luis Garrido wrote:
 On Wed, Oct 13, 2010 at 2:02 PM, Robin Gareus ro...@gareus.org wrote:
 With the USB2 hub I also get
 ALSA urb.c:856: cannot submit datapipe for urb 0, error -28: not enough
 bandwidth
 ALSA midi.c:214: urb status -32
 messages and jackd won't start.
 
 Does the hub cause this problem also through a regular USB port (not PCMCIA)?

yes it does.

 but connecting the UA-25 directly to the PCMCIA/USB2 card works if I
 also connect some external power supply to the PCMCIA card. Did you try
 that?
 
 Believe it or not, that combination hadn't crossed my mind yet: using
 the brand new shiny and otherwise useless hub as a 16 € glorified 5V
 regulator between its power supply and the PCMCIA card. Why the heck
 not, eh? One fewer layer, too.
 
 Well, there's my workaround, thanks Mr. Gareus! But (it couldn't have
 been that easy, could it?) only works on one of the two USB/PCMCIA
 ports. 

Weird. Well, just use the one that works :-p

 Trying to use the other one gets me this nice message:
 
 ALSA sound/usb/usbaudio.c:1348: 40:1:1: usb_set_interface failed
 
 Bleh.
 
 Anyone interested in a moderately used Edirol UA-25 interface with
 some occasional -74 dB noise at 13.1 kHz, and a penchant for serial
 (bus) killing?

what are you going to do? get a Firewire device?

 Anyway, I think this hub issue is worth looking into. Old USB 1.1 hubs
 don't mess with realtime audio and new USB 2.0 do? 

It looks like (in my case) the hub is actually translating from USB2 to
USB1.1 and thereby causes some overhead.

If I connect both an external HDD and a cheap (usb1.1) mouse to the hub
(which is connected to the USB port of my laptop) the HDD still gets max
throughput (30MB/s).

 Now that's not
 exactly what I'd call an improvement. What can we expect from USB 3.0?
 
 Cheers,
 
 L
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Some new things to play with

2010-10-12 Thread Robin Gareus
On 10/11/10 16:35, f...@kokkinizita.net wrote:
 On Mon, Oct 11, 2010 at 03:47:43PM +0200, Robin Gareus wrote:
   
 That's 3 steps to much :)
 
 Are Linux users becoming that lazy ? :-)

LOL. It's the other way 'round: I'm using GNU/Linux because I'm lazy.
Solve things once, make a script and be done with it.

 With git it's also easy to keep more than one repo: fi. a private with
 all the small changes and a public where you only push out releases.
 
 I don't think that my provider (hosteurope) provides a git server.

There's a lot free git hosting services (from github over gitorious to
sourceforge,..).

 As for the 'sudo make install' - I'm quite reluctant to run that
 command.
 
 I can't help to spot some contradition there. You would not trust
 'sudo make install', even if you can verify very easily what it's
 going to do (just a few lines in the Makefile).

or by running  `make -n install; echo really continue? CTRL-C|ENTER
read -n 1 ; make install`

 But you would trust
 a single-command, almost automatic update ? This can do whatever it
 wants with your system, even if going through a managed package,
 and it's less easy to verify.

Packaging happens with 'fakeroot', but yeah you have a point there.

However my motivation for bringing all this up in the first place was
not about trust but about convenience.
I do trust your code and even trust you with my door-key.
Are you hinting I should be more careful in the future with installing
your software? 8-)

Anyhow, if there's not going to be a public git or svn repo I'll just
extend my download/compile/package/install script. Actually less work
than typing this email..

Cheers!
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Some new things to play with

2010-10-11 Thread Robin Gareus
On 10/10/10 22:10, f...@kokkinizita.net wrote:

 More info at http://www.kokkinizita.net/linuxaudio

Hi Fons,

Are they also available from some repository (svn, git,..)?

watching http://www.kokkinizita.net/linuxaudio/downloads/index.html
and upgrading apps there (which are not [yet] in common distributions)
by hand is kind of tiresome, even more so since your Makefiles do not
support 'make uninstall'.

The nice thing is that your Makefiles are pretty clean. using dh_make,
DESTDIR and quilt (change PREFIX to /usr) makes it easy to debianize
them for local packaging; however if one could use git-buildpackage it
would be even nicer.

2c,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Some new things to play with

2010-10-11 Thread Robin Gareus
On 10/11/10 14:33, f...@kokkinizita.net wrote:
 On Mon, Oct 11, 2010 at 01:02:09PM +0200, Robin Gareus wrote:
 
 Are they also available from some repository (svn, git,..)?
 
 No. Most projects here are in svn and I'm exploring git
 for a few of them. But the repositories are not nor will
 ever be on a public server. There is no team development
 on any of my projects, and I'm not planning any. 

Well, as outlined below I am suggesting git/svn not as means for
concurrent/team development but for providing a canonical
version-independent URL that can be tracked for each of the projects.

A symlink 'zita-rev1-latest.tar.bz2' could provide the former, but one
won't be able to tell if there's any update without actually downloading
it or checking the mtime with HTTP-HEAD.

 watching http://www.kokkinizita.net/linuxaudio/downloads/index.html
 and upgrading apps there (which are not [yet] in common distributions)
 by hand is kind of tiresome, even more so since your Makefiles do not
 support 'make uninstall'.
 
 Well... they are *source* packages. All it takes is download,
 unpack, cd, sudo make install. 

That's 3 steps to much :) Besides: The issue with download is that the
next version number is not predictable. One needs to use a web-browser.
If it was a repository-checkout it'd be a one-time setup and just
calling a single 'pull  build' script afterward.

With git it's also easy to keep more than one repo: fi. a private with
all the small changes and a public where you only push out releases.

As for the 'sudo make install' - I'm quite reluctant to run that
command. Usually a 'make' suffices for testing.
..and if I can't wait until a tool makes it into Debian I roll my own
package for the meantime which provides for clean removal later on.

 The 'make remove' is a good idea,
 I will be adding it to new releases.

The commonly used target (autotools) is make uninstall
(not make remove)

 OTOH, the installed size of
 e.g. zita-rev1 (binary and *.png) is less than 100k, so little
 is gained by removing it. 

The motivation is not about recovering disk-space about being able to
keep the system clean.

Some of my earlier test|development machines|chroots quickly became
messed up with different versions in /usr/lib /usr/local/lib and after a
few weeks or month there was no hope but to re-install the thing.
You may know this situation.

The overhead of rolling custom packages is small compared to
re-installing or cleaning up by hand.

 The nice thing is that your Makefiles are pretty clean. using dh_make,
 DESTDIR and quilt (change PREFIX to /usr)
 
 you can define PREFIX on the make command line as well, there's
 no need to modify the Makefile

aaw right.
PREFIX=$HOME/usr make install # does not work but
make PREFIX=$HOME/usr install # does

Thanks for the hint.

 makes it easy to debianize them for local packaging; however if
 one could use git-buildpackage it would be even nicer.
 
 Installer managed packages (taking care of dependencies etc.)
 should be provided by the packagers of your distro, there's
 no way I can do this. I don't even provide them for the distro
 I use myself.
 

I agree programmers should not be concerned about packaging. I was just
suggesting a few trivial changes that'll make live easier for PPL
packaging (either for distros or for their own benefit).

Anyway congratulations on these effects. I've only tested the reverb  (I
don't [yet] have use for an autotuner) and it's brilliant.
I'm already looking forward to 'rack GUI'. Keep up the good work.

Cheers!
robin

PS.
Do you know or have any mirrors of kokkinizita.net? It'd be a pity if
all the great stuff on there would be lost in some accident.
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] jackd and usb hub

2010-10-09 Thread Robin Gareus
On 10/09/10 11:40, Luis Garrido wrote:
 Has someone else here managed to successfully run jack over USB audio
 through an external hub?

Hi Luis,

I'm just trying this and it works. jackd at 48k*1024*3 produces
occasional x-runs which it otherwise does not.

Jackd even starts up with 48k*64*3 and runs a freeverb in-out with no
x-run! 5mins at the time of writing this email.


Laptop-USB - Hub (old USB1.1) - UA-25

#lsusb -t:
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
|__ Port 1: Dev 8, If 0, Class=hub, Driver=hub/4p, 12M
|__ Port 3: Dev 9, If 0, Class=vend., Driver=snd-usb-audio, 12M
|__ Port 3: Dev 9, If 1, Class=vend., Driver=snd-usb-audio, 12M
|__ Port 3: Dev 9, If 2, Class=vend., Driver=snd-usb-audio, 12M
...

#uname -a
Linux soyuz 2.6.33.7-rt29 #1 SMP PREEMPT RT Fri Sep 17 04:25:08 CEST
2010 i686 GNU/Linux

#cat /etc/debian_version
squeeze/sid

#jackd --version
jackdmp 1.9.6

on a 3 1/2 year old Thinkpad X60s.

I had a PCMCIA USB2 card but I gave that away to a friend, sorry I can
not test this at the moment.

have a nice weekend,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [oauth] Accessing Twitter using liboauth

2010-10-03 Thread Robin Gareus
On 09/23/10 03:03, SJM wrote:
 Hi there,
 
 I was wondering if anyone has had success in accessing Twitter using
 liboauth (the C library). I have been able to authenticate against the
 Twitter Oauth API, but when I want to send a status message I get a
 signing error.
 
 HTTP-reply: ?xml version=1.0 encoding=UTF-8?
 hash
 request/statuses/update.xml?
 oauth_consumer_key=xamp;oauth_nonce=WR5oK1s9HxdZhM2ugZ95amp;oauth_signature_method=HMAC-
 SHA1amp;oauth_timestamp=1285189327amp;oauth_token=xamp;oauth_version=1.0amp;status=128518924112851893121285189313TESTamp;oauth_signature=aDRA99d2CY55gjL7kU1X
 %2FaneqtQ%3D/request
   errorIncorrect signature/error
 /hash
 
 I (triple) checked all my keys and secrets and the order of items in
 the request matches that in the signing URL. liboauth all works for
 the authentication, but the Twitter 'service' API just can't seem to
 agree with  me with regards the signature.
 
 I suspect that it may be related to UTF-8 encoding. Is there something
 I need to set in the HTTP header for this?
 
 Any help would be most appreciated,

we did figure this out off-list: but for future reference:


On 09/25/10 06:52, Stan Malachowski wrote:
 Yes - a typo. http://api.twitter.com/statuses/update.xml works, but
 http://api.twitter.com/1/statuses/update.xml is in the Twitter docs.

 Your lib works fine. If I had done the POST in the first place I
 would have saved a couple of days.
 
 Stan
 
 robin

-- 
You received this message because you are subscribed to the Google Groups 
OAuth group.
To post to this group, send email to oa...@googlegroups.com.
To unsubscribe from this group, send email to 
oauth+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/oauth?hl=en.



[PD] [ANN] Linux Audio Conference 2011

2010-10-01 Thread Robin Gareus
sorry for x-posting.


Dear Linux Audio developer, user, composer, musician, philosopher
and anyone else interested, you are invited to the...

Linux Audio Conference 2011
The Open Source Music and Audio Software Conference

May 6-8 2011
Music Department, National University of Ireland, Maynooth
Maynooth, Co.Kildare, Ireland
http://music.nuim.ie

As in previous years, we will have a full programme of talks,  workshops
and music.
Two calls will be issued, a Call for Papers (see below) and Call for
Music (soon to be announced).

Further information will be found in the LAC2011 website (under
construction).

 CALL FOR PAPERS =

Papers on the following categories (but not limited to them) are now
invited for submission:

* Ambisonics
* Education
* Live performance
* Audio Hardware Support
* Signal Processing
* Music Composition
* Audio Languages
* Sound Synthesis
* Audio Plugins
* MIDI
* Music Production
* Linux Kernel
* Physical Computing
* Interface Design
* Linux Distributions
* Networked Audio
* Video
* Games
* Media Art
* Licensing

We very much welcome practical papers resp. software demos (how I use
Linux Audio applications to create my music/media art).

Paper length: 4-8 pages, with abstract (50-100 words) and up to 5  keywords.
Language: English.
The copyright of the paper remains with the author, but we reserve the
right to create printed proceedings from all submitted (and accepted)
papers.

IMPORTANT DATES:
Submission deadline: 15/January 2011
Notification of acceptance: 7/March 2011
Camera-ready papers: 1/April 2011

Queries: Victor Lazzarini, NUI Maynnooth (victor.lazzar...@nuim.ie)

___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [LAD] question about multithreaded externals in Pd

2010-10-01 Thread Robin Gareus
Hi Ico,

just quick:

pthread_create() returns after the thread context has been created; but
the actual thread-function is not run directly.

The main function may continue before the actual thread is run.

In your case the pd_cwiid_doConnect() can be called before the
pd_cwiid_pthreadForAudioUnfriendlyOperations() enters the while() loop.

That seems to be a problem - it's too much code to dig though for me at
the moment to tell why this is so -  but since usleep() seems to solve
the issue, it probably is. (quick check: does it also crash if you
usleep() after the if (argc==2) {}; just before the return(x); ?

`man 3 pthread_yield` is better that usleep(). it's basically a
usleep(minimum-time-needed-to-run-other-threads).

Another option is to wait after thread-creation in the parent on a
barrier or lock that is released by the child-thread when it starts.

2c,
robin

On 10/02/10 02:36, Ivica Ico Bukvic wrote:
 Hi all,
 
 I am wondering if anyone can shed some light on the following
 predicament. I am by no means a multi-threading guru so any insight
 would be most appreciated.
 
 The following are relevant excerpts from the code of an external. AFAIK
 the external initializes mutex and cond and spawns a secondary worker
 thread that deals with audio-unfriendly (xrun-causing) write operations
 to the wiimote and terminates it when the object is destructed waiting
 for the thread to join back and then destroying the mutex.
 
 Now, if I add a bit of usleep right after the thread has been spawned as
 part of the constructor (as included below) the external seems very
 stable (e.g. cutting and pasting it as fast as keyboard allows, or in
 other words constructing and destructing instances of it as fast as
 possible does not result in a crash). Yet, when one does not use usleep
 right after spawning the secondary (worker) thread in the constructor,
 the whole thing is very crash-prone, almost as if the spawning of thread
 does not go well unless given adequate time to do get things all into
 sync, so to say, even though this makes to me no sense as the way I
 understand it the constructor does not move ahead until pthread_create
 does not return a value (which in this case I am not bothering to read).
 
 Curiously, when not using usleep, a crash may occur right at creation
 time, at any point while the object exists, and even as late as during
 its destruction. Any ideas?
 
 P.S. I am also including the entire file for those interested in trying
 it out.
 
 Best wishes,
 
 Ico
 
 Relevant excerpts (in random order and incomplete to allow for greater
 legibility):
 
 //struct defining the object
 typedef struct _wiimote
 {
   t_object x_obj; // standard pd object (must be first in struct)
 
   ...
   
   //Creating separate threads for actions known to cause sample drop-outs
   pthread_t unsafe_t;
   pthread_mutex_t unsafe_mutex;
   pthread_cond_t unsafe_cond;
 
   t_float unsafe;
 
   ...
 
   t_float led;
 
   ...
 
 } t_wiimote;
 
 
 //constructor
 static void *pd_cwiid_new(t_symbol* s, int argc, t_atom *argv)
 {
   ...
 
   x-led = 0;
 
   // spawn threads for actions known to cause sample drop-outs
   threadedFunctionParams rPars;
   rPars.wiimote = x;
   pthread_mutex_init(x-unsafe_mutex, NULL);
   pthread_cond_init(x-unsafe_cond, NULL);
   pthread_create( x-unsafe_t, NULL, (void *)
 pd_cwiid_pthreadForAudioUnfriendlyOperations, (void *) rPars);
 
   //WHY IS THIS NECESSARY? I thought that pthread_create call will first
 finish spawning thread before proceeding
   usleep(100); //allow thread to sync (is there a better way to do this?)
   
   ...
 }
 
 //destructor
 static void pd_cwiid_free(t_wiimote* x)
 {
   if (x-connected) {
   pd_cwiid_doDisconnect(x); //this one has nothing to do with 
 thread but
 rather disconnects the wiimote
   }
 
   x-unsafe = -1; //to allow secondary thread to exit the while loop
 
   pthread_mutex_lock(x-unsafe_mutex);
   pthread_cond_signal(x-unsafe_cond);
   pthread_mutex_unlock(x-unsafe_mutex);
 
   pthread_join(x-unsafe_t, NULL);
   pthread_mutex_destroy(x-unsafe_mutex);
 
   ...
 }
 
 //worker thread
 void pd_cwiid_pthreadForAudioUnfriendlyOperations(void *ptr)
 {
   threadedFunctionParams *rPars = (threadedFunctionParams*)ptr;
   t_wiimote *x = rPars-wiimote;
   t_float local_led = 0;
   t_float local_rumble = 0;
   unsigned char local_rpt_mode = x-rpt_mode;
 
   while(x-unsafe  -1) {
   pthread_mutex_lock(x-unsafe_mutex);
   if ((local_led == x-led)  (local_rumble == x-rumble) 
 (local_rpt_mode == x-rpt_mode)) {
   pthread_cond_wait(x-unsafe_cond, x-unsafe_mutex);
   }
 
   if (local_led != x-led) {
   local_led = x-led;
   //do something
   }
   }
   if 

Re: [LAD] question about multithreaded externals in Pd

2010-10-01 Thread Robin Gareus
On 10/02/10 03:13, Ivica Ico Bukvic wrote:
 Many thanks for the clarification Robin, really appreciate it!
 
 One more thing I realized, isn't the secondary thread effectively blocking 
 the lock on the main thread because the mutex_lock is placed before the cond 
 call or is this the right way to do it? Namely, should secondary thead have 
 the following structure:
 
 While loop {
   mutex_lock
   state cond --this is where the thread supposedly waits (does this have 
 to be while loop or a simple if will do as is the case in my code?)
   do something
   mutex_unlock
 }
 Thread exit

This looks about right. You need to aquire the lock before calling
pthread_cond_wait() which then release the lock, waits for the condition
to be signaled and acquires the lock again.

Read the first paragraph of `man 3 pthread_cond_wait`

..what could however happen is that pthread_cond_wait() returns with an
error, without acquiring the lock!

HTH,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Paul's Extreme Sound Stretch

2010-09-30 Thread Robin Gareus
On 09/30/10 09:40, Patrick Shirkey wrote:
 
 On Thu, September 30, 2010 12:01 am, Louigi Verona wrote:
 Hey guys!

 I have two questions.

 1. How does Sound Stretch work? It is incredible the way it can produce a
 tone which has no noticeable vibrations, just a wall of sound. How is that
 accomplished, in layman terms if possible :)
 
 It grabs a section of the audio and copies/multiplies it then appears to
 apply some pretty neat math to smooth it all out funnily enough using a
 selection of windows to get the best result.

Are you sure? Where did you get that info from?

Just skimming over Stretch.cpp gives me the impression that it's based
on Fourier analysis and re-sythesis.
http://en.wikipedia.org/wiki/Fourier_analysis

The process() loop looks like:
{
  apply_window();
  smp2freq(); // Fourier Analysis
  process_spectrum();
  freq2smp(); // Fourier Synth
}

In layman terms:

There's a smart French guy by the name of Joseph F. sitting inside it:
If you play him some audio: He thinks: Hey, this is actually just a few
simple sine-waves added together (superpositioned), he quickly
calculates their frequencies and amplitudes and asks Now, you want to
change the duration? easy: I'll generate some new sine-waves with
these frequencies and amplitudes, how long did you say you want?

(The smart thing about this French guy is that he actually speaks fluent
English - Sorry I could not resist :)

 
 2. Can this program be jackified and is that a lot of work?

 
 It uses portaudio. Doesn't that have a jack output?

Yes, but its implementation is not very well done.

 Otherwise yes, he has designed it so that adding jack support would be
 fairly trivial.
 

Indeed, to change the integrated player to output to JACK would be
trivial. It currently uses the PortAudio's StreamCallback which is very
similar to JACK's process callback.

Using it to do live timestreching with JACK (jack-in - jack-out) is
AFAICT impossible because:

details
If you feed it N samples (or seconds) of audio you end up with M samples
(or seconds) with  M  N.

One could do a kludge:
eg. for a 1:10 time stretch with continuous output:
  - read 1 sec of audio from the input
  - ignore 9 secs of the input
but I don't think this will be useful.
/details

best,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Paul's Extreme Sound Stretch

2010-09-30 Thread Robin Gareus
On 09/30/10 13:15, Dave Phillips wrote:
 Robin Gareus wrote:

 In layman terms:

 There's a smart French guy by the name of Joseph F. sitting inside it:
 If you play him some audio: He thinks: Hey, this is actually just a few
 simple sine-waves added together (superpositioned), he quickly
 calculates their frequencies and amplitudes and asks Now, you want to
 change the duration? easy: I'll generate some new sine-waves with
 these frequencies and amplitudes, how long did you say you want?

 (The smart thing about this French guy is that he actually speaks fluent
 English - Sorry I could not resist :)
   
 
 I recall a brief exchange on a DSP list that went something like this:
 
 Q: Can anyone explain the FFT in simple terms ?
 A. No.

LOL.

basically, Fourier proved that any signal can be represented a sum of
sine-waves.

(well, that's not entirely true: it needs to be a periodic signal, but
the period length can approach infinity...)

FFT is just the implementation of that theorem (or Principle?!)

 I have read and understood some articles and descriptions of the FFT.
 Mark Dolson's original article on the phase vocoder (in the Computer
 Music Journal V10,#4, Winter 1986), is still a good introduction for
 computer-based musicians, though it may be a bit too technical by
 contemporary standards.
 
 Louigi, take a look at some descriptions of what an FFT does. It does
 use windows but you'll have to do some homework to find out what's
 meant by the term in this context.
 
 http://en.wikipedia.org/wiki/FFT
 
 Beware, that page is a maths page, it's not directly concerned with the
 use of the FFT in music/sound applications.

It may help to make some connection with the equations on
http://en.wikipedia.org/wiki/Fourier_transform if you know that

  sin (x) = ImaginaryPartOf ( e^(i x) )
  cos (x) = RealPartOf ( e^(i x) )
  where i = sqrt(-1);

 And btw, I agree wrt Paul's Extreme Stretch, it's a great tool.

It is indeed. Kudos to Paul.


FWIW, http://arss.sourceforge.net/ works similarly. It provides
sound-to-image and image-to-sound functionality using FFT.

You can also use it to do time-stretching but it's actually more fun to
toy around with it: http://arss.sourceforge.net/examples.shtml


 Best,
 
 dp
 
 ___
 Linux-audio-dev mailing list
 Linux-audio-dev@lists.linuxaudio.org
 http://lists.linuxaudio.org/listinfo/linux-audio-dev
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Paul's Extreme Sound Stretch

2010-09-30 Thread Robin Gareus
On 09/30/10 13:35, Louigi Verona wrote:
 As for JACK support would anyone be interested in adding it, if it is
 trivial? Would love to have it in my audio chain.

At second glance: it's not going to be that easy. The built-in player
makes use of mutex-locks which would need to be replaced with a
[lock-free] ringbuffer (Adding JACK I/O is still trivial but without
lock-free buffers paulstrech would be able to block jack-processing and
cause x-runs).


That'd be a good job for someone who wants to get started with JACK and
C/C++ programming.


I don't know if Nasca Octavian Paul is subscribed to this list and if
he's still actively developing it; but it would be the best to ask him
first.

The missing ringbuffer is most likely the cause of the already known bug
sometimes the playback is choppy listed at the bottom of
http://hypermammut.sourceforge.net/paulstretch/


If no-one else volunteers I could do it to take get my mind off things
during some short-distance flights next week-end.

Cheers!
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Paul's Extreme Sound Stretch

2010-09-30 Thread Robin Gareus
On 09/30/10 20:52, Philipp Überbacher wrote:
 Excerpts from Louigi Verona's message of 2010-09-30 09:01:24 +0200:
 Hey guys!

 I have two questions.

 1. How does Sound Stretch work? It is incredible the way it can produce a
 tone which has no noticeable vibrations, just a wall of sound. How is that
 accomplished, in layman terms if possible :)
 2. Can this program be jackified and is that a lot of work?
 
 How the heck did you get it to build? It's been how many years since the
 last release?

~1.5y - April 2009.

add
#include string.h
to the top of Input/MP3InputS.cpp
and run
  ./compile_linux_fftw.sh


best,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Paul's Extreme Sound Stretch

2010-09-30 Thread Robin Gareus
On 09/30/10 20:49, Philipp Überbacher wrote:
 Excerpts from fons's message of 2010-09-30 14:29:01 +0200:
 On Thu, Sep 30, 2010 at 01:53:44PM +0200, Robin Gareus wrote:

 Q: Can anyone explain the FFT in simple terms ?
 A. No.

 LOL.

 basically, Fourier proved that any signal can be represented a sum of
 sine-waves.

 (well, that's not entirely true: it needs to be a periodic signal, but
 the period length can approach infinity...)

 FFT is just the implementation of that theorem (or Principle?!)

 The original Fourier Transform as invented by the smart French
 guy of the same name does operate on continuous (as opposed to 
 sampled) data from -inf to +inf. The 'spectrum' interpretation
 came later. It was originally a mathematical tool used to find
 integrals of functions that would be impossible to integrate in
 closed form, and Fourier himself used it to study the propagation
 of heat in solids. 

Thanks a lot for this comprehensive history lesson.

Back when I was introduced to FT in some Physics lecture I was happy
that I was able to use it and completely forgot to check the history :)
Probably related to why I favored experimental Physics over Theory.

 The DFT (Discrete FT) is the same thing operating on sampled 
 signals. It is usually also limited in time.

 The FFT (Fast FT) is an algorithm to compute a finite-length
 DFT very efficiently.

 The 'spectrum' interpretation is really quite ambiguous.

 You could take the DFT of e.g. a complete Beethoven symphony.
 The result is the 'spectrum' and in theory this is fixed over
 infinite time - the frequencies that are present according to
 this spectrum are there *all the time*. But that is not how
 we would perceive the music - we do not hear a constant mash
 of all frequencies, the spectrum as we hear it changes over
 time.

 Ciao,

 -- 
 FA

 There are three of them, and Alleline.
 
 And I guess this is where the windowing comes in. Calculate the spectrum
 of small pieces instead.

correct.

Furthermore there are different kind of windows (here a window refers to
a block of audio-samples) and windows can overlap. That's where it gets
complicated.

The most commonly known window shapes are Rectangular window, Gaussian ,
Hann- and Hamming windows (the last two are cosine shapes) which allow
to avoid discontinuities when processing blocks.

Cheers!
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Paul's Extreme Sound Stretch

2010-09-30 Thread Robin Gareus
On 09/30/10 22:41, Philipp Überbacher wrote:
 Excerpts from Robin Gareus's message of 2010-09-30 16:21:27 +0200:
 On 09/30/10 13:35, Louigi Verona wrote:
 As for JACK support would anyone be interested in adding it, if it is
 trivial? Would love to have it in my audio chain.

 At second glance: it's not going to be that easy. The built-in player
 makes use of mutex-locks which would need to be replaced with a
 [lock-free] ringbuffer (Adding JACK I/O is still trivial but without
 lock-free buffers paulstrech would be able to block jack-processing and
 cause x-runs).


 That'd be a good job for someone who wants to get started with JACK and
 C/C++ programming.
 
 I'd be interested.
 
 It would likely take me some time though, and maybe some guidance, but
 it's something I want to learn. I dabbled in C but can only read simple
 code. I start to study computer science next week, which will give me
 access to the library at least, to KR and a bunch of others.
 The lectures at university are mostly in java but C is required at some
 point, and I guess it's better to start learning it sooner rather than
 later, besides, it seems to be needed for all the neat audio stuff ;)
 
 So yeah, I guess I should get the code, put it in a git repo and just
 start hacking...

Aww sorry. I saw this too late.

The film I intended to watch was too boring so..

  git clone git://rg42.org/paulstretch
  cd paulstretch
  ./compile_linux_fftw_jack.sh

or get a diff:
http://rg42.org/gitweb/?p=paulstretch.git;a=commitdiff_plain;hp=upstream;h=master


There's still quite a few things to do. besides: it's a quick hack and
far from optimal:

  - It currently only opens the JACK clients if it's playing.
(after stop the port-connections are lost)
  - It auto-connects the jack-ports to the first two available outputs
(unless you remove the -DENABLE_AUTOCONNECT_JACK compile option)
  - it does not do any resampling
(but prints a warning if the samplerates mismatch and plays anyway)
  - it does not add a ringbuffer.
(it may cause x-runs)

So you can take this as inspiration :)


Using a jack_ringbuffer is actually not that hard, have a look at the
jack_capture.c example client (comes with the jackd source).

Resampling with libsamplerate is not very complicated, although I'm sure
you'll have to work out a few things if you do it the first time (it's a
good learning experience - google for secret rabbit code.
OTOH I'm not convinced that the paulstrech player needs anyway. It may
be a nice add-on feature though.

Hint: for both ringbuffer and/or resampling you'll want to add a new
function to Player.cpp that basically does the same as

 void Player::getaudiobuffer(int nsamples, float *out)

I suggest
  getaudiobuffer_channel(int nsamples, int channel, float *out)

Contact Paul and Alan Calvin :)

Cheers!
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Paul's Extreme Sound Stretch

2010-09-30 Thread Robin Gareus

On Sep 30, 2010, at 11:16 PM, f...@kokkinizita.net wrote:

 On Thu, Sep 30, 2010 at 09:23:08PM +0200, Robin Gareus wrote:
 
 Back when I was introduced to FT in some Physics lecture I was happy
 that I was able to use it and completely forgot to check the history :)
 Probably related to why I favored experimental Physics over Theory.
 
 If you're still living in Paris, make sure to visit the 'Musée des
 Arts et Métiers' one day. Quite a nice place for vintage experimental
 physics. It's also the place where the final mad scene of Umberto Eco's 
 novel Foucault's Pendulum is situated. The pendulum itself used to be
 there, but it's now at the Panthéon.
 

I know the latter of course, but I've not yet been to the Musee des Arts et 
Metiers. 
Thanks for the hint, I'll definitely schedule a visit.

There's so many hidden treasures here in plain sight one hardly knows where to 
start.


 And I guess this is where the windowing comes in. Calculate the spectrum
 of small pieces instead.
 
 correct.
 
 Furthermore there are different kind of windows (here a window refers to
 a block of audio-samples) and windows can overlap. That's where it gets
 complicated.
 
 Even windows won't save you from apparent madness. Imagine a signal
 consisting of all zero samples, except one every second which has
 value 1. Such a signal contains all frequencies that are a multiple 
 of 1 Hz, up to half the sample frequency. Those frequencies are present
 all the time. Now take a window of say half a second. If it includes a
 pulse you get more or less the same spectrum again. If it doesn't, you
 get nothing... even if the frequencies should be there :-)
 

to come back to the beginning: that's why paulstretch does allow to specify the 
window size.

Cheers!
robin


 Ciao,
 
 -- 
 FA
 
 There are three of them, and Alleline.
 

___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Paul's Extreme Sound Stretch

2010-09-30 Thread Robin Gareus

On Oct 1, 2010, at 2:32 AM, Camilo Polymeris wrote:

 The original Fourier Transform as invented by the smart French
 guy of the same name does operate on continuous (as opposed to
 sampled) data from -inf to +inf.
 
 I understand Fourier invented the Fourier Series only, anyone knows
 who generalized it to FT?

not me,  but google did:

Fourier’s initial series lacked the precision of a function, and Dirichlet and 
Riemann would later express the series as a formal integral. [1]

and 

The first fast Fourier transform (FFT) algorithm for the DFT was discovered 
around 1805 by Carl Friedrich Gauss.. [2]

[1] 
http://www.k-grayengineeringeducation.com/blog/index.php/2007/12/21/engineering-education-today-in-history-blog-fourier-series-introduced/

[2] http://en.wikipedia.org/wiki/Fourier_analysis#History


 And yes, I think the FT isn't so hard to understand, and a pretty
 useful concept. FFT, on the other hand... never really tried.
 

Sometimes I regret that I skipped most of the group theory lectures (I still 
have a very different idea what group-theory should be about) but I stopped 
worrying: libfftw [3] is pretty well documented, comes with a good manual and a 
tutorial.

Unless you're really into maths and numerics you'll probably learn nothing 
useful. That might be actually the reason why DFT algorithms have been 
re-invented or re-discovered  a couple of times during history: 1805, 1965, 
1984 [4].
If I may suggest: read up on DFT and leave FFT to the the maths geeks.

[3] http://www.fftw.org/

[4] 
http://en.wikipedia.org/wiki/Fast_Fourier_transform#Cooley.E2.80.93Tukey_algorithm

Cheers!
robin

 Greetings
 ___
 Linux-audio-dev mailing list
 Linux-audio-dev@lists.linuxaudio.org
 http://lists.linuxaudio.org/listinfo/linux-audio-dev

___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [oauth] about twitter

2010-09-22 Thread Robin Gareus
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 09/23/10 03:18, Robin Gareus wrote:
 On 09/10/10 16:57, Lee Mr wrote:
 I wrote a twitter client with llib, but I do not know how to pass
 parameters.
 This is my codes:
 char *update_url=http://api.twitter.com/1/statuses/update.xml;;
 req_uri = oauth_sign_url2(update_url, NULL, OA_HMAC, NULL,
 customerKey, customerSecret,access_token,access_token_secret);
 char *response = oauth_http_get(req_uri,NULL);
 
 
 I want update my twitter, but return error.
 
 http://dev.twitter.com/doc/post/statuses/update
 says  Supported request methods: POST
 
 char *postargs = NULL;
 req_uri = oauth_sign_url2(update_url, postargs, OA_HMAC, NULL,
 customerKey, customerSecret,access_token,access_token_secret);
 char *response = oauth_http_post(req_uri,postargs);
 if (postargs) free(postargs);
 
 HTH,
 robin

Oh and as Lasantha pointed out: your update_url needs to include a
status parameter:

char *update_url=http://api.twitter.com/1/statuses/update.xml?status=;;

ciao,
robin
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAkyaq6cACgkQeVUk8U+VK0K3NgCgtlyOhS/Y0Jkjk99Q5qk/m+Jr
2LwAnRj5InFqXoPbtYvrWAanpGgS+og8
=i6n5
-END PGP SIGNATURE-

-- 
You received this message because you are subscribed to the Google Groups 
OAuth group.
To post to this group, send email to oa...@googlegroups.com.
To unsubscribe from this group, send email to 
oauth+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/oauth?hl=en.



Re: [LAD] Basic Question: SND/SOUND Libraries Seem to be Missing

2010-09-12 Thread Robin Gareus
On 09/12/2010 09:17 PM, Rory Filer wrote:
 Hello,
 
 Let me point out in advance that my problem is pretty trivial compared to
 most of the postings on that list. If a journey in sound engineering on
 Linux is 1000 steps, I'm at step 1 here. I basically tried configuring sound
 into the kernel but it didn't seem to work. If you think you can help,
 please read on. Otherwise, stop here.
 
 And thanks to all who continue from here...
 
 I want to build sound support into my embedded Linux platform (2.6.28); the
 CPU supports I2S in silicon, but I haven't got a driver for that yet. My
 plan is to build the kernel with SOUND/SND configurations enabled and start
 working on the driver later. In my configurations, I've left all the sound
 card-specific options out, keeping just the CONFIG_SND_SOC. I thought it
 would be sufficient to install snd-dummy so that any cross-compiled audio
 applications could be fooled into working. l rebuilt the kernel after *make
 clean* and noted several new SND files being compiled. So far so good. The
 final zImage was only a little larger. Overall, the configuration and build
 seemed to be going through all the right motions, but when I loaded zImage
 onto the target I didn't see any bootup logging that suggested audio was now
 working. As an experiment, I tried to insmod snd_dummy.ko but got a long
 list of errors. I guess I'm missing something basic.
 
 Here's my configuration choices:
 
 CONFIG_SOUND=m
 CONFIG_SOUND_OSS_CORE=y
 CONFIG_SND=m
 CONFIG_SND_TIMER=m
 CONFIG_SND_PCM=m
 # CONFIG_SND_SEQUENCER is not set
 CONFIG_SND_OSSEMUL=y
 CONFIG_SND_MIXER_OSS=m
 CONFIG_SND_PCM_OSS=m
 CONFIG_SND_PCM_OSS_PLUGINS=y
 # CONFIG_SND_DYNAMIC_MINORS is not set
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
 # CONFIG_SND_VERBOSE_PRINTK is not set
 # CONFIG_SND_DEBUG is not set
 CONFIG_SND_DRIVERS=y
 # CONFIG_SND_PCSP is not set
 CONFIG_SND_DUMMY=m
 # CONFIG_SND_MTPAV is not set
 # CONFIG_SND_MTS64 is not set
 # CONFIG_SND_SERIAL_U16550 is not set
 # CONFIG_SND_MPU401 is not set
 # CONFIG_SND_PORTMAN2X4 is not set
 # CONFIG_SND_ISA is not set
 # CONFIG_SND_PCI is not set
 # CONFIG_SND_SPI is not set
 # CONFIG_SND_USB is not set
 # CONFIG_SND_PCMCIA is not set
 CONFIG_SND_SOC=m
 CONFIG_SND_SOC_ALL_CODECS=m
 CONFIG_SND_SOC_AD73311=m
 CONFIG_SND_SOC_AK4535=m
 CONFIG_SND_SOC_CS4270=m
 CONFIG_SND_SOC_SSM2602=m
 CONFIG_SND_SOC_TLV320AIC23=m
 CONFIG_SND_SOC_TLV320AIC26=m
 CONFIG_SND_SOC_TLV320AIC3X=m
 CONFIG_SND_SOC_UDA1380=m
 CONFIG_SND_SOC_WM8510=m
 CONFIG_SND_SOC_WM8580=m
 CONFIG_SND_SOC_WM8731=m
 CONFIG_SND_SOC_WM8750=m
 CONFIG_SND_SOC_WM8753=m
 CONFIG_SND_SOC_WM8900=m
 CONFIG_SND_SOC_WM8903=m
 CONFIG_SND_SOC_WM8971=m
 CONFIG_SND_SOC_WM8990=m
 # CONFIG_SOUND_PRIME is not set

 
 And here is the list of errors from installing snd-dummy.ko
 
 [r...@127 drivers]#insmod snd-dummy.ko
 Using snd-dummy.ko
 snd_dummy: Unknown symbol snd_pcm_lib_free_pages
 snd_dummy: Unknown symbol snd_pcm_set_ops
 snd_dummy: Unknown symbol snd_ctl_boolean_stereo_info
 snd_dummy: Unknown symbol snd_card_new
 snd_dummy: Unknown symbol snd_pcm_lib_ioctl
 snd_dummy: Unknown symbol snd_pcm_lib_malloc_pages
 snd_dummy: Unknown symbol snd_pcm_lib_preallocate_pages_for_all
 snd_dummy: Unknown symbol snd_card_free
 snd_dummy: Unknown symbol snd_ctl_add
 snd_dummy: Unknown symbol snd_pcm_new
 snd_dummy: Unknown symbol snd_pcm_suspend_all
 snd_dummy: Unknown symbol snd_pcm_period_elapsed
 snd_dummy: Unknown symbol snd_card_register
 snd_dummy: Unknown symbol snd_pcm_format_set_silence
 snd_dummy: Unknown symbol snd_pcm_format_width
 snd_dummy: Unknown symbol snd_ctl_new1
 insmod: cannot insert `snd-dummy.ko': Unknown symbol in module (-1): No such
 fil
 e or directory
 
 Best Regards,
 
 Rory

Hi Rory,

You're not missing a library but some other kernel modules which provide
those symbols.

IIRC the snd-dummy modules requires 'snd_pcm' and 'snd'.

After installing the kernel, run 'depmod' and try to load the module
with 'modprobe snd-dummy' instead of 'insmod snd-dummy.ko'.

See the man-page for modprobe and depmod for details.

HTH,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [oauth] liboauth minor fixes

2010-09-09 Thread Robin Gareus
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hi Fret.

On 09/03/2010 07:38 AM, fret wrote:
 I downloaded and compiled liboauth with a view towards using it in
 some email software. I made some simple changes to make it compile
 nicely on VC6:

Many Thanks. I'll apply them.

I also just noticed: [V]I not only messed up the indenting but there's a
typo in the function name: independent lacks a 'd'. stay tuned.

Cheers!
robin


 Index: src/oauth.c
 ===
 --- src/oauth.c   (revision 1238)
 +++ src/oauth.c   (working copy)
 @@ -863,12 +863,18 @@
   *
   * returns 0 (false) if strings are not equal, and 1 (true) if
 strings are equal.
   */
 -int oauth_time_indepenent_equals_n(const char* a, const char* b,
 size_t len_a, size_t len_b) {
 - if (a == NULL) return (b == NULL);
 - else if (b == NULL) return 0;
 - else if (len_b == 0) return (len_a == 0);
 -  int diff = len_a ^ len_b;
 - int i,j = 0;
 +int oauth_time_indepenent_equals_n(const char* a, const char* b,
 size_t len_a, size_t len_b)
 +{
 + int diff, i, j;
 + if (a == NULL)
 + return (b == NULL);
 + else if (b == NULL)
 + return 0;
 + else if (len_b == 0)
 + return (len_a == 0);
 +
 + diff = len_a ^ len_b;
 + i,j = 0;
   for (i=0; ilen_a; ++i) {
   diff |= a[i] ^ b[j];
   j = (j+1) % len_b;
 Index: src/oauth.h
 ===
 --- src/oauth.h   (revision 1238)
 +++ src/oauth.h   (working copy)
 @@ -643,7 +643,7 @@
   * Multiple header elements can be passed separating them with \r\n
   * @return returned HTTP reply or NULL on error
   */
 -char *oauth_post_file (const char *u, const char *fn, size_t len,
 const char *customheader);
 +char *oauth_post_file (const char *u, const char *fn, const size_t
 len, const char *customheader);
 
  /**
   * http post raw data
 
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAkyI/AYACgkQeVUk8U+VK0IcHgCeIYO1ZYSRroSc/wf8J5Kitsij
ZugAoJ7a7dqhm7ojsqaWIthKEpgcIBj/
=38Xv
-END PGP SIGNATURE-

-- 
You received this message because you are subscribed to the Google Groups 
OAuth group.
To post to this group, send email to oa...@googlegroups.com.
To unsubscribe from this group, send email to 
oauth+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/oauth?hl=en.



Re: [LAD] wiki.linuxaudio.org, still help needed ?

2010-08-19 Thread Robin Gareus
Hi Carlo,

Sorry late reply - I'm on holiday. Yes, the call is still actual.
We're looking for both: regular content maintainers, as well as help
with styling the site.

As for style: there best contender so far is the experimental Theme;
switch it at http://wiki.linuxaudio.org/wiki/user/rgareus
Alas it's unfinished and partly invalid CSS/JS to be cleaned up :/

If you have a good idea: Please make a mockup or outline it. The wiki is
a dokuwiki.org.

Please stay tuned. I'll be back online regularly around end of August.

Cheers!
robin

On 08/16/2010 01:54 PM, Carlo Ascani wrote:
 I just saw the announce on http://wiki.linuxaudio.org/
 We are looking for front-end developers, web-designers and
 wiki-administrators to join in.
 
 What kind of help do you need?
 I mean, different from editing wiki content.
 I could help with little graphics or web-design.
 
 You could find me on freenode as 'carloratm'
 
 Btw, i've just done these sites:
 http://gnufunk.org
 http://radio.gnufunk.org
 
 
 Cheers
 

___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] wiki.linuxaudio.org, still help needed ?

2010-08-19 Thread Robin Gareus
On 08/16/2010 06:57 PM, Niels Mayer wrote:
 What about adding a more modern Wiki/CMS platform -- http://xwiki.org
 -- allowing WYSIWYG editing in your browser:
 http://platform.xwiki.org/xwiki/bin/view/Features/WysiwygEditor .
 Also, useful for public collaborative documentation, the new
 annotations feature:
 http://code.xwiki.org/xwiki/bin/view/Applications/AnnotationsApplication
 . Xwiki has  extensive import/export features. Aside from the usual
 export as pdf/html/print etc, you can also use Xwiki to run openoffice
 (in server mode) to import documents written in word/OOo/etc/ and
 easily convert them to wiki documents:
 http://code.xwiki.org/xwiki/bin/view/Applications/OfficeImporterApplication

Nice, but what would be the use-cases for those features on
linuxaudio.org? Basically we recommend flossmanuals.net for
collaborative documentation.

It'd also be a bit of work to [write a script to] convert the ~4000
existing wiki pages (mostly apps) to the xwiki; and write a custom app
(or plugin) to visualize tags/categories like eg.
http://wiki.linuxaudio.org/apps/categories/jack

Besides that, I'm somewhat averse to installing JAVA on the LAO server.

 It's quite a bit more than a wiki app, you can write applications with
 it as well. Here's some of mine:
 http://nielsmayer.com/xwiki/bin/view/Exhibit/NPRpods3
 (an earlier version:
 http://nielsmayer.com/xwiki/bin/view/Timeline/NprTimeline 
 http://nielsmayer.com/xwiki/bin/view/Timeline/KcrwTimeline  before I
 switched to http://www.simile-widgets.org/exhibit/ e.g.
 http://nielsmayer.com/xwiki/bin/view/Exhibit/Presidents4 ).

Cool. However, I don't see the benefit of a Timeline for the
wiki.linuxaudio.org site. I think we'd rather want some more music
related features like f.i. http://wiki.linuxaudio.org/wiki/abc :) but
maybe that's just me.

best,
robin


 Niels
 http://nielsmayer.com
 ___
 Linux-audio-dev mailing list
 Linux-audio-dev@lists.linuxaudio.org
 http://lists.linuxaudio.org/listinfo/linux-audio-dev

___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [64studio-users] For the German consumer protection Linux multimedia doesn't exist

2010-07-26 Thread Robin Gareus
On 07/26/2010 04:27 PM, Brian Bergstrom wrote:
 Maybe this one flew over my head, but what is a 'hols'?
 -Brian

Holydays, maybe? Would at least fit into the context.

 
 On 7/26/10 6:43 AM, Ralf Mardorf wrote:
 N24 a news television channel is giving wrong information about video
 editing software, the bad with it is, that even 'Stiftung Warentest', a
 consumer protection organisation speaking on this television channel in
 the news, just talked about Windows and that people need to buy, buy,
 buy software and 'better' computers. They give concrete untrue
 statements. It's because in Germany are hols and people usually film
 their hols.

I don't own a TV for over 10 years now so I can't really comment on this
but: was there ever any TV channel that did not spread misinformation? :)

FWIW Tageschau (the news of the 'first german television channel' aka
ARD) is edited with Kino on Linux. AFAIK they even paid the Kino
developer for a while.

robin
___
64studio-users mailing list
64studio-users@lists.64studio.com
http://lists.64studio.com/mailman/listinfo/64studio-users


Re: [LAD] twice as loud

2010-07-25 Thread Robin Gareus
On 07/25/2010 12:43 PM, Ralf Mardorf wrote:

 Just one question. Am I the only one who received a mail similar to this
 off-list:
 
 [ yet more irrelvant mindless crap! ]

 How does the external ear exactly work? Perhaps it's part of this
 function, to reflect sound.

 Absolutely nothing to do with Linux Audio Development Ralf, ... please
 desist.
 
 I sometimes receive mails off-list abusing me for mails other people did
 wrote.
 Here I did wrote this mail, but as a reply to this topic. So please, if
 you don't like me folks, abuse me for stuff that were my crime.


Hi Ralph,

Why are you writing to me? It might imply I did send you this email in
the first place. Even though I did not, I concur with the original
author although I'd like to phrase it differently:

Please ask only Linux audio hw/sw development related questions here.
When answering, please stick to your expertise. Stop guessing,
brainstorming and spreading FUD.

Joern formulated this once like this:
  /* before sending mail */
  if (i_know_what_im_talking_about()) {
send();
  } else {
discard();
sleep(3600);
  }

Some of your comments or OT discussions would have been better on LAU
(where most of the Devs are subscribed as well). I fail to see how you
are involved in developing any linux-audio application, so please
refrains from posting here.

As you can read on the description at http://linuxaudio.org/mailarchive/
The linux-audio developer (LAD) mailing list is the place to discuss
and share in depth information concerning design, development and
architecture of linux audio related Hard- and Software. It's a fun place
to lure and learn. yet, take your time and think before posting there:
This is not the list to report generic linux audio bugs to developers.


Replying to your own emails N times and doing so quite often is not only
very bad netiquette, but annoying to many serious contributors here. If
you can't resist: write a blog.

Let me repeat an earlier advice which seems to have not sunken in:
Please read http://www.catb.org/~esr/faqs/smart-questions.html
in particular don't skip the A wrong but authoritative-sounding answer
is worse than none at all. section.
and from http://tools.ietf.org/html/rfc1855 aka Netiquette Guidelines:
If you are caught in an argument, keep the discussion focused on
issues rather than the personalities involved.


To answer your question:
The list-admin for this email-list is Marc-Olivier Barre and he can be
reached at linux-audio-dev-ow...@lists.linuxaudio.org
If you want find out if an email went to the list, check the
list-archive: http://lists.linuxaudio.org/listinfo/linux-audio-dev

..or simply the email-header because IIRC the list does not accept
emails to it when it has been BCCed.

ciao,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Can someone add 2 features to Kluppe?

2010-07-20 Thread Robin Gareus
On 07/20/2010 01:48 PM, Patrick Shirkey wrote:
 On 07/20/2010 06:54 PM, Robin Gareus wrote:
 On 07/20/2010 09:17 AM, Patrick Shirkey wrote:
   
 On 07/20/2010 09:45 AM, Robin Gareus wrote:
 
 On 07/20/2010 01:06 AM, Louigi Verona wrote:

   
 Hey guys!

 Some time ago I have asked someone to look into Kluppe and add a
 couple of
 features.
 My request was not ignored and Patrick Shirkey was kind enough to
 volunteer
 to try to help.

 However, he came upon a difficulty and that is - *how do you set up an
 asynchronous timer in C?*

  
 It depends what you need that timer for.



 The timer is needed to countdown the period between stopping and
 restarting the loop. The methods I have tried all halt the playback on a
 single frame and the ui also becomes unresponsive while the timer is in
 process.
  
 That sounds like it needs to be be quite accurate, or not?


 
 It just needs to work ;-)

Are you really sure? :-p


 All I would like to do is pass a zero byte to the audio signal handling
 code while the timer is in progress. The rest of the interface should
 stay active.
  
 A simple approach might be to just set a counter and have the
 audio-process count it down (in audio-samples). Once it reaches zero:
 play again.


 
 The problem is how to set a counter that doesn't block the rest of the
 app while it is in process.
 

Outline:

global:
static long int mycounter = 0;

main-thread:
 if (need_to pause) mycounter = time_to_pause * sample_rate;

audio-thread:
 if (mycounter  0) { mycounter -= samples_processed_here; }
 if (mycounter  0) mute;
 else play;


The 'mycounter' variable does not need to be global. It can be part of
the track struct or class eg. track-mutecounter.
..and eventually you implement it to be sample-accurate (the above is
just an outline).

Cheers!
robin

-- 
Robin Gareus   mail: ro...@gareus.org
site: http://gareus.org/   chat: xmpp:rgar...@ik.nu
blog: http://rg42.org/ lab : http://citu.fr/

Public Key at http://pgp.mit.edu/
Fingerprint : 7107 840B 4DC9 C948 076D 6359 7955 24F1 4F95 2B42
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Can someone add 2 features to Kluppe?

2010-07-20 Thread Robin Gareus
On 07/20/2010 02:46 PM, Patrick Shirkey wrote:
 On 07/20/2010 09:51 PM, Paul Davis wrote:
 On Tue, Jul 20, 2010 at 7:48 AM, Patrick Shirkey
 pshir...@boosthardware.com  wrote:

   
 A simple approach might be to just set a counter and have the
 audio-process count it down (in audio-samples). Once it reaches zero:
 play again.



 The problem is how to set a counter that doesn't block the rest of
 the app
 while it is in process.
  
 i believe that robin's suggestion is the correct one. you don't want
 to attempt audio timing using the system clock unless you have a
 DLL/PLL that relates audio time to system time (and you don't).
 decisions about what to do as time progresses need to be made in the
 process() callback tree, not in the GUI or some other thread.
 so just countdown some number of samples, and then resume playing, as
 robin suggested. it won't block anything, anywhere.

 
 I don't have any problem with counting down using the audio clock but
 how do I translate that into seconds/milliseconds set in the ui?

see my other email.
You must be tired tonight :) Just multiply it by the sample-rate..

 At the moment the timer counts in seconds using this function
 
 void *timer_thread(void *arg) {
 int how_long = *((int*) arg);
 sleep(how_long);
 pthread_mutex_unlock(timer_lock);
 return NULL;
 }
 
 While it is counting I set the volume for the per track playback buffer
 to zero. I also need to stop the playhead from moving but that is a
 seperate issue.
 
 Ideally the timer should count in milliseconds which I guess is handled
 by changing the call to sleep to select instead?
 
 ex.
 
 void *timer_thread(void *arg) {
 int how_long = *((int*) arg);
 pause.tv_sec  = how_long;
 pause.tv_usec = 0;
 (void) select(0, 0, 0, 0, pause);
 pthread_mutex_unlock(timer_lock);
 return NULL;
 }

Either that, or use usleep(microseconds).

 I'm not sure how to do that with audio samples instead. Happy to make it
 work that way though if it is the best approach.

it is.

best,
robin

-- 
Robin Gareus   mail: ro...@gareus.org
site: http://gareus.org/   chat: xmpp:rgar...@ik.nu
blog: http://rg42.org/ lab : http://citu.fr/

Public Key at http://pgp.mit.edu/
Fingerprint : 7107 840B 4DC9 C948 076D 6359 7955 24F1 4F95 2B42
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Can someone add 2 features to Kluppe?

2010-07-19 Thread Robin Gareus
On 07/20/2010 01:06 AM, Louigi Verona wrote:
 
 
 Hey guys!
 
 Some time ago I have asked someone to look into Kluppe and add a couple of
 features.
 My request was not ignored and Patrick Shirkey was kind enough to volunteer
 to try to help.
 
 However, he came upon a difficulty and that is - *how do you set up an
 asynchronous timer in C?*

It depends what you need that timer for.

In gtk there's a g_timeout_add(). easy to use.

To writing your own:
`apropos pthread` and more specifically `man pthread_create`.

usleep() sleeps at least, and select() sleeps at most a certain period
of time. http://freej.dyne.org/codedoc/fps_8cpp_source.html line 132ff
has examples of both.
For [more] accurate timing: RTC or HPET. Example code comes
with the kernel:
 linux-2.6/Documentation/rtc.txt
 linux-2.6/Documentation/hpet.txt

There's a couple of other options fi. if you want to sync
hardware-devices using IRQs.. and the jack_process_callback is also very
good timer :)

 It stopped right there. I was wondering if anyone could help us with that
 matter?
 
 
 Cheers!
 


-- 
Robin Gareus   mail: ro...@gareus.org
site: http://gareus.org/   chat: xmpp:rgar...@ik.nu
blog: http://rg42.org/ lab : http://citu.fr/

Public Key at http://pgp.mit.edu/
Fingerprint : 7107 840B 4DC9 C948 076D 6359 7955 24F1 4F95 2B42
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Tests directly routing pc's midi-in to midi-out

2010-07-15 Thread Robin Gareus
On 07/15/2010 01:07 PM, Ralf Mardorf wrote:
 On Thu, 2010-07-15 at 12:55 +0200, Clemens Ladisch wrote:
 Ralf Mardorf wrote:
 - instead of dev.hpet.max-user-freq=64 I'll try 1024 or 2048 as Robin
 mentioned

 This parameter will not have any effect on anything because there is no
 program that uses the HPET timers from userspace. 

That'd be correct if Ralf would stick to 'amidiplay' and friends for his
tests.

There are a couple of audio-tools who can use either RTC or HPET for
timing, although most of them need an option to explicitly enable it.

 When high-resolution
 timers are used by ALSA, this is done inside the kernel where there is
 no limit on the maximum frequency.

Thanks for that explanation. It makes perfect sense.
I take it the same must be true for dev.rtc.max-user-freq as well.

BTW. Do you know the unit of these values?
  cat /sys/class/rtc/rtc0/max_user_freq
  cat /proc/sys/dev/hpet/max-user-freq
are they Hz?

linux-2.6/Documentation/hpet.txt does not mention it at all and
linux-2.6/Documentation/rtc.txt hints it's Hz but does not explicitly
say so.

 Regards,
 Clemens
 
 IIRC someone on jack-devel mailing list had issues when using mplayer
 with the value 64 and it was solved when using the value 1024. But as I
 mentioned before, for my USB MIDI there was a difference between system
 timer and hr timer, but there was no difference for the value 64 and
 1024, when using hr timer.
 
 Btw. I don't understand what a maximum frequency in the context does
 mean. If 64 or 1024 should have impact, what would be the result?
 
 System timer for a kernel-rt is set up to 1000Hz and hr timer is at
 10Hz.
 
 What is 'max-user-freq' for?

It limits the maximum frequency at which user-space applications can
[request to] receive wakeup calls from the hr-timer.

see also the Timers thread on LAD last November:
http://linuxaudio.org/mailarchive/lad/2009/11/7/161647

 Cheers!
 
 Ralf
 
 
best,
robin

-- 
Robin Gareus   mail: ro...@gareus.org
site: http://gareus.org/   chat: xmpp:rgar...@ik.nu
blog: http://rg42.org/ lab : http://citu.fr/

Public Key at http://pgp.mit.edu/
Fingerprint : 7107 840B 4DC9 C948 076D 6359 7955 24F1 4F95 2B42
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Tests directly routing pc's midi-in to midi-out

2010-07-15 Thread Robin Gareus
On 07/15/2010 02:45 PM, Ralf Mardorf wrote:
 On Thu, 2010-07-15 at 13:45 +0200, Robin Gareus wrote:
 On 07/15/2010 01:07 PM, Ralf Mardorf wrote:
 On Thu, 2010-07-15 at 12:55 +0200, Clemens Ladisch wrote:
 Ralf Mardorf wrote:
 - instead of dev.hpet.max-user-freq=64 I'll try 1024 or 2048 as Robin
 mentioned

 This parameter will not have any effect on anything because there is no
 program that uses the HPET timers from userspace. 

 That'd be correct if Ralf would stick to 'amidiplay' and friends for his
 tests.
 
 While at least one friend throw his Apple MacOs through the window. I'm
 not kidding. Modern computers + music + my friends = not good. I've got
 two kinds of friends, the once who say I shouldn't use a modern computer
 and the others who say, I should buy Nuendo and expensive hardware. And
 btw. I don't have got 1000 friends, but just a handful.
 If I would ask my neighbours to listen, they would be fine with bad
 timing, regarding to their habits, listening to the radio at prime time.

Took me a while to catch that drift. I meant friends of 'amidiplay'
(eg 'amidirecord', 'aseqdump', etc) with the aim to keep things simple
for testing.

..and friends is an English idiom; sorry to put you off track.

 Anyway, I could ask people to listen, but I'm sure this would be
 useless.
 
 There are a couple of audio-tools who can use either RTC or HPET for
 timing, although most of them need an option to explicitly enable it.

 When high-resolution
 timers are used by ALSA, this is done inside the kernel where there is
 no limit on the maximum frequency.

 Thanks for that explanation. It makes perfect sense.
 I take it the same must be true for dev.rtc.max-user-freq as well.

 BTW. Do you know the unit of these values?
   cat /sys/class/rtc/rtc0/max_user_freq
   cat /proc/sys/dev/hpet/max-user-freq
 are they Hz?

 linux-2.6/Documentation/hpet.txt does not mention it at all and
 linux-2.6/Documentation/rtc.txt hints it's Hz but does not explicitly
 say so.

 Regards,
 Clemens

 IIRC someone on jack-devel mailing list had issues when using mplayer
 with the value 64 and it was solved when using the value 1024. But as I
 mentioned before, for my USB MIDI there was a difference between system
 timer and hr timer, but there was no difference for the value 64 and
 1024, when using hr timer.

 Btw. I don't understand what a maximum frequency in the context does
 mean. If 64 or 1024 should have impact, what would be the result?

 System timer for a kernel-rt is set up to 1000Hz and hr timer is at
 10Hz.

 What is 'max-user-freq' for?

 It limits the maximum frequency at which user-space applications can
 [request to] receive wakeup calls from the hr-timer.

 see also the Timers thread on LAD last November:
 http://linuxaudio.org/mailarchive/lad/2009/11/7/161647
 
 Okay, what ever user-space might be, 

It's the opposite of kernel-space :)
http://en.wikipedia.org/wiki/User_space

 I assume regarding to the
 explanations it's unimportant for rt. And as mentioned by the text of
 the link, I can confirm that at least my USB MIDI is better when using
 hr timer.
 
 I'll test amidiplay, but again, playing all MIDI instruments at the same
 isn't the major problem, perhaps just for me, resp. for people with
 'golden ears'.

Lets try something very simple:

ONE)
- Take a very simple midi-file.
- Use 'aplaymidi' to send it from your PC to your external midi-drum
machine. - Use your drum-synth's klick or woodblock sound or sth
very dry with a good attack.
- do a quick ear-test if you can hear midi-jitter?
- capture the audio-output of the external-midi-synth with arecord.

Rewind and do it again.
Post the two files and the used .mid on a web-server or some drop-box.

If you want to check yourself: Align the first-beat of the captured
audio files in a multi-track audio-editor. While it will involve a bit
of manual labor to quantify the jitter. It'll at least be solid evidence.


TWO)
- launch an external MIDI-metronome (eg your Atari ST)
- connect it to your PC
- use 'arecordmidi' to generate a .mid file from it.

Repeat at least once and post the two midi files somewhere for us to
download.


THREE)
  midi-metronom - PC - external-synth == audio

This combines ONE+TWO. just use 'aconnect[gui]' to use
your PC as MIDI-THRU. and 'arecord' to record audio that comes
from your drum-synth.

Note, at the moment we're not interested in latency, but in jitter.
The ticks in the recorded audio file _should be_ at identical intervals
+- jitter.

The output of
  cat /proc/asound/timers
and
  cat /proc/asound/version
might be interesting

Is that about right? Comments anyone?

 The major issue is sync to audio recordings of MIDI instruments, while
 doing audio recordings of other, resp. the same instruments again.
 
 I e.g. do only have one DX7 and one Matrix-1000 and my TG33 (with vector
 control) is broken, hence I can't use all outputs, but one stereo output
 of the TG33.
 
 I wish to be able to record a synth several times

Re: [LAD] ALSA MIDI latency test results are far away from reality

2010-07-14 Thread Robin Gareus
On 07/14/2010 03:23 PM, Ralf Mardorf wrote:
 [..]
 AND IT'S AUDIBLE THAT THERE IS MUCH MORE JITTER BUT 1.1 ms.
 
 Any hints how to solve this are welcome.

Did you try to start jackd with -p64 instead of -p1024

using JACK-midi, I've encountered a similar issue with fluidsynth always
synchronizing note-start/ends to jack cycles.

Simply lowering the frames-per-period got me playing again so I did not
check if it's related to JACK-midi or FluidSynth 1.1.1 in general.

ciao,
robin

-- 
Robin Gareus   mail: ro...@gareus.org
site: http://gareus.org/   chat: xmpp:rgar...@ik.nu
blog: http://rg42.org/ lab : http://citu.fr/

Public Key at http://pgp.mit.edu/
Fingerprint : 7107 840B 4DC9 C948 076D 6359 7955 24F1 4F95 2B42
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] ALSA MIDI latency test results are far away from reality

2010-07-14 Thread Robin Gareus
On 07/14/2010 04:22 PM, Ralf Mardorf wrote:
 Hi Robin :)
 
 On Wed, 2010-07-14 at 15:44 +0200, Robin Gareus wrote:
 On 07/14/2010 03:23 PM, Ralf Mardorf wrote:
 [..]
 AND IT'S AUDIBLE THAT THERE IS MUCH MORE JITTER BUT 1.1 ms.

 Any hints how to solve this are welcome.

 Did you try to start jackd with -p64 instead of -p1024
 
 A good argument, because when I made tests in the past for the USB MIDI,
 things become better at  = -p256 (when I had this Windows test install
 latency for the EWX 24/96 audio was less high than for Linux). The
 problem here is, that I need at least -p512 and even than I'm not safe
 regarding to issues for JACK audio, that's why I used -p1024 instead of
 -p512. For a test -p64 should work, but when recording music I would
 need to increase it step by step until a minimum of -p512.

I'm sorry; don't understand that. Are you getting [audio] x-runs or what
is the problem using -p64 (or even -p32)?

I was hinting that the audible midi-jitter could be a result of
midi-messages getting 'quantizied' to jack-periods.

A JACK-MIDI app which does not honor 'jack_midi_event_t-time' but
simply processes all queued midi-events on each jack_process_callback()
will result in the symptoms you describe (snare  kick on the same
beat). One example of such an app is a2j.

 IIRC when I did tests for the USB MIDI with -p64 or even -p125 (I'm not
 sure) it theoretically did work, but this isn't a solution, because at
 some point JACK audio will fail.

How does it fail? x-runs?

JACKd works quite robust here with the UA25 and FA101 at 64fpp.

 using JACK-midi, I've encountered a similar issue with fluidsynth always
 synchronizing note-start/ends to jack cycles.

 Simply lowering the frames-per-period got me playing again so I did not
 check if it's related to JACK-midi or FluidSynth 1.1.1 in general.
 
 At least FluidSynth DSSI (host is Qtractor) is able to play in unison
 with any DSSI or virtual ALSA MIDI and JACK MIDI (-Xseq) synth on my
 machine. Just 'in unison' for virtual synth to hw synth there sometimes
 is more delay, but just an early reflection like effect.

 Note! It was hard to groove when I connected the master keyboard to ALSA
 hw MIDI in -- DIRECTLY TO -- ALSA hw MIDI out and this to a 100% ok
 drum module. Directly connecting the master keyboard to the drum module
 there were no issues.

Aha, by this we can infer that your problem is ALSA or kernel/timing
related.

To verify this, take everything up from there (eg. qtractor, fluidsynth)
out of the picture for now.

1) Use 'amidiplay' to send a some midi-song directly to your
drum-module. - Is there still audible jitter?

2) Do you have a Hardware MIDI Sequencer? Have it play a simple
metronome beat and dump incoming MIDI-messages. See if the timestamps of
each midi-note-on message are identically spaced.

'aseqdump' (at least version 1.0.22 which I currently use) does not
print timing-info, 'kmidimon' does.

 I need to do something else now, but I take time off. From Friday
 (perhaps earlier) until next Sunday noon I could spend the whole days
 for this MIDI issue only.
 
 Resume:
 
 I assume that -p64 would solve this 'looong early reflection like
 effect/async', but then hard disk recording will become impossible.
 
 The target is, that Linux at least replace the Atari ST as sequencer +
 an analog 4-Track machine synced by SMPTE. With -p64 4-track recoding
 would become impossible.

I'm pretty sure that you can get a stable 64fpp setup, but one thing at
a time. let's keep this thread to MIDI just now.

 'Read you later' today or at the latest on Friday.

enjoy a good long week-end.

 Cheers!
 
 Ralf

ciao,
robin

-- 
Robin Gareus   mail: ro...@gareus.org
site: http://gareus.org/   chat: xmpp:rgar...@ik.nu
blog: http://rg42.org/ lab : http://citu.fr/

Public Key at http://pgp.mit.edu/
Fingerprint : 7107 840B 4DC9 C948 076D 6359 7955 24F1 4F95 2B42
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] ALSA MIDI latency test results are far away from reality

2010-07-14 Thread Robin Gareus
On 07/14/2010 05:27 PM, Ralf Mardorf wrote:
 On Wed, 2010-07-14 at 17:24 +0200, Ralf Mardorf wrote:
 On Wed, 2010-07-14 at 17:21 +0200, Ralf Mardorf wrote:
 On Wed, 2010-07-14 at 10:53 -0400, Paul Davis wrote:
 On Wed, Jul 14, 2010 at 9:52 AM, Clemens Ladisch clem...@ladisch.de 
 wrote:
 Is this connection through JACK or through ALSA, i.e., does it show up
 in the output of aconnect -l?  From what I understand, JACK's sample-
 synchronous timing always adds latency, and might add period-related
 jitter depending on the implementation.

 the good stuff adds 1 JACK period of latency to whatever the ALSA
 
 PPS:
 
 A misunderstanding by me?
 
 sequencer's direct delivery + the driver does, and zero jitter.
 
 Is there JACK MIDI for hw MIDI too, but only for virtual synth?

No, JACK-MIDI is a protocol in software.

There are bridges to hardware which go connect either via ALSA-sequencer
or raw-ALSA interface to the MIDI hardware.

JACKd itself includes those bridges (-Xseq, -Rraw) and there are also
stand-alone apps (fi a2jmidi_bridge, a2jmidid,..) which can do the same.

 - Ralf
 
 *Offline now*
 
 ___
 Linux-audio-dev mailing list
 Linux-audio-dev@lists.linuxaudio.org
 http://lists.linuxaudio.org/listinfo/linux-audio-dev
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] ALSA MIDI latency test results are far away from reality

2010-07-14 Thread Robin Gareus
On 07/14/2010 06:31 PM, Nedko Arnaudov wrote:
 Robin Gareus robin-+vldmftonamdnm+yrof...@public.gmane.org writes:
 
 I was hinting that the audible midi-jitter could be a result of
 midi-messages getting 'quantizied' to jack-periods.

 A JACK-MIDI app which does not honor 'jack_midi_event_t-time' but
 simply processes all queued midi-events on each jack_process_callback()
 will result in the symptoms you describe (snare  kick on the same
 beat). One example of such an app is a2j.
 
 What version? 

release-4 - the latest on svn://svn.gna.org/svn/a2jmidid

 I can clearly see code that handles this in the current
 version. It is in jack.c, a2j_alsa_output_thread(), lines 385-411

I've just seen that there's git://repo.or.cz/a2jmidid.git and jumped
from release-4 to release-6.

ciao,
robin


-- 
Robin Gareus   mail: ro...@gareus.org
site: http://gareus.org/   chat: xmpp:rgar...@ik.nu
blog: http://rg42.org/ lab : http://citu.fr/

Public Key at http://pgp.mit.edu/
Fingerprint : 7107 840B 4DC9 C948 076D 6359 7955 24F1 4F95 2B42
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] ALSA MIDI latency test results are far away from reality

2010-07-14 Thread Robin Gareus
On 07/14/2010 07:58 PM, Ralf Mardorf wrote:
 On Wed, 2010-07-14 at 17:30 +0200, Robin Gareus wrote:
 On 07/14/2010 04:22 PM, Ralf Mardorf wrote:
 Hi Robin :)

 On Wed, 2010-07-14 at 15:44 +0200, Robin Gareus wrote:
 On 07/14/2010 03:23 PM, Ralf Mardorf wrote:
 [..]
 AND IT'S AUDIBLE THAT THERE IS MUCH MORE JITTER BUT 1.1 ms.

 Any hints how to solve this are welcome.

 Did you try to start jackd with -p64 instead of -p1024

 A good argument, because when I made tests in the past for the USB MIDI,
 things become better at  = -p256 (when I had this Windows test install
 latency for the EWX 24/96 audio was less high than for Linux). The
 problem here is, that I need at least -p512 and even than I'm not safe
 regarding to issues for JACK audio, that's why I used -p1024 instead of
 -p512. For a test -p64 should work, but when recording music I would
 need to increase it step by step until a minimum of -p512.

 I'm sorry; don't understand that. Are you getting [audio] x-runs or what
 is the problem using -p64 (or even -p32)?
 
 Yes there are lapse, even if there should be no messages about xruns.
 
 I was hinting that the audible midi-jitter could be a result of
 midi-messages getting 'quantizied' to jack-periods.
 
 It seems to be like that. Take a look at my email with the 
subject: 
 Correlation of alsa -p value and hw
 MIDI jitter
 
 A JACK-MIDI app which does not honor 'jack_midi_event_t-time' but
 simply processes all queued midi-events on each jack_process_callback()
 will result in the symptoms you describe (snare  kick on the same
 beat). One example of such an app is a2j.

It turned out I was using an ancient version of a2j.

 I did use Qtractor, but had the same issue when using Rosegarden a long
 time ago. But we are talking about ALSA MIDI to the hardware
 MIDInterface?!
Originally i was only talking about JACK-MIDI apps.

 IIRC when I did tests for the USB MIDI with -p64 or even -p125 (I'm not
 sure) it theoretically did work, but this isn't a solution, because at
 some point JACK audio will fail.

 How does it fail? x-runs?
 
 All kinds of dropouts, even the left and right channel seem to get out
 of phase. Just running FluidSynth DSSI playing a kick and a rim-shot was
 without audible failure at -p16, but I'm sure I won't be able to do
 multi-trach recording with -p16.
 

 JACKd works quite robust here with the UA25 and FA101 at 64fpp.

 using JACK-midi, I've encountered a similar issue with fluidsynth always
 synchronizing note-start/ends to jack cycles.

 Simply lowering the frames-per-period got me playing again so I did not
 check if it's related to JACK-midi or FluidSynth 1.1.1 in general.

 At least FluidSynth DSSI (host is Qtractor) is able to play in unison
 with any DSSI or virtual ALSA MIDI and JACK MIDI (-Xseq) synth on my
 machine. Just 'in unison' for virtual synth to hw synth there sometimes
 is more delay, but just an early reflection like effect.

 Note! It was hard to groove when I connected the master keyboard to ALSA
 hw MIDI in -- DIRECTLY TO -- ALSA hw MIDI out and this to a 100% ok
 drum module. Directly connecting the master keyboard to the drum module
 there were no issues.

 Aha, by this we can infer that your problem is ALSA or kernel/timing
 related.

 To verify this, take everything up from there (eg. qtractor, fluidsynth)
 out of the picture for now.

 1) Use 'amidiplay' to send a some midi-song directly to your
 drum-module. - Is there still audible jitter?
 
 On a todo list, but there seems to be a correlation to JACK audio.

The idea is to remove all correlations. Otherwise it's very hard to find
the problem.

It looks like you're chasing [at least] two different issues:

1) ALSA / hardware jitter

2) qtractor/fluidsynth timing/sync


Don't even start JACKd. just use 'aplaymidi'.
or 'ametro' http://perso.wanadoo.es/plcl/ametro/ametro-en.html

 2) Do you have a Hardware MIDI Sequencer? Have it play a simple
 metronome beat and dump incoming MIDI-messages. See if the timestamps of
 each midi-note-on message are identically spaced.
 
 C64 and Atari ST are stable, but there are some issues for e.g the
 monitor. My VGA isn't slow enough for the Atari. I'll try to do it with
 the broken SM124.
 
 'aseqdump' (at least version 1.0.22 which I currently use) does not
 print timing-info, 'kmidimon' does.

You can also just use 'arecordmidi' and open it later in an editor.


And finally:

  External-Keyboard or Sequencer - PC - External-Synth

Use 'aconnect' or 'aconnectgui' to connect MIDI-in - MIDI-out.
There should be some latency but no recognizable jitter.

If these 3 (amidiplay, amidirecord, ALSA midi-thru) do not work as
expected, all other tests that mix external-hardware and software will
be [more or less] useless.


 I need to do something else now, but I take time off. From Friday
 (perhaps earlier) until next Sunday noon I could spend the whole days
 for this MIDI issue only.

 Resume:

 I assume that -p64 would solve this 'looong

Re: [LAD] ALSA MIDI latency test results are far away from reality

2010-07-14 Thread Robin Gareus
On 07/14/2010 03:23 PM, Ralf Mardorf wrote:

[..]
 $ su -c chgrp audio /dev/hpet
Its also writable for the group, right?

 $ su -c sysctl -w dev.hpet.max-user-freq=64

Documentation on this value is hard to come by, but I think it's unit is
Hz. So you'll want
  su -c sysctl -w dev.hpet.max-user-freq=1024
or even more :)

try:
echo 2048 | sudo tee /sys/class/rtc/rtc0/max_user_freq
echo 2048 | sudo tee /proc/sys/dev/hpet/max-user-freq

[..]
ciao,
robin


-- 
Robin Gareus   mail: ro...@gareus.org
site: http://gareus.org/   chat: xmpp:rgar...@ik.nu
blog: http://rg42.org/ lab : http://citu.fr/

Public Key at http://pgp.mit.edu/
Fingerprint : 7107 840B 4DC9 C948 076D 6359 7955 24F1 4F95 2B42
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] PCI MIDI jitter - comparison Ubuntu (bad) and Suse (might be ok)

2010-07-11 Thread Robin Gareus
Hi Ralf,

You are comparing a banana and an orange to find out which one is
sweeter. Given the nature of the problem it would help a lot to have as
little differences between the systems under test, otherwise it's
impossible to track it down.

I hazard a guess that it's Ubuntu's 2.6.32 realtime-preemt-kernel.
There are no official 2.6.32 rt-patches and it's likely that some of the
back/forward ports have screwed things up.

Is 'cat /proc/interrupts' identical on both systems?
what about 'ps ax | wc -l' and
'ps -eo pid,class,rtprio,ni,pri,pcpu,stat,comm --sort -rtprio'
Are there high-priority jobs present on Ubuntu which are not on SuSE?

What happens if you use the same kernel (SuSE's kernel on Ubuntu, or
vice versa) but different disto user-lands?  Is there still a difference
in your measurements?

ciao,
robin

On 07/11/2010 04:53 PM, Ralf Mardorf wrote:
 Hi :)
 
 today I compared a default Ubuntu Studio with and without the
 proprietary NVIDIA driver. Note that for Ubuntu Studio 2 tests failed
 because of time out errors, but even the tests that were passed with
 success are significantly less good, than the tests with openSUSE, were
 I set up audio myself.
 Ubuntu based Linux until now were my music Linux, e.g 64 Studio 3.0 and
 3.3, but I wonder if bad MIDI latency is depending to Ubuntu.
 For Ubuntu Studio even PCI MIDI has got more jitter, but USB MIDI for
 Suse, see older test in the archives.
 
 What might be the difference between Ubuntu and Suse?
 
 Could anybody compare different distros too?
 
 
 Ubuntu Studio 10.04 amd64
 2 x Terratec EWX 24/96 (2 single cards, but 1 virtual card)
 Frequency scaling ?
 
 
 spinymo...@ubuntu:~$ hwinfo --gfxcard
   Driver: nouveau
   Driver Modules: drm
   IRQ: 18
 spinymo...@ubuntu:~$ alsa-midi-latency-test -l
  PortClient name  Port name
  14:0Midi Through Midi Through Port-0
  16:0TerraTec EWX24/96TerraTec EWX24/96 MIDI
  20:0TerraTec EWX24/96TerraTec EWX24/96 MIDI
 128:0TiMidity TiMidity port 0
 128:1TiMidity TiMidity port 1
 128:2TiMidity TiMidity port 2
 128:3TiMidity TiMidity port 3
 spinymo...@ubuntu:~$ alsa-midi-latency-test -Rrw=2 -o20:0 -i20:0
 alsa-midi-latency-test 0.0.3
 set_realtime_priority(SCHED_FIFO, 99).. done.
 clock resolution: 0.1 s
 SUCCESS
 
  best latency was 1.00 ms
  worst latency was 1.97 ms, which is great.
 
 spinymo...@ubuntu:~$ alsa-midi-latency-test -Rrw=2 -o20:0 -i20:0
 alsa-midi-latency-test 0.0.3
 set_realtime_priority(SCHED_FIFO, 99).. done.
 clock resolution: 0.1 s
 SUCCESS
 
  best latency was 1.00 ms
  worst latency was 3.36 ms, which is great.
 
 spinymo...@ubuntu:~$ alsa-midi-latency-test -Rrw=2 -o16:0 -i16:0
 alsa-midi-latency-test 0.0.3
 set_realtime_priority(SCHED_FIFO, 99).. done.
 clock resolution: 0.1 s
 SUCCESS
 
  best latency was 0.99 ms
  worst latency was 1.93 ms, which is great.
 
 spinymo...@ubuntu:~$ alsa-midi-latency-test -Rrw=2 -o16:0 -i16:0
 alsa-midi-latency-test 0.0.3
 set_realtime_priority(SCHED_FIFO, 99).. done.
 clock resolution: 0.1 s
 SUCCESS
 
  best latency was 0.99 ms
  worst latency was 1.74 ms, which is great.
 
 spinymo...@ubuntu:~$ uname -a
 Linux ubuntu 2.6.32-23-preempt #37-Ubuntu SMP PREEMPT Fri Jun 11
 10:19:07 UTC 2010 x86_64 GNU/Linux
 spinymo...@ubuntu:~$ envy24control
 0xcf00, irq 20, Master Clock int 44100
 
 No envy24control for
 0xcb00, irq 21, Master Clock ?
 
 20:0 opto S/PDIF out -- 16:00 opto S/PDIF in
 
 
 Ubuntu Studio 10.04 amd64
 2 x Terratec EWX 24/96 (2 single cards, but 1 virtual card)
 Frequency scaling ?
 
 
 spinymo...@ubuntu:~$ hwinfo --gfxcard
   Driver: nvidia
   Driver Modules: nvidia
   IRQ: 18
 spinymo...@ubuntu:~$ alsa-midi-latency-test -l
  PortClient name  Port name
  14:0Midi Through Midi Through Port-0
  16:0TerraTec EWX24/96TerraTec EWX24/96 MIDI
  20:0TerraTec EWX24/96TerraTec EWX24/96 MIDI
 128:0TiMidity TiMidity port 0
 128:1TiMidity TiMidity port 1
 128:2TiMidity TiMidity port 2
 128:3TiMidity TiMidity port 3
 pinymo...@ubuntu:~$ alsa-midi-latency-test -Rrw=2 -o20:0 -i20:0
 alsa-midi-latency-test 0.0.3
 set_realtime_priority(SCHED_FIFO, 99).. done.
 clock resolution: 0.1 s
 SUCCESS
 
  best latency was 1.00 ms
  worst latency was 1.84 ms, which is great.
 
 spinymo...@ubuntu:~$ alsa-midi-latency-test -Rrw=2 -o20:0 -i20:0
 

Re: [LAD] PCI MIDI jitter - comparison Ubuntu (bad) and Suse (might be ok)

2010-07-11 Thread Robin Gareus
On 07/11/2010 05:18 PM, Ralf Mardorf wrote:
 Hi Robin :)
 
 On Sun, 2010-07-11 at 17:11 +0200, Robin Gareus wrote:
 Hi Ralf,

 You are comparing a banana and an orange to find out which one is
 sweeter. Given the nature of the problem it would help a lot to have as
 little differences between the systems under test, otherwise it's
 impossible to track it down.

 I hazard a guess that it's Ubuntu's 2.6.32 realtime-preemt-kernel.
 There are no official 2.6.32 rt-patches and it's likely that some of the
 back/forward ports have screwed things up.
 
 Good argument! OTOH an audio distro shouldn't use a kernel that will
 increase latency. I'll build 2.6.31.6-rt19 for Ubuntu Studio, btw. I had
 this kernel for 64 Studio too, but only in combination with USB MIDI.
 
 Is 'cat /proc/interrupts' identical on both systems?
 what about 'ps ax | wc -l' and
 'ps -eo pid,class,rtprio,ni,pri,pcpu,stat,comm --sort -rtprio'
 Are there high-priority jobs present on Ubuntu which are not on SuSE?
 
 I dunno, I'll run those commands and post them later, building a kernel
 will take some time.

The whole output of 'ps -eo...' will be tooo long. Just have a look
and check for high priority processes that are different on both systems.
If you have rtirq installed: '/etc/init.d/rtirq status' will show the
same list but only display processes with RTPRIO set.

Oh and I missed that the Ubuntu's 2.6.32.XX is actually not a rt-preemt
kernel. many thanks to Arnout to spot that.

If there's still a difference between SuSe  Ubuntu using the identical
kernel, with no significant high-priority processes: please post the
version of the alsa-libs for both systems.

Not sure if it has been mentioned before, but you should set your
soundcard's IRQ handler priority to sth high (eg 90) and use '-P 89'
with alsa-midi-latency-test.
With the default of -P 99 the kernel will always end up inverting
priorities to run it (the overhead for doing so is low but it may still
be relevant).


Thanks for being persistent on the Midi Jitter issue. Some of that info
is bound to come in handy..

ciao,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Jack latency handling (Re: Software for recording digital audio?)

2010-06-25 Thread Robin Gareus
On 06/25/2010 01:23 PM, Kjetil S. Matheussen wrote:
 
 Robin Gareus:
 
  0.49 has this feature implemented. Use the -jt option.
 
  It should be sample sync,

 Almost. It does not yet compensate for port-latency. It is important for
 both effects that introduce latency as well as to keep physical I/O in
 sync with apps.

 see jack_port_get_latency() and jack_port_get_total_latency()
 at http://jackaudio.org/files/docs/html/group__PortFunctions.html

 
 Thanks for the info! I also wonder, does jack compansate for
 latency when it mixes the outputs from ports (i.e. when several
 output ports are connected to a jack_capture port), so that
 the sound is in sync?

Jack2 (aka jack 1.9.6 SVN r4008) adds and sets the port-latencies of
connected [upstream] ports accordingly. The application itself is then
responsible for compensating accordingly.


Here's an example:

The system_playback port has a latency of 1024 frames and so is the
jack_buffersize (frames per period). app1 is a simple jack application
that prints the _total_-port-latency of it's in  out ports every time
they change and announces a latency of 512 frames on its input port (The
individual port-latencies themselves can be displayed with `lack_lsp -l`).

Unconnected app1 prints a total out-port latency of 0 and the in-port
latency which was configured when creating the port: 512.

Now:

app1 --- play #  app1: out-port latency:1024
  app1 #  app1: in-port  latency: 512
-=-=-=-

app1 -play #  app1: out-port latency: 512
  \- app1 #  app1: in-port  latency: 512

-=-=-=-

app1 -+- play #  app1: out-port latency: 1024
  \- app1 #  app1: in-port  latency: 1536


Note that the scenario is different if the client announces 512 frames
latency on it's output port _instead_ of its input:

Unconnected app2 prints an out-port latency of 512 and the in-port:0

app2 --- play #  app2: out-port latency:1536
  app2 #  app2: in-port  latency:   0
-=-=-=-

app2 -play #  app2: out-port latency: 512
  \- app2 #  app2: in-port  latency: 512

-=-=-=-

app2 -+- play #  app2: out-port latency: 1536
  \- app2 #  app2: in-port  latency: 1536


If you want to test with jack1:
   http://rg42.org/_media/wiki/jtest.c
(NB. the test-app only announces an internal latency, it actually has
none. I'll throw in a buffer on the next cold rainy day.)



Anyway: Is there a simple LADSPA or LV2 host that sets port-latencies
correctly? Well, not many plugins announce their latency but neither
jack-rack nor lv2_jack_host set that value to to the jack-ports;
ardour does (fi. test w/ the multiband EQ 1197 from Steve Harris).
Check with `jack_lsp -l` or better: listen to it by adding a
phase-inverter into a bus and see if you can cancel the signals.

ciao,
robin

-- 
Robin Gareus   mail: ro...@gareus.org
site: http://gareus.org/   chat: xmpp:rgar...@ik.nu
blog: http://rg42.org/ lab : http://citu.fr/

Public Key at http://pgp.mit.edu/
Fingerprint : 7107 840B 4DC9 C948 076D 6359 7955 24F1 4F95 2B42
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [oauth] Compiler Error on Mac OSX 10.6.3

2010-06-24 Thread Robin Gareus
On 06/02/2010 06:40 PM, Robin Gareus wrote:
 Hi Heath,
 
 Let's take this off-mailing-list; we're facing some compiler/linker
 issues which is beyond OAuth discussion. Let's report back there when
 we're done, shall we?

All right, for all those facing the same issue: linking an app
statically on Darwin/OSX with liboauth and dependencies, Heath  me came
up with a shell script that walks through the whole process:

http://rg42.org/oss/oauth/osx-static

Cheers!
robin

-- 
Robin Gareus   mail: ro...@gareus.org
site: http://gareus.org/   chat: xmpp:rgar...@ik.nu
blog: http://rg42.org/ lab : http://citu.fr/

Public Key at http://pgp.mit.edu/
Fingerprint : 7107 840B 4DC9 C948 076D 6359 7955 24F1 4F95 2B42

-- 
You received this message because you are subscribed to the Google Groups 
OAuth group.
To post to this group, send email to oa...@googlegroups.com.
To unsubscribe from this group, send email to 
oauth+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/oauth?hl=en.



Re: [LAD] Testing... There is a problem with the list?

2010-06-21 Thread Robin Gareus
Marc,

Could you shed some light on this? The server's been up  running
without any issues. And the mail-queue looks normal.

@Natanael: Did you get a warning message? (maybe in your SPAM folder)
If there's repeated bounces from your email address your subscription
would be disabled (you won't be unsubscribed but the message delivery
option in your account preferences for all linuxaudio.org lists would be
set to false). Given that you use a gmail account this is however
unlikely...

robin

On 06/21/2010 04:08 PM, Natanael Olaiz wrote:
 Is there any problem with the list(s) server(s)? The last message that I
 received is from friday, but I see in the archive web page that there
 was more since that day.
 
 The same seems to happens in LAU.
 
 Natanael.
 
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


[oauth] Re: liboauth and the oauth_verifier with twitter

2010-06-17 Thread Robin Gareus
On 06/17/2010 06:52 AM, Heath wrote:
 I'm trying to use liboauth to connect to twitter.  I can successfully
 retrieve my request token, but I cannot retrieve an access token
 because the liboauth functions do not accept the oauth_verifier
 parameter.  

sure it does, just add it to the request parameters..
You can also override other oauth_parameters (but for oauth_signature)
that way.

 Is twitter using non-standard oauth?  

No, it's using OAuth 1.0A.
in short: The A adds the oauth_verifier.

 Is there a way to
 get this parameter into my request that I'm missing?

oauth_sign_url2(http://twitter...?a=boauth_verifier=CODE;...)

will do the trick.

ciao,
robin

-- 
You received this message because you are subscribed to the Google Groups 
OAuth group.
To post to this group, send email to oa...@googlegroups.com.
To unsubscribe from this group, send email to 
oauth+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/oauth?hl=en.



Re: [LAD] Real-time plotting of audio/ oscilloscope.

2010-06-17 Thread Robin Gareus
On 06/17/2010 06:29 AM, Jeremy wrote:
 Hi,
 
 When I'm programming, I find it immensely helpful to be able to plot audio
 data at different points in its processing, for debugging, and to test new
 ideas.
 
 Essentially I want an oscilloscope, which plots each chunk of 1024 samples.
 
 I've tried using libplot, but it seems too slow.  It's causing constant
 xruns, even when I only plot every 5th sample.
 
 I thought that maybe libplot was too abstract, and that I needed to draw the
 pixels on the screen directly.  I tried using SDL, but it caused excessive
 xruns also.  Simply setting 48000 pixels per second was enough to cause the
 flow of xruns.  This is  *not* erasing the screen, just drawing the points.
  I'd expect that erasing the screen is the slow part, but apparently not.
 
 At this point I'm not sure if it's even possible to plot the audio data in
 realtime.  I did a rough calculation, that on my 2 Ghz cpu, it should have
 roughly 40,000 cycles to process each sample.  It seems to me that
 considering running the whole plugin only uses 1/4 of my cpu, the other
 3 cycles should be plenty to put a pixel on the screen.
 
 So I would guess that something else is the bottleneck, like my video chip,
 or maybe the libraries I'm using.
 
 So basically my question is:  Has anyone else had any luck with plotting
 audio data in real time, and if so, how?  Is it not possible to plot every
 sample, but only a certain percentage of them?  Is there a fundamental
 restriction on doing so, or is my problem in software?
 
 Jeremy

There's jack.scope that comes with jackd, jack_oscrolloscope[1] and
QoscC[2] which display the wave-form in realtime on-screen (but IIRC
won't save the graphic to file).
bitscope is nice for detecting value-range issues (sticky bits,
Nan..); baudline has a waveform option.. and a more generic
Oscilloscope: xoscope

As for plotting the signal: most audio-editors will do. just fire up
ardour or any sound-editor, record the signal  take a screenshot :)
Well, there's a couple of utilities to render wave-forms but all tools I
know there operate on files and not real-time.

http://apps.linuxaudio.org/apps/categories/scopes_and_realtime_visualizers


[1] http://das.nasophon.de/jack_oscrolloscope/
[2] http://flup.homelinux.org/qoscc.html
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] piano sound fonts

2010-06-17 Thread Robin Gareus
On 06/17/2010 04:41 PM, Simon Burton wrote:
 
 Hi all,
 
 So I'm banging around some piano samples:
 
 http://pythonicle.net/sounds/output-7.ogg
 http://pythonicle.net/sounds/output-7.mp3
 
 using phasing (a la Steve Reich) and some piano samples I found here:
 
 http://www.pianosounds.com/freesoundfont.htm
 
 Does anyone have a recommendation for a more comprehensive (non-free even)
 piano sound palette ?

maybe the Salamander?! It announced on LAU a few weeks back:
http://linuxaudio.org/mailarchive/lau/2010/5/17/168952

http://download.linuxaudio.org/torrents/SalamanderGrandPiano.tar.bz2.torrent
  or direct:
http://download.linuxaudio.org/lau/SalamanderGrandPiano.tar.bz2


 I use python code* and was very happy to be able to import soundfont files.
 
 I see also these gigasampler files, maybe i can use libgig to access those (?)
 
 *Here are all my secrets: http://pythonicle.net/svn/projects/dsptools
 Take a look if you are curious. There is python wrappers for using numpy
 with ladspa and portaudio. And i forget what else. One of these days
 I might get around to cleaning all this up, but right now I need to 
 make sounds just to bring some sanity into my world.
 
 bye for now,
 
 Simon.
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


Re: [LAD] Real-time plotting of audio/ oscilloscope.

2010-06-17 Thread Robin Gareus
On 06/18/2010 02:05 AM, Jeremy wrote:
[..]
 Anyway, is there any library that provides me with an array to write to, and
 it handles refreshing the screen?  That way I would essentially just be
 writing to an array, which should be really fast inside the realtime loop.
  I thought that is what SDL does, but I guess not.
 
 Jeremy

Not sure where this is going. You started by saying you only needed a
simple debug tool.. but of course it's fun to tinker with SDL. :)

For drawing array-data on screen, pure-data would be a good choice.
Should not take more than 1 min: just open the Pd help for tabwrite~
and replace the phasor~ with adc~ to feed it with real-time audio-data.

If you want to stick with SDL, use a jack-ringbuffer (which is basically
an array); the jack-process callback writes into it
and in the main SDL thread: you read from the ring-buffer, plot it,
sleep for 40ms, repeat.

http://das.nasophon.de/jack_oscrolloscope/ is using SDL.

UTSL,
robin
___
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev


<    1   2   3   4   5   6   >