[ubuntu-studio-devel] New Live Music Control Application

Elias Kesh elias at kesh.com
Fri Sep 13 03:25:52 UTC 2019


I released the first version. Have Fun.

https://github.com/EliasKesh/LiveMusicApp

Elias

On 9/9/19 1:05 PM, Elias Kesh wrote:
>
> Ralf,
>
> The app is currently using libwebkit2gtk-4.0.so.37. I've included a 
> full ldd at the end.
>
> Len,
>
> I share your concerns in multiple areas, that's one of the reasons 
> I've been sitting on this for the last few years.
>
> In term of licensing I was thinking LGPL, but, open to suggestions.
>
> For a small Pedal board, I have the source and schematics on github 
> using an Arduino:
>
> https://github.com/EliasKesh/SmallMidiExpressioWithButtons
>
> The LED's on the stompbox (like tempo) are controller from the app.
>
> In terms of setup, I think keyboard players are used to a certain 
> amount of  programming before playing. At least this method uses a 
> large screen, real keyboard and is consistent. However, for the less 
> techie group I would think it's a non starter.
>
> It would not be too difficult to set up the information (Patches, 
> Tempo) by clicking on buttons and then having the code write into the 
> HTML file. There is already a parser with reads songs files, extracts 
> the meta data and can rewrite them (Comes for changing my mind on 
> formats too much).
>
> In terms of packing. I already have the debian make system and can 
> build a .deb . However, beyond that I would need some guidance on what 
> is required. I was also wondering if it where packaged as a container, 
> that might make it easier to use.
>
> By the way, all of this runs on a Raspberry Pi as well. Using the 
> PiSound board it's no bigger than your average stomp box, minus the 
> display.
>
> What are the next steps ?
>
> Thanks,
>
> Elias
>
> elias at kesh.com
>
> LSB Version: 
> core-10.2019031300ubuntu1-noarch:cxx-3.0-amd64:cxx-3.0-noarch:cxx-3.1-amd64:cxx-3.1-noarch:cxx-3.2-amd64:cxx-3.2-noarch:cxx-4.0-amd64:cxx-4.0-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-3.1-amd64:desktop-3.1-noarch:desktop-3.2-amd64:desktop-3.2-noarch:desktop-4.0-amd64:desktop-4.0-noarch:desktop-4.1-amd64:desktop-4.1-noarch:graphics-2.0-amd64:graphics-2.0-noarch:graphics-3.0-amd64:graphics-3.0-noarch:graphics-3.1-amd64:graphics-3.1-noarch:graphics-3.2-amd64:graphics-3.2-noarch:graphics-4.0-amd64:graphics-4.0-noarch:graphics-4.1-amd64:graphics-4.1-noarch:languages-3.2-amd64:languages-3.2-noarch:languages-4.0-amd64:languages-4.0-noarch:languages-4.1-amd64:languages-4.1-noarch:multimedia-3.2-amd64:multimedia-3.2-noarch:multimedia-4.0-amd64:multimedia-4.0-noarch:multimedia-4.1-amd64:multimedia-4.1-noarch:qt4-3.1-amd64:qt4-3.1-noarch:security-10.2019031300ubuntu1-noarch
> Distributor ID: Ubuntu
> Description:    Ubuntu 19.04
> Release:        19.04
> Codename:       disco
>
> ldd LiveMusicApp
>
>         linux-vdso.so.1 (0x00007fffaf107000)
>         libxml2.so.2 => /usr/local/lib/x86_64-linux-gnu/libxml2.so.2 
> (0x00007f52a0bda000)
>         libasound.so.2 => /usr/local/lib/libasound.so.2 
> (0x00007f52a0ad9000)
>         libwebkit2gtk-4.0.so.37 => 
> /usr/local/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37 
> (0x00007f529e05b000)
>         libgtk-3.so.0 => /usr/local/lib/x86_64-linux-gnu/libgtk-3.so.0 
> (0x00007f529d968000)
>         libgdk-3.so.0 => /usr/local/lib/x86_64-linux-gnu/libgdk-3.so.0 
> (0x00007f529d86c000)
>         libpango-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x00007f529d821000)
>         libcairo.so.2 => /usr/local/lib/x86_64-linux-gnu/libcairo.so.2 
> (0x00007f529d6ff000)
>         libgdk_pixbuf-2.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 
> (0x00007f529d6d9000)
>         libgobject-2.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007f529d67d000)
>         libglib-2.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f529d55c000)
>         libjack.so.0 => /usr/local/lib/libjack.so.0 (0x00007f529d2ff000)
>         liblo.so.7 => /usr/local/lib/liblo.so.7 (0x00007f529d2e8000)
>         libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 
> (0x00007f529d2c5000)
>         librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 
> (0x00007f529d2ba000)
>         libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f529d16c000)
>         libXmu.so.6 => /usr/local/lib/x86_64-linux-gnu/libXmu.so.6 
> (0x00007f529cf53000)
>         libX11.so.6 => /usr/local/lib/x86_64-linux-gnu/libX11.so.6 
> (0x00007f529ce19000)
>         libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f529cc2e000)
>         libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 
> (0x00007f529cc26000)
>         libicuuc.so.63 => 
> /usr/local/lib/x86_64-linux-gnu/libicuuc.so.63 (0x00007f529ca57000)
>         libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f529ca3b000)
>         liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 
> (0x00007f529ca14000)
>         /lib64/ld-linux-x86-64.so.2 (0x00007f52a0fc8000)
>         libGL.so.1 => /usr/local/lib/x86_64-linux-gnu/libGL.so.1 
> (0x00007f529c980000)
>         libEGL.so.1 => /usr/local/lib/x86_64-linux-gnu/libEGL.so.1 
> (0x00007f529c96b000)
>         libatk-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libatk-1.0.so.0 (0x00007f529c940000)
>         libgio-2.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x00007f529c777000)
>         libnotify.so.4 => 
> /usr/local/lib/x86_64-linux-gnu/libnotify.so.4 (0x00007f529c76d000)
>         libxslt.so.1 => /usr/local/lib/x86_64-linux-gnu/libxslt.so.1 
> (0x00007f529c72d000)
>         libsqlite3.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libsqlite3.so.0 (0x00007f529c60d000)
>         libjavascriptcoregtk-4.0.so.18 => 
> /usr/local/lib/x86_64-linux-gnu/libjavascriptcoregtk-4.0.so.18 
> (0x00007f529b394000)
>         libicui18n.so.63 => 
> /usr/local/lib/x86_64-linux-gnu/libicui18n.so.63 (0x00007f529b0b7000)
>         libwoff2dec.so.1.0.2 => 
> /usr/local/lib/x86_64-linux-gnu/libwoff2dec.so.1.0.2 (0x00007f529b0aa000)
>         libfontconfig.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007f529b064000)
>         libfreetype.so.6 => 
> /usr/local/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007f529afa9000)
>         libharfbuzz.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007f529aeb0000)
>         libharfbuzz-icu.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libharfbuzz-icu.so.0 (0x00007f529aeab000)
>         libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 
> (0x00007f529ad8c000)
>         libgstapp-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 (0x00007f529ad7b000)
>         libgstbase-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 (0x00007f529ad00000)
>         libgstreamer-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 (0x00007f529abbe000)
>         libgstpbutils-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 
> (0x00007f529ab82000)
>         libgstaudio-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 (0x00007f529ab08000)
>         libgsttag-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 (0x00007f529aac9000)
>         libgstvideo-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 (0x00007f529aa1d000)
>         libgstgl-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgstgl-1.0.so.0 (0x00007f529a9a8000)
>         libgstfft-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 (0x00007f529a99b000)
>         libjpeg.so.8 => /usr/local/lib/x86_64-linux-gnu/libjpeg.so.8 
> (0x00007f529a918000)
>         libpng16.so.16 => 
> /usr/local/lib/x86_64-linux-gnu/libpng16.so.16 (0x00007f529a8e1000)
>         libwebp.so.6 => /usr/local/lib/x86_64-linux-gnu/libwebp.so.6 
> (0x00007f529a676000)
>         libwebpdemux.so.2 => 
> /usr/local/lib/x86_64-linux-gnu/libwebpdemux.so.2 (0x00007f529a471000)
>         libenchant.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libenchant.so.1 (0x00007f529a463000)
>         libgmodule-2.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007f529a45d000)
>         libsecret-1.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libsecret-1.so.0 (0x00007f529a40a000)
>         libsoup-2.4.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libsoup-2.4.so.1 (0x00007f529a37d000)
>         libtasn1.so.6 => /usr/local/lib/x86_64-linux-gnu/libtasn1.so.6 
> (0x00007f529a168000)
>         libhyphen.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libhyphen.so.0 (0x00007f529a161000)
>         libXcomposite.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libXcomposite.so.1 (0x00007f5299f5e000)
>         libXdamage.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007f5299d5b000)
>         libwayland-server.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libwayland-server.so.0 
> (0x00007f5299d47000)
>         libwayland-egl.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libwayland-egl.so.1 (0x00007f5299d42000)
>         libwayland-client.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libwayland-client.so.0 
> (0x00007f5299d2f000)
>         libstdc++.so.6 => 
> /usr/local/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f5299b4d000)
>         libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 
> (0x00007f5299b33000)
>         libpangocairo-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 
> (0x00007f5299b23000)
>         libXi.so.6 => /usr/local/lib/x86_64-linux-gnu/libXi.so.6 
> (0x00007f5299913000)
>         libXfixes.so.3 => 
> /usr/local/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f529970b000)
>         libcairo-gobject.so.2 => 
> /usr/local/lib/x86_64-linux-gnu/libcairo-gobject.so.2 (0x00007f52996ff000)
>         libatk-bridge-2.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0 
> (0x00007f52996cb000)
>         libepoxy.so.0 => /usr/local/lib/x86_64-linux-gnu/libepoxy.so.0 
> (0x00007f5299599000)
>         libfribidi.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libfribidi.so.0 (0x00007f529957c000)
>         libpangoft2-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x00007f5299563000)
>         libXinerama.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libXinerama.so.1 (0x00007f529955c000)
>         libXrandr.so.2 => 
> /usr/local/lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007f5299351000)
>         libXcursor.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007f5299346000)
>         libxkbcommon.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007f5299305000)
>         libwayland-cursor.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libwayland-cursor.so.0 
> (0x00007f52992fc000)
>         libXext.so.6 => /usr/local/lib/x86_64-linux-gnu/libXext.so.6 
> (0x00007f52990e8000)
>         libthai.so.0 => /usr/local/lib/x86_64-linux-gnu/libthai.so.0 
> (0x00007f52990dd000)
>         libpixman-1.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libpixman-1.so.0 (0x00007f5299037000)
>         libxcb-shm.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007f5299032000)
>         libxcb.so.1 => /usr/local/lib/x86_64-linux-gnu/libxcb.so.1 
> (0x00007f5299009000)
>         libxcb-render.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007f5298ff8000)
>         libXrender.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007f5298dee000)
>         libffi.so.6 => /usr/local/lib/x86_64-linux-gnu/libffi.so.6 
> (0x00007f5298de4000)
>         libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 
> (0x00007f5298d70000)
>         libXt.so.6 => /usr/local/lib/x86_64-linux-gnu/libXt.so.6 
> (0x00007f5298b07000)
>         libicudata.so.63 => 
> /usr/local/lib/x86_64-linux-gnu/libicudata.so.63 (0x00007f5297115000)
>         libGLX.so.0 => /usr/local/lib/x86_64-linux-gnu/libGLX.so.0 
> (0x00007f52970e1000)
>         libGLdispatch.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libGLdispatch.so.0 (0x00007f5297024000)
>         libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 
> (0x00007f5296fc8000)
>         libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 
> (0x00007f5296f9e000)
>         libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 
> (0x00007f5296f81000)
>         libwoff2common.so.1.0.2 => 
> /usr/local/lib/x86_64-linux-gnu/libwoff2common.so.1.0.2 
> (0x00007f5296f7c000)
>         libbrotlidec.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libbrotlidec.so.1 (0x00007f5296f6d000)
>         libexpat.so.1 => /usr/local/lib/libexpat.so.1 (0x00007f5296d38000)
>         libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 
> (0x00007f5296d2f000)
>         libgraphite2.so.3 => 
> /usr/local/lib/x86_64-linux-gnu/libgraphite2.so.3 (0x00007f5296d00000)
>         libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 
> (0x00007f5296cdd000)
>         liborc-0.4.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/liborc-0.4.so.0 (0x00007f5296c5e000)
>         libgstallocators-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 
> (0x00007f5296c57000)
>         libX11-xcb.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007f5296c52000)
>         libdrm.so.2 => /usr/local/lib/x86_64-linux-gnu/libdrm.so.2 
> (0x00007f5296c3d000)
>         libgbm.so.1 => /usr/local/lib/x86_64-linux-gnu/libgbm.so.1 
> (0x00007f5296c2c000)
>         libgudev-1.0.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libgudev-1.0.so.0 (0x00007f5296a22000)
>         libgssapi_krb5.so.2 => 
> /usr/local/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x00007f52969d5000)
>         libpsl.so.5 => /usr/local/lib/x86_64-linux-gnu/libpsl.so.5 
> (0x00007f52969c3000)
>         libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 
> (0x00007f5296972000)
>         libatspi.so.0 => /usr/local/lib/x86_64-linux-gnu/libatspi.so.0 
> (0x00007f529693f000)
>         libdatrie.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libdatrie.so.1 (0x00007f5296936000)
>         libXau.so.6 => /usr/local/lib/x86_64-linux-gnu/libXau.so.6 
> (0x00007f5296732000)
>         libXdmcp.so.6 => /usr/local/lib/x86_64-linux-gnu/libXdmcp.so.6 
> (0x00007f529652c000)
>         libSM.so.6 => /usr/local/lib/x86_64-linux-gnu/libSM.so.6 
> (0x00007f529651f000)
>         libICE.so.6 => /usr/local/lib/x86_64-linux-gnu/libICE.so.6 
> (0x00007f5296304000)
>         libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 
> (0x00007f52962af000)
>         libbrotlicommon.so.1 => 
> /usr/local/lib/x86_64-linux-gnu/libbrotlicommon.so.1 (0x00007f529628c000)
>         libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 
> (0x00007f5296266000)
>         libkrb5.so.3 => /usr/local/lib/x86_64-linux-gnu/libkrb5.so.3 
> (0x00007f5296189000)
>         libk5crypto.so.3 => 
> /usr/local/lib/x86_64-linux-gnu/libk5crypto.so.3 (0x00007f5296155000)
>         libcom_err.so.2 => /lib/x86_64-linux-gnu/libcom_err.so.2 
> (0x00007f529614f000)
>         libkrb5support.so.0 => 
> /usr/local/lib/x86_64-linux-gnu/libkrb5support.so.0 (0x00007f5296141000)
>         libidn2.so.0 => /usr/local/lib/x86_64-linux-gnu/libidn2.so.0 
> (0x00007f5296122000)
>         libunistring.so.2 => 
> /usr/local/lib/x86_64-linux-gnu/libunistring.so.2 (0x00007f5295fa2000)
>         libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 
> (0x00007f5295f02000)
>         libbsd.so.0 => /usr/local/lib/x86_64-linux-gnu/libbsd.so.0 
> (0x00007f5295ee8000)
>         libkeyutils.so.1 => /lib/x86_64-linux-gnu/libkeyutils.so.1 
> (0x00007f5295ee1000)
>         liblz4.so.1 => /usr/local/lib/x86_64-linux-gnu/liblz4.so.1 
> (0x00007f5295eb2000)
>
>
>
> On 9/9/19 8:33 AM, Len Ovens wrote:
>> On Mon, 9 Sep 2019, Elias Kesh wrote:
>>
>>> I've been writing and using this over the last few years and was 
>>> wondering if there is any interest in open sourcing it . It's 
>>> written using GTK and WebKit and can control guitarix, sooperlooper, 
>>> fluidsynth, hydrogen and a few others. I'm looking for feedback and 
>>> interest levels. Here is a quick overview video.
>>>
>>> https://youtu.be/Y8flGCnV-j0
>>
>> Intreresting. What kind of open source licence were you thinking of? 
>> Some are more compatable with debian/ubuntu than other. This seems to 
>> be a mix of session manager and control application. I have seen 
>> people who use such things but I am not one of them because I get 
>> confused doing complex real time things beyond playing the instrument 
>> itself ;)  But for people who do one man band with looping and 
>> backing this could be quite useful. I guess it could easily work for 
>> taking a MIDI controller foot switch and making a stomp box (a la Mod 
>> duo) wth a pi4 or nuc as well.
>>
>> How hard is it to program? some people would have no trouble with 
>> HTML programing, others would want some sort fo GUI.
>>
>> I guess we have to ask the hard questions too. What GUI does it use? 
>> and will it be maintained? People tend to look is askance at things 
>> where there has been no commits for ages (years). How would you host 
>> the code? (github, launchpad, etc.)
>>
>> Anyway, I do think it looks like a useful application. I think before 
>> we look at packaging it, we would want to see the how the code fits 
>> together for ease of packaging... not the make a package that works 
>> kind of packaging but rather the making the package acceptable for 
>> publishing part (means passes lint at least)
>>
>> It would be too late to have appear in 19.10 at this point, but 
>> plenty of time to hit 20.04.
>>
>> -- 
>> Len Ovens
>> www.ovenwerks.net
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/ubuntu-studio-devel/attachments/20190912/38e50528/attachment-0001.html>


More information about the ubuntu-studio-devel mailing list