v0.2.2
π Complete Release Notes can be found here
Summary: Major Docs and API Updates. π
β¨ New Features
- Sourcer API:
- Added support for
-ffprefixes
attribute through Sourcer API'ssourcer_param
dictionary parameter (similar to FFdecoder API).
- Added support for
- FFdecoder API:
- Added new
output_frames_pixfmt
metadata property to preview and handle output frames pixel-format.
- Added new
- Docs:
- Added separate "Basic" and "Advanced" Recipes markdowns files with self-explanatory text, related usage code, asset (such as images, diagrams, GIFs, etc.), and UI upgrades for bringing standard quality to visual design.
- Added separate
index.md
for Basic and Advanced Recipes with introductory text and curated hyperlinks for quick references to various recipes (separated with sub-categories "Decoding", "Transcoding", and "Extracting Video Metadata"). - Added new Basic Decoding Recipes:
- Added Decoding Video files with various pixel formats recipes.
- Added Decoding Live Feed Devices recipes with
source_demuxer
FFdecoder API parameter. - Added Decoding Image sequences recipes supporting Sequential, Glob pattern , Single (looping) image.
- Added Decoding Network Streams recipes.
- Added new Basic Transcoding Recipes:
- Added Transcoding Live frames recipes with OpenCV and WriteGear.
- Added Transcoding Live Simple Filtergraphs recipes with OpenCV.
- Added Saving Key-frames as Image recipes with different image processing libraries.
- Added new Basic Extracting Video Metadata Recipes:
- Added Extracting Video Metadata recipes with FFdecoder and Sourcer APIs.
- Added new Advanced Decoding Recipes:
- Added Hardware-Accelerated Video Decoding recipe using NVIDIA's H.264 CUVID Video-decoder(
h264_cuvid
). - Added Decoding Live Virtual Sources recipes with many test patterns using
lavfi
input virtual device.
- Added Hardware-Accelerated Video Decoding recipe using NVIDIA's H.264 CUVID Video-decoder(
- Added new Advanced Decoding Recipes:
- Added lossless Hardware-Accelerated Video Transcoding recipe with WriteGear API.
- Added Transcoding Live Complex Filtergraphs recipes with WriteGear API.
- Added Transcoding Video Art with Filtergraphs recipes with WriteGear API for creating real-time artistic generative video art using simple and complex filtergraphs.
- Added new Advanced Updating Video Metadata Recipes:
- Added Updating Video Metadata recipes with user-defined as well as source metadata in FFdecoder API.
- Added new dark and light theme logo support.
β‘οΈ Updates/Improvements
- Sourcer API:
- Implemented new validation checks to ensure given
source
has usable video stream available by checking availability of eithervideo bitrate
or bothframe-size
andframerate
_ properties in the source metadata. - Improved
extract_resolution_framerate
method for making framerate extraction more robust by falling back to extractingTBR
value when no framerate value available in the source metadata.
- Implemented new validation checks to ensure given
- FFdecoder API:
- Updated
metadata
property object to validate and override source metadata properties directly by overloading same property object before formulating Frames Decoder Pipeline:- Implemented validation checks to verify each validate manually assigned source metadata property against specific datatype before overriding.
- Updated
metadata
property object to handle and assign User-defined metadata directly by overloading the same property object:- FFdecoder API's
metadata
property object now returns User-defined metadata information merged with Source Video metadata.
- FFdecoder API's
- Updated
- Docs:
- Reformatted all Core class and methods text descriptions:
- Fixed missing class and methods parameter description.
- Reformatted code comments.
- Rewritten Introduction(
index.md
) with recent Information, redefined context, UI changes, updated recipe codes, curated hyperlinks to various recipes(separated with categories), and relatable GIFs. - Reformatted and centered DeFFcode Introductory description.
- Updated Key Features section with reflecting new features.
- Updated docs site navigation and titles in
mkdocs.yml
. - Added custom
spacer
class in CSS for custom vertical spacing. - Updated all admonitions icons with new custom icon SVG+XML URLs.
- Updated docs fonts.
- Updated primary and accent colors.
- Updated API Reference docs.
- Changed Color palette toggle icons.
- Updated icons in title headings.
- Updated admonition messages.
- Reformatted all Core class and methods text descriptions:
π₯ Updates/Changes
- Sourcer API:
- π Sourcer API's
retrieve_metadata()
method now returns parsed metadata either as JSON string or dictionary type.- Added new
pretty_json
boolean parameter toretrieve_metadata()
, that is whenTrue
, returns metadata formatted as JSON string instead of default python dictionary.
- Added new
β οΈ ChangedIOError
toValueError
in Sourcer API, raised when source with no decodable audio or video stream is provided.
- π Sourcer API's
- FFdecoder API:
β οΈ Renameextraparams
dictionary parameter toffparams
in FFdecoder API.- π The
source
metadata value cannot be altered throughmetadata
property object in FFdecoder API. β οΈ Removed-ffpostfixes
attribute support fromffparams
dictionary parameter in FFdecoder API.
π Bug-fixes
- FFdecoder API:
- Fixed
metadata
property object unable to process user-defined keys when any source metadata keys are defined. - Fixed
TypeError
bug with string type-framerate
parameter values.
- Fixed
- Sourcer API:
- Fixed Sourcer API throws
IOError
for videos containing streams without both source bitrate and framerate defined (such as fromlavfi
input virtual device). - Fixed
AttributeError
bug due to typo in variable name.
- Fixed Sourcer API throws
π‘ Pull Requests
- PR #23