Go Video

Open-source Go projects categorized as Video

Top 23 Go Video Projects

  • lux

    👾 Fast and simple video download library and CLI tool written in Go

    Project mention: Lux: A fast and simple video downloader built with Go | news.ycombinator.com | 2022-10-01
  • Pion WebRTC

    Pure Go implementation of the WebRTC API

    Project mention: Build VOIP call feature with Rails API and React Native | reddit.com/r/rails | 2023-01-07

    You’d better to use a framework or language which can handle stream data, like https://github.com/pion/webrtc

  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.

  • livego

    live video streaming server in golang

    Project mention: Building my first go project, looking for package/resource suggestions | reddit.com/r/golang | 2022-10-05

    For streaming video content your options would be HLS or WebRTC, maybe look into these gwuhaolin/livego and pion/webrtc.

  • owncast

    Take control over your live stream video by running it yourself. Streaming + chat out of the box.

    Project mention: Web based Video/audio chat solution with high quality single presenter video? | reddit.com/r/selfhosted | 2023-01-02

    I would recommend https://owncast.online/ We use BBB in our company and its pretty complex and uses a lot of resource.

  • stash

    An organizer for your porn, written in Go. Documentation: https://docs.stashapp.cc

    Project mention: How to set up plex for porn? | reddit.com/r/PleX | 2023-02-04
  • gocv

    Go package for computer vision using OpenCV 4 and beyond.

    Project mention: How can I install gocv? | reddit.com/r/golang | 2023-01-15

    - Installing from source gives me E: Unable to locate package libdc1394-22-dev

  • rtsp-simple-server

    ready-to-use RTSP / RTMP / LL-HLS / WebRTC server and proxy that allows to read, publish and proxy video and audio streams

    Project mention: crowsnest install fails with "Error 1" | reddit.com/r/klippers | 2023-01-31

    Download rtsp-simple-server_v0.20.2_linux_arm64v8.tar.gz from https://github.com/aler9/rtsp-simple-server/releases/download/v0.20.2/ % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 9379k 100 9379k 0 0 3497k 0 0:00:02 0:00:02 --:--:-- 6115k Finished. make[1]: Leaving directory '/home/pi/crowsnest/bin' Add User pi to group 'video' ... [OK] chown: invalid group: ‘pi:pi’e ... make: *** [Makefile:37: install] Error 1

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

  • livekit

    End-to-end stack for WebRTC. SFU media server and SDKs.

    Project mention: Scaling WebRTC with Go: how we built a distributed mesh network for 100k-person events | reddit.com/r/golang | 2022-10-27

    https://github.com/livekit/livekit/blob/master/pkg/service/egress.go looks like the meat of this

  • goav

    Golang bindings for FFmpeg (This repository is no longer maintained)

    Project mention: How to add RTP timestamp to MP4 container for self-made RTSP client in Go? | reddit.com/r/golang | 2022-08-22

    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.

  • M3U8

    Parser and generator of M3U8-playlists for Apple HLS. Library for Go language. :cinema: (by grafov)

  • cloud-morph

    Decentralize, Self-host Cloud Gaming/Application

  • gmf

    Go Media Framework

  • galene

    The Galène videoconference server

    Project mention: Ask HN: FFmpeg real-time desktop streaming | news.ycombinator.com | 2022-11-27

    What latency are you trying to do? Will the professor being communicating with the students while doing this? Will the students all have the same bandwidth, or will you want multiple renditions (low, med, high quality levels)?

    If you want AV1 you will not be able to use RTMP. The protocol is orphaned/deprecated, so avoid if possible!

    If I was building it this is what I would do, and my reasoning.

    * For capture + encoding I would use OBS. You will want to use something that is easy for users to install configure. Professors will also have lots of custom requirements when it comes to layout etc... it will be tempting to do a ffmpeg command directly, but it will fall apart quick I believe.

    * To get AV1 out of OBS I would use FFMPEG output. I would have it send RTP. RTP is used to carry video in a sub-second manner. This is the same protocol that WebRTC uses. You know have AV1 + low latency.

    * Then for users to watch I would use WebRTC. That will allow them to watch in their web browser. Conceptually it will be like this https://github.com/pion/webrtc/tree/master/examples/rtp-to-w... this takes the RTP packets and puts them in the browser.

    Lots of great projects exist that you could use for 'RTP -> WebRTC' like https://galene.org/ and https://livekit.io/ I would suggest checking them all out!

    If you have more questions/want to talk to people in the video space always happy to chat on https://pion.ly/slack :)

  • rtsp-stream

    Out of box solution for RTSP - HLS live stream transcoding. Makes RTSP easy to play in browsers.

  • MovieNight

    Single instance video streaming server with integrated chat.

    Project mention: Looking for self hosted screen sharing/streaming solution | reddit.com/r/selfhosted | 2022-09-19

    I remember looking at MovieNight in the past, but I never deployed it so I can't speak to whether it will work for you or not.

  • youtubeuploader

    Scripted uploads to Youtube

  • go-libav

    Go language bindings for ffmpeg libraries

  • go-astits

    Demux and mux MPEG Transport Streams (.ts) natively in GO

    Project mention: How to add RTP timestamp to MP4 container for self-made RTSP client in Go? | reddit.com/r/golang | 2022-08-22

    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.

  • go-astisub

    Manipulate subtitles in GO (.srt, .ssa/.ass, .stl, .ttml, .vtt (webvtt), teletext, etc.)

  • quicktime_video_hack

    Record iOS device audio and video

  • gortsplib

    RTSP 1.0 client and server library for the Go programming language

  • libvlc-go

    Go bindings for libVLC and high-level media player interface

  • mp4ff

    Library and tools for parsing and writing MP4 files including video, audio and subtitles. The focus is on fragmented files. Includes mp4ff-info tool to print information about a box tree.

    Project mention: mp4ff - beyond MP4 boxes | dev.to | 2023-01-31

    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.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-02-04.

Go Video related posts


What are some of the best open-source Video projects in Go? This list will help you:

Project Stars
1 lux 20,070
2 Pion WebRTC 10,663
3 livego 8,637
4 owncast 6,937
5 stash 5,384
6 gocv 5,239
7 rtsp-simple-server 5,106
8 livekit 4,468
9 goav 1,962
10 M3U8 994
11 cloud-morph 900
12 gmf 820
13 galene 723
14 rtsp-stream 587
15 MovieNight 575
16 youtubeuploader 557
17 go-libav 479
18 go-astits 463
19 go-astisub 440
20 quicktime_video_hack 390
21 gortsplib 347
22 libvlc-go 332
23 mp4ff 262
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives