https://github.com/jo-hoe/mp3-joiner
Allow the merge of MP3 files while honoring chapter metadata.
https://github.com/jo-hoe/mp3-joiner
chapters ffmpeg golang join merge mp3
Last synced: 5 months ago
JSON representation
Allow the merge of MP3 files while honoring chapter metadata.
- Host: GitHub
- URL: https://github.com/jo-hoe/mp3-joiner
- Owner: jo-hoe
- License: mit
- Created: 2023-01-29T13:40:54.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-12-15T21:30:03.000Z (6 months ago)
- Last Synced: 2025-12-19T04:50:27.222Z (6 months ago)
- Topics: chapters, ffmpeg, golang, join, merge, mp3
- Language: Go
- Homepage:
- Size: 13.1 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# MP3 Joiner
[](https://godoc.org/github.com/jo-hoe/mp3-joiner)
[](https://github.com/jo-hoe/mp3-joiner/actions?workflow=test)
[](https://coveralls.io/github/jo-hoe/mp3-joiner?branch=main)
[](https://github.com/jo-hoe/mp3-joiner/actions?workflow=lint)
[](https://goreportcard.com/report/github.com/jo-hoe/mp3-joiner)
Allow the merge of MP3 files while honoring chapter metadata. This library requires FFmeg to be installed on the target system.
## Requirements
- [FFmeg](https://ffmpeg.org/download.html)
## Example
```go
package main
import (
"github.com/jo-hoe/mp3-joiner"
)
func main() {
builder := NewMP3Builder()
builder.Append("/path/to/myAudioFile.mp3", 0, 10)
builder.Append("/path/to/myOtherAudioFile.mp3", 0, -1)
builder.Build("/path/to/mergedAudioFile.mp3")
}
```
## Development
### Linting
Project used `golangci-lint` for linting.
#### Installation
#### Execution
Run the linting locally by executing
```cli
golangci-lint run ./...
```
in the working directory
## Further Details
- [How to apply chapters](https://dev.to/montekaka/add-chapter-markers-to-podcast-audio-using-ffmpeg-3c46)