Problems running bristol in UbuntuStudio

Help
D Fro
2008-03-25
2013-05-23
  • D Fro
    D Fro
    2008-03-25

    I have UbuntuStudio installed on an Intel based computer that I built. I also have a Delta 1010 sound card/midi in-out.  I found that bristol is already installed on the system, but it will not run.  I use jack with Ardour, Hydrogen and other programs.  Here is what I am getting when I try to start it from the cl:

    $ startBristol -b3 -alsa
            You may want to make bristolengine a suid-root executable
    spawning midi thread
    Could not reschedule thread to 2
    parent going into idle loop
    connected to :0.0 (80f82f0)
    display is 1440 by 900 pixels
    Window is w 1440, h 900, d 24, 0 0 0
    Using DirectColor display
    masks are ff0000 ff0000 ff0000
            flags are 00000000
    Returning socket 3
    Opened listening control socket: 5028
    ALSA lib rawmidi_hw.c:233:(snd_rawmidi_hw_open) open /dev/snd/midiC0D0 failed: No such file or directory
    Could not open the MIDI interface hw:0,0.
    Error opening midi device hw:0,0, exiting midi thread
    Initialise the hammondB3 link to bristol: 80fcc08
    starting upper manual connection
    hostname is localhost, bristol
    port is 5028
    Connected to the bristol control socket: 5
    bristolengine already active
    80d4e80 80000000 0
    parent exiting
    return - no data in buffer
    cleanupBristol(0)

    .......................

    Any ideas on how to get running?  My understanding of alsa and oss and jack is very much that of a noob.

    Thanks,
    dfro

     
    • Nick Copeland
      Nick Copeland
      2008-03-25

      Hi Dfro,

      I use Ubuntu at the moment to develop bristol but only 7.10, not Ubuntu Studio. I have an idea the bristol version that is delivered is quite old and whilst I don't like the idea of just saying you need to upgrade to the later releases it might make sense. When I checked Ubuntu for bristol versions it reported 0.9.2 which is at least a year old. You can find newer versions here on the website.

      The failure you have is that the MIDI device is not available. You can get more information on ALSA midi devices from

      cat /proc/asound/seq/drivers

      You should see a snd-seq-midi loaded minimally. As far as the devices are concerned I don't want to advise on how to create them if they are not there. You could try the "-midi seq" option to try and get the engine to use seq rather than the raw midi reported in your output.

      What MIDI do you normally use - sequencers and such like or an actual master controller?

      Regards,
      Nick.

       
    • D Fro
      D Fro
      2008-03-26

      Nick,

      Thank you for replying to my questions! Here is what I get:

      ~$ cat /proc/asound/seq/drivers
      snd-seq-midi,loaded,1
      snd-seq-oss,loaded,0

      So, it looks like snd-seq-midi has loaded. Being a noob, I do not know what that is, though.  I would like to download and build/install the latest version of bristol. Could you help me with that?  Do I need to uninstall bristol 0.9.1-13 from synaptic?  If I check it for removal, it also wants to remove ubuntustudio-audio, which I think a lot of other packages depend on. Any advice?

      I normally use a Fatar master controller keyboard to drive midi sound modules through my Delta 1010 module, but at one time I was able to get the Virtual MIDI Keyboard working.

      I am encouraged that you are developing bristol in the Ubuntu environment.

      Thanks,
      Dave

       
    • Nick Copeland
      Nick Copeland
      2008-03-26

      If synaptic wants to remove other audio parts then don't bother, you should be able to download newer version from here and install as below. Firstly, what happens from the following command:

      which startBristol

      You may want to remove this one program - its just a script and the new install will have a newer version however it would be better not to have two of them since you may end up using the old one. So, 'rm /whatever/that/file/is/startBristol'.

      Ok, then you want to do something like the following:

      Download bristol-0.20.3.tar.gz to /tmp or similar directory.

      cd
      mkdir src
      cd src
      tar xfvpz /tmp/bristol-0.20.3.tar.gz
      cd bristol-0.20.3
      ./configure

      You need this to proceed without any errors and the last few lines of output should be something like these below:

      bristol 0.20.3 :

      | Build with ALSA support .............................. : true
      | Build with JACK support .............................. : true
      | Installing data into ................................. : /usr/local/share/bristol

      This means you have a compiler installed, you have ALSA available and Jack available plus you have the X11 header files you need. You may get some error messages before this in which case there are some missing dependencies that we need to look at. If there is a complaint about not finding a gcc then you need to look at installing gcc, and binutils. If it complains about missing X11 headers then you need to look for libx11-dev files with the synaptic package manager (you may need others, there is a thread in this forum that covers the issue - this was with 64 studio and it needed xorg-dev, libasound2-dev and libjack-dev to build with all the drivers).

      If you get here then type

      make

      and after that you need to be root and type

      make install

      Now you should be able to find the new startBristol and test it with -alsa and -jack. It is probably worth saying that tonight or tomorrow I am likely to upload 0.20.4 and you may want to wait for that, it has a few useful fixes.

      That probably looks like a bit more work than you want it to be. I supposed I should do a bit more work maintaining dependencies but there are currently so many different Linux distributions with different update methods and software groups that I kind of skip them - passing the buck.

      Regards,

      Nick.

       
    • D Fro
      D Fro
      2008-03-27

      Thanks Nick for the advice!

      ~$ which startBristol
      /usr/bin/startBristol

      I will remove this file.

      I have compiled/installed a few programs before, so your instructions are not completely new to me.  I will wait for your 0.20.4 upload to proceed, as you suggest.

      Thanks,
      Dave

       
    • Nick Copeland
      Nick Copeland
      2008-03-27

      Release 0.20.4 went up last night. Let me know how you get on with the installation.

      Regards, nick

       
    • D Fro
      D Fro
      2008-03-27

      Nick,

      I compiled and installed the program with no problems! I did need to install the -dev packages that you suggested to get jack and alsa working (showing "=true" after ./configure). That was a painless install, thanks to you clear guidance.

      I routed bristol into ardour and did a test recording, successfully. I am having fun trying out all the various keyboards.

      I was just wondering - do you have a way to map all the knobs and faders to an external controller yet?

      Thanks again!

      Dave

       
    • Nick Copeland
      Nick Copeland
      2008-03-27

      Hi Dave,

      That is great news.

      You can map midi controllers to faders and knobs in a kind of two step process:

      Connect MIDI to the GUI (as well as the engine)
      Middle Mouse button to link controllers to faders, etc.

      So a short explanation is like this. You use aconnect to link the sequencer or MIDI master keyboard to the bristol engine. It will respond to MIDI notes, mod wheel, pitch wheel, etc. If you want to change the sounds then you also have to connect the GUI, brighton, to the same MIDI controller. The engine generates sounds but nothing else - if you want to change the sound you have to use the GUI. Hence, if you want to change the sound using a MIDI control surface you have to connect it to the GUI.

      Its not too difficult.

      Use 'aconnect -i' to see the inputs, you should see your MIDI interface or USB controller here. Use 'aconnect -o' to see the outputs - you should see brighton and bristol here. Something like

      aconnect 63:1 129:0

      Would link device 62:1 to brighton (which usual registers under id 129 but you can see that from the other aconnect commands explained above).

      Now, when you have connected them up you should see somethings happen immediately - when you press notes  on the master keyboard the GUI should show the same notes moving (I have made some changes here recently so it may give odd results). Anyway, then put your mouse button on one of the faders or potentiometers and click the middle mouse button = both buttons on a 2 button windows mouse. You should see a message regarding controller registration. Now move the desired controller and Brighton will link them up.

      When you save a memory I should also save the controller registrations so they remain active when you restart.

      Good luck. Mapping controllers is a bit of work but is seriously fun when it works. Let me know how you get on.

      Regards,

      nick.