ffmpeg-go
mp4ff
ffmpeg-go | mp4ff | |
---|---|---|
6 | 2 | |
1,467 | 406 | |
- | 2.5% | |
3.3 | 8.5 | |
16 days ago | 13 days ago | |
Go | Go | |
Apache License 2.0 | MIT 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.
ffmpeg-go
-
Ffmpeg wrapper
I have used the ffmpeg-go in the past and found it quite nice. My usecase was decoding the video to raw frames and then directly processing the raw frame bytes further in Go.
-
Put text over video in golang
Any of the ffmpeg wrappers will do it, like this
-
Is there any way to split mp4 in 2 files in Golang?
Obviously this is tongue in cheek. You could probably do this in Go but I'd recommend just using ffmpeg. There are bindings to ffmpeg in Go but I doubt it's going to be easier than writing it directly in C, unless you aren't proficient with C.
-
created a CLI tool [reddit-dl] to help download reddit videos/images/gif
For merging, yes, it's a bit problematic. From what I saw in the community the use of ffmpeg is often made, but not in raw (exec.Cmd). I would recommend the use of https://github.com/u2takey/ffmpeg-go module which provides a convenient API, permitting to defer the load of ffmpeg CLI API. I never used it but it seems a good solution.
-
run exec.Command
I used u2takey/ffmpeg-go to merge two streams (audio and video) in a project, and worked just fine.
-
How to send chunks of audio file to the client?
There is a Go binding for ffmpeg: https://github.com/u2takey/ffmpeg-go
mp4ff
-
Is there any way to split mp4 in 2 files in Golang?
Hi, you want to produce fmp4 segments or split into multiple "progressive" mp4s? one of these examples might be useful: https://github.com/Eyevinn/mp4ff/tree/master/cmd/mp4ff-crop https://github.com/Eyevinn/mp4ff/tree/master/examples/segmenter
-
mp4ff - beyond MP4 boxes
Part 30 of the MPEG-4 standard describes how TTML and WebVTT subtitles shall be carried in MP4 files. The approaches are very different. For TTML, the original XML structure is used, and there is typically a single sample per segment. That sample is a complete TTML XML document with internal time stamps. Beyond text, it can also provide image subtitles and carry such images as subsamples. The codecs attribute for such a file is stpp, and there is an [stpp] box that should be included in the track sample descriptor. mp4ff supports all relevant boxes.
What are some alternatives?
reisen - A simple library to extract video and audio frames from media containers (based on libav).
tfb-video - Generator of test video files for testing your media playback devices and calibrate TV sets
cloud-morph - Decentralize, Self-host Cloud Gaming/Application
goheif - go gettable decoder/converter for HEIF/HEIC based on libde265
gmf - Go Media Framework
mediamtx - Ready-to-use SRT / WebRTC / RTSP / RTMP / LL-HLS media server and media proxy that allows to read, publish, proxy, record and playback video and audio streams.
go-reddit - Go library for accessing the Reddit API.
go-mp4 - Go library for reading and writing MP4 file
ydls - youtube-dl HTTP download and transcode service
cinema - a lightweight video editor for go
OS-NVR - OS-NVR is a lightweight extensible CCTV system. Mirror of Codeberg.
sums_up - Sum types for Ruby