Benji Flaming

New e-mail list

January 19, 2010 · Leave a Comment

As you may have noticed, I’ve finally set up an e-mail list, to which I’m sending out monthly updates regarding my creative activities. New subscribers are automatically sent a link which enables them to download a free MP3 of a special solo banjo performance (a short suite of melodic highlights from my new CD; arranged, performed, and recorded specifically for the list.) You can subscribe at http://benjiflaming.fanbridge.com/

→ Leave a CommentCategories: Uncategorized

The solo banjo CD has arrived….

November 30, 2009 · 2 Comments

…and so has open source media production! After many strange and wondrous adventures, my solo banjo CD is finally available. I’m very pleased to say that all production work was done with free and open source tools under a free and open source operating system. This included recording, editing, mixing, mastering, photo retouching/editing and color correction, album layout/artwork, the editing of the liner notes, and all the other fiddly bits that I’ve forgotten about. I did manually convert the final result into a CorelDRAW file, simply so that I could ensure that the duplication company had a file which would accurately reflect my design in their own working environment, but this was done after the creative part of the process was already completed. The end-result is now available for $15.

→ 2 CommentsCategories: Music · Solo banjo · Technology
Tagged: , , ,

Introducing: BenjiFlaming.com

October 14, 2009 · Leave a Comment

As you may have noticed, much of the former content of SoloBanjo.com has been moved to BenjiFlaming.com.  This new site will allow me to post various geeky tidbits, links, or pseudo-philosophical musings, without cluttering up my solo banjo web site.

→ Leave a CommentCategories: Uncategorized

PyOrganizer

May 14, 2009 · 1 Comment

Some of my free time over the last month or so has been spent writing a piece of financial/budgeting software, which quickly began expanding itself (as my projects often do), and is now attempting to become my personal über-organizer. The program, currently named PyOrganizer, is written in Python, using the GTK+ bindings (PyGTK), and is licensed under the GNU General Public License. I’ve not yet packaged it into a release, but the unstable work-in-progress is always available in the Subversion repository accessible from the SourceForge.net project page.

→ 1 CommentCategories: Technology

Tinara marches forward

October 8, 2008 · Leave a Comment

Life has finally calmed down enough for me to resume work on Tinara – my media production software.  Recently, I have made remarkable progress, due to some significant changes in Tinara’s development roadmap and toolchain:

  • GStreamer is now responsible for reading/writing files, using plug-ins to modify media, and accessing the sound and video hardware.
  • Python is now the primary programming language.
  • The immediate goal is to produce an 8-track recorder/player for the Nokia N810 Internet Tablet, using the tablet’s built-in microphone.

After about a week of tinkering, I was able to produce a working 8-track player (no recording yet) on my N810:

At the time of writing, the current code in the subversion repository is broken, and I’ll need to do some diagnostic work regarding the nuances of scope in Python modules and GTK+ signal handlers, but it should be a relatively short road to a fully-functional multi-track recorder.  More advanced audio editing and processing features won’t be far behind, thanks to the Gnonlin plug-ins for GStreamer, and video editing on more powerful platforms should be relatively easy to implement, since GStreamer is equally adept at both audio and video.

→ Leave a CommentCategories: Tinara
Tagged: , , , , , , ,

25 thoughts from Benji

October 24, 2007 · 3 Comments

Well, as many of you know, I recently had a birthday. The universe has now endured my presence for a quarter century, and it seems none-the-worse for the wear. We’ll see what another quarter century does to it. ;) (Lord willing.)

In celebration of the past 25 years, I thought I’d share 25 “thoughts” with you all. This is, of course, really just a thinly-veiled attempt to warn you all about what a truly strange creature I really am (as if you didn’t already know).

Some of these thoughts tumbled around in my mind for months or years before reaching their current “polished” form. Others are still just rough articulations of my opinions on particular matters.

This isn’t intended to be a “manifesto” per se – more of a “snapshot” of how I look at things at this particular moment in time. 25 years from now, I might disagree with many of these thoughts (maybe even most of them – who can say? – see thought #1). I’m sure many of them will go through several more drafts before reaching their final form. Nonetheless, I feel that these thoughts collectively convey at least some sense of what’s going on in my mind these days.

============================
On consciousness and reality
============================

1. My longest-held (and most firmly held) belief is my belief in human ignorance – principally my own.

2. To accept the reality of an incomprehensible God is to implicitly accept the incomprehensibility of reality.

3. Perception is the faint shadow, cast by reality, on the uneven surface of the mind.

4. Consciousness is the offspring of reason and imagination.

5. Even the simplest philosophical statement requires the absolutely unquestioning acceptance of the validity of memory and language. This requirement makes the the whole venture of philosophy seem, quite frankly, a little silly to me.

6. 42

========
On Music
========

7. We are not surprised or especially impressed that a linguist would be able to speak multiple languages. Why should we be surprised or especially impressed that a musician would be able to play multiple instruments?

8. So-called “music theory” is little more than a structural and mathematical analysis of traditional western musical compositions. Its usefulness is limited to providing vocabulary for describing those particular forms. It has very little to do with the essence of music itself.

9. Rock is just noise. Metal is just noise. Rap is just noise. Pop is just noise. Bluegrass is just noise. Classical is just noise. Music is just noise. I like it.

10. True silence is better than music, but is much more difficult to find, even more difficult to keep, and far too intense to be taken lightly.

11. The inability of a listener to be positively affected by a particular noise or silence (at least in some subtle way), is a tragic loss.

12. “Music” could also be defined as simply being the name of that effect which musicians and composers hope to create in the mind of a listener.

===============
On civilization
===============

13. “Human progress” is an oxymoron. Humanity, on its own and apart from God, can achieve nothing. It can change, and increase complexity, but it cannot improve.

14. The convoluted fantasy called “civilization” is little more than a painkiller, to reduce the misery of our separation from God to a dull ache.

=============
On government
=============

15. The continued necessity of government is one of the greatest testimonies to the failure of civilization.

16. The purpose of a government is to delay the inevitable decay and collapse of a particular civilization for as long as possible. (How best to do that is anybody’s guess.)

17. Any government is, in practice, the enforcement of a set of moral ideas onto a group of people.

18. All forms of government (including anarchy) are equally broken, because they all rely on the blind leading the blind.

===========
On religion
===========

19. While there may, indeed, be many roads which lead to a particular destination, there are always many more which lead away. I would liken The Eastern Orthodox Church to a main freeway. It may seem dull at times, it may get a bit congested in places, and some parts might fall into slight disrepair, but it remains, nonetheless, the safest and surest route to travel.

=======================
On science and academia
=======================

20. Science is a trendy elitist realm, where unfashionable ideas (and those who make discoveries which support them) are ridiculed and treated with closed-minded contempt.

21. Science and academia are, by their very nature, natural breeding grounds for small-minded egotism.

================
Closing thoughts
================

22. Good and evil are not opposites. At least, not in the sense that is popularly portrayed. We tend to think of opposites as being defined by their mutual opposition to each other. Good is, in fact, what is truly natural, in a good world created by a good God. Evil is the error, imperfection, and distortion of this good world, which is possible because of free will.

23. Violence is, in fact, the answer. But it must not be turned outward, toward the physical world. Such outward violence ultimately achieves nothing. Instead, it must be directed inward, at our own self-will. This is what violence is for. [Matthew 11:12] Simply setting aside our work and entertainment for a few minutes of prayer each day is, in fact, an example of such violence.

24. 42, again.

25. The biggest problem with the world is that it is full of lazy, selfish people like me.

—————————————-

If you don’t understand thoughts #6 and #24, (or even if you think you do) I’d highly recommend that you locate a copy of the original BBC Radio production of Hitchhiker’s Guide to the Galaxy. (Google is your friend – you might try “hitchhikers guide to the galaxy mp3″.) It has been a major philosophical influence for me, and I think it’s brilliantly funny, as well.

Thanks for reading! :)

→ 3 CommentsCategories: Uncategorized

Bluegrass Tribute to Audioslave

November 13, 2006 · Leave a Comment

It’s finally happened – I’ve released a CD. Sort of….

Last August, I was hired by Calvin Records of Excelsior, MN to translate 10 songs by the alternative rock band “Audioslave” into the bluegrass genre (admittedly, I translated them into the rather progressive edge of that genre). The official release date for the CD was October 31st, and (as of last Friday) I now have copies for sale, if anyone’s interested.

More info, and a link to sound clips, here:

http://benjaminflaming.com/audioslave

→ Leave a CommentCategories: Music

Alpha release getting closer

October 9, 2006 · Leave a Comment

Development has proceeded rapidly since the recent design modifications and the changeover to Ruby as the primary language. Currently, multiple instances of Tinara’s components (interface, core, and renderer) can be run across multiple machines via TCP sockets. The core loads a rendering tree from disk upon startup, and keeps the on-disk copy up-to-date with any changes to environments or objects.

The next step will be the introduction of basic numeric data types into the rendering engine. This will allow tests to be performed, simple rendering agents to be developed, and the core of the cache system to be implemented.

After that, work on the audio output and graphical interface features can begin. A simple demo “song”, using oscillators as sound sources, can be created, and a demo release could be made (the graphical interface would, at that point, consist of little more than a window with start/stop/rewind buttons).

For a slightly longer and more detailed roadmap of current development/release plans, see the “doc/brain_dumps” file in the SVN repository:

http://svn.sourceforge.net/viewvc/tinara/trunk/doc/brain_dumps?revision=308&view=markup

→ Leave a CommentCategories: Tinara

Tinara reimplementation begins

September 12, 2006 · Leave a Comment

The Tinara project has again been reborn with a new design, a new language, and a new philosophy. This time, I truly believe that I will be able to release an alpha version within a couple of months.

Tinara’s design has now made a fundamental departure from other “similar” systems. Tinara’s rendering engine will not be intended to be run in a realtime context (e.g. as a JACK client). This does not mean that it cannot be run in realtime – it simply means that there will be slightly longer controller latencies (probably not enough to notice during typical usage).

The upside of this design change is that the rendering engine, as well as any future rendering “agents”, can be much simpler and more flexible (and less error/crash-prone), since they will be allowed to do normal things like allocating memory, and reading/writing files, if needed. The problem of latency during audio recording will be handled later, by adding a simple headphone mix system with realtime effects to the GUI.

Tinara has also been broken cleanly into several separate components (Renderer, Core, Cache, and GUI), which will communicate via TCP sockets. Eventually, these components will also be able to use named pipes under UNIX, and perhaps DDE under Windows. The GUI has also been broken into two components – one which is binary (for display, audio output, and media capture), and one which is scripted (for controlling and quickly altering/testing/debugging the logic of the interface at runtime).

I’ve also decided that Tinara will initially be implemented in the Ruby language (with the exception of the GUI, which must be written in C/C++ in order to interface with JACK). This will allow much faster development and testing/debugging than C++. As a result, I expect to have a working prototype in a matter of weeks rather than months. Once the program logic is stable, it should be fairly trivial to re-implement the Ruby classes as C++ classes (thanks to the excellent helper classes provided by wxWidgets).

Many of the recent design decisions were either initiated or influenced by Eric S. Raymond’s excellent book “The Art of UNIX Programming”. It is available in hard-copy from several sources, and is also available online. More info can be found here:

http://www.catb.org/~esr/writings/taoup/

Among the many useful design philosophies I found from the book, two of the most strongly influential have been the Rule of Optimization:

http://www.catb.org/~esr/writings/taoup/html/ch01s06.html#rule_of_optimization

and the Rule of Separation:

http://www.catb.org/~esr/writings/taoup/html/ch01s06.html#id2877777

For more details on the design changes, see the doc/brain_dumps file in the SVN repository.

→ Leave a CommentCategories: Tinara

Post-September Tinara update

October 7, 2005 · Leave a Comment

Although progress may be slow this month, much was accomplished during the month of September.

The most visible (or, rather, audible) change is that Tinara’s Interface component now produces audio output. When the “Play” button in the Interface is pressed, two sawtooth waves are generated, and they are sent to the default stereo audio device. This continues until the Interface is closed, or until “Stop” is pressed.

The Interface’s transport position display was operational for a time (using a temporary/throwaway implementation), but it is currently broken, so the “Rewind” button remains inoperative (pending a more “proper” transport implementation).

Much of last month’s progress was behind-the-scenes restructuring. I made numerous improvements to the build system, added command-line selection of which components should be loaded, and removed the GTK+ dependency for Linux builds of the Server and Engine components, allowing the loading of these components by the new “tinara-daemon” component, on systems without a running X server.

I am currently refactoring Tinara’s core library into a plain C API, with a separate C++ wrapper library. This approach will make the system more portable and extensible, by allowing the creation of bindings for other popular languages such as Python and Java.

→ Leave a CommentCategories: Tinara