{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":114747226,"defaultBranch":"master","name":"faceswap","ownerLogin":"deepfakes","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2017-12-19T09:44:13.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/34667098?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1717778232.0","currentOid":""},"activityList":{"items":[{"before":"c8652ecaac56aae1bc328cf354c44853a2c17d7f","after":"56dd410b5c12b1851263224981029d8297cccf6a","ref":"refs/heads/fs3","pushedAt":"2024-06-07T16:39:01.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"Faceswap 3 beta (#1392)\n\n* Replace TF entry point code\r\n\r\n* Update extract pipeline\r\n\r\n* Update requirements + setup for nvidia\r\n\r\n* Remove allow-growth option\r\n\r\n* tf.keras to keras updates\r\n\r\n* Basic training functionality (original)\r\n\r\n* lib.model.losses - Port + fix all loss functions for Keras3\r\n\r\n* lib.model - port initializers, layers. normalization to Keras3\r\n\r\n* training - Fix previews and LR_Finder\r\n\r\n* lib.logger - Prevent crash on custom loglevels when launching scripts external to FS\r\n\r\n* lib.model.autoclip to Keras 3\r\n\r\n* Update mixed precision layer storage\r\n\r\n* model file to .keras format\r\n\r\n* typo fix\r\n\r\n* Set loss debug logging to trace\r\n\r\n* Restructure nn_blocks to initialize layers in __init__\r\n\r\n* lib.model - standardise class init logging\r\n\r\n* Tensorboard\r\n - Trainer: Add Torch compatible Tensorboard callbacks\r\n - GUI event reader remove TF dependency\r\n\r\n* Loss logging\r\n - Flush TB logs on save\r\n - Replace TB live iterator for GUI\r\n\r\n* Backup models on total loss drop rather than per side\r\n\r\n* Update all models to Keras3 Compat\r\n\r\n* Clean up console output\r\n\r\n* Fix learn mask and multiscale preview outputs\r\n\r\n* linting\r\n\r\n* pylint: reduce min-public-methods to 1 + linting\r\n\r\n* lib.logger/utils - remove TF specific log handling + linting\r\n\r\n* Remove lib.model.session\r\n\r\n* Extract - explicitly pass batch_size to predict\r\n\r\n* Exclude GPU for CUDA backends\r\n\r\n* plugins.model - remove exclude_gpu\r\n\r\n* Add exclude_gpus properties to ROCm and DirectML\r\n\r\n* Enable CPU mode for compatible extractors\r\n\r\n* Fix optimizer saving\r\n\r\n* bug/typo fixes\r\n\r\n* Update clip ViT to Keras 3\r\n\r\n* lib.cli - Deprecate multi-character switches\r\n\r\n* tools cli - deprecate multi character switches\r\n\r\n* convert - remove trainer cli-arg\r\n\r\n* Remove colab references from project\r\n\r\n* Extract: Supress Keras compile warnings for FAN + Unet\r\n\r\n* plugins.extract.mask.unet-dfl - Fix for Keras3/Torch backend\r\n\r\n* plugins.extract - linting + typing\r\n\r\n* Port AdaBelief to Keras 3\r\n\r\n* linting: Remove pylint hint from logger\r\n\r\n* typofix\r\n\r\n* Fix GUI for refactored lib.cli.args\r\n\r\n* Use saving API for load_model\r\n\r\n* setup.py:\r\n - Add --dev flag for dev tool install\r\n - Group pytorch items together for install\r\n\r\n* extract: Fix keras.device to call keras.backend.device_scope\r\n\r\n* setup.py add more dev requirements\r\n\r\n* training: Linting, fixes and docstrings\r\nsetup: Update requirements files\r\n\r\n* Bugfixes for video file alignments storage:\r\n - extract/convert: Load images with correct video extension\r\n - Manual tool: Cache thumbnails with correct extension\r\n - Mask tool + Preview tool:: Update legacy alignment keys for pre-video extension storage\r\n\r\n* Fix Keras 3 syntax\r\n\r\n* Fix LR Finder for Keras 3\r\n\r\n* lib: Linting, typing and minor clean up/fixes\r\n\r\n* extract: Fix device selection for plugins\r\n\r\n* Fix mixed precision switching for Keras 3\r\n\r\n* Add more optimizers + open up config setting\r\n\r\n* train: Remove updating FS1 weights to FS2 models\r\n\r\n* Alignments: Remove support for legacy .json files\r\n\r\n* train: Fix Keras imports in model plugins\r\n\r\n* Interim fix: Disable loading of legacy models\r\n\r\n* tools.model:\r\n - Remove TF Saved Format saving\r\n - Fix Backup/Restore + Nan-Scan\r\n\r\n* Update deprecated LeakyReLu arg\r\n\r\n* Fix inference model creation for Keras 3\r\n\r\n* Preview tool: Fix for Keras3\r\n\r\n* setup.py: Configure keras backend\r\nrequirements: Bump keras version\r\n\r\n* - Bump pytorch max version\r\n- Fix LossWrapper deserialization\r\n\r\n* bugfix: Lion optimizer\r\n\r\n* Bugfix: Select .keras file for models in GUI\r\n\r\n* bugfix: Model - prevent ConvAware from re-calculating on model load\r\n\r\n* train: Migration of FS2 models to FS3\r\n\r\n* Training: Default coverage to 100%\r\n\r\n* Bugfix: GUI Stats:\r\n - Fix 'learn mask' output tracking\r\n - Reset data cache if a model folder has been deleted between reading stats and starting training\r\n\r\n* bugfix: Gui stats. Reset session if log files have been replaced\r\n\r\n* numexpr: Default to use 2/3rds of available cores\r\n\r\n* Prevent model summaries from becoming truncated\r\n\r\n* fix mixed precision layer storage to be compatible with ConvNext\r\n\r\n* Bugfix: ClipV unnest model outputs\r\n\r\n* Bugfix: Create keras config folder if it does not exist\r\n\r\n* ClipV: Don't load weights by name to supress Keras warning message\r\n\r\n* clip: Supress weights mismatch warning\r\n\r\n* Bugfix: Mean output on FFL to prevent NaNs\r\n\r\n* Remove DirectML backend\r\n\r\n* setup: update for Linux\r\n\r\n* bugfix: Legacy model loading with unnested inbound nodes\r\n\r\n* Support Python up to 3.12\r\n\r\n* Lower max python version to 3.11\r\n\r\n* Bugfix: Porting Keras 2 models that use ClipV to Keras 3\r\n\r\n* Update setup for MacOS\r\n\r\n* Allow python up to 3.12 + Fix locale deprecation\r\n\r\n* GUI: Force line reading to UTF-8\r\n\r\n* Remove redundant Tensorflow references\r\n\r\n* Disable distribution + remove redumdant tf references\r\n\r\n* pytest fixes\r\n\r\n* Remove redundant code\r\n\r\n* pytest: Set KERAS_BACKEND EnvVar\r\n\r\n* lib.model.normalization: bugfixes\r\n\r\n* lib.model.loss.LaplacianPyramidLoss: Shape dtype bugfix\r\n\r\n* lib.model.layers: Minor bugfixes\r\n\r\n* scripts.conver.ConvertItem: default item bugfix\r\n\r\n* PyTest fixes\r\n\r\n* bugfix: Don't error on TestTensorBoardLogs teardown\r\n\r\n* bugfix: Mutable types in DataClass\r\n\r\n* github workflow: Fix macOS\r\n\r\n* setup.py bugfix: Don't error on cuda key lookup\r\n\r\n* Github workflow: All loss calculations on CPU\r\n\r\n* tests: Place ML ops explicitly on CPU\r\n\r\n* Legacy model loading: Fix TFLamdaOp scalar ops and DepthwiseConv2D\r\n\r\n* Add vertical offset option for training\r\n\r\n* Typing and linting\r\n\r\n* Github actions: Add more python versions\r\n\r\n* Add python version to workflow names\r\n\r\n* Github workflow: Exclude Python 3.12 for macOS\r\n\r\n* Implement custom training loop\r\n\r\n* Docs update and pin keras","shortMessageHtmlLink":"Faceswap 3 beta (#1392)"}},{"before":null,"after":"c8652ecaac56aae1bc328cf354c44853a2c17d7f","ref":"refs/heads/fs3","pushedAt":"2024-06-07T16:37:12.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"Training preview: Correctly display blur/kernel amount on mask","shortMessageHtmlLink":"Training preview: Correctly display blur/kernel amount on mask"}},{"before":"1f4fcff5dd14d2c2d22bb80c42f038dd9c81a27b","after":"c8652ecaac56aae1bc328cf354c44853a2c17d7f","ref":"refs/heads/master","pushedAt":"2024-06-02T15:25:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"Training preview: Correctly display blur/kernel amount on mask","shortMessageHtmlLink":"Training preview: Correctly display blur/kernel amount on mask"}},{"before":"1f4fcff5dd14d2c2d22bb80c42f038dd9c81a27b","after":"c8652ecaac56aae1bc328cf354c44853a2c17d7f","ref":"refs/heads/staging","pushedAt":"2024-06-02T15:25:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"Training preview: Correctly display blur/kernel amount on mask","shortMessageHtmlLink":"Training preview: Correctly display blur/kernel amount on mask"}},{"before":"8c3bc3945474fdabad54091fa534afea99753972","after":"1f4fcff5dd14d2c2d22bb80c42f038dd9c81a27b","ref":"refs/heads/master","pushedAt":"2024-05-19T10:05:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"bugfix: Alignments, prevent duplicate backup alignment file names","shortMessageHtmlLink":"bugfix: Alignments, prevent duplicate backup alignment file names"}},{"before":"8c3bc3945474fdabad54091fa534afea99753972","after":"1f4fcff5dd14d2c2d22bb80c42f038dd9c81a27b","ref":"refs/heads/staging","pushedAt":"2024-05-19T10:04:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"bugfix: Alignments, prevent duplicate backup alignment file names","shortMessageHtmlLink":"bugfix: Alignments, prevent duplicate backup alignment file names"}},{"before":"13dd5b3a90e597d6017e8abd8b96f5572317461b","after":"8c3bc3945474fdabad54091fa534afea99753972","ref":"refs/heads/master","pushedAt":"2024-05-10T20:48:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"bugfix: Patch writer. Correctly split frame number from the end of filenames","shortMessageHtmlLink":"bugfix: Patch writer. Correctly split frame number from the end of fi…"}},{"before":"13dd5b3a90e597d6017e8abd8b96f5572317461b","after":"8c3bc3945474fdabad54091fa534afea99753972","ref":"refs/heads/staging","pushedAt":"2024-05-10T20:48:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"bugfix: Patch writer. Correctly split frame number from the end of filenames","shortMessageHtmlLink":"bugfix: Patch writer. Correctly split frame number from the end of fi…"}},{"before":"0f947791f57db7e31d372ce2d098e5d7737cf1fe","after":"13dd5b3a90e597d6017e8abd8b96f5572317461b","ref":"refs/heads/master","pushedAt":"2024-04-26T16:40:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"bugfix: Alignments - correctly update keys for multiple underscores in the filename","shortMessageHtmlLink":"bugfix: Alignments - correctly update keys for multiple underscores i…"}},{"before":"0f947791f57db7e31d372ce2d098e5d7737cf1fe","after":"13dd5b3a90e597d6017e8abd8b96f5572317461b","ref":"refs/heads/staging","pushedAt":"2024-04-26T16:39:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"bugfix: Alignments - correctly update keys for multiple underscores in the filename","shortMessageHtmlLink":"bugfix: Alignments - correctly update keys for multiple underscores i…"}},{"before":"be42b040649327b0648b33465e9f156ca79d1371","after":"0f947791f57db7e31d372ce2d098e5d7737cf1fe","ref":"refs/heads/master","pushedAt":"2024-04-21T19:04:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"bugfix: Alignments remove version check for video file extension update\n- Typofixes","shortMessageHtmlLink":"bugfix: Alignments remove version check for video file extension update"}},{"before":"be42b040649327b0648b33465e9f156ca79d1371","after":"0f947791f57db7e31d372ce2d098e5d7737cf1fe","ref":"refs/heads/staging","pushedAt":"2024-04-21T19:03:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"bugfix: Alignments remove version check for video file extension update\n- Typofixes","shortMessageHtmlLink":"bugfix: Alignments remove version check for video file extension update"}},{"before":"696692dc0829818f28327685d446c930c549ed34","after":"be42b040649327b0648b33465e9f156ca79d1371","ref":"refs/heads/master","pushedAt":"2024-04-21T18:56:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"Bugfix: Alignment file video key lookup for very old alignment files","shortMessageHtmlLink":"Bugfix: Alignment file video key lookup for very old alignment files"}},{"before":"696692dc0829818f28327685d446c930c549ed34","after":"be42b040649327b0648b33465e9f156ca79d1371","ref":"refs/heads/staging","pushedAt":"2024-04-21T18:55:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"Bugfix: Alignment file video key lookup for very old alignment files","shortMessageHtmlLink":"Bugfix: Alignment file video key lookup for very old alignment files"}},{"before":"dce7d9830272a5a64ba35d8c1c99859a216436c8","after":"696692dc0829818f28327685d446c930c549ed34","ref":"refs/heads/master","pushedAt":"2024-04-21T15:22:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"Fixups\n - Deprecations - display correct long argument\n - Minor spelling + linting","shortMessageHtmlLink":"Fixups"}},{"before":"dce7d9830272a5a64ba35d8c1c99859a216436c8","after":"696692dc0829818f28327685d446c930c549ed34","ref":"refs/heads/staging","pushedAt":"2024-04-21T15:22:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"Fixups\n - Deprecations - display correct long argument\n - Minor spelling + linting","shortMessageHtmlLink":"Fixups"}},{"before":"96528ee3e83a4ba4c5917a314ead2b40b6c13fe6","after":"dce7d9830272a5a64ba35d8c1c99859a216436c8","ref":"refs/heads/master","pushedAt":"2024-04-19T12:56:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"lib.align: Split lib.align.alignments to smaller modules:\n - Move update objects to own module\n - Move Thumbnails to own module\n - docs update + linting/typing","shortMessageHtmlLink":"lib.align: Split lib.align.alignments to smaller modules:"}},{"before":"96528ee3e83a4ba4c5917a314ead2b40b6c13fe6","after":"dce7d9830272a5a64ba35d8c1c99859a216436c8","ref":"refs/heads/staging","pushedAt":"2024-04-19T12:45:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"lib.align: Split lib.align.alignments to smaller modules:\n - Move update objects to own module\n - Move Thumbnails to own module\n - docs update + linting/typing","shortMessageHtmlLink":"lib.align: Split lib.align.alignments to smaller modules:"}},{"before":"2bad105dc8500ad667d7ff311dcf6f9d396ed1c8","after":"96528ee3e83a4ba4c5917a314ead2b40b6c13fe6","ref":"refs/heads/master","pushedAt":"2024-04-19T11:28:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"lib.align.detected_face: Split Mask objects to own aligned_mask module","shortMessageHtmlLink":"lib.align.detected_face: Split Mask objects to own aligned_mask module"}},{"before":"2bad105dc8500ad667d7ff311dcf6f9d396ed1c8","after":"96528ee3e83a4ba4c5917a314ead2b40b6c13fe6","ref":"refs/heads/staging","pushedAt":"2024-04-19T11:25:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"lib.align.detected_face: Split Mask objects to own aligned_mask module","shortMessageHtmlLink":"lib.align.detected_face: Split Mask objects to own aligned_mask module"}},{"before":"d75898f718cc5719630cddbcde174ab11c01338b","after":"2bad105dc8500ad667d7ff311dcf6f9d396ed1c8","ref":"refs/heads/master","pushedAt":"2024-04-19T10:40:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"bugfix: Alignment tool, auto-detect alignments\n- Random linting and typing","shortMessageHtmlLink":"bugfix: Alignment tool, auto-detect alignments"}},{"before":"d75898f718cc5719630cddbcde174ab11c01338b","after":"2bad105dc8500ad667d7ff311dcf6f9d396ed1c8","ref":"refs/heads/staging","pushedAt":"2024-04-19T10:33:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"bugfix: Alignment tool, auto-detect alignments\n- Random linting and typing","shortMessageHtmlLink":"bugfix: Alignment tool, auto-detect alignments"}},{"before":"3f69d9feab47c23e93c222ff2a47697875a169f0","after":"d75898f718cc5719630cddbcde174ab11c01338b","ref":"refs/heads/master","pushedAt":"2024-04-18T11:45:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"Bugfixes for video file alignments storage:\n - extract/convert: Load images with correct video extension\n - Manual tool: Cache thumbnails with correct extension\n - Mask tool + Preview tool:: Update legacy alignment keys for pre-video extension storage","shortMessageHtmlLink":"Bugfixes for video file alignments storage:"}},{"before":"3f69d9feab47c23e93c222ff2a47697875a169f0","after":"d75898f718cc5719630cddbcde174ab11c01338b","ref":"refs/heads/staging","pushedAt":"2024-04-18T11:45:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"Bugfixes for video file alignments storage:\n - extract/convert: Load images with correct video extension\n - Manual tool: Cache thumbnails with correct extension\n - Mask tool + Preview tool:: Update legacy alignment keys for pre-video extension storage","shortMessageHtmlLink":"Bugfixes for video file alignments storage:"}},{"before":"ec2a95adf682ddfbc7cd374be4150ced32628b83","after":"3f69d9feab47c23e93c222ff2a47697875a169f0","ref":"refs/heads/master","pushedAt":"2024-04-17T13:16:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"manual tool: bugfx: don't error when getting mesh for non-existant face","shortMessageHtmlLink":"manual tool: bugfx: don't error when getting mesh for non-existant face"}},{"before":"ec2a95adf682ddfbc7cd374be4150ced32628b83","after":"3f69d9feab47c23e93c222ff2a47697875a169f0","ref":"refs/heads/staging","pushedAt":"2024-04-17T13:16:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"manual tool: bugfx: don't error when getting mesh for non-existant face","shortMessageHtmlLink":"manual tool: bugfx: don't error when getting mesh for non-existant face"}},{"before":"957734dfc0a0b81b8fc4a13935078bfbf1292560","after":"ec2a95adf682ddfbc7cd374be4150ced32628b83","ref":"refs/heads/master","pushedAt":"2024-04-17T13:02:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"tests: Fix alignment tool process_video test","shortMessageHtmlLink":"tests: Fix alignment tool process_video test"}},{"before":"957734dfc0a0b81b8fc4a13935078bfbf1292560","after":"ec2a95adf682ddfbc7cd374be4150ced32628b83","ref":"refs/heads/staging","pushedAt":"2024-04-17T13:02:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"tests: Fix alignment tool process_video test","shortMessageHtmlLink":"tests: Fix alignment tool process_video test"}},{"before":"3d5b962d29f2fd66b9bdae17ca06cc4a0d22653b","after":"957734dfc0a0b81b8fc4a13935078bfbf1292560","ref":"refs/heads/master","pushedAt":"2024-04-17T11:38:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"convert: Bugfix: Update legacy .png video alignments to include video file extension","shortMessageHtmlLink":"convert: Bugfix: Update legacy .png video alignments to include video…"}},{"before":"3d5b962d29f2fd66b9bdae17ca06cc4a0d22653b","after":"957734dfc0a0b81b8fc4a13935078bfbf1292560","ref":"refs/heads/staging","pushedAt":"2024-04-17T11:37:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"torzdf","name":null,"path":"/torzdf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/36920800?s=80&v=4"},"commit":{"message":"convert: Bugfix: Update legacy .png video alignments to include video file extension","shortMessageHtmlLink":"convert: Bugfix: Update legacy .png video alignments to include video…"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEX2v4RwA","startCursor":null,"endCursor":null}},"title":"Activity · deepfakes/faceswap"}