{"id":26436517,"url":"https://github.com/zygotecode/vadsharp","last_synced_at":"2026-02-10T02:04:11.955Z","repository":{"id":275657576,"uuid":"926775168","full_name":"ZygoteCode/VadSharp","owner":"ZygoteCode","description":"Enterprise VAD (Voice Activity Detection) in C#.NET (.NET 6.0+) with Microsoft.ML.Net, ONNXRuntime and DirectML. The easiest, efficient, and performant Silero VAD implementation! Always open for PRs.","archived":false,"fork":false,"pushed_at":"2025-04-20T20:08:40.000Z","size":363,"stargazers_count":12,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-20T21:23:31.576Z","etag":null,"topics":["csharp","dotnet","onnx","onnx-runtime","onnxruntime","silero-vad","speech","speech-processing","vad","voice-activity-detection","voice-control","voice-recognition"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ZygoteCode.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":"2025-02-03T20:47:26.000Z","updated_at":"2025-04-20T20:08:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"107d856f-2527-4a07-832e-96f7cffe7528","html_url":"https://github.com/ZygoteCode/VadSharp","commit_stats":null,"previous_names":["gabryb03/vadsharp","zygotecode/vadsharp"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/ZygoteCode/VadSharp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZygoteCode%2FVadSharp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZygoteCode%2FVadSharp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZygoteCode%2FVadSharp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZygoteCode%2FVadSharp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ZygoteCode","download_url":"https://codeload.github.com/ZygoteCode/VadSharp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ZygoteCode%2FVadSharp/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263375436,"owners_count":23457318,"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":["csharp","dotnet","onnx","onnx-runtime","onnxruntime","silero-vad","speech","speech-processing","vad","voice-activity-detection","voice-control","voice-recognition"],"created_at":"2025-03-18T08:17:31.044Z","updated_at":"2026-02-10T02:04:11.919Z","avatar_url":"https://github.com/ZygoteCode.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# VadSharp - Voice Activity Detection in C#.NET\n\n![VadSharp](https://img.shields.io/badge/.NET-9.0-blue.svg) ![ML.NET](https://img.shields.io/badge/ML.NET-Supported-brightgreen.svg) ![ONNXRuntime](https://img.shields.io/badge/ONNXRuntime-Supported-blue.svg) ![DirectML](https://img.shields.io/badge/DirectML-Supported-orange.svg) ![PRs Welcome](https://img.shields.io/badge/PRs-Welcome-brightgreen.svg)\n\n## 🚀 The Best VAD Implementation in C#\n\nVadSharp is the **first and most efficient** implementation of **[Silero VAD](https://github.com/snakers4/silero-vad/) in C#**, supporting the latest **V5 model** with all its advanced features. It is faster than the original Python version and runs on **any GPU (NVIDIA, AMD, Intel) and CPU** with **ONNXRuntime and DirectML**.\n\nThis project represents **my first significant contribution to the world of artificial intelligence in terms of development**, and I sincerely hope that users will appreciate this effort. Your support and feedback are highly valued! 🙌\n\n---\n\n## 🛠 Features \u0026 Benefits\n\n✅ **Stellar Accuracy** - Excellent results in speech detection tasks.\n\n⚡ **Fast** - Processes 30ms+ audio chunks in under **1ms** on a single CPU thread, even faster with batching or GPU acceleration.\n\n📦 **Lightweight** - Model size is only **~2MB**.\n\n🌎 **General** - Trained on **6,000+ languages**, handling various background noises and recording conditions.\n\n🎚 **Flexible Sampling Rate** - Supports **8000 Hz and 16000 Hz**.\n\n🌍 **Highly Portable** - Runs anywhere **ONNX and ML.NET** are available.\n\n🔓 **No Strings Attached** - **MIT License**, no telemetry, no registration, no vendor lock-in.\n\n---\n\n## 📌 Installation\n\n```sh\n# Install ONNXRuntime and ML.NET\nInstall-Package Microsoft.ML.OnnxRuntime\nInstall-Package Microsoft.ML\nInstall-Package NAudio\n```\n\n---\n\n## 🧑‍💻 Example Usage\n\n```csharp\nusing System.Text;\nusing VadSharp;\n\npublic class Program\n{\n    private const int SAMPLE_RATE = 16000;\n    private const float THRESHOLD = 0.5f;\n    private const int MIN_SPEECH_DURATION_MS = 250;\n    private const float MAX_SPEECH_DURATION_SECONDS = float.PositiveInfinity;\n    private const int MIN_SILENCE_DURATION_MS = 100;\n    private const int SPEECH_PAD_MS = 30;\n\n    public static void Main()\n    {\n        Console.Title = \"VadSharpExample | Made by https://github.com/GabryB03/\";\n\n        string modelPath = Path.Combine(AppContext.BaseDirectory, \"resources\", \"silero_vad.onnx\");\n        string audioPath = Path.Combine(AppContext.BaseDirectory, \"resources\", \"test.wav\");\n\n        if (!File.Exists(modelPath))\n        {\n            Console.WriteLine($\"Model file not found: {modelPath}\");\n            return;\n        }\n\n        if (!File.Exists(audioPath))\n        {\n            Console.WriteLine($\"Audio file not found: {audioPath}\");\n            return;\n        }\n\n        VadDetector vadDetector = new VadDetector(modelPath, THRESHOLD, SAMPLE_RATE, MIN_SPEECH_DURATION_MS, MAX_SPEECH_DURATION_SECONDS, MIN_SILENCE_DURATION_MS, SPEECH_PAD_MS);\n        List\u003cVadSpeechSegment\u003e speechTimeList = vadDetector.GetSpeechSegmentList(audioPath);\n        StringBuilder sb = new StringBuilder();\n\n        foreach (VadSpeechSegment speechSegment in speechTimeList)\n        {\n            sb.AppendLine($\"[-] Start second: {speechSegment.StartSecond.ToString().Replace(\",\", \".\")}s, end second: {speechSegment.EndSecond.ToString().Replace(\",\", \".\")}s\");\n        }\n\n        Console.WriteLine(sb.ToString());\n        Console.ReadLine();\n    }\n}\n```\n\n---\n\n## 🌟 Contributing\n\nContributions are welcome there! 🚀 Follow these steps to create a **Pull Request (PR):**\n\n1. **Fork the repository**\n2. **Clone your fork**:\n   ```sh\n   git clone https://github.com/your-username/VadSharp.git\n   ```\n3. **Create a new branch**:\n   ```sh\n   git checkout -b feature-branch\n   ```\n4. **Make your changes \u0026 commit**:\n   ```sh\n   git add .\n   git commit -m \"Your awesome feature!\"\n   ```\n5. **Push the branch \u0026 create a PR**:\n   ```sh\n   git push origin feature-branch\n   ```\n6. **Open a PR on GitHub**\n\n---\n\n## 🐛 Issues \u0026 Bug Reports\n\nIf you find a bug or have a feature request, please **open an issue**:\n\n1. Go to the [Issues Tab](https://github.com/GabryB03/VadSharp/issues).\n2. Click on **\"New Issue\"**.\n3. Provide a **clear and concise** description of the problem.\n4. If possible, include **screenshots and logs**.\n\nI will review and respond ASAP! 🚀\n\n---\n\n## ✨ Credits\n\nAll of my credits go to the original inventor of the [Silero VAD](https://github.com/snakers4/silero-vad/) project,\nwhich has worked hard to the architecture of the algorithm and trained the models!\n\n## 📜 License\n\nVadSharp is licensed under the **MIT License**. Feel free to use, modify, and distribute it as you like!\n\n📌 **Made with ❤️ by [GabryB03](https://github.com/GabryB03/)**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzygotecode%2Fvadsharp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzygotecode%2Fvadsharp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzygotecode%2Fvadsharp/lists"}