{"id":15136575,"url":"https://github.com/marble879/simpletranscribe-rs","last_synced_at":"2025-04-22T18:44:55.161Z","repository":{"id":215519881,"uuid":"736252907","full_name":"Marble879/SimpleTranscribe-rs","owner":"Marble879","description":"Simple Transcription library written in Rust","archived":false,"fork":false,"pushed_at":"2025-03-10T13:21:10.000Z","size":2573,"stargazers_count":36,"open_issues_count":6,"forks_count":5,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-29T17:41:26.959Z","etag":null,"topics":["rust","transcription","whisper-ai"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/Marble879.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}},"created_at":"2023-12-27T11:54:10.000Z","updated_at":"2025-03-29T15:06:19.000Z","dependencies_parsed_at":"2025-01-15T13:29:37.045Z","dependency_job_id":null,"html_url":"https://github.com/Marble879/SimpleTranscribe-rs","commit_stats":{"total_commits":44,"total_committers":2,"mean_commits":22.0,"dds":"0.18181818181818177","last_synced_commit":"5a2389d525006855590b0459600da009e17878c2"},"previous_names":["marble879/simpletranscribe-rs"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marble879%2FSimpleTranscribe-rs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marble879%2FSimpleTranscribe-rs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marble879%2FSimpleTranscribe-rs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marble879%2FSimpleTranscribe-rs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Marble879","download_url":"https://codeload.github.com/Marble879/SimpleTranscribe-rs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250300388,"owners_count":21407904,"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":["rust","transcription","whisper-ai"],"created_at":"2024-09-26T06:23:22.484Z","updated_at":"2025-04-22T18:44:55.122Z","avatar_url":"https://github.com/Marble879.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SimpleTranscribe-rs 🔈 📖\n\nAn audio to text transcription library written in rust that utilizes [Whisper-rs](https://github.com/tazz4843/whisper-rs) bindings.\n\n\u003cimg src=\"readme_logo.jpg\" width=\"400\" height=\"400\"\u003e\n\n## What is SimpleTranscribe-rs?\n\nSimpleTranscribe-rs is a library written in Rust with the goal of making audio to text transcription simple for developers. SimpleTranscribe-rs handles different aspects of setting up audio to text transcription, such as automatically downloading required whisper text-to-speech models. The aim is for developers to be able to incorporate transcription in their projects quickly 🌩️\n\n## Features\n\n- Automatically downloads Models that have no already been installed. Supported models:\n\n  - Tiny\n  - Base\n  - Small\n  - Medium\n  - Large\n\n- Transcribes audio from different file types such as:\n  - mp3\n  - wav\n\n## Getting started\n\nTo use SimpleTranscribe-rs, simply add it to your project's `cargo.toml`:\n\n```\n[dependencies]\nsimple_transcribe_rs = \"1.0.1\"\ntokio = { version = \"1.35.1\", features = [\"full\"] }\n```\n\nDue to the nature of downloading models, it is necessary to await instantiations of the model handler. Therefore an async runtime is required.\n[Tokio](https://github.com/tokio-rs/tokio) is what is used internally in the library and has also been tested with, and therefore is the recommended runtime for this library.\n\n## Usage\n\nTo use SimpleTranscribe-rs, the model handler first needs to be used to setup and prepare the language model. Afterwards, the transcriber can be used to\nconvert audio files to text. The following snippet depicts an example of this:\n\n```rust\nuse simple_transcribe_rs::model_handler;\nuse simple_transcribe_rs::transcriber;\n\n#[tokio::main]\nasync fn main() {\n    let m = model_handler::ModelHandler::new(\"tiny\", \"models/\").await;\n    let trans = transcriber::Transcriber::new(m);\n    let result = trans.transcribe(\"src/test_data/test.mp3\", None).unwrap();\n    let text = result.get_text();\n    let start = result.get_start_timestamp();\n    let end = result.get_end_timestamp();\n    println!(\"start[{}]-end[{}] {}\", start, end, text);\n}\n```\n\nThe snippet can be run via:\n`cargo run --example usage_example`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarble879%2Fsimpletranscribe-rs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarble879%2Fsimpletranscribe-rs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarble879%2Fsimpletranscribe-rs/lists"}