go-mp4
tag
Our great sponsors
go-mp4 | tag | |
---|---|---|
2 | 2 | |
430 | 535 | |
5.1% | - | |
7.8 | 4.5 | |
23 days ago | 12 days ago | |
Go | Go | |
MIT License | BSD 2-clause "Simplified" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
go-mp4
-
Go library to validate MPEG-4 file?
You could use go-mp4 to just validate the mp4 structure.
-
How to add RTP timestamp to MP4 container for self-made RTSP client in Go?
I have looked at libraries such as go-mp4 (https://github.com/abema/go-mp4) and go-astits (https://github.com/asticode/go-astits), but without the proper explanation/documentation it is difficult to grasp these libraries.
tag
-
Generic audio metadata read and write library
Most music managers on Linux seem to be rapidly disappearing, and so I'm having to say goodbye to my beloved Banshee. Since I don't really love my other options and in general people seem to not like locally saved (and bought) music with a music manager anymore, I'm playing it safe and making my own. I've chosen most of my libraries and done some small tests, but a hurdle that remains is metadata. Sadly, beyond MP3's ID3 tag system, there's custom stuff for a bunch of formats/containers, including ogg/opus, flac, and m4a. https://github.com/dhowden/tag seems to be my safest bet for reading. It has very wide support and an active community. Writing seems to be an ongoing struggle however, and I can't seem to find anything that really works. It would be weird that you can't fix a typo in an album name, update a genre or split up between the album artist and track artist. Does anyone have any suggestions?
-
Would you prefer cgo or os/exec to interface with C software?
Ok think i would either use some metadata library like https://github.com/dhowden/tag or ffprobe with JSON output to read metadata and then use cli ffmpeg to transcode and write metadata. Maybe later if you feel it does not give you enough control maybe concider using some cgo libavformat/libavcodec wrapper.
What are some alternatives?
file-type - Detect the file type of a Buffer/Uint8Array/ArrayBuffer
ydls - youtube-dl HTTP download and transcode service
go-astits - Demux and mux MPEG Transport Streams (.ts) natively in GO
imagorvideo - imagor video thumbnail server in Go and ffmpeg C bindings
mp4ff - Library and tools for parsing and writing MP4 files including video, audio and subtitles. The focus is on fragmented files. Includes mp4ff-info, mp4ff-encrypt, mp4ff-decrypt and other tools.
WahWah - Ruby gem for reading audio metadata
file-type-stream-go - Detect file types–extensions and mime–using magic numbers
Mp3Info - The fastest PHP library to extract mp3 meta information (duration, bitrate, samplerate and so on) and tags (id3v1, id3v2).
goav - Golang bindings for FFmpeg (This repository is no longer maintained)
audio-metadata - A library for reading and, in the future, writing audio metadata. https://audio-metadata.readthedocs.io/
Vidio - FFmpeg wrapper providing simple, cross-platform Video I/O, GIF Creation, and Webcam Streaming in Go.
lofty-rs - Audio metadata library