{"id":19918329,"url":"https://videoverses.github.io/videotuna/","last_synced_at":"2025-05-03T06:31:04.382Z","repository":{"id":260578379,"uuid":"881690199","full_name":"VideoVerses/VideoTuna","owner":"VideoVerses","description":"Let's finetune video generation models!","archived":false,"fork":false,"pushed_at":"2025-04-22T09:12:31.000Z","size":121016,"stargazers_count":447,"open_issues_count":8,"forks_count":22,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-04-22T09:32:28.913Z","etag":null,"topics":["ai","aigc","content-production","fine-tuning-diffusion","text-to-video","video-generation","visual-art"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/VideoVerses.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-11-01T03:15:30.000Z","updated_at":"2025-04-22T09:12:34.000Z","dependencies_parsed_at":null,"dependency_job_id":"2321f6e6-1783-474a-b643-3af4a2d7162c","html_url":"https://github.com/VideoVerses/VideoTuna","commit_stats":null,"previous_names":["videoverses/videotuna"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VideoVerses%2FVideoTuna","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VideoVerses%2FVideoTuna/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VideoVerses%2FVideoTuna/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VideoVerses%2FVideoTuna/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/VideoVerses","download_url":"https://codeload.github.com/VideoVerses/VideoTuna/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252154736,"owners_count":21702982,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","aigc","content-production","fine-tuning-diffusion","text-to-video","video-generation","visual-art"],"created_at":"2024-11-12T22:00:25.925Z","updated_at":"2025-05-03T06:30:59.367Z","avatar_url":"https://github.com/VideoVerses.png","language":"Python","funding_links":[],"categories":["Table of Contents \u003c!-- omit in toc --\u003e"],"sub_categories":["Open-source Toolboxes and Foundation Models"],"readme":"\u003cp align=\"center\" width=\"50%\"\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/38efb5bc-723e-4012-aebd-f55723c593fb\" alt=\"VideoTuna\" style=\"width: 75%; min-width: 450px; display: block; margin: auto; background-color: transparent;\"\u003e\n\u003c/p\u003e\n\n# VideoTuna\n\n![Version](https://img.shields.io/badge/version-0.1.0-blue) ![visitors](https://visitor-badge.laobi.icu/badge?page_id=VideoVerses.VideoTuna\u0026left_color=green\u0026right_color=red)  [![](https://dcbadge.limes.pink/api/server/AammaaR2?style=flat)](https://discord.gg/AammaaR2) \u003ca href='https://github.com/user-attachments/assets/a48d57a3-4d89-482c-8181-e0bce4f750fd'\u003e\u003cimg src='https://badges.aleen42.com/src/wechat.svg'\u003e\u003c/a\u003e [![Homepage](https://img.shields.io/badge/Homepage-VideoTuna-orange)](https://videoverses.github.io/videotuna/) [![GitHub](https://img.shields.io/github/stars/VideoVerses/VideoTuna?style=social)](https://github.com/VideoVerses/VideoTuna)\n\n\n🤗🤗🤗 Videotuna is a useful codebase for text-to-video applications.   \n🌟 VideoTuna is the first repo that integrates multiple AI video generation models for text-to-video, image-to-video, text-to-image generation (to the best of our knowledge).   \n🌟 VideoTuna is the first repo that provides comprehensive pipelines in video generation, including pre-training, continuous training, post-training (alignment), and fine-tuning (to the best of our knowledge).   \n🌟 The models of VideoTuna include both U-Net and DiT architectures for visual generation tasks.  \n🌟 A new 3D video VAE, and a controllable facial video generation model will be released soon.  \n\n\n## Features\n🌟 **All-in-one framework:** Inference and fine-tune up-to-date video generation models.  \n🌟 **Pre-training:** Build your own foundational text-to-video model.  \n🌟 **Continuous training:** Keep improving your model with new data.  \n🌟 **Domain-specific fine-tuning:** Adapt models to your specific scenario.  \n🌟 **Concept-specific fine-tuning:** Teach your models with unique concepts.  \n🌟 **Enhanced language understanding:** Improve model comprehension through continuous training.  \n🌟 **Post-processing:** Enhance the videos with video-to-video enhancement model.  \n🌟 **Post-training/Human preference alignment:** Post-training with RLHF for more attractive results.  \n\n\n## 🔆 Updates\n- [2024-11-01] We make the VideoTuna V0.1.0 public!\n\n\n## Demo\n### Model Inference and Comparison\n\n![combined_video_29_A_mountain_biker_racing_down_a_trail__dust_flying_behind](https://github.com/user-attachments/assets/f8249049-e0d8-47b9-a5b3-511994779cb1)\n![combined_video_22_Fireworks_exploding_over_a_historic_river__reflections_twinkling_in_the_water](https://github.com/user-attachments/assets/868c02fc-1e44-4636-b4e7-d9f2287bc89f)\n![combined_video_20_Waves_crashing_against_a_rocky_shore_under_a_stormy_sky__spray_misting_the_air](https://github.com/user-attachments/assets/ab04d3c6-2d5d-40e5-be64-5d8373f12402)\n![combined_video_17_A_butterfly_landing_delicately_on_a_wildflower_in_a_vibrant_meadow](https://github.com/user-attachments/assets/247212e5-0d5a-4f93-b47f-ee9c8ba945fb)\n![combined_video_12_Sunlight_piercing_through_a_dense_canopy_in_a_tropical_rainforest__illuminating_a_](https://github.com/user-attachments/assets/f66551ca-7d18-4c73-9656-3d2757ea4fb5)\n![combined_video_3_Divers_observing_a_group_of_tuna_as_they_navigate_through_a_vibrant_coral_reef_teem](https://github.com/user-attachments/assets/6c084832-5a0d-42ac-b7b8-1d914b8a35dc)\n\n\n\n\n\n### 3D Video VAE\nThe 3D video VAE from VideoTuna can accurately compress and reconstruct the input videos with fine details.\n\n\u003ctable class=\"center\"\u003e\n  \n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eGround Truth\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eReconstruction\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/0efcbf80-0074-4421-810f-79a1f1733ed3\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/0efcbf80-0074-4421-810f-79a1f1733ed3\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/4adf29f2-d413-49b1-bccc-48adfd64a4da\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/4adf29f2-d413-49b1-bccc-48adfd64a4da\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eGround Truth\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eReconstruction\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/508e2b10-487a-4850-a9d8-89fdbc13120a\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/508e2b10-487a-4850-a9d8-89fdbc13120a\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/28029b2c-4922-46ee-88d3-ff8d577d2525\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/28029b2c-4922-46ee-88d3-ff8d577d2525)\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eGround Truth\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eReconstruction\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/51471c42-8a38-4f02-b29b-e34a5279753a\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/51471c42-8a38-4f02-b29b-e34a5279753a\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/383f2120-5fed-4d9f-82d8-3de130d6bd65\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/383f2120-5fed-4d9f-82d8-3de130d6bd65\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eGround Truth\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eReconstruction\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/28892f4c-54cc-4cea-91e1-8fe6bbc7a1a4\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/28892f4c-54cc-4cea-91e1-8fe6bbc7a1a4\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/d56d34e4-c4d5-4ed2-b2c5-fa1596714492\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/d56d34e4-c4d5-4ed2-b2c5-fa1596714492\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eGround Truth\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eReconstruction\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/a0ffc2ca-c3e2-485f-b0ea-ead0d733cc8b\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/a0ffc2ca-c3e2-485f-b0ea-ead0d733cc8b\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/1465ac70-caa9-42c7-874b-b01e13a78efb\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/1465ac70-caa9-42c7-874b-b01e13a78efb\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eGround Truth\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eReconstruction\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/48e2eb49-265b-4eaf-b730-48fa4d7e5bfd\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/48e2eb49-265b-4eaf-b730-48fa4d7e5bfd\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/24c893c5-865e-4af4-b003-17bda2ba4f59\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/24c893c5-865e-4af4-b003-17bda2ba4f59\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eGround Truth\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\" width=\"320\"\u003eReconstruction\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/c18ed80f-3650-43a7-8438-7914de7e39ab\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/c18ed80f-3650-43a7-8438-7914de7e39ab\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/89d38004-021b-4a4d-ab83-5627474f8928\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/89d38004-021b-4a4d-ab83-5627474f8928\" width=\"320\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \n  \n\u003c/table\u003e\n\n### Face domain\n\n\u003ctable class=\"center\"\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/user-attachments/assets/a1562c70-d97c-4324-bb11-47db2b83f443\" width=\"240\" alt=\"Image 1\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/user-attachments/assets/3196810b-48d7-4024-b687-df2009774631\" width=\"240\" alt=\"Image 2\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/user-attachments/assets/4e873f4c-ca56-4549-aaa1-ef24032ae96b\" width=\"240\" alt=\"Image 3\"\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd style=\"text-align: center;\"\u003eInput 1\u003c/td\u003e\n    \u003ctd style=\"text-align: center;\"\u003eInput 2\u003c/td\u003e\n    \u003ctd style=\"text-align: center;\"\u003eInput 3\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003ctable class=\"center\"\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/972dde7a-fa88-479a-a47e-71d3650b1826\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/972dde7a-fa88-479a-a47e-71d3650b1826\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/3c216090-9ad1-4911-b990-179b45314d3e\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/3c216090-9ad1-4911-b990-179b45314d3e\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/2e2fb78e-2f39-47bd-acaf-3cfbce83b162\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/2e2fb78e-2f39-47bd-acaf-3cfbce83b162\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Anger\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Disgust\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Fear\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/f2f55021-4e0d-43a7-9f57-3c94b772f573\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/f2f55021-4e0d-43a7-9f57-3c94b772f573\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/600a2f6c-7a8f-4304-bdc3-5f0d65d4fb83\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/600a2f6c-7a8f-4304-bdc3-5f0d65d4fb83\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/8ad7c7d8-6492-4435-9436-168f90429be3\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/8ad7c7d8-6492-4435-9436-168f90429be3\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Happy\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Sad\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Surprise\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003ctable class=\"center\"\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/8ba84071-1978-4245-84b3-3a6fc3c9fa5a\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/8ba84071-1978-4245-84b3-3a6fc3c9fa5a\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/d180c358-bdff-40b4-aa5a-fa4ec73d80b6\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/d180c358-bdff-40b4-aa5a-fa4ec73d80b6\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/37004c20-3d0d-4cff-8b4a-f8a4d184de51\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/37004c20-3d0d-4cff-8b4a-f8a4d184de51\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Anger\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Disgust\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Fear\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/025fe090-7d53-4a12-9498-1c814a0ee768\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/025fe090-7d53-4a12-9498-1c814a0ee768\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/e8ddf3d1-57ea-4545-a004-66554c19f27b\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/e8ddf3d1-57ea-4545-a004-66554c19f27b\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/519b3c87-baa6-408b-b3a5-a95eece9e19e\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/519b3c87-baa6-408b-b3a5-a95eece9e19e\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Happy\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Sad\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Surprise\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003ctable class=\"center\"\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/f55a2b6c-ce10-4716-a001-f747c0da17a4\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/f55a2b6c-ce10-4716-a001-f747c0da17a4\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/bb3620af-322d-43bc-9060-c7ce9fc32672\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/bb3620af-322d-43bc-9060-c7ce9fc32672\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/46a39738-89c2-43fe-9f98-f0ac0d26e39b\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/46a39738-89c2-43fe-9f98-f0ac0d26e39b\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Anger\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Disgust\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Fear\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/2d3d6e0d-2034-4341-8ca3-42e0cda2704f\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/2d3d6e0d-2034-4341-8ca3-42e0cda2704f\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/331f23e1-f441-46f7-98a6-b25a684780f3\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/331f23e1-f441-46f7-98a6-b25a684780f3\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/542f8535-634a-4f82-ae2a-39f988c6bc55\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/542f8535-634a-4f82-ae2a-39f988c6bc55\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Happy\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Sad\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eEmotion: Surprise\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\n### Storytelling\n\n\u003ctable class=\"center\"\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/27aee539-f2bf-467a-8da5-22f506713aa0\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/27aee539-f2bf-467a-8da5-22f506713aa0\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/fef5b694-6e1f-42f6-a5a1-7f0b856f3678\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/fef5b694-6e1f-42f6-a5a1-7f0b856f3678\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/91408eb8-264d-4d3f-9098-0bfe06022467\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/91408eb8-264d-4d3f-9098-0bfe06022467\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/0b822858-da6f-4e6f-82dd-5f243e2feccc\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/0b822858-da6f-4e6f-82dd-5f243e2feccc\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/75f69de2-9e5c-48d7-ae55-b28084772836\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/75f69de2-9e5c-48d7-ae55-b28084772836\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\"\u003eThe picture shows a cozy room with a little girl telling her travel story to her teddybear beside the bed.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eAs night falls, teddybear sits by the window, his eyes sparkling with longing for the distant place\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eTeddybear was in a corner of the room, making a small backpack out of old cloth strips, with a map, a compass and dry food next to it.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eThe first rays of sunlight in the morning came through the window, and teddybear quietly opened the door and embarked on his adventure.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eIn the forest, the sun shines through the treetops, and teddybear moves among various animals and communicates with them.\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/3ae06dbf-f41f-4e7f-b384-fca3abf2c0aa\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/3ae06dbf-f41f-4e7f-b384-fca3abf2c0aa\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/09a2fdb9-3e84-40a5-a729-075876b10412\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/09a2fdb9-3e84-40a5-a729-075876b10412\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/a382aa30-895d-4476-8f86-b668fe153c16\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/a382aa30-895d-4476-8f86-b668fe153c16\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/c906b20e-1576-4a96-9c77-b67a940dcce8\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/c906b20e-1576-4a96-9c77-b67a940dcce8\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/04f553d2-8ac5-4085-8c1b-59bddf9deb41\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/04f553d2-8ac5-4085-8c1b-59bddf9deb41\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\"\u003eTeddybear leaves his mark on the edge of a clear lake, surrounded by exotic flowers, and the picture is full of mystery and exploration.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eTeddybear climbs the rugged mountain road, the weather is changeable, but he is determined.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eThe picture switches to the top of the mountain, where teddybear stands in the glow of the sunrise, with a magnificent mountain view in the background.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eOn the way home, teddybear helps a wounded bird, the picture is warm and touching.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eTeddybear sits by the little girl's bed and tells her his adventure story, and the little girl is fascinated.\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\n\u003ctable class=\"center\"\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/14c5f6f1-7830-46fc-9ebd-8611f339d8ab\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/14c5f6f1-7830-46fc-9ebd-8611f339d8ab\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/705eb5c4-b084-4752-a47b-ab20d206b9ee\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/705eb5c4-b084-4752-a47b-ab20d206b9ee\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/39a814b6-8692-41f5-819d-eecfd6085b03\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/39a814b6-8692-41f5-819d-eecfd6085b03\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/e2b7297d-d0bb-482e-9c16-f01f9a56fbb0\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/e2b7297d-d0bb-482e-9c16-f01f9a56fbb0\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/3afc9aa8-92f5-4e27-bfed-950300645748\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/3afc9aa8-92f5-4e27-bfed-950300645748\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\"\u003eThe scene shows a peaceful village, with moonlight shining on the roofs and streets, creating a peaceful atmosphere.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003ecat sits by the window, her eyes twinkling in the night, reflecting her special connection with the moon and stars.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eVillagers gather in the center of the village for the annual Moon Festival celebration, with lanterns and colored lights adorning the night sky.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003ecat feels the call of the moon, and her beard trembles with the excitement in her heart.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003ecat quietly leaves her home in the night and embarks on a path illuminated by the silver moonlight.\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/b055930e-4f97-4872-bc07-2e9cb5641d7d\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/b055930e-4f97-4872-bc07-2e9cb5641d7d\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/ece35515-295d-4655-a5c5-cca95fd11e92\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/ece35515-295d-4655-a5c5-cca95fd11e92\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/804e32f1-75ae-4a0b-b3c0-1d13c6e2d987\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/804e32f1-75ae-4a0b-b3c0-1d13c6e2d987\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/e09d8134-7991-4585-a09a-b00283ab6a56\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/e09d8134-7991-4585-a09a-b00283ab6a56\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/user-attachments/assets/4c722b97-79d9-4281-8451-b31eb3393c3a\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/4c722b97-79d9-4281-8451-b31eb3393c3a\" width=\"240\"\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd style=\"text-align:center;\"\u003eA group of forest elves dance around glowing mushrooms, their costumes and movements full of magic and vitality.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003ecat joins the celebration and dances with the elves, the picture is full of joy and freedom.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003eA wise old owl reveals the secret power of the moon to cat and the light of the moon in the picture becomes brighter.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003ecat closes her eyes in the moonlight, puts her hands together, and makes a wish, surrounded by the light of stars and the moon.\u003c/td\u003e\n    \u003ctd style=\"text-align:center;\"\u003ecat feels the surge of power, and her eyes become more determined.\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\n\n## ⏰ TODOs\n- [ ] More demo and applications\n- [ ] More functionalities such as control modules. (Suggestions are welcome!)\n\n\n## 🔆 Information\n\n### Code Structure\n```\nVideoTuna/\n    ├── assets       # put images for readme\n    ├── checkpoints  # put model checkpoints here\n    ├── configs      # model and experimental configs\n    ├── data         # data processing scripts and dataset files\n    ├── docs         # documentations\n    ├── eval         # evaluation scripts\n    ├── inputs       # input examples for testing \n    ├── scripts      # train and inference python scripts\n    ├── shsripts     # train and inference shell scripts\n    ├── src          # model-related source code\n    ├── tests        # testing scripts\n    ├── tools        # some tool scripts\n```\n\n\n### Supported Models\n\n|T2V-Models|HxWxL|Checkpoints|\n|:---------|:---------|:--------|\n|CogVideoX-2B|720x480, 6s|[Hugging Face](https://huggingface.co/THUDM/CogVideoX-2b)\n|CogVideoX-5B|720x480, 6s|[Hugging Face](https://huggingface.co/THUDM/CogVideoX-5b)\n|Open-Sora 1.0|512×512x16|[Hugging Face](https://huggingface.co/hpcai-tech/Open-Sora/blob/main/OpenSora-v1-HQ-16x512x512.pth)\n|Open-Sora 1.0|256×256x16|[Hugging Face](https://huggingface.co/hpcai-tech/Open-Sora/blob/main/OpenSora-v1-HQ-16x256x256.pth)\n|Open-Sora 1.0|256×256x16|[Hugging Face](https://huggingface.co/hpcai-tech/Open-Sora/blob/main/OpenSora-v1-16x256x256.pth)\n|VideoCrafter2|320x512x16|[Hugging Face](https://huggingface.co/VideoCrafter/VideoCrafter2/blob/main/model.ckpt)\n|VideoCrafter1|576x1024x16|[Hugging Face](https://huggingface.co/VideoCrafter/Text2Video-1024/blob/main/model.ckpt)\n|VideoCrafter1|320x512x16|[Hugging Face](https://huggingface.co/VideoCrafter/Text2Video-512/blob/main/model.ckpt)\n\n|I2V-Models|HxWxL|Checkpoints|\n|:---------|:---------|:--------|\n|CogVideoX-5B-I2V|720x480, 6s|[Hugging Face](https://huggingface.co/THUDM/CogVideoX-5b-I2V)\n|DynamiCrafter|576x1024x16|[Hugging Face](https://huggingface.co/Doubiiu/DynamiCrafter_1024/blob/main/model.ckpt)|\n|VideoCrafter1|320x512x16|[Hugging Face](https://huggingface.co/VideoCrafter/Image2Video-512/blob/main/model.ckpt)|\n\n* Note: H: height; W: width; L: length\n\u003c!-- |Open-Sora 1.2|240p to 720p, 2~16s|[STDIT](https://huggingface.co/hpcai-tech/OpenSora-STDiT-v3), [VAE](https://huggingface.co/hpcai-tech/OpenSora-VAE-v1.2) --\u003e\n\u003c!-- |Open-Sora 1.1|144p \u0026 240p \u0026 480p, 0~15s|[Stage 2](https://huggingface.co/hpcai-tech/OpenSora-STDiT-v2-stage2) --\u003e\n\u003c!-- |Open-Sora 1.1|144p to 720p, 0~15s|[Stage 3](https://huggingface.co/hpcai-tech/OpenSora-STDiT-v2-stage3) --\u003e\n\nPlease check [docs/CHECKPOINTS.md](docs/CHECKPOINTS.md) to download all the model checkpoints.\n\n[Title](docs/CHECKPOINTS.md)## 🔆 Get started\n\n### 1.Prepare environment\n``` shell\nconda create --name videotuna python=3.10 -y\nconda activate videotuna\npip install -U poetry pip\npoetry config virtualenvs.create false\npoetry install\npip install optimum-quanto==0.2.1\npip install -r requirements.txt\ngit clone https://github.com/JingyeChen/SwissArmyTransformer\npip install -e SwissArmyTransformer/\nrm -rf SwissArmyTransformer\ngit clone https://github.com/tgxs002/HPSv2.git\ncd ./HPSv2\npip install -e .\ncd ..\n```\n\n### 2.Prepare checkpoints\n\nPlease follow [docs/CHECKPOINTS.md](https://github.com/VideoVerses/VideoTuna/blob/main/docs/CHECKPOINTS.md) to download model checkpoints.  \nAfter downloading, the model checkpoints should be placed as [Checkpoint Structure](https://github.com/VideoVerses/VideoTuna/blob/main/docs/CHECKPOINTS.md#checkpoint-orgnization-structure).\n\n### 3.Inference state-of-the-art T2V/I2V/T2I models\n\n- Inference a set of text-to-video models **in one command**: `bash tools/video_comparison/compare.sh`\n  - The default mode is to run all models, e.g., `inference_methods=\"videocrafter2;dynamicrafter;cogvideo—t2v;cogvideo—i2v;opensora\"`\n  - If the users want to inference specific models, modify the `inference_methods` variable in `compare.sh`, and list the desired models separated by semicolons.\n  - Also specify the input directory via the `input_dir` variable. This directory should contain a `prompts.txt` file, where each line corresponds to a prompt for the video generation. The default `input_dir` is `inputs/t2v`\n- Inference a set of image-to-video models **in one command**: `bash tools/video_comparison/compare_i2v.sh`\n\n\n\n\n\u003c!-- |Task|Commands|\n|:---------|:---------|\n|T2V|`bash tools/video_comparison/compare.sh`|\n|I2V|`TODO`|\n --\u003e\n\n\n- Inference a specific model, run the corresponding commands as follows:\n\nTask|Models|Commands|\n|:---------|:---------|:---------|\n|T2V|CogvideoX|`bash shscripts/inference_cogVideo_diffusers.sh`|\n|T2V|Open Sora V1.0|`bash shscripts/inference_opensora_v10_16x256x256.sh`|\n|T2V|VideoCrafter-V2-320x512|`bash shscripts/inference_vc2_t2v_320x512.sh`|\n|T2V|VideoCrafter-V1-576x1024|`bash shscripts/inference_vc1_t2v_576x1024.sh`|\n|I2V|DynamiCrafter|`bash shscripts/inference_dc_i2v_576x1024.sh`|\n|I2V|VideoCrafter|`bash shscripts/inference_vc1_i2v_320x512.sh`|\n|T2I|Flux|`bash shscripts/inference_flux.sh`|\n\n\n### 4. Finetune T2V models\n#### (1). Prepare Dataset\nPlease follow the [docs/datasets.md](docs/datasets.md) to try provided toydataset or build your own datasets.\n\n#### (2). Finetune\n#### Open-Sora finetuning\nWe support open-sora finetuning, you can simply run the following commands:\n``` shell\n# finetune the Open-Sora v1.0\nbash shscripts/train_opensorav10.sh\n```\n\n#### Lora finetuning\n\nWe support lora finetuning to make the model to learn new concepts/characters/styles.   \n- Example config file: `configs/001_videocrafter2/vc2_t2v_lora.yaml`  \n- Training lora based on VideoCrafter2: `bash shscripts/train_videocrafter_lora.sh`  \n- Inference the trained models: `bash shscripts/inference_vc2_t2v_320x512_lora.sh`   \n\n\u003c!-- Please check [configs/train/003_vc2_lora_ft/README.md](configs/train/003_vc2_lora_ft/README.md) for details.    --\u003e\n\u003c!-- \n\n(1) Prepare data\n\n\n(2) Finetune  \n```\nbash configs/train/000_videocrafter2ft/run.sh\n``` --\u003e\n\n#### Finetuning for enhanced langugage understanding\n\n\n### 5. Evaluation\nWe support VBench evaluation to evaluate the T2V generation performance. \nPlease check [eval/README.md](docs/evaluation.md) for details.\n\n\u003c!-- ### 6. Alignment\nWe support video alignment post-training to align human perference for video diffusion models. Please check [configs/train/004_rlhf_vc2/README.md](configs/train/004_rlhf_vc2/README.md) for details. --\u003e\n\n\n## Acknowledgement\nWe thank the following repos for sharing their awesome models and codes!\n* [VideoCrafter2](https://github.com/AILab-CVC/VideoCrafter): Overcoming Data Limitations for High-Quality Video Diffusion Models\n* [VideoCrafter1](https://github.com/AILab-CVC/VideoCrafter): Open Diffusion Models for High-Quality Video Generation\n* [DynamiCrafter](https://github.com/Doubiiu/DynamiCrafter): Animating Open-domain Images with Video Diffusion Priors\n* [Open-Sora](https://github.com/hpcaitech/Open-Sora): Democratizing Efficient Video Production for All\n* [CogVideoX](https://github.com/THUDM/CogVideo): Text-to-Video Diffusion Models with An Expert Transformer\n* [VADER](https://github.com/mihirp1998/VADER): Video Diffusion Alignment via Reward Gradients\n* [VBench](https://github.com/Vchitect/VBench): Comprehensive Benchmark Suite for Video Generative Models\n* [Flux](https://github.com/black-forest-labs/flux): Text-to-image models from Black Forest Labs.\n* [SimpleTuner](https://github.com/bghira/SimpleTuner): A fine-tuning kit for text-to-image generation.\n\n\n\n\n## Some Resources\n* [LLMs-Meet-MM-Generation](https://github.com/YingqingHe/Awesome-LLMs-meet-Multimodal-Generation): A paper collection of utilizing LLMs for multimodal generation (image, video, 3D and audio).\n* [MMTrail](https://github.com/litwellchi/MMTrail): A multimodal trailer video dataset with language and music descriptions.\n* [Seeing-and-Hearing](https://github.com/yzxing87/Seeing-and-Hearing): A versatile framework for Joint VA generation, V2A, A2V, and I2A.\n* [Self-Cascade](https://github.com/GuoLanqing/Self-Cascade): A Self-Cascade model for higher-resolution image and video generation.\n* [ScaleCrafter](https://github.com/YingqingHe/ScaleCrafter) and [HiPrompt](https://liuxinyv.github.io/HiPrompt/): Free method for higher-resolution image and video generation.\n* [FreeTraj](https://github.com/arthur-qiu/FreeTraj) and [FreeNoise](https://github.com/AILab-CVC/FreeNoise): Free method for video trajectory control and longer-video generation.\n* [Follow-Your-Emoji](https://github.com/mayuelala/FollowYourEmoji), [Follow-Your-Click](https://github.com/mayuelala/FollowYourClick), and [Follow-Your-Pose](https://follow-your-pose.github.io/): Follow family for controllable video generation.\n* [Animate-A-Story](https://github.com/AILab-CVC/Animate-A-Story): A framework for storytelling video generation.\n* [LVDM](https://github.com/YingqingHe/LVDM): Latent Video Diffusion Model for long video generation and text-to-video generation.\n\n\n\n## 🍻 Contributors\n\n\u003ca href=\"https://github.com/VideoVerses/VideoTuna/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=VideoVerses/VideoTuna\" /\u003e\n\u003c/a\u003e\n\n## 📋 License\nPlease follow [CC-BY-NC-ND](./LICENSE). If you want a license authorization, please contact yhebm@connect.ust.hk and yxingag@connect.ust.hk.\n\n## 😊 Citation\n```\nTo be updated...\n```\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=VideoVerses/VideoTuna\u0026type=Date)](https://star-history.com/#VideoVerses/VideoTuna\u0026Date)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/videoverses.github.io%2Fvideotuna%2F","html_url":"https://awesome.ecosyste.ms/projects/videoverses.github.io%2Fvideotuna%2F","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/videoverses.github.io%2Fvideotuna%2F/lists"}