All Projects → riltech → streamer

riltech / streamer

Licence: MIT license
Go Package built around spinning up streaming processes

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to streamer

smart rtmpd
RTMP server, smart, compact, high performance(c, c++), high concurrency, easy to maintain, easy to deploy, (supports multiple operating systems Windows and Linux, ARM, FreeBSD)
Stars: ✭ 159 (+329.73%)
Mutual labels:  rtsp, hls
Rtsp Stream
Out of box solution for RTSP - HLS live stream transcoding. Makes RTSP easy to play in browsers.
Stars: ✭ 349 (+843.24%)
Mutual labels:  rtsp, hls
wsa
WSA(Websocket Streaming Agent) is a stream server target for mp4/h264 streaming over websocket
Stars: ✭ 35 (-5.41%)
Mutual labels:  rtsp, hls
Jmuxer
jMuxer - a simple javascript mp4 muxer that works in both browser and node environment.
Stars: ✭ 222 (+500%)
Mutual labels:  rtsp, hls
Lal
🔥 Golang live stream lib/client/server. support RTMP/RTSP/HLS/HTTP[S]-FLV/HTTP-TS, H264/H265/AAC, relay, cluster, record, HTTP API/Notify, GOP cache. 官方文档见 https://pengrl.com/lal
Stars: ✭ 480 (+1197.3%)
Mutual labels:  rtsp, hls
node-rtsp-recorder
Records and saves RTSP Video Streams
Stars: ✭ 50 (+35.14%)
Mutual labels:  rtsp, rtsp-client
Monibuca
🧩 Monibuca is a Modularized, Extensible framework for building Streaming Server
Stars: ✭ 307 (+729.73%)
Mutual labels:  rtsp, hls
Zlmediakit
WebRTC/RTSP/RTMP/HTTP/HLS/HTTP-FLV/WebSocket-FLV/HTTP-TS/HTTP-fMP4/WebSocket-TS/WebSocket-fMP4/GB28181 server and client framework based on C++11
Stars: ✭ 5,248 (+14083.78%)
Mutual labels:  rtsp, hls
Fastocloud
Self-hosted IPTV/NVR/CCTV/Video service (Community version)
Stars: ✭ 464 (+1154.05%)
Mutual labels:  rtsp, hls
Easyplayer Rtsp Android
An elegant, simple, fast android RTSP/RTMP/HLS/HTTP Player.EasyPlayer support RTSP(RTP over TCP/UDP)version & Pro version,cover all kinds of streaming media!EasyPlayer是一款精炼、高效、稳定的流媒体播放器,分为RTSP版和Pro版本,支持各种各样的流媒体音视频播放!
Stars: ✭ 437 (+1081.08%)
Mutual labels:  rtsp, hls
ZLMediaKit
WebRTC/RTSP/RTMP/HTTP/HLS/HTTP-FLV/WebSocket-FLV/HTTP-TS/HTTP-fMP4/WebSocket-TS/WebSocket-fMP4/GB28181/SRT server and client framework based on C++11
Stars: ✭ 7,790 (+20954.05%)
Mutual labels:  rtsp, hls
V4l2rtspserver
RTSP Server for V4L2 device capture supporting HEVC/H264/JPEG/VP8/VP9
Stars: ✭ 1,092 (+2851.35%)
Mutual labels:  rtsp, hls
docker-wyze-bridge
RTMP/RTSP/LL-HLS bridge for Wyze cams in a docker container
Stars: ✭ 1,146 (+2997.3%)
Mutual labels:  rtsp, hls
video-server
Server which connects to set of existing RTSP's and provides HLS/MSE-based streams.
Stars: ✭ 12 (-67.57%)
Mutual labels:  rtsp, hls
wyzecam-hls
Converts MP4 files from WyzeCam NFS to HLS stream. Much more stable alternative to RTSP firmware.
Stars: ✭ 58 (+56.76%)
Mutual labels:  rtsp, hls
Rapidvms
rapidvms(open source VMS/NVR Video Management System/ Network Video Recorder) mail to [email protected] for latest version
Stars: ✭ 370 (+900%)
Mutual labels:  rtsp, hls
Ffmpeg
Mirror of https://git.ffmpeg.org/ffmpeg.git
Stars: ✭ 27,382 (+73905.41%)
Mutual labels:  rtsp, hls
Media Server
RTSP/RTP/RTMP/FLV/HLS/MPEG-TS/MPEG-PS/MPEG-DASH/MP4/fMP4/MKV/WebM
Stars: ✭ 1,363 (+3583.78%)
Mutual labels:  rtsp, hls
alpine-dash-hls
A ready-prepared video transcoding pipeline to create DASH/ HLS compatible video files & playlists
Stars: ✭ 43 (+16.22%)
Mutual labels:  hls
Cameradar
Cameradar hacks its way into RTSP videosurveillance cameras
Stars: ✭ 2,775 (+7400%)
Mutual labels:  rtsp

streamer

Go Report Card License: MIT GitHub last commit GitHub release

Go Package built around spinning up streaming processes

How

Stream exposes a struct called Stream which starts an underlying ffmpeg process to transcode incoming raw RTSP stream to HLS based on parameters.

It provides a handy interface to handle streams

More info on docs

Example usage

import "github.com/riltech/streamer"

func main() {
	stream, id := streamer.NewStream(
		"rtsp://admin:[email protected]:447/Streaming/Channel/2", // URI of raw RTSP stream
		"./videos", // Directory where to store video chunks and indexes. Should exist already
		true, // Indicates if stream should be keeping files after it is stopped or clean the directory
		true, // Indicates if Audio should be enabled or not
		streamer.ProcessLoggingOpts{
			Enabled:    true, // Indicates if process logging is enabled
			Compress:   true, // Indicates if logs should be compressed
			Directory:  "/tmp/logs/stream", // Directory to store logs
			MaxAge:     0, // Max age for a log. 0 is infinite
			MaxBackups: 2, // Maximum backups to keep
			MaxSize:    500, // Maximum size of a log in megabytes
		},
		25*time.Second, // Time to wait before declaring a stream start failed
  )
  
  // Returns a waitGroup where the stream checking the underlying process for a successful start
  stream.Start().Wait() 
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].