Fugio Friday: Ars Electronia Report

Happy Fugio Friday!

And for those of you who signed up to the mailing list at Ars Electronica: welcome!

For those who weren’t in Linz, we were showing off the latest Fugio build running various patches, including a native OpenGL ES on a Raspberry Pi 3.  There were also Fugio badges, stickers, and lots of interesting conversations!

 

There was a great deal of interest in the Raspberry Pi build, and several people suggested how it could be an excellent platform for educational programs, and cost effective too!

We also had several conversations on the topic of long term preservation of digital art, which is something I’ve built into the heart of Fugio since day one.

It was great to introduce people to Fugio in person and see their reactions and get their impressions of the software through fresh eyes.  It’s given me some good ideas for how I want to proceed in the future with new tutorials and features.

For now, I’m focussing on native audio and video playback on the Raspberry Pi as my next major task.  Will keep you posted…

As ever, please send me your ideas, feedback, and news of any Fugio projects that you’re working on, and have a great weekend!

Fugio Friday: Ars Electronica

Happy Fugio Friday!

It’s great to be back in Linz for Ars Electronica 2017.  Have already caught up with many friends from around the world and seen some lovely works, though the event is so huge that there is still so much to be seen.

In preparation for the Mini Maker Faire in POSTCITY on Sunday I have got Fugio badges and stickers ready to give away, so if you’re at Ars Electronica, do stop by and see Fugio in action.

My laptop is now 500% better with a shiny new Fugio sticker on it…

Will post up pictures from the event next week.

Have a great weekend!

Fugio Friday: New Logo and Easy Shader 2D

Happy Fugio Friday!

And I am happy to show off the excellent new Fugio logo that was kindly created by designer Eleanor Hyland-Stanbrook.  Thank you, Eleanor!  As we speak it is being made into laptop stickers and pin badges that will be available at the upcoming Ars Electronica Mini Maker Faire.

If you’re not able to make it to Linz but you still want a sticker/badge, I will be sending them out to all the lovely people who are supporting Fugio on Patreon (don’t forget to enter your shipping address!).

Work has been continuing on the updated OpenGL implementation and I’ve created a new, and much simpler way of using 2D shaders.

While Fugio aims to provide the most flexible access to the underlying technologies, this can sometimes result in having to use a lot of nodes, and this is very obvious when creating an OpenGL shader.  The current wobbly kitten shader example looks like this:

That’s a lot of nodes!  However, with the new Easy Shader 2D node that I’m working on, it now looks like this:

That’s eight less nodes, which means less clutter and the patch being easier to navigate. It also works on both desktop and Raspberry Pi.  Additionally, you can still use the existing shader nodes if you need the extra power and control they give you.

The code for this is in GitHub now if you want to try it out but a binary release is a little while off while I continue work on the Raspberry Pi support.

Have a great weekend!

Fugio Friday: Ars Electronica Mini Maker Faire in Linz

Happy Fugio Friday!

This week it was confirmed that Fugio will have its very own stand at the Mini Maker Faire Linz, in Austria as part of the Ars Electronica Festival 2017.

We’ll be introducing Fugio to visitors and helping them make some patches with MIDI controllers, lights, sounds, and probably some bananas.

We’ll also be showing Fugio running on Raspberry Pi with the new OpenGL support in place, as can be seen running in this short video where Fugio is being synchronised between a Windows machine and a Raspberry Pi 3.

Hopefully we’ll have some badges to give away too!

The Mini Maker Faire will be at POSTCITY on Sunday, September 10, 2017, 10 AM-7 PM

Hope to see you there!

Fugio Friday: August 2017 WIP

Happy Fugio Friday!

For the past couple of weeks I’ve been working on refactoring the whole OpenGL plugin to better support Raspberry Pi.

The new release of the Raspberry Pi operating system called Raspbian Stretch has Qt 5.7 built in and comes with FFMPEG instead of libav.  This is great news for Fugio as it’s much more in line with the libraries we’ve been using.

I’m busy building Fugio on my Raspberry Pi 3 (not cross compiling) as I type, although I wouldn’t recommend trying this yourself just yet as it needs some work to get it compiling.

With this latest update, I should be able to create a binary repository for installing Fugio onto Pi’s without compiling.

As ever, this is loads of work that will be available to everyone for free, so if you can, please consider supporting the project by donating just $1 a month via Patreon.

Also, check out the first look at my new projector blending tool that Fugio will support for multi-screen projections.

Have a great weekend!

fugBlender: Multiple Video Projector Blending Tool (WIP)

I’m currently working on a new software tool for working with multiple video projectors, allowing them to be overlaid and creating bigger (or brighter) projections.

It’s very quick and easy to layout and blend the projectors together, and once done, the tool can show video streamed using Syphon (on Mac), Spout (on Windows), and NDI (on Mac/Windows/Linux).

It supports any number of projectors, and devices such as Matrox’s TripleHead2Go.

fugBlender is currently still in development but if you want to hear when it’s released, join the bigfug software newsletter:

* indicates required




Fugio Friday: ISF Render To Texture

Happy Fugio Friday!

This week we have a new release: v2.13.0

It was noted in the Fugio Users Group that there was no (easy) way to render an Interactive Shader Node (ISF) to a texture, which would be very handy for passing to Syphon and Spout.

This release has a new Render To Texture node and several fixes in the OpenGL and ISF plugins that make this possible.

There has also been a lot of work done on the new time synchronisation system but that’s not quite ready for release yet (the code is on GitHub if you want to check it out early).

As there is a new binary release, I’m pushing the launch of The Fugio Zone to next Friday, but if you want to get early access, you can get the login details right now by becoming a Fugio sponsor on Patreon!  Just a little donation helps with all the costs of running an open source project, such as hosting, domain names, etc.

Download Fugio v2.13.0 for Windows and macOS (source code)

Have a great weekend!

PS: Near Derby?  Go see my robot artworks in the Our Friends Electric exhibition!

NEW

  • New Examples:
    • ISF/Render To Texture
  • New Nodes:
    • OpenGL/Render To Texture
    • Time/Universe Receive
    • Time/Universe Send
  • Time synchronisation is working and almost ready for release

UPDATED

  • ISF and Texture Monitor use the correct texture coords

FIXED

  • ISF wasn’t restoring the current framebuffer
  • Saving broke some file paths
  • Cleaned up some incorrect OpenGL calls
  • Image format could get confused in OpenCV/Flip

Fugio Friday: v2.12.0

Happy Fugio Friday!

This week we have a new release, the twelfth this year: v2.12.0

This release features several new nodes, and some needed bug fixes to the media playback plugin, and many more updates and features.

One key feature is the ability to save a JPG or PNG screenshot of your patches, which you can then upload to the new website I’ve been building called The Fugio Zone that allows users of Fugio to share and discuss the patches they make.

If you want early access to the site, you can get the login details by becoming a Fugio sponsor on Patreon!  Just a little donation helps with all the costs of running an open source project, such as hosting, domain names, etc.

Download Fugio v2.12.0 for Windows and macOS (source code)

Have a great weekend!

NEW

  • Added ability to save an image of the currently open patch from the file menu
  • New Nodes:
    • Core/BitsToBool
    • Core/BoolToBits
    • Math/Modulus
    • Network/PacketDecoder
    • Network/PacketEncoder
    • Serial/SerialDecode
    • Serial/SerialEncode
    • Text/TextEditorRemote
    • Time/UniverseTime
  • New Pins
    • Core/BitArray
    • Text/SyntaxError
  • Added Bias pin to SignalNumber
  • Saving patches creates (backwards compatible) human readable header
  • Started adding the concept of a Universal Time between Fugio instances running over a network (not quite ready for use yet!)

UPDATED

  • Compiled with Qt 5.9
  • Fugio now processes patches on a separate thread (currently locked to 100fps)
  • Updated SyntaxHighlighter system
  • Updated Lua Matrix4x4 and Vector3d classes
  • FugioLib is now compiled and linked as a static library
  • OutputRange accepts index
  • Lua now has a trigger pin
  • Adjusted latency handling in DevicePortAudio
  • Added performance counter in SpoutReceiver
  • Rewrote OpenGL/Context to use QOffscreenSurface (a good thing!)

FIXED

  • Fixed a whole heap of issues in FFMPEG media playback
  • Magnitude wasn’t using sample count
  • Caught invalid input to ScaleImage

Fugio Friday: Text Syntax Update

Happy Fugio Friday!

This week work has continued on doing fun things with Raspberry Pi’s!

One key thing I need to be able to do is control patches remotely.  While there are already plenty of options for sending and receiving pin data (see the updated Network plugin documentation), there is no possibility for using a text editor remotely while retaining syntax highlighting and error reporting, which are both very helpful when hacking shaders and scripts.

The dream being that I can have an editor on a laptop and remotely live code a shader on a Raspberry Pi.

So I’ve refactored the syntax highlighting and syntax error reporting system to facilitate sharing this information remotely.  Next up is writing a couple of nodes for sending and receiving this information over a network.

This should even work over the internet, which opens up some interesting remote collaborative options!

You’ll also notice in the image at the top, I’ve updated the Text Editor to show errors by highlighting the line numbers in red, which is a lot clearer.

I also enabled sending keyboard events from one Fugio to another, which should also prove useful in the future.

All the code changes are available in the GitHub repository.

I’ve cleaned up and organised the Core plugin documentation.  Still much to do, though I’m slowly working my way through it.

Finally, I wanted to highlight this new patch by Winfred Nak that he posted up in the Fugio Users Group on Facebook.  It’s a rather cool game show buzzer where the first button pressed will trigger off the music for that team.  It’s a good application of logic nodes, which are really useful!

Gameshow Buzzer by Winfred Nak

If one was so inclined, one could add a Firmata node and use an Arduino and real physical buttons as inputs…

Next week I’ll be setting up our robots as part of a new exhibition called Our Friends Electric at QUAD Derby.  The launch event is on Friday and I’ll be speaking at an event there on Saturday.  Come along and say hello!

Have a great weekend…