* Mark as NEXT
* Reduce caching to avoid RAM explosion
* Reduce caching to avoid RAM explosion
* Update dependencies
* add face-detector-pad-factor
* update facefusion.ini
* fix test
* change pad to margin
* fix order
* add prepare margin
* use 50% max margin
* Minor fixes part2
* Minor fixes part3
* Minor fixes part4
* Minor fixes part1
* Downgrade onnxruntime as of BiRefNet broken on CPU
add test
update
update facefusion.ini
add birefnet
* rename models
add more models
* Fix versions
* Add .claude to gitignore
* add normalize color
add 4 channel
add colors
* worflows
* cleanup
* cleanup
* cleanup
* cleanup
* add more models (#961)
* Fix naming
* changes
* Fix style and mock Gradio
* Fix style and mock Gradio
* Fix style and mock Gradio
* apply clamp
* remove clamp
* Add normalizer test
* Introduce sanitizer for the rescue (#963)
* Introduce sanitizer for the rescue
* Introduce sanitizer for the rescue
* Introduce sanitizer for the rescue
* prepare ffmpeg for alpha support
* Some cleanup
* Some cleanup
* Fix CI
* List as TypeAlias is not allowed (#967)
* List as TypeAlias is not allowed
* List as TypeAlias is not allowed
* List as TypeAlias is not allowed
* List as TypeAlias is not allowed
* Add mpeg and mxf support (#968)
* Add mpeg support
* Add mxf support
* Adjust fix_xxx_encoder for the new formats
* Extend output pattern for batch-run (#969)
* Extend output pattern for batch-run
* Add {target_extension} to allowed mixed files
* Catch invalid output pattern keys
* alpha support
* cleanup
* cleanup
* add ProcessorOutputs type
* fix preview and streamer, support alpha for background_remover
* Refactor/open close processors (#972)
* Introduce open/close processors
* Add locales for translator
* Introduce __autoload__ for translator
* More cleanup
* Fix import issues
* Resolve the scope situation for locals
* Fix installer by not using translator
* Fixes after merge
* Fixes after merge
* Fix translator keys in ui
* Use LOCALS in installer
* Update and partial fix DirectML
* Use latest onnxruntime
* Fix performance
* Fix lint issues
* fix mask
* fix lint
* fix lint
* Remove default from translator.get()
* remove 'framerate='
* fix test
* Rename and reorder models
* Align naming
* add alpha preview
* fix frame-by-frame
* Add alpha effect via css
* preview support alpha channel
* fix preview modes
* Use official assets repositories
* Add support for u2net_cloth
* fix naming
* Add more models
* Add vendor, license and year direct to the models
* Add vendor, license and year direct to the models
* Update dependencies, Minor CSS adjustment
* Ready for 3.5.0
* Fix naming
* Update about messages
* Fix return
* Use groups to show/hide
* Update preview
* Conditional merge mask
* Conditional merge mask
* Fix import order
---------
Co-authored-by: harisreedhar <h4harisreedhar.s.s@gmail.com>
Co-authored-by: Harisreedhar <46858047+harisreedhar@users.noreply.github.com>
* Fix preview when using frame enhancer
* Fix version conflict numpy vs. cv2
* Use latest numpy
* Introduce scale_face() to match size of temp frames and target frames
* Remove hardcoded backend for camera under Windows
* Up and downgrade some dependencies
* Up and downgrade some dependencies
* Up and downgrade some dependencies
* Rename calcXXX to calculateXXX
* Add migraphx support
* Add migraphx support
* Add migraphx support
* Add migraphx support
* Add migraphx support
* Add migraphx support
* Use True for the flags
* Add migraphx support
* add face-swapper-weight
* add face-swapper-weight to facefusion.ini
* changes
* change choice
* Fix typing for xxxWeight
* Feat/log inference session (#906)
* Log inference session, Introduce time helper
* Log inference session, Introduce time helper
* Log inference session, Introduce time helper
* Log inference session, Introduce time helper
* Mark as NEXT
* Follow industry standard x1, x2, y1 and y2
* Follow industry standard x1, x2, y1 and y2
* Follow industry standard in terms of naming (#908)
* Follow industry standard in terms of naming
* Improve xxx_embedding naming
* Fix norm vs. norms
* Reduce timeout to 5
* Sort out voice_extractor once again
* changes
* Introduce many to the occlusion mask (#910)
* Introduce many to the occlusion mask
* Then we use minimum
* Add support for wmv
* Run platform tests before has_execution_provider (#911)
* Add support for wmv
* Introduce benchmark mode (#912)
* Honestly makes no difference to me
* Honestly makes no difference to me
* Fix wording
* Bring back YuNet (#922)
* Reintroduce YuNet without cv2 dependency
* Fix variable naming
* Avoid RGB to YUV colorshift using libx264rgb
* Avoid RGB to YUV colorshift using libx264rgb
* Make libx264 the default again
* Make libx264 the default again
* Fix types in ffmpeg builder
* Fix quality stuff in ffmpeg builder
* Fix quality stuff in ffmpeg builder
* Add libx264rgb to test
* Revamp Processors (#923)
* Introduce new concept of pure target frames
* Radical refactoring of process flow
* Introduce new concept of pure target frames
* Fix webcam
* Minor improvements
* Minor improvements
* Use deque for video processing
* Use deque for video processing
* Extend the video manager
* Polish deque
* Polish deque
* Deque is not even used
* Improve speed with multiple futures
* Fix temp frame mutation and
* Fix RAM usage
* Remove old types and manage method
* Remove execution_queue_count
* Use init_state for benchmarker to avoid issues
* add voice extractor option
* Change the order of voice extractor in code
* Use official download urls
* Use official download urls
* add gui
* fix preview
* Add remote updates for voice extractor
* fix crash on headless-run
* update test_job_helper.py
* Fix it for good
* Remove pointless method
* Fix types and unused imports
* Revamp reference (#925)
* Initial revamp of face references
* Initial revamp of face references
* Initial revamp of face references
* Terminate find_similar_faces
* Improve find mutant faces
* Improve find mutant faces
* Move sort where it belongs
* Forward reference vision frame
* Forward reference vision frame also in preview
* Fix reference selection
* Use static video frame
* Fix CI
* Remove reference type from frame processors
* Improve some naming
* Fix types and unused imports
* Fix find mutant faces
* Fix find mutant faces
* Fix imports
* Correct naming
* Correct naming
* simplify pad
* Improve webcam performance on highres
* Camera manager (#932)
* Introduce webcam manager
* Fix order
* Rename to camera manager, improve video manager
* Fix CI
* Remove optional
* Fix naming in webcam options
* Avoid using temp faces (#933)
* output video scale
* Fix imports
* output image scale
* upscale fix (not limiter)
* add unit test scale_resolution & remove unused methods
* fix and add test
* fix
* change pack_resolution
* fix tests
* Simplify output scale testing
* Fix benchmark UI
* Fix benchmark UI
* Update dependencies
* Introduce REAL multi gpu support using multi dimensional inference pool (#935)
* Introduce REAL multi gpu support using multi dimensional inference pool
* Remove the MULTI:GPU flag
* Restore "processing stop"
* Restore "processing stop"
* Remove old templates
* Go fill in with caching
* add expression restorer areas
* re-arrange
* rename method
* Fix stop for extract frames and merge video
* Replace arcface_converter models with latest crossface models
* Replace arcface_converter models with latest crossface models
* Move module logs to debug mode
* Refactor/streamer (#938)
* Introduce webcam manager
* Fix order
* Rename to camera manager, improve video manager
* Fix CI
* Fix naming in webcam options
* Move logic over to streamer
* Fix streamer, improve webcam experience
* Improve webcam experience
* Revert method
* Revert method
* Improve webcam again
* Use release on capture instead
* Only forward valid frames
* Fix resolution logging
* Add AVIF support
* Add AVIF support
* Limit avif to unix systems
* Drop avif
* Drop avif
* Drop avif
* Default to Documents in the UI if output path is not set
* Update wording.py (#939)
"succeed" is grammatically incorrect in the given context. To succeed is the infinitive form of the verb. Correct would be either "succeeded" or alternatively a form involving the noun "success".
* Fix more grammar issue
* Fix more grammar issue
* Sort out caching
* Move webcam choices back to UI
* Move preview options to own file (#940)
* Fix Migraphx execution provider
* Fix benchmark
* Reuse blend frame method
* Fix CI
* Fix CI
* Fix CI
* Hotfix missing check in face debugger, Enable logger for preview
* Fix reference selection (#942)
* Fix reference selection
* Fix reference selection
* Fix reference selection
* Fix reference selection
* Side by side preview (#941)
* Initial side by side preview
* More work on preview, remove UI only stuff from vision.py
* Improve more
* Use fit frame
* Add different fit methods for vision
* Improve preview part2
* Improve preview part3
* Improve preview part4
* Remove none as choice
* Remove useless methods
* Fix CI
* Fix naming
* use 1024 as preview resolution default
* Fix fit_cover_frame
* Uniform fit_xxx_frame methods
* Add back disabled logger
* Use ui choices alias
* Extract select face logic from processors (#943)
* Extract select face logic from processors to use it for face by face in preview
* Fix order
* Remove old code
* Merge methods
* Refactor face debugger (#944)
* Refactor huge method of face debugger
* Remove text metrics from face debugger
* Remove useless copy of temp frame
* Resort methods
* Fix spacing
* Remove old method
* Fix hard exit to work without signals
* Prevent upscaling for face-by-face
* Switch to version
* Improve exiting
---------
Co-authored-by: harisreedhar <h4harisreedhar.s.s@gmail.com>
Co-authored-by: Harisreedhar <46858047+harisreedhar@users.noreply.github.com>
Co-authored-by: Rafael Tappe Maestro <rafael@tappemaestro.com>