Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 364299 - media-sound/fluidsynth-1.1.3 fails to connect to jackd in realtime mode
Summary: media-sound/fluidsynth-1.1.3 fails to connect to jackd in realtime mode
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: Normal major (vote)
Assignee: Gentoo Sound Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-04-20 23:37 UTC by James L. Hammons
Modified: 2012-11-23 03:58 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
Patch from the fluidsynth developer's list (fluidsynth-fluid_jack.patch,3.79 KB, patch)
2011-04-20 23:38 UTC, James L. Hammons
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description James L. Hammons 2011-04-20 23:37:13 UTC
Like the summary says, fluidsynth cannot connect to jackd if it is running in realtime mode. It can connect in non-realtime mode, but this is an unacceptable mode of operation.

I found a patch on the fluidsynth developer's list at http://lists.nongnu.org/archive/html/fluid-dev/2011-02/msg00012.html, and verified that it indeed solves the problem. I don't know if it will be included in the next revbump or not, but this is a pretty severe problem.

Reproducible: Always

Steps to Reproduce:
1. Start jackd in realtime mode
2. Start fluidsynth in jack mode (fluidsynth -m jack -a jack)

Actual Results:  
$ ./fluidsynth -m jack -a jack
FluidSynth version 1.1.3
Copyright (C) 2000-2010 Peter Hanappe and others.
Distributed under the LGPL license.
SoundFont(R) is a registered trademark of E-mu Systems, Inc.

lash_open_socket: could not connect to host 'localhost', service '14541'
lash_comm_connect_to_server: could not create server connection
Connected to JACK server with client name 'LASH_Server'
Opened ALSA sequencer with client ID 130
Listening for connections
Created project project-1 in directory /home/shamus/audio-projects/project-1
Added client a30d348b-b308-470e-a67a-e9ee6d159e2a of class fluidsynth to project project-1
zombified - calling shutdown handler
fluidsynth: error: Help! Lost the connection to the JACK server

Expected Results:  
fluidsynth should have connected successfully to jackd.

# emerge --info
Portage 2.1.9.46 (default/linux/x86/10.0, gcc-4.4.5, glibc-2.13-r2, 2.6.38-gentoo-r1 i686)
=================================================================
System uname: Linux-2.6.38-gentoo-r1-i686-Intel-R-_Pentium-R-_4_CPU_2.80GHz-with-gentoo-2.0.2
Timestamp of tree: Mon, 18 Apr 2011 00:00:01 +0000
app-shells/bash:     4.2_p8
dev-java/java-config: 2.1.11-r3
dev-lang/python:     2.7.1-r1, 3.1.3-r1
dev-util/cmake:      2.8.4
sys-apps/baselayout: 2.0.2
sys-apps/openrc:     0.8.2
sys-apps/sandbox:    2.5
sys-devel/autoconf:  2.13, 2.68
sys-devel/automake:  1.4_p6-r1, 1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1-r1
sys-devel/binutils:  2.21
sys-devel/gcc:       4.4.5, 4.5.2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.4-r1
sys-devel/make:      3.82
sys-kernel/linux-headers: 2.6.38
virtual/os-headers:  0
ACCEPT_KEYWORDS="x86 ~x86"
ACCEPT_LICENSE="*"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=pentium4"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe -march=pentium4"
DISTDIR="/mnt/filestore/distfiles"
FEATURES="assume-digests binpkg-logs distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en en_US"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/layman/pro-audio /usr/local/portage"
SYNC="rsync://192.168.0.9/gentoo-portage"
USE="16bit 3ds 64bit 7z 7zip X a52 aac ace acl acpi agg alsa amarok amr ao archive asf async audiofile bash-completion bidi bittorrent bjam blender-game bzip2 cairo cdda cdparanoia cdr chm chroot cjk cli consolekit cpudetection cracklib crypt css cups curl cviewer cxx dbus declarative depth32 device-mapper devil dia dirac divx djbfft djvu dri dssi dts dv dvb dvbplayer dvd dvdr dvdread dvi ecc effects embedded encode exif extra extrafilters fam fat fbcon ffmpeg fftw fits flac fluidsynth fontconfig fontforge fortran fping gd gdbm gif gimp gimpprint git gkrellm glib glitz gnutella gnutls gphoto2 gpm gs gtk gtk2 guile gzip hddtemp htmlhandbook iconv icu id3 idea ieee1394 imagemagick imlib inkjar ipv6 jack jack-tmpfs jackmidi java javascript joystick jpeg jpeg2k kde kdecards kerberos kig-scripting kpathsea kqemu ksolver ladcca ladspa lame lash latex lcms ldap ldapsam libass libsamplerate lilypond lm_sensors lzma lzo lzw mad matroska melt mikmod mime ming mjpeg mmap mmx mmxext mng mod modplug modules mp3 mp4 mpeg mpeg2 mudflap musepack music mysql ncurses nls nova nptl nptlonly nsplugin ntfs offensive ofx ogg openal openexr opengl openmp openssh openssl oscar pam pch pcre pdf perl physfs plasma player png policykit povray pppd qt3 qt3support qt4 quicktime rar rdesktop readline regex reiserfs rle rpm rtc rtsp samba scanner schroedinger sdl sdl-sound sdlaudio semantic-desktop session shorten sid slang sndfile sockets solver sound sox speex spell sql sqlite sqlite3 sse sse2 ssl startup-notification subtitles subversion svg svgz sysfs t1lib tagwriting tcpd tetex tga theora thesaurus threads tidy tiff transcode truetype twolame type1 udev unicode unzip usb utempter vcd vdr verse visualization vorbis vorbis-psy wavpack webkit win32codecs wma wmf wmp wordperfect wxwindows x264 x86 xanim xcb xchatdccserver xcomposite xft xine xml xorg xpm xprint xrandr xscreensaver xv xvid xvmc zip zlib" ALSA_CARDS="ice1712" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev keyboard mouse joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, MAKEOPTS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 James L. Hammons 2011-04-20 23:38:20 UTC
Created attachment 270727 [details, diff]
Patch from the fluidsynth developer's list
Comment 2 James L. Hammons 2011-04-22 18:26:41 UTC
I should add on a side note here that qsynth, even though it's been built from a patched fluidsynth, displays the behavior outlined above (can't connect to jackd on startup). This is probably because qsynth uses libfluidsynth and this patch probably doesn't touch any code in there.

Also, there are some other areas where problems still exist (and aren't handled by the patch), like resetting fluidsynth will cause fluidsynth to lose its connect to jackd.
Comment 3 Samuli Suominen (RETIRED) gentoo-dev 2012-11-23 03:58:05 UTC
It looks like this patch is in the upstream 1.1.6 release which is already in Portage