adaptivegrain/vapoursynth/CHANGELOG.md
2019-05-30 11:06:53 +00:00

1.4 KiB

v0.2 (16th Jun 2018)

  • Added plugin support! That includes:
    • plugins::{Metadata,Filter,FilterFunction} types and traits for making plugins;
    • export_vapoursynth_plugin! macro for exporting a VapourSynth plugin;
    • make_filter_function! macro for making filters without much boilerplate.
  • Added a sample plugin in the sample-filter folder.
  • Added the component::Component trait and Frame::plane*() accessors for safely working with the pixel data without having to manually transmute slices, including an optional half-precision float support using the half crate.
  • Added plugin::Plugin and other relevant APIs for enumerating plugins and invoking their functions.
  • Added lifetime parameters to many types to fix soundness issues.
  • Split Frame into Frame, FrameRef, FrameRefMut.
  • Added the map::Value trait and generic Map::{get,get_iter,set,append}() functions.
  • Added format caching in Frame to reduce the number of API calls needed.
  • Added some convenience From impls.

v0.1.2 (2nd Apr 2018)

  • Fixed Frame::data_row() returning slices of incorrect rows (using the plane value instead of the row value).

v0.1.1 (24th Mar 2018)

  • Added support for targetting 32-bit Windows
  • Added automatic detection of common Windows VapourSynth library dirs
  • Fixed Frame::data() and Frame::data_row() returning slices of incorrect sizes (too short) for pixel formats with more than 1 byte per pixel

v0.1.0

  • Initial release