[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Protux-devel] Interview
From: |
Luciano Giordana |
Subject: |
[Protux-devel] Interview |
Date: |
Fri, 15 Oct 2004 15:21:46 -0300 |
User-agent: |
KMail/1.6.1 |
Hi guys, here are the answers for the interview, please review it (english)
and send comments. Also, complete the personal info if I missed something.
Thanks
==============
1) Simple information about you is needed to include into the
article: Your age, job (or student?), where you live (city,
province/state, country), and what your main contributions to
Protux are.
Luciano Domenico Giordana, 33, Java/C++ Developer, Musician, Americana-SP,
Brazil, Project creator/leader.
Reinard Amersberg : ?? Germany - Project Coordinator
Remon Sirijer : 25, Netherlands - Main Developer
Martin Herren : 28, engineer, Lausanne, Switzerland :
Autoconf/Automake/Distribution developer
2) What is the current status of Protux? (For example, its feature-set, or the
progress of its development.) usable enough that i regularly use it for
'real' work
We dont consider Protux ready for real work, but if enjoy some adrenaline, you
can take a risk. Undo stuff is the current big missing thing for real work,
as well as some alsa backend improvements, so you have to make some tricks to
work around these lacks. In any case, you can use Protux for small projects.
I (Luciano) myself made some demo recording using 0.20.x
3) What is the history of Protux? How did it begin?
In 1999 me and my ex-wife started an small audio production studio in
Americana-SP and used to create small jingles for publicitary material. The
software available in that time were very good, including Sound Forge, Vegas
and Samplitude, but I felt that they were very dummy in their usage.
As a programmer, I noticed that people who coded those softwares had too much
"intuitive-usage" guidelines and "ready-to-use windows API" driven coding,
perhaps to attend deadlines, something that I disagreed. They didnt want to
be innovative , just productive. I believe that a software must follow the
end-user perspective not the coding perspective. Also, I knew that this kind
of application is normally used by professionals, who tend to use the same
tool everyday. Professional tools are not like word processors or spreadsheet
tools. Intuitive usage becomes less important in that case. Thus, I felt that
those apps should have another approach when developed, I thought that a good
production tool should consider a more advanced usage approach. If you want
to mute channel 3, you should be able to press 3 and M, or something like
that, and not scroll the multitrack, expand the track 3 tab, right button on
it, open a "properties"dialog, select mute, click on apply and then close.
That is stupid ! It is like cooking using a single knife !
In that time, the only software available to GNU/Linux was Ardour, but it had
the same usage problem. That's why I decided to write my own tool. Also , it
was a opportunity to increase my knowledge of Audio itself. Less than 2
months after I started it on Sourceforge, Reinhard joined me, adding valuable
ideas to the project. Some time after that, Martin and Remon joined, and the
software started to be very mature. Many other contributores help us, in a
sense and other. In 2002, we moved to savannah, because sourceforge started
looking too corporative and not-commited with free software principles. This
year we released 0.20.0, which we consider the first usable protux for small
projects.
4) Was Protux inspired by any other program?
Initially I indeed wanted to play with the name Protools , which is well-know
and the word Tux (the Linux Penguin's name). But as long as we noticed that
we target a very professional segment of audio producers on GNU/Linux , the
word Protux standing for "Professional Tux" fit better. In any other sense
protux was inspired by another program. We are really trying to make
something inovative.
5) There are a lot of music production applications that have been
developed specifically for Linux. What are your thoughts about
this? Why do you think there has been such active development in
music applications for Linux?
I always noticed that there are a huge number of programmers who enjoy good
music and play with audio. I believe that since the introduction of digital
audio tecnology, everything has been sold in black boxes, such synthetizers,
sequencers, drum machines, and son on, and those smart guys had never the
chance to really play with digital audio. Maybe GNU/Linux attracted them
because of its open architeture. People are all the time searching ways to
customize the kernel to run audio tools in a very advanced way. That's
something you just can't do on other plataforms, where you are just able to
install-and-use.
6) So how would you differentiate Protux from other Linux music
applications that are similar to it?
More powerfull that smaller applications, lighter and faster than bigger
applications... No, more seriously, I think Protux has its own
niche regarding this. Furthermore Protux has an unique user interface based
on JMB, love it or hate it, but you'll have to admit that once you learned
the basics, you are faster than the other to produce your music.
7) What programming language(s) was used to write Protux? Any reason why this
was chosen?
C++, primarly because of its flexibility, and due the fact we could use the
great gcc safely. QT is a must when develping GUI, due its great docs and
Object Oriented Architeture, so the combination seemed to be perfect for our
project.
8) Does Protux use code or libraries which you/the Protux team did not
originally develop? Why were these chosen?
Besides the QT, and ALSA, we avoid to link against libraries, in order to make
protux as independent as possible. But for small things such ogg support, for
example, we let user decide on compilation to link or not. Alsa is a used in
a basic way, exactly because we still can't find good programming guides for
it.
9) Was any technology specifically created for Protux?
JMB and the MADM (MustuxAudioDeviceMapper) which is a ALSA wrapper. JMB is the
engine that allow the user to operate protux as a "video game", I mean,
*very* fast. As you know, in video games, you dont have to worry about icons,
menus, and stuff. you need to do stuff in the speed of your thoughts. Every
game have this approach. So we created the JMB, that try to offer that
approach for Protux and other applications which need this advanced and fast
usage approach. We are also considering write our own audio server engine,
which will be an alternative to Jack. Jack is a pool based engine. We want to
write a thread oriented engine.
10) What are the technical limitations of Protux, thus far?
Almost all them are related to the lack of good ALSA programming guides. All
we find are jack oriented material, and we decided to access alsa directly.
So, some of them include prtial Multichannel card support, not many filters
yet... not many import/export file format, availlable yet... and, as we
mentioned, the UNDO engine which is still being written.
11) What have been the biggest technical challenges you have faced in
developing Protux?
Using Alsa. That is for sure our biggest problem. We noticed that the docs are
getting better, but they still dont have a good programming guide.
12) Perhaps related to Question #11, what are the inherent issues
one should keep in mind when developing code that deals with sound
under Linux?
You'll need to dig inside Alsa , and understand the basics of kernel latency,
real time scheduling and other related issues.
13) What features do you plan to add to the next immediate version(s) of
Protux?
Undo capabilities. This is the very thing that blocks protux to be widely
used. Next, add filters,at least the basic ones, some LADSPA support, and
some other audio format support.
14) What would you like others to pay notice to the most about Protux?
Protux is a very different software. When you open it , you wont see a single
icon or menu in the screen. That scares a lot of people. But then you just
press H and a help pops. And then you learn that pressing S and P at the same
time opens the Song Properties dialog.. And then you start notice that
everything is pretty - and surprinsingly - intuive too ! When you get used to
it, you just love it, because you feel like operating a real device in a real
studio. We believe that this "feeling" is the Protux most noticeable thing.
It is really fun :-)
15) If somebody wants to contribute to your project (and you're open to this),
what skills from them could you use now?
For now, we really need people to code filters. People which nows how a good
reverb or a good compressor works. That's is very hard to find, since such
programmer must be fluent in C++ , math, audio and good-and-clean coding,
which is a must for us. Other things are
writting skills for documentation, tutorials... translate them to other
languages, and communication skills to demonstrate Protux to others/
16) What advice do you have for those who are interested in developing
applications that address the creation of music/the
manipulating of sound, regardless of platform?
Dont bother about that rule "do not reinvent the whell".. if you have a good
new "wheel", reinvent it. We hear a lot of people saying that we should joing
Ardour, or Glame or Audacity projects. We admire all them, but Protux is
really different from them, and we expect to be better too. In many senses,
we believe it is already. Free software is a wonderfull space for being
creative. Reinventing the whell is really important, we believe.
17) If there's anything else you'd like to comment on that you think I
missed :-), feel free to add it here.
We receive many messages from people that either hate protux and the JMB
engine written for it or love it. Nobody denies that Protux is intriguing.
But protux is not the only exotic software out ther. Blender is another
software that has an alternative usage (although protux is MUCH easier to
learn). All intriguing software are potentially interesting and inovative .
We believe that we are contributing to the free software world not just
replacing Windoze applications, but really offering new ideas, new standards,
things the the corporative software development cannot offer, exactly because
it must follow de-facto standards.
- [Protux-devel] Interview,
Luciano Giordana <=