Skip to content

0.10.0

Latest

Choose a tag to compare

@Rafostar Rafostar released this 22 Dec 11:04
· 1 commit to master since this release
0.10.0
8fcaaff

Notice

This release among other changes continues evolvement of Clapper enhancer plugin system. With both new plugins added and some features ported from this core repo into being a plugin for the app. Some of these plugins have options that can be changed. Check application Tweaks tab in preferences window to browse and configure them.

Above includes movement of MPRIS, Server and Discoverer features into enhancer plugins. Applications that bundle Clapper as part of their container distribution are advised to build it with these features disabled in meson while adding newer implementations of these by bundling them as corresponding plugins. Flatpak apps can get these easily by including them as a runtime extension.

If both implementations are available on the host system, Clapper will automatically prefer and load enhancer based one.

List of changes

Application:

  • Removed "Music" and few other keywords to lower app priority as a music player (@abhijeeth-babu)
  • Fix Adwaita 1.6 deprecations (@GeopJr)
  • Slightly wider URI dialog text entry
  • Added option in info dialog to preview GStreamer pipeline and a keyboard shortcut for it
  • Build uses modern appstream, instead of appstream-util for validation (@ximion)
  • Enhancer plugins can now be configured in preferences window (in Tweaks tab)
  • Added advance frame (frame step) with "E" key
  • Fixed crash with auto resize for some video resolutions
  • Fixed crash on drag and drop into empty queue
  • Support for drag and drop of items between lists in different windows
  • Bundled custom speed icons

Clapper API:

  • Added function to get pipeline graph data
  • Introduced "ClapperEnhancerProxy" objects as intermediary between player and enhancer plugin
  • Added support for persistent configurable properties in enhancer plugins
  • Implemented cache for "Extractable" type of enhancers
  • Cleanup of GIR init section
  • Added ability to set "Harvest" expiration date
  • Whitelisted all ".peek_" functions for Vala language bindings
  • Added tag list reading to media items
  • Ability to fill media tags list initially
  • Added "Reactable" interface for writing enhancer plugins that react to the playback changes
  • Updated LGPL-2.1-or-later license text for remote-only FSF (@musicinmybrain)
  • Added "Playlistable" interface for writing custom playlist parsers
  • Added custom elements to handle playlist item playback and parsing (using "Playlistable" enhancers)
  • Put each main window into its own group (@City-busz)
  • Added detailed "message" signal to the player (allows applications to receive element messages)
  • Added Clapper version information for runtime checks that other apps may want to use
  • All Clapper feature objects (MPRIS, Server and Discoverer) are now deprecated as they were ported into enhancer plugins
  • Added events messaging between app, reactables and player
  • Added convenience function to insert into queue after other item position
  • Added advance frame function (frame step forward)
  • Support for loading enhancers written in Lua
  • Improved tags/metadata extraction in audio files

Clapper GTK API:

  • Added colors to custom timeline markers in seek bar
  • Split of "ClapperGtkVideo" widget into "ClapperGtkAv" base class
  • Addition of "ClapperGtkAudio" widget (subclass of "ClapperGtkAv") for usage in audio players
  • Added some audio player examples in repository (written in python)
  • Fixed sink property type checks in video widget

Other smaller bug fixes and documentation updates