goav
Golang bindings for FFmpeg (This repository is no longer maintained) (by giorgisio)
gmf
Go Media Framework (by 3d0c)
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
goav
Posts with mentions or reviews of goav.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-08-22.
-
How to add RTP timestamp to MP4 container for self-made RTSP client in Go?
For the MP4 container, I used to work with https://github.com/giorgisio/goav, but I visited now and saw that it had a deprecation notice, but should still work I guess.
-
Playing video in a Golang game
Now we need to obtain frames from the video stream of the file. goav provides an example code on how to do that. To make it work with Pixel game library, we need to set the frame decoding format to avcodec.AV_PIX_FMT_RGBA which is used by Pixel.
gmf
Posts with mentions or reviews of gmf.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-11-25.
-
Golang native media compression library
there is only one libav binding that's actively maintained github.com/3d0c/gmf and it leaks memory... a lot. ffmpeg is the right tool for video transcoding but a library that wraps the ffmpeg cli or using os/exec to call it directly will work better.
What are some alternatives?
When comparing goav and gmf you can also consider the following projects:
go-libav - Go language bindings for ffmpeg libraries
v4l - Facade to the Video4Linux video capture interface.
Vnc2Video - A fully featured VNC client written in golang
M3U8 - Parser and generator of M3U8-playlists for Apple HLS. Library for Go language. :cinema:
go-astisub - Manipulate subtitles in GO (.srt, .ssa/.ass, .stl, .ttml, .vtt (webvtt), teletext, etc.)
Pion WebRTC - Pure Go implementation of the WebRTC API
libgosubs - golang library to read and write various subtitle formats
gst - Go bindings for GStreamer (retired: currently I don't use/develop this package)
libvlc-go - Handcrafted Go bindings for libVLC and high-level media player interface