{"id":23111742,"url":"https://github.com/danielrs/earwax","last_synced_at":"2025-10-17T23:05:38.793Z","repository":{"id":57622760,"uuid":"87139147","full_name":"danielrs/earwax","owner":"danielrs","description":"Audio decoding library for Rust based on ffmpeg","archived":false,"fork":false,"pushed_at":"2017-08-24T06:51:10.000Z","size":3947,"stargazers_count":7,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-14T01:30:20.571Z","etag":null,"topics":["audio-decoder","ffmpeg","library","rust"],"latest_commit_sha":null,"homepage":null,"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/danielrs.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}},"created_at":"2017-04-04T02:04:38.000Z","updated_at":"2020-10-25T21:46:51.000Z","dependencies_parsed_at":"2022-08-26T23:51:11.209Z","dependency_job_id":null,"html_url":"https://github.com/danielrs/earwax","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danielrs%2Fearwax","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danielrs%2Fearwax/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danielrs%2Fearwax/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danielrs%2Fearwax/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/danielrs","download_url":"https://codeload.github.com/danielrs/earwax/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234808944,"owners_count":18890088,"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":["audio-decoder","ffmpeg","library","rust"],"created_at":"2024-12-17T02:10:12.789Z","updated_at":"2025-10-01T01:31:17.884Z","avatar_url":"https://github.com/danielrs.png","language":"C","readme":"[crates.io]: https://crates.io/crates/earwax\n[docs.rs]: https://docs.rs/earwax\n\n[![crates.io](https://img.shields.io/crates/v/earwax.svg)][crates.io]\n[![docs.rs](https://docs.rs/earwax/badge.svg)][docs.rs]\n\nAudio decoding library based on ffmpeg 2.8. The purpose of this library is\nto provide a safe and simple way of converting any audio input to raw PCM data.\n\n## Dependencies\n\nFrom ffmpeg 2.8, the required libraries are `libavcodec`, `libavformat`, and `libavdevice`.\n\n## Usage\n\n```rust\nextern crate earwax;\n\nuse earwax::Earwax;\n\nfn main() {\n    let mut earwax = Earwax::new(\"[URL]\").unwrap();\n    while let Some(chunk) = earwax.spit() {\n        // Do something with chunk.data, an array of raw pcm data.\n        println!(\"Time: {}\", chunk.time.seconds()); // or chunk.time.pts().\n    }\n}\n```\n\nCheck the [documentation][docs.rs] for a detailed reference.\n\n## TODO\n\n* Add error handling to the `spit` function.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanielrs%2Fearwax","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdanielrs%2Fearwax","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanielrs%2Fearwax/lists"}