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!

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: Entering the Zone

Happy Fugio Friday!

It’s been a hot and busy past couple of weeks.  Last week I didn’t even have time to do Fugio Friday as I was busy installing robots in a new art exhibition in QUAD Derby.

Since then I have started work on a new website for users of Fugio to upload and share their patches.

It’s called The Fugio Zone

As you can tell, it’s not quite ready for public use yet, and not being a web designer it’s going for a heavy minimal look!  I will be inviting a few people to test it over the coming weeks, so if you’re interested in doing that then let me know.

Have a good weekend!

Fugio Friday: CMake build progress

Happy Fugio Friday!

This week I’ve been focussing on creating a fully working CMake build system in place for Fugio.

As Fugio currently builds using Qt’s qmake, why do we need an alternative?

  • In a recent Qt blog post it was made clear that qmake is going to be deprecated in Qt6 in favour of a new tool called Qbs (pronounced cubes).
  • As CMake can be used to build all sorts of projects, and not just Qt ones, it enjoys a much larger user base.
  • The CMake file for a Fugio plugin seems to be a lot simpler than for the equivalent qmake file, especially when specifying cross platform options.
  • It seems easier to setup clean, automated builds that I seem to be needing more to simplify and make more reliable the process of Fugio binary releases, specifically for Raspberry Pi builds, too.
  • If someone wants to work on the Fugio code base, CMake allows the user to use their IDE of choice and be less tied to Qt Creator.

[amazon_link asins=’1930934319′ template=’ProductAd’ store=’bigfug-21′ marketplace=’UK’ link_id=’6f007693-4d16-11e7-8b09-37d691c606a3′]

So I’ve been struggling through creating the first set of CMake files, getting my head around how best to bring in all the required libraries.

I’ve invested in this book (associate link) so I can get my CMake skills up to scratch.

You can follow my progress on this GitHub branch and I hope to have a release ready for next week.

Until then, have a good weekend!

Fugio Friday: Video Shader Recorder

Happy Fugio Friday!

This week sees the first release of the Media Recorder node that allows recording video and audio files from inside Fugio.

To demonstrate its abilities, I have created a new example patch called Video Shader Recorder (find it in the FFMPEG examples, in the file menu) that allows you to load a video file, apply a custom OpenGL shader to it, and save it out to an MP4 video that’s ready to upload to YouTube.

Download Fugio 2.2.0 for Windows (7, 8, 8.1, 10)

Download Fugio 2.2.0 for macOS (OS X) (Mavericks 10.9+)

NEW

  • Added MediaRecorderNode to FFMPEG plugin
  • Added Video Shader Record.fug example
  • Added help link to pins (right/ctrl click to find it in the context menu)
  • Added PlayheadFramesNode to Time plugin

CHANGED

  • Added Time pin to MediaNode

FIXED

  • FFMPEG Image Convert didn’t let you change the format
  • ImageToTextureNode was aligning to 32 bytes (not 32 bits!)

Fugio Friday – 28th October 2016

Happy Fugio Friday!

This week I’ve been hanging around the Wellcome Genome Campus near Cambridge, where my partner Anna has been doing a week residency with the scientists here. I’ve been exploring the nearby nature reserve, watching the squirrels and geese, and catching up with emails and threads of projects.

I’ve been looking at the way that Fugio is installed on OS X (now macOS), and I’m not entirely satisfied with the process that one has to go through, especially for the initial installation.  I’m experimenting with Homebrew casks, that facilitate installing applications such as Fugio through the same simple command line interface that Homebrew uses to install the libraries that we already use.

Packaging Fugio as a cask would mean installation would comprise of installing Homebrew, then typing “brew cask install fugio” into a Terminal to install the application and all its dependencies.  Much cleaner!  What do you think?

If I do go down this route, it will make releasing some new plugins somewhat easier…

On November 15th I’ll be giving a LASER talk (Leonardo Art Science Evening Rendevous) at Westminster University in Harrow about my art practice and Fugio.  There’s no link for it yet but I’ll post it up when there is, if you fancy coming along and saying hello!

Have a good week, and as ever, let me know any questions and suggestions you may have.

Fugio Friday – 19th August 2016

This is the most significant release for Fugio since its initial launch. Finally, after more than a year, I can share the OpenGL plugin, which brings the raw power of the graphics card to Fugio for high resolution, real-time graphics.

Download Fugio for Windows and OS X (build the source code on Linux, including Raspberry Pi)

I’ve also recorded an hour long video tutorial that will get you started working with OpenGL shaders.

This has been a massive amount of work.  Please share the word, and if you’re feeling very generous, you can always make a donation towards the project here.

2016-08-19

NEW

  • OpenGL plugin – 24 new nodes with several shader examples
  • Mouse node and input events support for windows
  • Mouse Painter example
  • Nodes: Time, Date, JoinVector4Node, SplitVector4Node

UPDATED

  • LuaPainter::drawLine can take two points
  • Added $ORIGIN to path on Linux to fix launching (reported by Luca)
  • Text Editor now highlights Lua errors

FIXED

  • Image Save had a hard coded path
  • Fixed mouse zooming
  • Fixed Network deployment (reported by Артем)

Fugio Friday – 5th August 2016

Fugio-Friday-2016-08-05

Download Fugio 1.5.1 for Windows, OS X (get the source code)

NEW

  • Lots of new examples including network stock checker and audio processing nodes
  • Added group breadcrumb widget to the bottom of the editor window
  • fillRect() method to qt.painter
  • PortAudio input and output now have default device options
  • Added LuaMatrix4x4
  • Save images from NumberMonitorForm by right-clicking on its window
  • Added FileLoadNode
  • Added AutoRangeNode
  • Added MinMaxNode
  • Added RingModulatorNode
  • Added ArrayListPin, VariantListPin
  • Added extra include paths for Lua

UPDATED

  • NetworkRequestNode saves data to a temporary file, rather than always into memory
  • Renamed NetworkRequestNode to GetNode
  • Added RegExp pin to RegExpNode
  • ScaleImageNode can scale to width/height/size
  • Cut/copy/paste now works between patches
  • You can also paste as plain text in any text editor or window

FIXED

  • Lots of work on cut/copy/paste/delete functionality
  • Fixed all colour selections in editor
  • Fixed StringNode not showing loaded value
  • Fixed StringJoinNode

TESTED ON

  • Windows 10 (x86)
  • OS X 10.11 (x64)
  • Ubuntu 16.04 (x64)

New Payment Options

6134-close-up-of-three-credit-cards-pvWhile bigfug.com has always accepted credit and debit card payments, we’re aware that using PayPal isn’t always a great solution for all our international friends.

Today we’re happy to announce that we have integrated a new payment gateway that processes Visa, Mastercard, and American Express cards directly.

As a beneficial side effect of this improvement, the shop also now supports SSL encryption, which will automatically be used at checkout.

And finally, to take advantage of the new gateway, we’ve moved Painting With Light into the shop, too.