Bug 489080 - Review Request: jamin - JACK Audio Connection Kit (JACK) Audio Mastering interface
Review Request: jamin - JACK Audio Connection Kit (JACK) Audio Mastering inte...
Status: CLOSED NEXTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Tom "spot" Callaway
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2009-03-07 03:13 EST by Orcan Ogetbil
Modified: 2009-04-27 17:30 EDT (History)
4 users (show)

See Also:
Fixed In Version: 0.95.0-5.fc9
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2009-04-27 17:19:39 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
tcallawa: fedora‑review+
kevin: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description Orcan Ogetbil 2009-03-07 03:13:54 EST
Spec URL: http://oget.fedorapeople.org/review/jamin.spec
SRPM URL: http://oget.fedorapeople.org/review/jamin-0.95.0-4.fc10.src.rpm
Description: 
JAMin is the JACK Audio Connection Kit (JACK) Audio Mastering interface. JAMin
is designed to perform professional audio mastering of any number of input
streams. It uses LADSPA for its backend DSP work, specifically the swh plugins
created by Steve Harris. Steve is the JAMin principle author and team leader.

rpmlint is silent
Comment 1 Tom "spot" Callaway 2009-04-07 09:35:46 EDT
One minor point before I start the full review, you don't need to give the bio of the upstream developer in the package description. This is sufficient:

"JAMin is the JACK Audio Connection Kit (JACK) Audio Mastering interface. JAMin
is designed to perform professional audio mastering of any number of input
streams. It uses LADSPA for its backend DSP work, specifically the swh plugins."
Comment 2 Tom "spot" Callaway 2009-04-07 11:57:35 EDT
= Review =

Good:

- rpmlint checks return nothing
- package meets naming guidelines
- package meets packaging guidelines
- license (GPLv2+) OK, text in %doc, matches source
- spec file legible, in am. english
- source matches upstream (d991da3fa6f531a1c8b7f6ef764aa13e7e9acbd3)
- package compiles on devel (x86_64)
- no missing BR
- no unnecessary BR
- locales handled properly
- not relocatable
- owns all directories that it creates
- no duplicate files
- permissions ok
- %clean ok
- macro use consistent
- code, not content
- no need for -docs
- nothing in %doc affects runtime
- .desktop file OK

In fact, the biggest problem (besides the unnecessary information in the %description) wasn't with this package, but with ladspa-swh-plugins. When I went to test this package out to make sure it ran, it didn't start, because the swh plugins it was trying to load were missing symbols. I fixed that package up, it should not have this problem with -15 or later.

Also, this app seems to need to run as root. You should probably use consolehelper (from the usermode package) to launch it. (look at liveusb-creator for an example of how to set it up).

Show me a SRPM that uses consolehelper and has the description cleaned up and I'll approve this one.
Comment 3 Orcan Ogetbil 2009-04-07 12:39:01 EDT
Thanks for the swh fix.

But why do you think this application needs to be run as root? I can run and use it with a regular user.
Comment 4 Tom "spot" Callaway 2009-04-07 13:46:42 EDT
Unpriviledged:

[spot@velociraptor ~]$ jamin
jamin 0.95.0
(C) 2003-2005 J. Depner, S. Harris, J. O'Quin, R. Parker and P. Shirkey
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details.
jackd 0.116.1
Copyright 2001-2005 Paul Davis and others.
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details

JACK compiled with System V SHM support.
loading driver ..
creating alsa driver ... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit
control device hw:0
control open "hw:0" (Permission denied)
ALSA lib pcm_hw.c:1429:(_snd_pcm_hw_open) Invalid value for card
ALSA lib pcm_hw.c:1429:(_snd_pcm_hw_open) Invalid value for card
ALSA: Cannot open PCM device alsa_pcm for playback. Falling back to capture-only mode
cannot load driver module alsa
jamin: jack_client_open() failed, status = 0x11
[spot@velociraptor ~]$
Comment 5 Orcan Ogetbil 2009-04-07 14:00:51 EDT
Hmm, it works fine here (unprivileged):

---------------------------------------------------------------
[orcan@desitter ~]$ jamin
jamin 0.95.0                     
(C) 2003-2005 J. Depner, S. Harris, J. O'Quin, R. Parker and P. Shirkey 
This is free software, and you are welcome to redistribute it  
under certain conditions; see the file COPYING for details.
jackd 0.116.1
Copyright 2001-2005 Paul Davis and others.
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details

JACK compiled with System V SHM support.
loading driver ..
apparent rate = 48000
creating alsa driver ... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit
control device hw:0
configuring for 48000Hz, period = 1024 frames (21.3 ms), buffer = 2 periods
ALSA: final selected sample format for capture: 16bit little-endian
ALSA: use 2 periods for capture
ALSA: final selected sample format for playback: 16bit little-endian
ALSA: use 2 periods for playback
jamin: JACK server started
---------------------------------------------------------------

But it seems to me that you have problems starting your jack daemon. Can you start it via:
   jackd -R -P4 -dalsa -r44100 -p512 -D -Chw:0 -Phw:0
Comment 6 Tom "spot" Callaway 2009-04-07 14:13:33 EDT
[spot@velociraptor ~]$ jackd -R -P4 -dalsa -r44100 -p512 -D -Chw:0 -Phw:0
jackd 0.116.1
Copyright 2001-2005 Paul Davis and others.
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details

JACK compiled with System V SHM support.
cannot use real-time scheduling (FIFO at priority 10) [for thread -99817744, from thread -99817744] (1: Operation not permitted)
cannot create engine

But! This is because I don't have jack configured properly with pulseaudio. Had I read "/usr/share/doc/jack-audio-connection-kit-0.116.1/README.Fedora" before, I would have known that. 

Just clean up the description and I'll approve it.
Comment 7 Fernando Lopez-Lezcano 2009-04-07 14:19:52 EDT
(In reply to comment #4)
> Unpriviledged:
> 
> [spot@velociraptor ~]$ jamin
> jamin 0.95.0
> (C) 2003-2005 J. Depner, S. Harris, J. O'Quin, R. Parker and P. Shirkey
> This is free software, and you are welcome to redistribute it
> under certain conditions; see the file COPYING for details.
> jackd 0.116.1
> Copyright 2001-2005 Paul Davis and others.
> jackd comes with ABSOLUTELY NO WARRANTY
> This is free software, and you are welcome to redistribute it
> under certain conditions; see the file COPYING for details
> 
> JACK compiled with System V SHM support.
> loading driver ..
> creating alsa driver ... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit
> control device hw:0
> control open "hw:0" (Permission denied)

Most probably something is using hw:0 in your system (pulse). Jack is meant to use the hw:x direct interfaces to the soundcard, if something else is using it then jack cannot start. 

> ALSA lib pcm_hw.c:1429:(_snd_pcm_hw_open) Invalid value for card
> ALSA lib pcm_hw.c:1429:(_snd_pcm_hw_open) Invalid value for card

But this is also suspect, the default parameters might be wrong for your soundcard (although the permission denied message would imply that the device is busy - by the way, the one that is busy is the control device, not the pcm one). 

> ALSA: Cannot open PCM device alsa_pcm for playback. Falling back to
> capture-only mode
> cannot load driver module alsa
> jamin: jack_client_open() failed, status = 0x11
> [spot@velociraptor ~]$  

Jamin depends on jack running fine. This appears to be a problem starting jack in your system. Try to start jack first, and if that is successful then try jamin.
Comment 8 Orcan Ogetbil 2009-04-07 14:53:33 EDT
Here's an update:
Spec URL: http://oget.fedorapeople.org/review/jamin.spec
SRPM URL: http://oget.fedorapeople.org/review/jamin-0.95.0-5.fc10.src.rpm

Changelog: 0.95.0-5
- Suppress double ./configure (in autogen.sh)
- Clean up unnecessary BR's
- Minor SPEC file update for macro consistency
- Update description

By the way, I don't have any undefined symbols for swh plugins on my F-10 box:

[orcan@desitter ~]$ rpm -q ladspa-swh-plugins
ladspa-swh-plugins-0.4.15-12.fc9.x86_64
[orcan@desitter ~]$ ldd -r `rpm -ql ladspa-swh-plugins|grep so$` |grep ymbo
[orcan@desitter ~]$


Was there something wrong with your setup?
Comment 9 Tom "spot" Callaway 2009-04-07 15:13:09 EDT
No, they were definitely missing symbols in rawhide. I only noticed it when jamin tried to dlopen them. Gentoo had a fix for the issue, so I just applied it and it went away. I also fixed the optflags while I was in there.

Your package looks good, APPROVED.

Wanna take a crack at: https://bugzilla.redhat.com/show_bug.cgi?id=454022 ? :)
Comment 10 Orcan Ogetbil 2009-04-07 15:29:02 EDT
Thanks spot. Sure. I'll do that next.

New Package CVS Request
=======================
Package Name: jamin
Short Description: JACK Audio Connection Kit (JACK) Audio Mastering interface
Owners: oget nando
Branches: F-9 F-10
InitialCC:
Comment 11 Kevin Fenzi 2009-04-07 22:39:47 EDT
cvs done.
Comment 12 Fedora Update System 2009-04-08 01:42:13 EDT
jamin-0.95.0-5.fc9 has been submitted as an update for Fedora 9.
http://admin.fedoraproject.org/updates/jamin-0.95.0-5.fc9
Comment 13 Fedora Update System 2009-04-08 01:42:54 EDT
jamin-0.95.0-5.fc10 has been submitted as an update for Fedora 10.
http://admin.fedoraproject.org/updates/jamin-0.95.0-5.fc10
Comment 14 Fedora Update System 2009-04-09 12:12:23 EDT
jamin-0.95.0-5.fc9 has been pushed to the Fedora 9 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing-newkey update jamin'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F9/FEDORA-2009-3461
Comment 15 Fedora Update System 2009-04-09 12:17:07 EDT
jamin-0.95.0-5.fc10 has been pushed to the Fedora 10 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update jamin'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F10/FEDORA-2009-3493
Comment 16 Fedora Update System 2009-04-27 17:19:34 EDT
jamin-0.95.0-5.fc10 has been pushed to the Fedora 10 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 17 Fedora Update System 2009-04-27 17:30:08 EDT
jamin-0.95.0-5.fc9 has been pushed to the Fedora 9 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.