libvlc-go
Handcrafted Go bindings for libVLC and high-level media player interface (by adrg)
go-m3u8
Parse and generate m3u8 playlists for Apple HTTP Live Streaming (HLS) in Golang (ported from gem https://github.com/sethdeckard/m3u8) (by quangngotan95)
| libvlc-go | go-m3u8 | |
|---|---|---|
| - | 5 | |
| 510 | 122 | |
| 0.4% | 0.0% | |
| 3.1 | 0.0 | |
| 10 days ago | over 3 years ago | |
| Go | Go | |
| MIT License | MIT License |
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.
libvlc-go
Posts with mentions or reviews of libvlc-go.
We have used some of these posts to build our list of alternatives
and similar projects.
We haven't tracked posts mentioning libvlc-go yet.
Tracking mentions began in Dec 2020.
go-m3u8
Posts with mentions or reviews of go-m3u8.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-03-29.
-
Building a Music Streaming Service with Python, Golang, and React: From System Design to Coding Part 3
HLS (HTTP Live Streaming) with AES-128 Encryption: HLS is a widely used streaming protocol that supports AES-128 encryption. Media files are divided into segments, each encrypted individually. The decryption key is stored on the server and retrieved by the client via a secure HTTPS connection.
-
AV1 live streaming with m3u8/HLS?
Apple is a part of AOMedia now. I think it will happen eventually. Also HLS has an IETF entry (RFC 8216).
-
EXT-X-CUE-OUT vs EXT-X-DISCONTINUITY
The reference standard for ad markers in HLS manifest files is EXT-X-DATERANGE in the HLS RFC. https://tools.ietf.org/html/rfc8216#section-4.3.2.7 Unfortunately, very few systems support the EXT-X-DATERANGE markup format in the RFC as yet since vendor implementations exist.
-
When adding caption to HLS, I get errors. Unable to find mapping variant stream av_interleaved_write_frame(): Cannot allocate memory
Recommend taking a look at SUBTITLES sections 3.5 and 4.3.4.1 of https://tools.ietf.org/html/rfc8216. I can see how multi-language could get messy with the FFmpeg implementation, but it is relatively new functionality.
-
It... YouTube does..... What?
EDIT: they do use .ts and m3u8 but a bit fancier .m2ts (maybe mp4s as well?) and m3u8, at the very least for livestreaming. src and the standard it is based on.
What are some alternatives?
When comparing libvlc-go and go-m3u8 you can also consider the following projects:
go-libav - Go language bindings for ffmpeg libraries
go-mpd - Go library for parsing and generating MPEG-DASH Media Presentation Description (MPD) files
gortsplib - RTSP client and server library for the Go programming language
go-astits - Demux and mux MPEG Transport Streams (.ts) natively in GO
v4l - Facade to the Video4Linux video capture interface.