DeepAffex Extraction Library Changelog
This project adheres to Semantic Versioning.
4.15.8 - Nov 10, 2026
- Bug fixes and security fixes
4.14.6 - May 9, 2025
- Fixed issue with constraints
hy_/maxInterPupilDist_px not being exposed in
get/setConstraintsConfig
4.14.5 - Oct 28, 2024
- Optimized payload creation
- Fixed issue with
VideoFrame::ChannelOrder::Infrared888
- Fixed Linux build to export C++ symbols
4.13.4 - June 25, 2024
- Added
maxInterPupilDist_px and checkMaxDistance to constraints
4.12.0 - September 21, 2023
- Improved validation of frame and face rects
- Embedded C library libdfxcpp into libdfx2
- Internal optmizations and improvements
- Added Frame OpticalQualityMetrics, deprecated Frame StarRating
- Improvements to constraints including hysteresis
- Added user data interface for setting properties
- Enhanced TOI signal filtering and extraction with more validation
- Additional payload error checking
- Improved error handling when study fails to load
- Support direct JSON cloud results, deprecation of decodeMeasurementResult
4.9.3 - August 23, 2021
- Fixed issue in experimental
Frame::getQualityMetrics and
Frame::getStarRating methods
- Fixed issue related to color channel order
4.9.0 - May 25, 2021
- Added
timestamp_millisec to VideoFrame. If it's not NaN then
timedstamp_ns will be ignored.
- Added experimental
Frame::getQualityMetrics and Frame::getStarRating
- Changed types from
uint64_t to uint32_t for
ChunkPayload::{first_chunk_start_time_s, start_time_s, end_time_s} and
VideoFrame::number
- Renamed
VideoFrame::ChannelOrder::Infrared24 to
VideoFrame::ChannelOrder::Infrared888 (not supported yet)
- Deprecated
Factory::initializeStudy(FILE), Factory::addToStudy(FILE) and
Factory::addToStudy(MEMORY) and corresponding C-API calls
- Deprecated C-API calls for
dfx_frame_get_region_names,
dfx_frame_get_region_polygon, dfx_frame_get_region_int_property and
dfx_frame_get_region_histogram.
- Optimizations to improve speed, lower memory usage and create smaller payloads
- Bug fixes relating to chunk duration rounding, frame timestamps, color orders
and more
4.4.1 - May 27, 2020
- Added
DFXFactory.getSdkID and removed bundled study config files
- Increased the limit for client provided properties from 10 to 100
- Added additional enum types in anticipation of future releases (not supported yet)
- Fixed bug in HMAC calculation
- Other bug fixes and performance improvements
4.3.3-alpha1 - December 4, 2019
- Fixed bug where
setProperty does not change values of keys that already exist.
4.3.2-alpha1 - November 7, 2019
- Fixed bug regression in v2 response parsing with
the introduction of v3 response parsing in the SDK.
4.3.1-alpha1 - October 9, 2019
- Fixed minor bug in
decodeMeasurementResult
4.3.0-alpha1 - September 27, 2019
- Added support for API v3 streaming result handling with optional study based marker responses
4.2.1-alpha1 - September 16, 2019
- Fixed issue in
DFXFactory.addToStudyFromFile which called initialize.
- Added:
CppCollector.cancelCollection() (instead of stopCollection), and
introduced CppCollection.forceComplete() to enable clients to get the
final payload when not enough frames are available (ie. last segment of
a video file).
- Fixed off-by-one issue on
Frame processing when handling video file.
- Enhanced extraction filtering capabilities to reduce payload sizes.
- Improved filter quality
4.1.0 - May 22, 2019
- Added fine-grained tracking for data with multiple faces.
4.0.5 - May 7, 2019
- Added HiSilicon armv7 build (for private distribution)
4.0.4 - April 18, 2019
- Added
dfx_sdk_version
- Fixed issue with 4-channel images
- Fixed string issue in C to C++ interface on Windows
- Fixed issue in
getRegionNames()
4.0.1 - April 5, 2019
- Fixed issues with building example code
- Improved documentation
4.0.0 - April 3, 2019
- Tagged to 4.0.0, no functional changes
3.13.18 - April 1, 2019
- Added
Collector->stopCollection()
- Added
Collector->getMode()
- Added
Collector->prepareMeasurement()
3.13.10 - March 28, 2019
- Documentation cleanup and added a result to
Collector.setProperty()
to indicate failure.
3.13.8 - March 25, 2019
Frame.addFace() and Frame.addMarker() return bool in case
they fail because a limit has been reached. ChunkPayload now
contains a valid flag to indicate the payload was succesfully
constructed.
3.13.7 - March 21, 2019
- Added
Collector.getRequiredPosePointIDs() to help document
the necessary pose points required for a study.
- Added support for payload hmac sha1 property to enable
server validation of payload properties.
3.13.3 - March 18, 2019
- Removed the
Collector.initializeConfigPath() from the Public API.
- Added support for
Factory.initializeStudy() and
Factory.initializeStudyFromFile() to support loading a study
definition from both memory and file. Retained support for the
deepaffex.lua loading model through the initializeStudyFile()
call.
3.12.2 - March 11, 2019
- Added more error handling and provided a last error message.
3.12.0 - March 1, 2019
setMode, setTargetFPS, setChunkDurationSeconds, setNumberChunks,
enableConstraint, disableConstraint now all return a bool to
indicate success/failure.
- Changed the payload from milliseconds to all values in seconds.
3.11.0 - March 1, 2019
- Redesigned the DFX C++ structure to reducing the complexity
of the ambiguous
DFXClient. DFXClient has been replaced with
DFXFactory (original Factory consolidated).
3.10.0 - March 1, 2019
- New
streaming/discrete mode supported.
3.9.0 - February 26, 2019
- Additional features integrated to support a streaming
payload.
3.8.0 - January 17, 2019
- Decoupled the data collection from payload generation
with the addition of
dfx_chunk_data.
3.7.1 - November 19, 2018
- Reduced the running
Collector memory requirement under
certain scenarios.
3.7.0 - November 14, 2018
- Removed the dependency on
dfx_collector when creating
dfx_face instances. The signature for dfx_face_create()
no longer takes a dfx_collector.
3.6.0 - September 26, 2018
- Added constraints tracking eyebrow movement when available.
3.5.4 - September 25, 2018
- Fixed initialization race when loading models.
3.5.3 - September 12, 2018
- Support for building DFX SDK on 64-bit Windows platform.
3.5.2 - September 5, 2018
- Better
face management to support tracking multiple faces.
- Fixed potential deadlock on
resetCollector()