{"id":13408371,"url":"https://github.com/mewkiz/flac","last_synced_at":"2025-03-14T13:30:57.251Z","repository":{"id":5314245,"uuid":"6496448","full_name":"mewkiz/flac","owner":"mewkiz","description":"Package flac provides access to FLAC (Free Lossless Audio Codec) streams.","archived":false,"fork":false,"pushed_at":"2024-08-11T19:51:50.000Z","size":6085,"stargazers_count":309,"open_issues_count":7,"forks_count":43,"subscribers_count":13,"default_branch":"master","last_synced_at":"2024-08-11T20:38:27.375Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mewkiz.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":"2012-11-01T20:13:58.000Z","updated_at":"2024-08-11T19:50:46.000Z","dependencies_parsed_at":"2023-10-27T15:40:22.520Z","dependency_job_id":"9e62a738-4265-49ac-9e31-7a2144e4587f","html_url":"https://github.com/mewkiz/flac","commit_stats":{"total_commits":329,"total_committers":15,"mean_commits":"21.933333333333334","dds":"0.24620060790273557","last_synced_commit":"c38ea50729546844e2b70cf8b6b0651677043e2b"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mewkiz%2Fflac","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mewkiz%2Fflac/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mewkiz%2Fflac/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mewkiz%2Fflac/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mewkiz","download_url":"https://codeload.github.com/mewkiz/flac/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243584127,"owners_count":20314705,"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":[],"created_at":"2024-07-30T20:00:52.455Z","updated_at":"2025-03-14T13:30:57.242Z","avatar_url":"https://github.com/mewkiz.png","language":"Go","funding_links":[],"categories":["Audio and Music","音频和音乐","Go","Audio/Music","音频和音乐库","音頻和音樂","HarmonyOS","Uncategorized","音频和视频","\u003cspan id=\"音频和音乐-audio-and-music\"\u003e音频和音乐 Audio and Music\u003c/span\u003e","音频处理"],"sub_categories":["Contents","Windows Manager"],"readme":"# flac\n\n[![Go build status](https://github.com/mewkiz/flac/actions/workflows/go.yml/badge.svg?branch=master)](https://github.com/mewkiz/flac/actions/workflows/go.yml)\n[![Coverage Status](https://coveralls.io/repos/github/mewkiz/flac/badge.svg?branch=master)](https://coveralls.io/github/mewkiz/flac?branch=master)\n[![GoDoc](https://pkg.go.dev/badge/github.com/mewkiz/flac)](https://pkg.go.dev/github.com/mewkiz/flac)\n\nThis package provides access to [FLAC][1] (Free Lossless Audio Codec) streams.\n\n[1]: http://flac.sourceforge.net/format.html\n\n## Documentation\n\nDocumentation provided by GoDoc.\n\n- [flac]: provides access to FLAC (Free Lossless Audio Codec) streams.\n    - [frame][flac/frame]: implements access to FLAC audio frames.\n    - [meta][flac/meta]: implements access to FLAC metadata blocks.\n\n[flac]: http://pkg.go.dev/github.com/mewkiz/flac\n[flac/frame]: http://pkg.go.dev/github.com/mewkiz/flac/frame\n[flac/meta]: http://pkg.go.dev/github.com/mewkiz/flac/meta\n\n## Changes\n\n* Version 1.0.12 (2024-08-11)\n    - Improve performance of flac.NewSeek() by using a buffered reader (see [#72](https://github.com/mewkiz/flac/pull/72)).\n    - Fix off-by-one error in Seek end of stream check (see [#73](https://github.com/mewkiz/flac/pull/73)).\n\n* Version 1.0.11 (2024-08-04)\n    - Move example tools to dedicated [mewkiz/flac-tools](https://github.com/mewkiz/flac-tools) repository to reduce external dependencies (see [#62](https://github.com/mewkiz/flac/pull/62)).\n    - Fix seek to frame start (see [#71](https://github.com/mewkiz/flac/pull/71)). Thanks to [Mark Kremer](https://github.com/MarkKremer).\n    - Simplify internal handling of io.Closer element in flac.Stream and flac.Encoder types (see [#70](https://github.com/mewkiz/flac/pull/70)). Thanks to [Mario Salgado](https://github.com/zalgonoise).\n\n* Version 1.0.10 (2023-11-11)\n    - Add support for LPC audio sample encoding (see [#66](https://github.com/mewkiz/flac/pull/66)). Thanks to [Mark Kremer](https://github.com/MarkKremer) for bug fixes and [Mattias Wadman](https://github.com/wader) for the invaluable [fq](https://github.com/wader/fq) tool used to investigate FLAC encoding issues.\n    - Replace Travis CI with GitHub actions for CI build status, test status and code coverage [#64](https://github.com/mewkiz/flac/pull/64)). Thanks to [Mark Kremer](https://github.com/MarkKremer).\n\n* Version 1.0.9 (2023-10-24)\n    - Fix integer overflow during unfolding of rice residual (see [#61](https://github.com/mewkiz/flac/pull/61)). Thanks to [Mark Kremer](https://github.com/MarkKremer).\n    - Fix decoding of escaped partition audio samples (see [#60](https://github.com/mewkiz/flac/issues/60)). Thanks to [Mark Kremer](https://github.com/MarkKremer).\n    - Handle frame hashing of audio samples with bits-per-sample not evenly divisible by 8 (see [9d50c9e](https://github.com/mewkiz/flac/commit/9d50c9ee99ba322f487ed60442dc16f22b2affb8)).\n\n* Version 1.0.8 (2023-04-09)\n    - Fix race condition when reading meta data (see [#56](https://github.com/mewkiz/flac/pull/56)). Thanks to [Zach Orosz](https://github.com/zachorosz).\n    - Fix encoding of 8-bps WAV audio samples (see [#52](https://github.com/mewkiz/flac/pull/52)). Thanks to [Martijn van Beurden](https://github.com/ktmf01).\n    - Fix StreamInfo block type error message (see [#49](https://github.com/mewkiz/flac/pull/49)).\n\n* Version 1.0.7 (2021-01-28)\n    - Add seek API (see [#44](https://github.com/mewkiz/flac/pull/44) and [#46](https://github.com/mewkiz/flac/pull/46)). Thanks to [Craig Swank](https://github.com/cswank).\n\n* Version 1.0.6 (2019-12-20)\n    - Add experimental Encoder API to encode audio samples and metadata blocks (see [#32](https://github.com/mewkiz/flac/pull/32)).\n    - Use go.mod.\n    - Skip ID3v2 data prepended to flac files when parsing (see [36cc17e](https://github.com/mewkiz/flac/commit/36cc17efed51a9bae283d6a3a7a10997492945e7)).\n        - Remove dependency on encodebytes. Thanks to [Mikey Dickerson](https://github.com/mdickers47).\n    - Add 16kHz test case. Thanks to [Chewxy](https://github.com/chewxy).\n    - Fix lint issues (see [#25](https://github.com/mewkiz/flac/issues/25)).\n\n* Version 1.0.5 (2016-05-06)\n    - Simplify import paths. Drop use of gopkg.in, and rely on vendoring instead (see [azul3d/engine#1](https://github.com/azul3d/engine/issues/1)).\n    - Add FLAC decoding benchmark (see [d675e0a](https://github.com/mewkiz/flac/blob/d675e0aaccf2e43055f56b9b3feeddfdeed402e2/frame/frame_test.go#L60)).\n\n* Version 1.0.4 (2016-02-11)\n    - Add API examples to documentation (see [#11](https://github.com/mewkiz/flac/issues/11)).\n    - Extend test cases (see [aadf80a](https://github.com/mewkiz/flac/commit/aadf80aa28c463a94b8d5c49757e5a0948613ce2)).\n\n* Version 1.0.3 (2016-02-02)\n    - Implement decoding of FLAC files with wasted bits-per-sample (see [#12](https://github.com/mewkiz/flac/issues/12)).\n    - Stress test the library using [go-fuzz](https://github.com/dvyukov/go-fuzz) (see [#10](https://github.com/mewkiz/flac/pull/10)). Thanks to [Patrick Mézard](https://github.com/pmezard).\n\n* Version 1.0.2 (2015-06-05)\n    - Fix decoding of blocking strategy (see [#9](https://github.com/mewkiz/flac/pull/9)). Thanks to [Sergey Didyk](https://github.com/sdidyk).\n\n* Version 1.0.1 (2015-02-25)\n    - Fix two subframe decoding bugs (see [#7](https://github.com/mewkiz/flac/pull/7)). Thanks to [Jonathan MacMillan](https://github.com/perotinus).\n    - Add frame decoding test cases.\n\n* Version 1.0.0 (2014-09-30)\n    - Initial release.\n    - Implement decoding of FLAC files.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmewkiz%2Fflac","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmewkiz%2Fflac","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmewkiz%2Fflac/lists"}