Package: gstreamer1.0-plugins-bad Version: 1.14.4-1+b1 Severity: wishlist Tags: upstream
Dear Maintainer, I've been trying to get gstreamer to play midi files. Initially it was when using QMediaPlayer in a QT application. However it also applies when running gstreamer from the commandline, e.g. gst-play-1.0 sample.mid I can get it to work if I either specifiy the soundfount manually: gst-launch-1.0 filesrc location=sample.mid ! midiparse ! fluiddec soundfont=/usr/share/sounds/sf2/MuseScore_General_Full.sf2 ! pulsesink or I can also get the simple case of gst-play-1.0 to work if I remove all the soundfounts from /usr/share/sounds/sf2 except the one I want to use; unfortunately it was trying to use FluidR3_GS.sf2, which gives no sound. The problem lies in libgstfluidsynthmidi.so; looking at the source code in ext/fluidsynth/gstfluiddec.c:gst_fluid_dec_open(), it tries to open a bunch of directories and then reads the first file in the first directory it can open (/usr/share/sounds/sf2). I was hoping that there might be some kind of config file for gstreamer where I could set the default soundfont but I couldn't find one. Unfortunately there doesn't seem to be a standard way in Linux of setting a default soundfont to be used by all midi players; I was wondering if it would be possible to use e.g. the /etc/alterntives mechanism to choose between various Debian soundfonts e.g. MuseScore_General_Full.sf2 and FluidR3_GM.sf2, and then modify the gstreamer plugin to use that instead. -- System Information: Debian Release: buster/sid APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.19.0-2-amd64 (SMP w/4 CPU cores) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages gstreamer1.0-plugins-bad depends on: ii gstreamer1.0-plugins-base 1.14.4-1 ii libass9 1:0.14.0-1 ii libbs2b0 3.1.0+dfsg-2.2 ii libbz2-1.0 1.0.6-9 ii libc6 2.28-5 ii libcairo2 1.16.0-4 ii libchromaprint1 1.4.3-1 ii libcurl3-gnutls 7.58.0-2 ii libdc1394-22 2.2.5-1 ii libdca0 0.0.5-10 ii libde265-0 1.0.2-2+b2 ii libdrm2 2.4.97-1 ii libdvdnav4 6.0.0-1 ii libdvdread4 6.0.0-1 ii libfaad2 2.8.8-1 ii libflite1 2.1-release-1 ii libfluidsynth1 1.1.11-1 ii libgcc1 1:8.2.0-20 ii libglib2.0-0 2.58.3-1 ii libgme0 0.6.2-1 ii libgsm1 1.0.18-1 ii libgstreamer-gl1.0-0 1.14.4-1 ii libgstreamer-plugins-bad1.0-0 1.14.4-1+b1 ii libgstreamer-plugins-base1.0-0 1.14.4-1 ii libgstreamer1.0-0 1.14.4-1 ii libgudev-1.0-0 232-2 ii libilmbase23 2.2.1-2 ii libkate1 0.4.1-8 ii liblcms2-2 2.9-1 ii liblilv-0-0 0.24.2~dfsg0-1 ii libmjpegutils-2.1-0 1:2.1.0+debian-5 ii libmms0 0.6.4-2 ii libmodplug1 1:0.8.9.0-1 ii libmpcdec6 2:0.1~r495-1+b1 ii libmpeg2encpp-2.1-0 1:2.1.0+debian-5 ii libmplex2-2.1-0 1:2.1.0+debian-5 ii libnettle6 3.4.1~rc1-1 ii libnice10 0.1.14-1 ii libofa0 0.9.3-15 ii libopenal1 1:1.19.1-1 ii libopenexr23 2.2.1-4 ii libopenjp2-7 2.3.0-1 ii libopenmpt0 0.3.6-1 ii libopus0 1.2.1-1 ii liborc-0.4-0 1:0.4.28-1 ii libpango-1.0-0 1.42.0-1 ii libpangocairo-1.0-0 1.42.0-1 ii librsvg2-2 2.40.20-2 ii librtmp1 2.4+20151223.gitfa8646d.1-1+b1 ii libsbc1 1.3-2 ii libsndfile1 1.0.28-4 ii libsoundtouch1 2.1.2+ds1-1 ii libspandsp2 0.0.6+dfsg-0.1 ii libsrtp2-1 2.1.0-1 ii libssl1.1 1.1.1a-1 ii libstdc++6 8.2.0-20 ii libusb-1.0-0 2:1.0.22-2 ii libvo-aacenc0 0.1.3-1+b1 ii libvo-amrwbenc0 0.1.3-1+b1 ii libvulkan1 1.1.97-2 ii libwayland-client0 1.16.0-1 ii libwebp6 0.6.1-2 ii libwebrtc-audio-processing1 0.3-1 ii libwildmidi2 0.4.2-1 ii libx11-6 2:1.6.7-1 ii libx265-165 2.9-3 ii libxcb1 1.13-1 ii libxml2 2.9.4+dfsg1-6.1 ii libzbar0 0.10+doc-10.1+b2 ii libzvbi0 0.2.35-13 gstreamer1.0-plugins-bad recommends no packages. Versions of packages gstreamer1.0-plugins-bad suggests: ii frei0r-plugins 1.6.1-2 -- no debconf information