https://github.com/djwackey/dorsvr
Go RTSP Streaming Server
https://github.com/djwackey/dorsvr
media-player media-server rtsp rtsp-server streaming-protocol video
Last synced: 2 months ago
JSON representation
Go RTSP Streaming Server
- Host: GitHub
- URL: https://github.com/djwackey/dorsvr
- Owner: djwackey
- License: lgpl-2.1
- Archived: true
- Created: 2014-02-11T03:48:34.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2020-02-16T14:14:41.000Z (over 5 years ago)
- Last Synced: 2024-11-05T22:41:43.688Z (7 months ago)
- Topics: media-player, media-server, rtsp, rtsp-server, streaming-protocol, video
- Language: Go
- Homepage:
- Size: 646 KB
- Stars: 340
- Watchers: 30
- Forks: 94
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Dorsvr Streaming Server
=======================[](https://travis-ci.org/djwackey/dorsvr)
[](https://goreportcard.com/report/github.com/djwackey/dorsvr)
[](https://github.com/djwackey/dorsvr/issues)
## Modules
* rtspserver - rtsp server
* rtspclient - rtsp client
* groupsock - group socket
* livemedia - media library## Feature
* Streaming Video (H264, M2TS)
* Streaming Audio (MP3)
* Protocols: RTP, RTCP, RTSP
* Access Control## Install
go get github.com/djwackey/dorsvr## Format
$ make fmt## Testing
$ make test## Example
```golang
import (
"fmt""github.com/djwackey/dorsvr/rtspserver"
)func main() {
server := rtspserver.New(nil)portNum := 8554
err := server.Listen(portNum)
if err != nil {
fmt.Printf("Failed to bind port: %d\n", portNum)
return
}if !server.SetupTunnelingOverHTTP(80) ||
!server.SetupTunnelingOverHTTP(8000) ||
!server.SetupTunnelingOverHTTP(8080) {
fmt.Printf("We use port %d for optional RTSP-over-HTTP tunneling, "+
"or for HTTP live streaming (for indexed Transport Stream files only).\n", server.HTTPServerPortNum())
} else {
fmt.Println("(RTSP-over-HTTP tunneling is not available.)")
}urlPrefix := server.RtspURLPrefix()
fmt.Println("This server's URL: " + urlPrefix + ".")server.Start()
select {}
}
```
## Author
djwackey, [email protected]## LICENSE
dorsvr is licensed under the GNU Lesser General Public License, Version 2.1. See [LICENSE](https://github.com/djwackey/dorsvr/blob/master/LICENSE) for the full license text.