-
Notifications
You must be signed in to change notification settings - Fork 763
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Modify metadata_register API for support individual metric propagation. #1387
Conversation
I'm not sure if we need an API like this yet (?). I will hold off on the reviewing this PR until we figure that out. In the meantime, I will reply to your patch in ffmpeg-devel. |
Thanks for the comment, I found some problems about this patch and I wanted to add for future reference. After some tests I realized this patch doesn't work expected in some identifiers ( For example: vmaf/libvmaf/src/feature/integer_adm.c Lines 2707 to 2741 in d95b69e
vmaf/libvmaf/src/feature/integer_vif.c Lines 692 to 746 in d95b69e
As you see those features going to append if vmaf/libvmaf/src/feature/integer_adm.c Lines 2757 to 2767 in d95b69e
We should handle this somehow. Maybe we can add an option to Thanks |
I significantly refactored my patch to escape thread synchronization issue
This change eliminates the need for complex reordering logic at the caller level and reduces potential thread synchronization issues by only propagating metadata when all necessary metrics are calculated. |
@nilfm99 are those failures related to me? It seems like the tox tests are stuck. |
@yigithanyigit I don't see why CI is failing, my test PR is passing - would it be okay if we try rebasing your branch on master? |
… are ready The metadata propagation system has been significantly refactored to reduce complexity and threading issues: - Changed from per-feature propagation to propagating metadata when VMAF scores are complete - Added frame index tracking in metadata handler to ensure ordered processing - Added test coverage for non-monotonic frame processing scenarios This change eliminates the need for complex reordering logic at the caller level and reduces potential thread synchronization issues by only propagating metadata when all necessary metrics are calculated.
06a5e00
to
855d7aa
Compare
The new series of commits should have give the functionality of multiple configurations and multiple registered model callback triggering. However, there was a bug that triggers recursive callback calls due to |
In current state of this API it can only propagate explicitly given features, In other words giving an identifier doesn't work.
For example; for propagating
PSNR
:psnr_y
,psnr_cb
,psnr_cr
should be given.With these changes, propagating individual features and propagating with identifier possible.