Release Notes

If you're looking for the plugin release notes, they're here.

FFRend Application

1.7.01

FFRend 1.7.01 adds metaparameter grouping, and fixes some bugs.

  1. Metaparameters can now be grouped, so that one metaparameter controls multiple targets.
  2. A metaparameter can now have a MIDI controller assigned to it.
  3. A single MIDI controller can now control multiple targets, via metaparameter groups.
  4. If a metaparameter name contained an ampersand, it didn't display correctly; fixed.
  5. Undoing a parameter slider edit truncated the value to two decimal places; fixed.
  6. Closing the app while the help window was visible caused a crash; fixed.

1.6.04

FFRend 1.6.04 is a bug fix release. The following issues were fixed:

  1. In dual-monitor exclusive mode, the cursor was still visible along the edges of the secondary monitor. The cursor is now completely hidden.
  2. If redo failed to load a plugin, redoing metaparameters for that plugin crashed the app.
  3. FFRend was unable to read a project that contained unassigned metaparameter(s).
  4. In the Metaparameter Properties dialog, unassigning the target (i.e. setting the target plugin to <none>) didn't undo correctly.
  5. While learning MIDI setup, if the selected row was deleted (e.g. as a result of deleting a plugin), subsequent MIDI input could crash the app.
  6. Assigning MIDI to Bypass of a plugin that followed an empty slot could crash the app.

1.6.03

FFRend 1.6.03 adds some new features: MPEG support via AviSynth, clip thumbnails in the file browser, and the ability to monitor the output of any plugin. This version also fixes some bugs.

  1. FFRend now supports MPEG clips via AviSynth. The clips must have the .mpg extension, and AviSynth must be installed.
  2. The file browser has been completely overhauled, and now supports all the standard views, including thumbnails. Note that video clips have thumbnails in XP but not in W2K. The new browser also supports renaming files and folders.
  3. The monitor control bar can now monitor the output of any plugin. This is useful for previewing and debugging. To monitor a plugin, use Plugin/Monitor or F8, or use the plugin, patch bay, or monitor bar context menus.
  4. The Global Plugin drop list (in the Options dialog) sometimes stored one less recent plugin than expected. This is fixed.
  5. In previous versions, dragging sometimes couldn't be canceled via the Esc key. The Esc key now cancels drag operations in all cases.
  6. In previous versions, if the output window was minimized, entering Exclusive mode would not work correctly. This is fixed.
  7. In previous versions, if FFRend was in Exclusive mode, starting the Task Manager via Ctrl+Alt+Del would crash FFRend. This is fixed.
  8. The source project now includes working Unicode configurations. The binary distribution is still ANSI however.

1.5.01

FFRend 1.5.01 adds two new features: a job queue for batch rendering, and a global plugin that can be applied to all projects. This version also fixes some bugs.

  1. FFRend now supports batch rendering. The Record dialog now includes a "Don't run this job now; add it to job control instead" checkbox, and there's a Job Control dialog which will look very familiar to users of VirtualDub.
  2. FFRend now supports an optional global plugin, which is automatically appended to the plugin chain when you open an existing project. This allows you to apply a post-process to all of your projects without manually editing them.
  3. In dual-monitor exclusive mode, the cursor is now hidden while it's over the output monitor.
  4. It's now possible to create metaparameters for all of a plugin's parameters at once. This makes it easy to expose a plugin's entire interface from a metaplugin. Right-click on one of the plugin's parameters, select Metaparam, and then select All Parameters.
  5. In previous versions, if the "Shutdown computer when done" option was checked in the Record Status dialog, the computer was shut down immediately when the recording ended. A Shutdown Warning dialog with a progress bar is now displayed, giving the user an opportunity to cancel the shutdown.
  6. In previous versions, opening a new project did not reset the Solo state. This is fixed.
  7. In previous versions, if the Monitor control bar was resized while the app was paused, the monitor displayed garbage. This is fixed.
  8. In previous versions, if a metaplugin was imported and then saved as a project, the project was not added to the recent files list. This is fixed.
  9. In previous versions, if the record duration was specified in time (as opposed to frames), and the input and output frame rates differed, the recording would not have the expected length. This occurred because the duration in frames was computed using the input frame rate, instead of the output frame rate. This is fixed.

1.4.06

FFRend 1.4.06 is a bug fix release.

  1. Version 1.4.05 broke the context menu for plugin parameter rows; right-clicking a parameter name would set focus to the first row's slider, no matter which row's name you right-clicked. Fixed.

1.4.05

FFRend 1.4.05 is a bug fix release.

  1. In previous versions, if the last item was selected in the file browser's current pane, pressing any alphanumeric key would crash the application. This is fixed.
  2. In previous versions, selecting menu commands via the Alt key might not work under certain circumstances. This is fixed.

1.4.04

FFRend 1.4.04 is a bug fix release.

  1. In previous versions, loading a plugin that has no parameters could cause a delayed crash, particularly if the plugin was loaded via drag/drop. To demonstrate the bug in version 1.4.03, do the following: 1) load (via drag/drop) a plugin that has at least one parameter, 2) load (again via drag/drop) a plugin that has no parameters, and 3) spin the mouse wheel, or press an arrow key or editing key. The crash could also result from other similar sequences of events involving a plugin with no parameters. It was caused by a hidden control retaining input focus; for details, see the blog. This bug is fixed.

1.4.03

FFRend 1.4.03 is a bug fix release.

  1. In previous versions, dragging a plugin from the file browser onto the patch bay could cause the plugin to be inserted in an unexpected position. This could potentially crash the application, particularly in the following specific circumstance: if one or more multi-input plugins exist in the project, and the new plugin is dropped BELOW them. This is fixed.
  2. In previous versions, if the plugin frame was resized (via the Options dialog) such that its aspect ratio changed, the Monitor control bar was not updated to reflect this. This is fixed.
  3. In previous versions, pressing the help key (F1) in single-monitor Exclusive mode caused the application to become unresponsive or exit Exclusive mode. F1 is now ignored in single-monitor Exclusive mode.

1.4.02

FFRend 1.4.02 is a maintenance release: it fixes a minor issue with recording.

  1. FFRend now remembers the last codec used for recording, and also remembers that codec's settings. The codec state is stored in the profile, in Application Data\FFRend\ComprState.dat.

1.4.01

FFRend 1.4.01 adds metaplugins, a plugin authoring capability.

  1. FFRend now supports plugin authoring, which means you can export a FFRend project as a Freeframe plugin. The exported plugin is called a metaplugin, because it uses other plugins as components. A metaplugin can be used in any Freeframe-compatible host application, and behaves as if you were running the equivalent project in FFRend.
  2. For multi-input plugins, FFRend now uses the plugin's maximum number of inputs, instead of its minimum.
  3. FFRend now hooks the keyboard only while in Exclusive mode, instead of hooking it during startup.

1.3.08

FFRend 1.3.08 fixes some issues with the dual-monitor support, and makes MIDI Setup a control bar instead of a modal dialog.

  1. When performing live in dual-monitor mode, an option to disable the "Save Changes" warning is helpful, since otherwise the warning will probably occur every time a project is opened. A "Save changes warning" checkbox has been added to the Options dialog; unchecking it disables the warning.
  2. In previous versions, dual-monitor Exclusive mode didn't make the main window full-screen. As a result, it was possible to accidentally click on the Windows desktop or Taskbar, resulting in a task switch. This forced FFRend to exit Exclusive mode, and caused the output monitor to unexpectedly display the desktop instead of FFRend's output. The main window is now full-screen in dual-monitor Exclusive mode.
  3. In previous versions, if the output was full-screen on a secondary monitor, but not in Exclusive mode, the Windows task-switching keys (Alt+Tab, Alt+Esc) didn't work. This is fixed.
  4. MIDI Setup is now a control bar instead of a modal dialog. This improves the ergonomics, and is in keeping with the new control bar-based design.
  5. In previous versions, File/New did not reset the master speed. This is fixed.

1.3.07

FFRend 1.3.07 adds support for multi-input (mixer) plugins. It also adds new sizable control bars, including a patch bay, a file browser, and an output monitor.

  1. FFRend now supports multi-input plugins. And there was much rejoicing...
  2. In previous versions, the routing of video between plugins was always linear, from left to right. This is inadequate for multi-input plugins, so a patch bay dock bar was added, allowing non-linear routing to be created and edited.
  3. In previous versions, the output could only be viewed via the output window. This was a problem in dual-monitor setups, e.g. if the output was projected but the user's view of it was blocked. The problem was solved by adding a Monitor dock bar, which shows the same image as the output window.
  4. A Explorer-style file browser dock bar was added, with tabs for projects, plugins, and clips. The bar supports both Vertical and Horizontal views, and in Vertical view, it has a Details option, with sorting via clickable header buttons.
  5. In previous versions, left-clicking a parameter slider would update the corresponding parameter twice: once on button down, and once on button up. The parameter is now updated on button down only.
  6. In previous versions, FFRend's main window showed inappropriate scroll bars in some situations. For example, if the project contained only one plugin slot, which was loaded and needed scroll bars, deleting that plugin didn't hide the scroll bars. Similarly, if a loaded plugin needed scroll bars, unloading it didn't hide the scroll bars, nor did undoing the load. All of these issues are fixed.
  7. In previous versions, if the project was empty (i.e. contained no plugin slots), loading a plugin via the Plugin menu's MRU (most recently used plugins) would work, but undoing it would crash FFRend. This is fixed.
  8. In previous versions, if FFRend was saturating the CPU (no idle time), opening a project that had missing files would freeze FFRend instead of displaying the Missing Files dialog. This is fixed.
  9. In previous versions, plugins could potentially display their output upside-down. FFRend now passes its vertical origin to all plugins, via the VideoInfoStruct orientation member, which was added to the FreeFrame specification in August 2004.
  10. Four of Pete Warden's plugins (Mixer, RadialBlur, SpiralBlur, and TimeBlur) contain an output buffer overrun bug which can cause FFRend (and other hosts) to fail in a spectacular manner. FFRend now checks for these plugins by file name, and refuses to load them unless their modified dates are at least Dec. 24, 2006 (the date the bug was first discovered). Unofficial patched versions of these plugins are available here.
  11. The Windows task-switching keys (Windows key, Ctrl+Esc, Alt+Esc, Alt+Tab) are now locked out in Exclusive mode.
  12. The plugin's copy frames preference is now honored. This improves performance for some plugins, including Pete's.
  13. In previous versions, bypassing a plugin via MIDI would set the project's modified flag, resulting in a "save changes" prompt on exiting FFRend or opening a new project. MIDI operations should never affect the document's modified status. This is fixed.

1.2.02

FFRend 1.2.02 adds undo, and also fixes some minor problems.

  1. FFRend now supports unlimited undo. If memory usage is a concern, undo can also be limited to a specific number of levels via the Options dialog, or disabled entirely by setting the number of levels to zero.
  2. In the previous version, editing the MIDI Setup dialog's "Plugin" page could cause the application to crash. The crash would only occur if the plugin chain contained non-trailing empty slots. This is fixed.
  3. In the previous version, the miscellaneous MIDI assignments (e.g. Master Speed) weren't saved in the project. This is fixed.
  4. In the previous version, if a parameter is being modulated, and the parameter is adjusted via edit box while the application is paused, un-pausing causes the parameter to jump back to the pre-edit value. This is fixed.
  5. In the previous version, the Video/Go To position dialog was not initialized, potentially causing garbage to appear in the dialog's controls. This is fixed.
  6. In all previous versions, closing an AVI file did not release its DirectDraw surface, resulting in a memory leak. The leak was the size of one frame buffer, and was therefore worse with larger frame sizes. This is fixed.
  7. FFRend can now open an AviSynth script in place of an AVI file. This allows FFRend to play MPEGs. Note that for AVS files to be visible in the Open Video dialog, you must set the filter to "All Files".

1.1.00

FFRend 1.1.00 adds MIDI support, and also fixes some minor problems.

  1. FFRend now supports MIDI control of all Freeframe parameters. Parameter automations can also be controlled via MIDI. Assignments can be created via editing, or "learned".
  2. The format of the status bar's frame counter is now hh:mm:ss (frame).
  3. The record duration can now be specified in either time (hh:mm:ss) or frames.
  4. The previous version wasn't handling fractional frame rates correctly; this is fixed.
  5. The previous version wasn't calling initialise and deInitialise on plugins; this is fixed.
  6. A File/Video/Go To command was added for jumping to a specific frame in the source video.

1.0.04

FFRend 1.0.04 fixes some problems with the initial release, and adds a video properties dialog.

  1. In the previous version, there was no easy way to make a recording exactly the same length as the input AVI file. This has been solved by adding a "Use AVI length" option to the Record dialog. Selecting this option makes the duration "snap" to the length of the AVI file, and also rewinds the AVI file. Note that you must have an AVI file open, otherwise the option will be disabled.
  2. In the previous version, there was only one current folder setting, which led to excessive navigating in the file dialogs. FFRend now maintains a separate current folder setting for each of the following file types: projects, plugins, input videos/images, and recordings. The folder settings are persistent, i.e. stored in the registry.
  3. In the previous version, if an edit control had focus, displaying any type of menu (e.g. main menu, context menu, system menu) would cause the output and automations to become jerky until the menu was closed. The behavior didn't occur if a multimedia timer was used. This bug is now fixed.
  4. FFRend now includes two additional video-related commands: File/Video/Rewind, and File/Video/Properties. The video properties dialog works for both AVI files and still images.

1.0.02

This is the initial release.

Chris Korda's Freeframe Plugins

1.0.07

  1. This version adds some new MMX-optimized plugins. Also, two parameters were added to the PlayerFF plugin: Recent Clips, and Defer Bank Change. The new plugins are Blacken, Brightness, ContrastPS, Invert, and Whiten, and they're documented here.

1.0.06

  1. In previous versions of all plugins except BoolMix, the frame was flipped vertically. This was correct behavior for some hosts, but not for others (e.g. in FlowMotion, PlayerFF displayed the video upside-down). The plugins now get the orientation from the host, which passes it in via the VideoInfoStruct. Note that older versions of freeframe.h didn't include orientation, and it's not clear exactly when it was added, though according to the CVS it's been there since at least Aug 2004. It's possible that some hosts may still use the older definition of VideoInfoStruct, which could cause upside-down frames, or possibly even an access violation, though this is unlikely.

1.0.05

  1. This release adds BoolMix, a boolean mixer. It blends two inputs using a user-selected boolean operation.
  2. WaveGen now supports 16-bit mode.
  3. The MFC source plugin template FFSrcPlug was added to this package for completeness. FFSrcPlug was also updated to support 16-bit mode.

1.0.04

  1. In WaveGen, some parameter defaults were changed. The Erase Bkgnd parameter now defaults to off, which allows the plugin to be used for compositing even if the host doesn't provide access to the parameter. Also, Modulation Type now defaults to Amplitude instead of None.
  2. In WaveGen, an Invert parameter was added.

1.0.02

This release adds WaveGen, a wave generator plugin.

1.0.01

This is the initial release, containing only PlayerFF, a clip player plugin.