[WIP] iVSR model JSON config and enablement - #41
Open
sandeshk-intel wants to merge 147 commits into
Open
Conversation
* OpenVINO backend instance wrapper * Simplify the thread pool (OpenVisualCloud#2) * get thread pool from openvino threading * Simplified the thread pool * Further simplification of the thread pool * modified the Task in thread pool (OpenVisualCloud#3) * modified the Task * fix the bug in constructor IVSRThreadExecutor * interface of smart patch module (OpenVisualCloud#4) * interface of smart patch module * add some interface for ivsr_smart_patch * remove unused files * add introduction document * Add CMake files for compilation and fix errors * enable the callback function * recommit api c implementation (OpenVisualCloud#8) * recommit api c implmentation * recommit c api implementation * fixed some bugs and compiled in success * finish the run function on ov_engine module * refine the ivsr main function code * refine the thread executor code * implement vsr sample based on c api (OpenVisualCloud#6) * implement vsr sample based on c api * compile vsr sample successfully * add samples compilation in CMake * fix some bugs in vsr sample (OpenVisualCloud#9) * implement vsr sample based on c api * compile vsr sample successfully * fix some bug in vsr_sample * fix crash issue when run sample * fix double free & add trace * remove quick return for debug purpose previoulsy * add init function in ov_engine construction * update readme * add callback in samples and enable callback function * disable debug option * Add in performance test (OpenVisualCloud#10) * Add in performace test and save infer images (OpenVisualCloud#11) * set nstream for GPU and modify the use of smart patch object (OpenVisualCloud#12) * Fix build error: missing callback definition. (OpenVisualCloud#13) Signed-off-by: yangz1 <yang.zheng@intel.com> * Add iteration support in vsr_sample (OpenVisualCloud#14) * set nstream for GPU and modify the use of smart patch object * add iteration support in vsr_sample.cpp * Resolved merge conflicts * 1. Add performance log for each request. (OpenVisualCloud#15) * 1. Add performance log for each request. 2. Modify performance log for task module to performance of total pipeline. Signed-off-by: yangz1 <yang.zheng@intel.com> * Remove output format got in ov_engine. Signed-off-by: yangz1 <yang.zheng@intel.com> --------- Signed-off-by: yangz1 <yang.zheng@intel.com> * Enable smart patch by adding patch division and restoration parts (OpenVisualCloud#16) * Enable smart patch by adding patch division and restoration parts * Enable the selection on image or patch solution * (1) Remove rebundant code. (OpenVisualCloud#17) (2) Add ENABLE_PERF and ENABLE_LOG. Signed-off-by: yangz1 <yang.zheng@intel.com> * Code refine (OpenVisualCloud#19) * (1) Remove rebundant code. (2) Add ENABLE_PERF and ENABLE_LOG. Signed-off-by: yangz1 <yang.zheng@intel.com> * (1) Add ENABLE_PERF and ENABLE_LOG in cmake. (2) Add build.sh. Signed-off-by: yangz1 <yang.zheng@intel.com> * Modify IVSR_DEBUG to ENABLE_LOG Signed-off-by: yangz1 <yang.zheng@intel.com> --------- Signed-off-by: yangz1 <yang.zheng@intel.com> Co-authored-by: KunLong9 <105702843+KunLong9@users.noreply.github.com> * 1.Add command line check for vsr_sample; 2.Hide <nif> arg in vsr_sample (OpenVisualCloud#20) * 1.Add command line check for vsr_sample; 2.hide <nif> arg in vsr_sample * remove param <patch_evaluation> and fix commandline check bug for store-true args * Modify tasks sync operation. (OpenVisualCloud#22) (1) Add callback functions in impl. (2) Add wait_all operation to sync all tasks. Signed-off-by: yangz1 <yang.zheng@intel.com> * fix bugs and add more function to metric_evaluation.py (OpenVisualCloud#23) * 1.Add command line check for vsr_sample; 2.hide <nif> arg in vsr_sample * remove param <patch_evaluation> and fix commandline check bug for store-true args * Add metric evaluation script in test * fix bugs and add more function to metric_evaluation.py * Cb (OpenVisualCloud#24) * Modify tasks sync operation. (1) Add callback functions in impl. (2) Add wait_all operation to sync all tasks. Signed-off-by: yangz1 <yang.zheng@intel.com> * (1) Move performance log into ENABLE_PERF option. (2) Modify tasks sync performance calculation. Signed-off-by: yangz1 <yang.zheng@intel.com> --------- Signed-off-by: yangz1 <yang.zheng@intel.com> * fix bug for multi-inputs sync. by adding reset (OpenVisualCloud#31) * Merge (OpenVisualCloud#33) * Restructure master branch (OpenVisualCloud#21) * Restructure master branch to make it accomodate three projects: VSR GPU Opt, VSR FFmpeg plugin, and VSR SDK. * Rename the folders with lower case letters. * Add openvino as submodule and checkout to specific version. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Add patches to support basicVSR in OpenVINO. (OpenVisualCloud#26) * Restructure master branch to make it accomodate three projects: VSR GPU Opt, VSR FFmpeg plugin, and VSR SDK. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Rename the folders with lower case letters. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Add openvino as submodule and checkout to specific version. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Add patches to support basicVSR in OpenVINO. Signed-off-by: yangz1 <yang.zheng@intel.com> * Update build.sh for OV22.1 openvino. Signed-off-by: yangz1 <yang.zheng@intel.com> * Default disable GPU plugin in build.sh. Signed-off-by: yangz1 <yang.zheng@intel.com> --------- Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> Signed-off-by: yangz1 <yang.zheng@intel.com> Co-authored-by: Pan, Yanjie <yanjie.pan@intel.com> * [ffmpeg-plugin] Initiate FFmpeg-plugin with OV 22.1 (OpenVisualCloud#29) Based on ffmpeg release 5.1 Add patch for configure file to pass building Add Dockerfile Signed-off-by: dahanhan <dahan.han@intel.com> * Remove conflict between dev and master. Signed-off-by: yangz1 <yang.zheng@intel.com> --------- Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> Signed-off-by: yangz1 <yang.zheng@intel.com> Signed-off-by: dahanhan <dahan.han@intel.com> Co-authored-by: YanjiePa <yanjie.pan@intel.com> Co-authored-by: dahanhan <dahan.han@intel.com> * Add more IVSRStatus, fix bugs for invalid input, add some error messages (#45) * [Feature] 1. Initialize GoogleTest for iVSR testing. (#46) 2. Add ValidInput Test for CPU Init. Signed-off-by: yangz1 <yang.zheng@intel.com> * Ov3 dockerfile (#53) * Restructure master branch (OpenVisualCloud#21) * Restructure master branch to make it accomodate three projects: VSR GPU Opt, VSR FFmpeg plugin, and VSR SDK. * Rename the folders with lower case letters. * Add openvino as submodule and checkout to specific version. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Add patches to support basicVSR in OpenVINO. (OpenVisualCloud#26) * Restructure master branch to make it accomodate three projects: VSR GPU Opt, VSR FFmpeg plugin, and VSR SDK. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Rename the folders with lower case letters. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Add openvino as submodule and checkout to specific version. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Add patches to support basicVSR in OpenVINO. Signed-off-by: yangz1 <yang.zheng@intel.com> * Update build.sh for OV22.1 openvino. Signed-off-by: yangz1 <yang.zheng@intel.com> * Default disable GPU plugin in build.sh. Signed-off-by: yangz1 <yang.zheng@intel.com> --------- Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> Signed-off-by: yangz1 <yang.zheng@intel.com> Co-authored-by: Pan, Yanjie <yanjie.pan@intel.com> * [ffmpeg-plugin] Initiate FFmpeg-plugin with OV 22.1 (OpenVisualCloud#29) Based on ffmpeg release 5.1 Add patch for configure file to pass building Add Dockerfile Signed-off-by: dahanhan <dahan.han@intel.com> * Custom op (OpenVisualCloud#35) * [FFmpeg-plugin] Add patch for BasicVSR enablement The ffmpeg patch is utilizing fifo for multi-frame input of BasicVSR model feature. Signed-off-by: dahanhan <dahan.han@intel.com> * [FFmpeg Plugin] Add resolution parameter and resolve flush frame behavior The resolution of filter input and output video are added in the AVOptions The flush frame is implemented to support multi-frame processing Signed-off-by: dahanhan <dahan.han@intel.com> * [BugFix] Modify C warp extension implementation to support BasicVSR custom op.w Signed-off-by: yangz1 <yang.zheng@intel.com> --------- Signed-off-by: dahanhan <dahan.han@intel.com> Signed-off-by: yangz1 <yang.zheng@intel.com> Co-authored-by: dahanhan <dahan.han@intel.com> * [FFmpeg-plugin] Add patch for BasicVSR enablement (OpenVisualCloud#34) * [FFmpeg-plugin] Add patch for BasicVSR enablement The ffmpeg patch is utilizing fifo for multi-frame input of BasicVSR model feature. Signed-off-by: dahanhan <dahan.han@intel.com> * [FFmpeg Plugin] Add resolution parameter and resolve flush frame behavior The resolution of filter input and output video are added in the AVOptions The flush frame is implemented to support multi-frame processing Signed-off-by: dahanhan <dahan.han@intel.com> * [FFmpeg-Plugin] Support OpenVINO extension to VSR Utilize extension and op_xml in backend option Set default nireq to 1 Signed-off-by: dahanhan <dahan.han@intel.com> * Custom op (OpenVisualCloud#35) * [FFmpeg-plugin] Add patch for BasicVSR enablement The ffmpeg patch is utilizing fifo for multi-frame input of BasicVSR model feature. Signed-off-by: dahanhan <dahan.han@intel.com> * [FFmpeg Plugin] Add resolution parameter and resolve flush frame behavior The resolution of filter input and output video are added in the AVOptions The flush frame is implemented to support multi-frame processing Signed-off-by: dahanhan <dahan.han@intel.com> * [BugFix] Modify C warp extension implementation to support BasicVSR custom op.w Signed-off-by: yangz1 <yang.zheng@intel.com> --------- Signed-off-by: dahanhan <dahan.han@intel.com> Signed-off-by: yangz1 <yang.zheng@intel.com> Co-authored-by: dahanhan <dahan.han@intel.com> * [FFmpeg-Plugin] Support OpenVINO extension to VSR Utilize extension and op_xml in backend option Set default nireq to 1 Signed-off-by: dahanhan <dahan.han@intel.com> * [FFmpeg-Plugin] FIx Dockerfile issues The Hadoline scan issues are partially fixed Signed-off-by: dahanhan <dahan.han@intel.com> --------- Signed-off-by: dahanhan <dahan.han@intel.com> Signed-off-by: yangz1 <yang.zheng@intel.com> Co-authored-by: windy058 <yang.zheng@intel.com> * [FFmpeg-plugin] Use RGB order as the inference in/out image (OpenVisualCloud#37) Align with the BasicVSR model which requires RGB order input Signed-off-by: dahanhan <dahan.han@intel.com> * Add env requirements for python basicvsr_inference_sample.py (OpenVisualCloud#36) * add env requirements for python basicvsr_inference_sample.py * Modify patch loading method in build.sh. Signed-off-by: yangz1 <yang.zheng@intel.com> --------- Signed-off-by: yangz1 <yang.zheng@intel.com> Co-authored-by: yangz1 <yang.zheng@intel.com> * [FFmpeg-plugin] Update FFmpeg-plugin README and fine code (OpenVisualCloud#38) Update AV option help info and emphasize if it is not usable for BasicVSR model Update Docker file to use Ubuntu 20.04 as the base image Signed-off-by: dahanhan <dahan.han@intel.com> * Remove un-used txt file. (OpenVisualCloud#39) * Remove un-used txt file. Signed-off-by: yangz1 <yang.zheng@intel.com> * Remove unused files/folders/components for release v0.1. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> --------- Signed-off-by: yangz1 <yang.zheng@intel.com> Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> Co-authored-by: Pan, Yanjie <yanjie.pan@intel.com> * Add README.md for basicvsr_sample (OpenVisualCloud#40) * Add README.md for basicvsr_sample * Add BSD 3-clause license file. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Refine readme. --------- Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> Co-authored-by: no name <noname@example.com> Co-authored-by: Pan, Yanjie <yanjie.pan@intel.com> * Refine repo docs (readme, license, etc) (OpenVisualCloud#43) * Move license file to root folder. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Remove model folder since model files are usually too large to push. Will upload models in storage. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Rewrite root README and refine other READMEs. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Refine LICENSE.md. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Refine root README again. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Refine contact info in root readme. * Refine ivsr_gpu_opt/README.md * Refine subfolder readme. --------- Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Add dockerfile and build script for vsr_gpu_opt based on OV.3 Signed-off-by: dahanhan <dahan.han@intel.com> * Ov3 code (#49) * Remove un-used txt file. (OpenVisualCloud#39) * Remove un-used txt file. Signed-off-by: yangz1 <yang.zheng@intel.com> * Remove unused files/folders/components for release v0.1. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> --------- Signed-off-by: yangz1 <yang.zheng@intel.com> Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> Co-authored-by: Pan, Yanjie <yanjie.pan@intel.com> * Add README.md for basicvsr_sample (OpenVisualCloud#40) * Add README.md for basicvsr_sample * Add BSD 3-clause license file. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Refine readme. --------- Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> Co-authored-by: no name <noname@example.com> Co-authored-by: Pan, Yanjie <yanjie.pan@intel.com> * Refine repo docs (readme, license, etc) (OpenVisualCloud#43) * Move license file to root folder. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Remove model folder since model files are usually too large to push. Will upload models in storage. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Rewrite root README and refine other READMEs. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Refine LICENSE.md. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Refine root README again. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Refine contact info in root readme. * Refine ivsr_gpu_opt/README.md * Refine subfolder readme. --------- Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * [Feature] Add BasicVSR GPU Opt for OV22.3. Signed-off-by: yangz1 <yang.zheng@intel.com> --------- Signed-off-by: yangz1 <yang.zheng@intel.com> Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> Co-authored-by: Pan, Yanjie <yanjie.pan@intel.com> Co-authored-by: KunLong9 <105702843+KunLong9@users.noreply.github.com> Co-authored-by: no name <noname@example.com> Co-authored-by: dahanhan <dahan.han@intel.com> * Updated OV.3 Dockerfile with openvino building options Signed-off-by: dahanhan <dahan.han@intel.com> --------- Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> Signed-off-by: yangz1 <yang.zheng@intel.com> Signed-off-by: dahanhan <dahan.han@intel.com> Co-authored-by: YanjiePa <yanjie.pan@intel.com> Co-authored-by: windy058 <yang.zheng@intel.com> Co-authored-by: KunLong9 <105702843+KunLong9@users.noreply.github.com> Co-authored-by: no name <noname@example.com> * Add OV3 submodule. (#54) Signed-off-by: yangz1 <yang.zheng@intel.com> * Add gtest for ivsr_process and fix bugs (#48) * Add unit test for ivsr_process * Fix the hang issue during GPU iteration {init,process,deinit} * Update docker files (#55) Add dockerfile for VSR-SDK Rename dockerfile based building script Reduced core number to avoid memory shortage problem Signed-off-by: dahanhan <dahan.han@intel.com> * Refine config settings for VSR-SDK multi-gpu based on ov3 (#56) Co-authored-by: no name <noname@example.com> * add performance and metric test scripts to test folder (#57) Co-authored-by: dahanhan <noname@example.com> * Refine config settings for VSR SDK based on ov3 (#58) * Refine config settings for VSR-SDK multi-gpu based on ov3 * set nstreams=1 for single GPU --------- Co-authored-by: no name <noname@example.com> Co-authored-by: windy058 <yang.zheng@intel.com> * 1. Make multi-gpu config general for both ov1 && ov3; (#59) 2. Add ivsr release version. Signed-off-by: yangz1 <yang.zheng@intel.com> * Refine (#60) * 1. Make multi-gpu config general for both ov1 && ov3; 2. Add ivsr release version. Signed-off-by: yangz1 <yang.zheng@intel.com> * 1. Enhance unit tests. 2. Save outputs default = false; Signed-off-by: yangz1 <yang.zheng@intel.com> --------- Signed-off-by: yangz1 <yang.zheng@intel.com> Co-authored-by: KunLong9 <105702843+KunLong9@users.noreply.github.com> * Keep the infer request queue in dynamic (#61) Signed-off-by: KunLong9 <kun.long@intel.com> * Test scripts (#62) * add performance and metric test scripts to test folder * Add int8 model w/ ignored layers to test scripts Signed-off-by: KunLong9 <kun.long@intel.com> * Add requirements for metric_evaluate.py Signed-off-by: KunLong9 <kun.long@intel.com> * Add --save_predictions=true for vsr_sample in ov3_metric_test.sh Signed-off-by: KunLong9 <kun.long@intel.com> --------- Signed-off-by: KunLong9 <kun.long@intel.com> Co-authored-by: dahanhan <noname@example.com> Co-authored-by: windy058 <yang.zheng@intel.com> * Test scripts (#63) * add performance and metric test scripts to test folder * Add int8 model w/ ignored layers to test scripts Signed-off-by: KunLong9 <kun.long@intel.com> * Add requirements for metric_evaluate.py Signed-off-by: KunLong9 <kun.long@intel.com> * Add --save_predictions=true for vsr_sample in ov3_metric_test.sh Signed-off-by: KunLong9 <kun.long@intel.com> * Refine ov3_metric_test.sh Signed-off-by: KunLong9 <kun.long@intel.com> --------- Signed-off-by: KunLong9 <kun.long@intel.com> Co-authored-by: dahanhan <noname@example.com> * Update test scripts for OV3 benchmark and VSR SDK cases. (#65) Signed-off-by: yangz1 <yang.zheng@intel.com> * set infer precision to f32 in VSR SDK (#66) Signed-off-by: KunLong9 <kun.long@intel.com> * Update ivsr SDK README.md (#70) * Add SDK READMEv0.5 to review * refine README v0.7 * Update README.md add total description & remove OpenVINO env arg settings * Update README.md --------- Co-authored-by: jiehui <jiehui.lu@intel.com> * Update ivsr_gpu_opt OV.3 README (#71) * {IVSR_GPU_OPT] Update OV.3 README Signed-off-by: dahanhan <dahan.han@intel.com> * Update README.md --------- Signed-off-by: dahanhan <dahan.han@intel.com> * 1. Move ivsr sample to bin folder. (#72) 2. When run unit test, put model/*xml folder to bin folder, put lib/libcustom_extension.so to bin folder. Signed-off-by: yangz1 <yang.zheng@intel.com> * Fix the UMD driver versions (#68) Add a config file where the UMD driver versions are fixed Signed-off-by: dahanhan <dahan.han@intel.com> * add document for vsr sdk (#73) * Add Introduction.md for VSR SDK Signed-off-by: KunLong9 <kun.long@intel.com> * Link Introduction.md and README.md Signed-off-by: KunLong9 <kun.long@intel.com> --------- Signed-off-by: KunLong9 <kun.long@intel.com> * Refine unit tests and logs (#74) * Remove unit tests for without custom op model Signed-off-by: KunLong9 <kun.long@intel.com> * Refined output log Signed-off-by: KunLong9 <kun.long@intel.com> * Add [PERF] to performance logs Signed-off-by: KunLong9 <kun.long@intel.com> --------- Signed-off-by: KunLong9 <kun.long@intel.com> --------- Signed-off-by: yangz1 <yang.zheng@intel.com> Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> Signed-off-by: dahanhan <dahan.han@intel.com> Signed-off-by: KunLong9 <kun.long@intel.com> Co-authored-by: Jiang,Renzhi <Renzhi.Jiang@intel.com> Co-authored-by: KunLong9 <105702843+KunLong9@users.noreply.github.com> Co-authored-by: YanjiePa <yanjie.pan@intel.com> Co-authored-by: dahanhan <dahan.han@intel.com> Co-authored-by: no name <noname@example.com> Co-authored-by: jiehui <jiehui.lu@intel.com>
Signed-off-by: KunLong9 <kun.long@intel.com>
* Refine gammar and formats * Refined the iVSR API description Signed-off-by: KunLong9 <kun.long@intel.com> * Refine root readme & add license. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> * Refined iVSR README.md Signed-off-by: KunLong9 <kun.long@intel.com> * Update ENVIRONMENT.md Removed some internal links and formatted shell command lines * Refine license. Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> --------- Signed-off-by: KunLong9 <kun.long@intel.com> Signed-off-by: Pan, Yanjie <yanjie.pan@intel.com> Co-authored-by: jiehui <jiehui.lu@intel.com> Co-authored-by: KunLong9 <kun.long@intel.com> Co-authored-by: dahanhan <dahan.han@intel.com>
* Refine folder structure of ffmpeg plugin * Enable ffmpeg ivsr sdk backend plugin * Add patch for resource release * Add README for ffmpeg plugin with ivsr sdk backend
* Add option "scale_factor" into vsr sample * Update ReadME
* Introduce model guard to protect IP * Add MAC addr and cpu id check * Enable runtime model guard checking * Support building by binary and source for model guard * Use private method to load model again when loading failed first * New branch `develop` to have all sources there * Add svp test cases * Update svp test cases * Append ffmpeg ivsr backend patch. * Refine svp test cases * Rename the doc
* add model shape extension for edsr * add input/output normalized factor * add process patch with multi-thread * add edsr test cases * add paraller process memory copy to patch --------- Co-authored-by: Dong,Jingxuan <jingxuan.dong@intel.com>
* add set inference precision parser * add inference-precision judgement for CPU/GPU
* updated ivsr_sdk readme and build scripts * updated SVP cmd
* Update Readme and figures for iVSR and iVSR SDK. * Refine the description of SVP.
* Hide more model loading related interfaces to protect model * Link to version ov22.3 * Always build ir_zip in develop branch
* Add reshape feature * Update usage doc. * Address compile warnings in ivsr sdk
* Refine "checkFile" to accept regular file only * [test] no explicit delete handle
* Introduce submodule v2023.2 openvino * Add dockerfile for ov2023.2 * minor update for dockerfile * Use official API to set the property * Turn "onednn for gpu" on in ov2023.2
* Enable a basic version of model reshape in ffmpeg plugin * Enable model reshape in ffmpegplugin without command line input * modify file path in patch 0006 * restore using ',' as reshape string separation.
…el at runtime. (#108) Signed-off-by: Liang <xiaoxia.liang@intel.com>
Signed-off-by: Liang <xiaoxia.liang@intel.com>
Signed-off-by: Liang <xiaoxia.liang@intel.com>
…isible by 4. (#112) * report error when the h or w of the input frame to METAVSR can not divisible by 4. * modify error info
* update ivsr sdk doc * minor change * update ffmpeg options
* Update release notes for 2025.03 release
Signed-off-by: Xiaoxia Liang <xiaoxia.liang@intel.com>
…et from application level, so models like EDSR can process image of odd input resoluton.
* ffmpeg v8.1 and OpenVINO 2026.1 upgrade Signed-off-by: sandeshk <sandesh.kumar.s@intel.com> * Fix review comments Use const for image stride variables Signed-off-by: sandeshk <sandesh.kumar.s@intel.com> --------- Signed-off-by: sandeshk <sandesh.kumar.s@intel.com>
Signed-off-by: sandeshk <sandesh.kumar.s@intel.com>
Signed-off-by: sandeshk <sandesh.kumar.s@intel.com>
Signed-off-by: sandeshk <sandesh.kumar.s@intel.com>
Signed-off-by: sandeshk <sandesh.kumar.s@intel.com>
… path - Fix Y-plane row-stride bug in unpack_output_window: use output->width instead of unpadded frame width 'fw' as the tensor stride. Fixes corrupted output on frames not a multiple of 'align' (e.g., 720p, 854p). - Flip normalize_input/output defaults from 1 to 0. Most models use raw [0,255] I/O; old defaults silently corrupted VideoSeal/EDSR/VideoProc. - Fix model_color fallback to default to "RGB" instead of an empty string when absent, preventing SDK undefined behavior without heap allocation. - Reorder color-format dispatch so color_format_auto is evaluated before model_color, preventing VideoProc/CustVSR auto-detection shadowing. - Inherit out_layout from in_layout when absent from the JSON config. Signed-off-by: sandeshk <sandesh.kumar.s@intel.com>
Update documentation, fix the VideoProc normalize_output value.
Signed-off-by: sandeshk <sandesh.kumar.s@intel.com>
sandeshk-intel
requested review from
linxie47,
wangjingz and
xiaoxial
as code owners
June 25, 2026 17:14
Fixes two corruption bugs in `unpack_output_window` for VideoProc: - Write 10-bit Y-plane as uint16_t with proper stride and scaling instead of uint8_t. - Restore limited-range luma clamping (AVCOL_RANGE_MPEG) for 8-bit and 10-bit modes. Both fixes are restricted to `name == "VideoProc"`. Signed-off-by: sandeshk <sandesh.kumar.s@intel.com>
Replace while(size!=0) drain loop with a blocking for(nireq) loop. With nireq>1 a callback thread can be between inference_done++ and ff_safe_queue_push_back at teardown: the queue appears empty so the main thread calls ff_safe_queue_destroy, freeing the mutex while the callback still holds it — non-deterministic SIGSEGV. The blocking loop ensures every callback completes push_back before the queue and its mutex are destroyed. Signed-off-by: sandeshk <sandesh.kumar.s@intel.com>
Signed-off-by: sandeshk <sandesh.kumar.s@intel.com>
Signed-off-by: sandeshk <sandesh.kumar.s@intel.com>
sandeshk-intel
requested review from
anaghdin,
marcin-le,
soopel and
surbhimadan
as code owners
July 23, 2026 07:49
sandeshk-intel
force-pushed
the
feature/sandeshk/model_config_and_enablement_public
branch
from
July 23, 2026 07:56
b06ce95 to
a4492a7
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Introduces a JSON-based model configuration system for the iVSR DNN backend, replacing hardcoded per-model C descriptors with external config files.
Add JSON config files for all supported models (VideoProc, EDSR, CustVSR, TSENet, RIFE, VideoSeal, HDRTVNet-LE) and a README documenting all parameters
Fix Y-plane row-stride bug in unpack_output_window that corrupted output on non-aligned frame widths (720p, 854p)
Flip normalize_input/normalize_output defaults from 1 to 0 — old defaults silently corrupted VideoSeal, EDSR, and VideoProc output
Fix model_color fallback to "RGB" instead of empty string; reorder color-format dispatch so color_format_auto takes precedence over model_color
Inherit out_layout from in_layout when absent from config
Remove redundant chroma copy for SVP/CustVSR models
Set out_precision_depth_derived=false for HDRTVNet-LE and fix normalize_output value in VideoProc config