Radium v0.65.1

Discuss anything new and newsworthy!

Moderators: raboof, khz, MattKingUSA

Radium v0.65.1

Postby kmatheussen » Thu Jul 05, 2012 7:58 am

Hi, this is my first post here, which I'm using to announce a new version of Radium.

Radium is a free (as in speech) music editor with a novel interface. It's inspired by trackers, but has fewer limitations and uses graphics to show musical data.
http://users.notam02.no/~kjetism/radium/

Features:
  • Sound effects automation
  • Tempo automation
  • Velocity automation
  • Polyphonic tracks
  • Unlimited number of tracks.
  • Unlimited number of lines.
  • Unlimited note, tempo, and effect precision.
  • Undo/Redo
  • Zoom in/out.
  • Import standard midi files and MMD2/MMD3 modules
  • Note sequence effects such as transpose, quantitize, glizzando, invert and reverse.
  • Support for Jack MIDI and ALSA MIDI. (Both at the same time.)
  • Configurable key bindings, menues, fonts, and colors.
  • Extension language support. Write programs that generates music or modifies your songs.
  • Western style scores can be generated from radium songs by using Common Music Notation (CMN).

Image
kmatheussen
Establlshed Member
 
Posts: 83
Joined: Thu Jul 05, 2012 7:47 am

Re: Radium v0.65.1

Postby AutoStatic » Thu Jul 05, 2012 9:44 am

Hello Kjetil,

I'm definitely going to check it out, the features and screenshot look very appealing. Might be something I just needed. Thanks!

Jeremy

Edit: Had to modify the Makefile and change QTDIR to /usr/share/qt3 and remove -Werror from the compile flags. Looks good!
User avatar
AutoStatic
Establlshed Member
 
Posts: 1435
Joined: Wed Dec 09, 2009 5:26 pm
Location: Beverwijk, The Netherlands

Re: Radium v0.65.1

Postby james=jwm//art@net » Sun Jul 08, 2012 12:46 pm

Hi,

In Arch Linux I needed to change the Makefile so
Code: Select all
QTDIR=/usr/share/qt
and then create a symbolic link:

Code: Select all
sudo ln -s /usr/bin /usr/share/qt/bin


But then it's getting stuck trying to find sipconfig. I've installed python2-sip but the python binary on my system is python3. I tried python-sip but then get "Error: PyQt v3.x does not support Python v3.x"

I've also tried changing the
Code: Select all
which python
to
which python2
to no effect, it's still fails with
Code: Select all
 snip...
PyQt-x11-gpl-3.18.1/examples2/trolltech.bmp
PyQt-x11-gpl-3.18.1/examples2/desktop.py
PyQt-x11-gpl-3.18.1/examples2/secret.py
Traceback (most recent call last):
  File "configure.py", line 31, in <module>
    import sipconfig
ImportError: No module named sipconfig
make: *** [bin/packages/deletemetorebuild] Error 1
james=jwm//art@net
Establlshed Member
 
Posts: 32
Joined: Sun Apr 13, 2008 1:51 pm
Location: Canterbury, England

Re: Radium v0.65.1

Postby kmatheussen » Mon Jul 09, 2012 1:13 pm

> QTDIR=/usr/share/qt

Yes, you are supposed to edit that variable before compiling.


> sudo ln -s /usr/bin /usr/share/qt/bin

That sounds like the wrong thing to do. You need to run moc and uic from QT3. By adding that symbolic link, I think you might be running moc and uic from QT4 instead. You should run "moc -version" and "uic-version" to ensure you are not using moc and uic for the wrong versions of Qt.

Perhaps you are missing a QT3 package, like qt3-devel-tools or something like that. Or maybe moc and uic is placed somewhere else in /usr/share/qt/ ?


> ImportError: No module named sipconfig

Try to download latest version of Radium. It doesn't require sip.
You need PyQt4 now instead though.


> which python2

This should work with the latest version. I'm currently trying to make it run with Python 3 as well,
but changing that line to `which python2` should be fine.
kmatheussen
Establlshed Member
 
Posts: 83
Joined: Thu Jul 05, 2012 7:47 am

Re: Radium v0.65.1

Postby james=jwm//art@net » Mon Jul 09, 2012 2:03 pm

Hi,

I've downloaded 0.65.4...

kmatheussen wrote:> QTDIR=/usr/share/qt
Yes, you are supposed to edit that variable before compiling.

It should have been (for Arch Linux):
Code: Select all
QTDIR=/opt/qt


kmatheussen wrote:> sudo ln -s /usr/bin /usr/share/qt/bin
That sounds like the wrong thing to do.

Definitely was! It's getting much further into the compilation now... I got this error:

Code: Select all
make[1]: Leaving directory `/home/sirrom/SRC/kmatheussen-radium-e7efefe/bin/packages/dvarrazzo-py-setproctitle-c35a1bf'
`which python` -c "import sys;print sys.prefix+'/include/python'+sys.version[:3]" >pypath.comp
  File "<string>", line 1
    import sys;print sys.prefix+'/include/python'+sys.version[:3]
                       ^
SyntaxError: invalid syntax
make: *** [pypath.comp] Error 1


But modifying the Makefile to explicitly use python2 gets past that until:
Code: Select all
gcc common/gfx_op_queue.c -c -mtune=native -O3 -g -Wall -Werror -DNOPAUSEPLAY -DDEBUG -Ibin/packages/gc-7.2/include -I/usr/X11R6/include -IQt/ -I`cat pypath.comp` -DGUIISQT -Imidi/rtmidi -DUSE_GFX_OP_QUEUE -I/home/kjetil/site/include -fPIC
python protoconfparser.py radium_proc.h
cd api/ ; python protoconfparser.py radium_proc.h ; cd ..
Traceback (most recent call last):
  File "protoconfparser.py", line 358, in <module>
    re=Read()
  File "protoconfparser.py", line 288, in __init__
    notend=self.readNextLine()
  File "protoconfparser.py", line 301, in readNextLine
    line=string.rstrip(line)
AttributeError: 'module' object has no attribute 'rstrip'
gcc common/eventreciever.c -c -mtune=native -O3 -g -Wall -Werror -DNOPAUSEPLAY -DDEBUG -Ibin/packages/gc-7.2/include -I/usr/X11R6/include -IQt/ -I`cat pypath.comp` -DGUIISQT -Imidi/rtmidi -DUSE_GFX_OP_QUEUE -I/home/kjetil/site/include -fPIC
common/eventreciever.c:19:20: fatal error: Python.h: No such file or directory
compilation terminated.


Which isn't surprising as pypath.comp is a 0 byte file thanks to the failure of the previous error... but easy to fix... Next off

Code: Select all
python protoconfparser.py radium_proc.h
cd api/ ; python protoconfparser.py radium_proc.h ; cd ..
Traceback (most recent call last):
  File "protoconfparser.py", line 358, in <module>
    re=Read()
  File "protoconfparser.py", line 288, in __init__
    notend=self.readNextLine()
  File "protoconfparser.py", line 301, in readNextLine
    line=string.rstrip(line)
AttributeError: 'module' object has no attribute 'rstrip'
gcc common/eventreciever.c -c -mtune=native -O3 -g -Wall -Werror -DNOPAUSEPLAY -DDEBUG -Ibin/packages/gc-7.2/include -I/usr/X11R6/include -IQt/ -I`cat pypath.comp` -DGUIISQT -Imidi/rtmidi -DUSE_GFX_OP_QUEUE -I/home/kjetil/site/include -fPIC
common/eventreciever.c:33:32: fatal error: ../api/radium_proc.h: No such file or directory


And now I'm stuck. Using the `find` command fails to locate radium_proc.h.

Let me know if there's anything else I can do and/or somewhere you'd rather this kind of stuff take place (ie mailing list etc).
james=jwm//art@net
Establlshed Member
 
Posts: 32
Joined: Sun Apr 13, 2008 1:51 pm
Location: Canterbury, England

Re: Radium v0.65.1

Postby kmatheussen » Mon Jul 09, 2012 2:30 pm

Seems like the Makefile wasn't quite ready for a python3 based system. The word "python" was
used a lot of places where $(PYTHONEXE) should have been used instead.

I've updated repository, and hope it should work now. This is the updated Makefile:
http://tinyurl.com/83yhpte
kmatheussen
Establlshed Member
 
Posts: 83
Joined: Thu Jul 05, 2012 7:47 am

Re: Radium v0.65.1

Postby james=jwm//art@net » Mon Jul 09, 2012 4:15 pm

Hiya,

Still a few more occurrences... I used the following script to replace 'os.system("python with os.system("python2.

Code: Select all
#!/bin/bash
echo search and replace "s/(\"python /(\"python2 /g"...
find . -type f \(  -name '*.*'    \) |
while IFS= read -r NAME;
do
sed -i "s/(\"python /(\"python2 /g" "$NAME"
done


There's a coule of #!/bin/python's:
bin/generate_keyboard_sub_ids.py
bin/keybindingsparser.py

And a couple of python's:
api/makeradiumwrap_c.sh
start.sh

That finally got it to build. Here's a diff but note includes your makefile differences:
http://pastebin.com/b5XMBzGr

Running lead me to discover I need to install python2-setproctitle. Ok.

But there's this when I run ./start.sh:
Code: Select all
0
1
['/home/sirrom/SRC/kmatheussen-radium-e7efefe-python2/bin', '/usr/lib/python27.zip', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/lib/python2.7/site-packages', '/usr/lib/python2.7/site-packages/PIL', '/usr/lib/python2.7/site-packages/gst-0.10', '/usr/lib/python2.7/site-packages/gtk-2.0', '/usr/lib/python2.7/site-packages/setuptools-0.6c11.egg-info', '/home/sirrom/SRC/kmatheussen-radium-e7efefe-python2/bin/packages/dvarrazzo-py-setproctitle-c35a1bf/build/lib.2']
2
Traceback (most recent call last):
  File "start.py", line 33, in <module>
    import radium,keybindingsparser
ImportError: /home/sirrom/SRC/kmatheussen-radium-e7efefe-python2/bin/radiummodule.so: undefined symbol: nextfreeelement
james=jwm//art@net
Establlshed Member
 
Posts: 32
Joined: Sun Apr 13, 2008 1:51 pm
Location: Canterbury, England

Re: Radium v0.65.1

Postby kmatheussen » Mon Jul 09, 2012 4:32 pm

Thank you very much! A new version needs to be released with this fixed.

nextfreeelement belongs to code which has been deleted from the repostory. I think a make clean should fix it.
kmatheussen
Establlshed Member
 
Posts: 83
Joined: Thu Jul 05, 2012 7:47 am

Re: Radium v0.65.1

Postby falkTX » Mon Jul 09, 2012 8:00 pm

I gave it try, but found several issues with the interface. (I actually had white text on white background, so I hacked the code a bit to use the system theme instead of the ugly Qt-Windows one).
Lots of actions lunch xterm, not sure if that's a good idea... If I close a xterm window started by radium, it just locks :(
Also, using "Create instrument" and then "create new port" crashes radium.

anyway, I packaged it for kxstudio so any user can give it a try easily:
https://launchpad.net/~kxstudio-team/+a ... hive-extra

I'm not using any of your pre-included packages though (except python-midi). Is that an issue?
Last edited by falkTX on Mon Jul 09, 2012 8:33 pm, edited 2 times in total.
User avatar
falkTX
Establlshed Member
 
Posts: 2430
Joined: Sat Jan 09, 2010 3:04 pm

Re: Radium v0.65.1

Postby kmatheussen » Mon Jul 09, 2012 8:03 pm

0.65.5 is released. It's tested to work when python3 is set as the default python. (but you still need python2)

http://archive.notam02.no/arkiv/src/radium-0.65.5.tar.gz

0.65.5 also contains a small bunch of other fixes as well (since 0.65.1).
Most important fix is for a memory corruption bug when creating new midi instruments.
Another fix is that jack-midi jitter has been removed as much as the RtMidi API allows. (I'm planning to extend the RtMidi API so that jack midi event times can be accurately specified in advance when you know exactly when events should be played. Hopefully Gary will accept the changes.)
kmatheussen
Establlshed Member
 
Posts: 83
Joined: Thu Jul 05, 2012 7:47 am

Re: Radium v0.65.1

Postby kmatheussen » Mon Jul 09, 2012 8:08 pm

falkTX wrote:I gave it try, but found several issues with the interface. (I actually had white text on white background, so I hacked the code a bit to use the system theme instead of the ugly Qt-Windows one).
Lots of actions lunch xterm, not sure if that's a good idea... If I close a xterm window started by radium, it just locks :(
Also, using "Create instrument" and then "create new port" crashes radium.

anyway, I packaged it for kxstudio so any user can give it a try easily:
https://launchpad.net/~kxstudio-team/+a ... hive-extra

I'm not using any of your pre-included packages though (except python-midi). Is that an issue?


Great! I'll look at your modifications.
The instrument bug was fixed a few days ago.

Don't close the xterm window! (You should never have to do that)
Yes, the xterm window is a good idea. It's very convenient . But it has some problems with X interactions, so I'm going to write a Qt terminal replacement that will hopefully look and feel the same.

The packages are included for convenience only. If you use your own versions, it shouldn't matter.
kmatheussen
Establlshed Member
 
Posts: 83
Joined: Thu Jul 05, 2012 7:47 am

Re: Radium v0.65.1

Postby falkTX » Mon Jul 09, 2012 8:42 pm

kmatheussen wrote:Great! I'll look at your modifications.

oh, let me help you there then ;)
patch1: radium will fail to build on any build warnings, and there are some related to strings and unused-result.
http://kxstudio.sourceforge.net/Paste/repo/EvABx

patch2: my small mods to the makefile, making it build on Ubuntu (and using system packages instead of yours in-source ones)
http://kxstudio.sourceforge.net/Paste/repo/3JgWI

patch3: use system's theme (optional, I just made this because I like my theme :D)
http://kxstudio.sourceforge.net/Paste/repo/t4MZ9

patch4: use system's xterm app, instead of looking into packages/*
http://kxstudio.sourceforge.net/Paste/repo/W3hKW
(on here, I would appreciate if you could check if "packages/bin/xterm" exists, and if not, use system's xterm)

kmatheussen wrote:The instrument bug was fixed a few days ago.

I assume this is in 0.65.5 then? I need to update my kxstudio package

kmatheussen wrote:Don't close the xterm window! (You should never have to do that)
Yes, the xterm window is a good idea. It's very convenient . But it has some problems with X interactions, so I'm going to write a Qt terminal replacement that will hopefully look and feel the same.

Actually I really *don't like* the use of xterm windows. can you just use some basic QDialog code?
The fact that I can't close the xterm windows kills me... :(

kmatheussen wrote:The packages are included for convenience only. If you use your own versions, it shouldn't matter.

Good to know, I was afraid your pre-included packages might had custom code in it.

I'll check 0.65.5 soon, thanks
User avatar
falkTX
Establlshed Member
 
Posts: 2430
Joined: Sat Jan 09, 2010 3:04 pm

Re: Radium v0.65.1

Postby kmatheussen » Tue Jul 10, 2012 12:52 pm

Thanks, I'll add an option to the config file (bin/config) where you can turn off the
Qt GUI customizations done by Radium.

Regarding the included packages, only the ones in bin/packages are unmodified. For instance is
RtMidi (included in midi/rtmidi/) modified, and timing for jack would be inaccurate if you
replaced it. Also, I don't see the point of not using the packages in bin/packages. Unless
they don't compile for some reason, it's safest to leave things as they are in my opinion.

Regarding the use of xterm, I agree it's a minor inconvenience to answer yes/no questions
if your hand was placed on the mouse right before. But apart from that, it should be the
most efficient interface. I hadn't thought about the possibility of anyone trying to
close the xterm window though. I'll put a fix for it on my TODO list.
kmatheussen
Establlshed Member
 
Posts: 83
Joined: Thu Jul 05, 2012 7:47 am

Re: Radium v0.65.1

Postby falkTX » Tue Jul 10, 2012 4:07 pm

kmatheussen wrote:Regarding the included packages, only the ones in bin/packages are unmodified. For instance is
RtMidi (included in midi/rtmidi/) modified, and timing for jack would be inaccurate if you
replaced it. Also, I don't see the point of not using the packages in bin/packages. Unless
they don't compile for some reason, it's safest to leave things as they are in my opinion.

For an user install it's ok, but here I'm referring to distro packages. For me it doesn't make much sense to provide 'xterm' in your package when I can just add it to the runtime dependencies.
In any case, I only remove the bin/packages directory, everything else is from you (including python-midi).

kmatheussen wrote:I hadn't thought about the possibility of anyone trying to
close the xterm window though. I'll put a fix for it on my TODO list.

Please bump this topic when done, thanks!
User avatar
falkTX
Establlshed Member
 
Posts: 2430
Joined: Sat Jan 09, 2010 3:04 pm

Re: Radium v0.65.1

Postby kmatheussen » Tue Jul 17, 2012 12:21 pm

falkTX wrote:Please bump this topic when done, thanks!


Bump.

Radium 0.65.6 is released.

Changes between 0.65.0 and 0.65.6:

    * Setting port for instrument will not crash the program
    * Many build improvements
    * Blocklist and Playlist are properly updated when loading standard midi file.
    * Sample accurate jack midi
    * Accurate mouse coordinates
    * Closing the xterm window will not lock the program
    * Options to turn off overriding of Qt colors and Qt style
    * Fast jack port probing
    * Only create one jack client
    * Works even if python links to python3 instead of python2
    * Fixed All Sounds Off menu option
    * Graphics fully updated after using menu
kmatheussen
Establlshed Member
 
Posts: 83
Joined: Thu Jul 05, 2012 7:47 am

Next

Return to New Linux Music News

Who is online

Users browsing this forum: No registered users and 2 guests