Alessandro Ros
23ddaac481
support publishing VP9 tracks with RTMP ( #2247 )
2 years ago
Alessandro Ros
1133c734ab
support publishing AV1/H265 with OBS 30 ( #2217 ) ( #2234 )
2 years ago
Xavier Hallade
accfc49f9c
allow RTMP streaming with codecid=av01 or hvc1 ( #2232 )
...
* allow RTMP streaming with codecid=av01 or hvc1
Prior to this change, when trying to stream AV1 over enhanced RTMP using
XSplit Broadcaster, the server was refusing the content with
"unsupported video codec: av01" message.
* add tests
---------
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2 years ago
Alessandro Ros
659f19f8bb
enable errcheck ( #2201 )
2 years ago
Alessandro Ros
7e180ceea2
rtmp: support ingesting RTMPE streams ( #2189 )
2 years ago
Alessandro Ros
161a9b54b2
update dependencies ( #2176 )
2 years ago
Alessandro Ros
153463466c
hls: support reading and proxying AV1 tracks ( #2155 )
2 years ago
Alessandro Ros
8bb71ac8d8
srt, udp: support reading and writing MPEG-1 audio streams ( #2147 )
2 years ago
Alessandro Ros
d696a782f7
rtmp: simplify API ( #2130 )
2 years ago
Alessandro Ros
ab8cf3f0cc
add rtmp.Reader, rtmp.Writer ( #2124 )
...
needed by #2068
2 years ago
Alessandro Ros
b42154fa6a
return an error in case the random number generator fails ( #2120 )
2 years ago
Alessandro Ros
681a00347d
support reading MP4A-LATM-encoded AAC with RTMP and HLS ( #1694 ) ( #1898 )
2 years ago
Alessandro Ros
efda44cfae
rtmp: fix timestamp conversion from RTSP/HLS to RTMP ( #1899 )
...
this was causing moments of silence and timing errors when reading with
RTMP a stream originally published with RTSP or HLS.
2 years ago
Alessandro Ros
22f05e97e8
replace math/rand with crypto/rand ( #1872 )
2 years ago
Alessandro Ros
bbd8f006fe
rtmp: fix crash when publishing video-only tracks ( #1819 ) ( #1822 )
...
this fixes a regression introduced in v0.23.0.
2 years ago
Alessandro Ros
39c072edd6
change repository owner ( #1801 )
2 years ago
Alessandro Ros
e8124e2f56
support publishing H265 and AV1 tracks with Enhanced RTMP ( #1393 ) ( #1446 ) ( #1621 ) ( #1756 )
2 years ago
Alessandro Ros
22fe65509b
cleanup ( #1754 )
2 years ago
Alessandro Ros
2d17dff3b5
support publishing, reading and proxying MPEG-2 audio (MP3) tracks with RTMP ( #1102 ) ( #1736 )
2 years ago
Alessandro Ros
053f2ec282
rename repository and executable ( #1641 )
2 years ago
Alessandro Ros
2dffccf9c1
update gortsplib, gohlslib ( #1637 )
2 years ago
Alessandro Ros
c7938eb832
rtmp: fix panic when publishing audio-only streams ( #1459 ) ( #1502 )
2 years ago
Alessandro Ros
ef214b7649
rtmp server: fix compatibility with Neko ( #1405 )
3 years ago
aler9
97c1e68c0b
improve tests
3 years ago
Alessandro Ros
e3d00878b3
rtmp server: fix handshake and compatibility with streamlabs ( #1244 ) ( #1398 )
3 years ago
Alessandro Ros
c79c3c83cb
rtmp server: improve efficiency of outgoing packets ( #1395 )
...
group together messages by using a buffered writer between the network
connection and the WriteMessage() function
3 years ago
aler9
b20abbed6c
webrtc muxer: keep the WebSocket connection
...
The WebSocket connection is kept open in order to use it to notify
shutdowns.
3 years ago
aler9
fbf8e82db5
update gortsplib
3 years ago
Alessandro Ros
ad52b3fab7
Support publishing with RTMP and H265 (for OBS Studio) ( #1333 )
...
* support publishing with RTMP and H265 (for OBS Studio)
* rtmp source: block H265 tracks
3 years ago
Alessandro Ros
c778c049ce
switch to gortsplib v2 ( #1301 )
...
Fixes #1103
gortsplib/v2 supports multiple formats inside a single track (media). This allows to apply the resizing algorithm to single formats inside medias.
For instance, if a media contains a a proprietary format and an H264 format, and the latter has oversized packets, they can now be resized.
3 years ago
aler9
282d155a4f
update gortsplib
3 years ago
Alessandro Ros
6471800b52
rtmp server: fix responses to ping requests ( #1245 )
3 years ago
Alessandro Ros
8bee4af86a
api, metrics: add number of bytes received and sent from/to all entities ( #1235 )
...
* API: number of bytes received/sent from/to RTSP connections
* API: number of bytes received/sent from/to RTSP sessions
* API: number of bytes received/sent from/to RTMP connections
* API: number of bytes sent to HLS connections
* API: number of bytes received from paths
* metrics of all the above
3 years ago
aler9
f1fb00b80f
update golangci-lint
3 years ago
aler9
27ae0b9812
rtmp client: validate command ID of results
3 years ago
aler9
59391a4366
rtmp client: fix play command id
3 years ago
aler9
d4945ab7bc
rtmp: cleanup
3 years ago
aler9
b06498d24b
rtmp: remove useless comments from tests
3 years ago
aler9
ca46d56184
fix linting
3 years ago
aler9
e255d004e3
rtmp server: change value of MessageStreamID of outgoing messages
3 years ago
aler9
4990e98993
rtmp: fix reading metadata from onMetadata
...
when there's no audio and Conn is a client, onMetadata was skipped and
tracks were read by using the fallback method. Fix this.
3 years ago
aler9
a19a20abfb
rtmp: set right command ID when replying to a play request
3 years ago
aler9
176f2f0729
rtmp: invert flag of InitializeServer() and InitializeClient()
3 years ago
aler9
0db2d3eb8c
rtmp: improve performance
...
reuse existing structs instead of allocating them during every read()
3 years ago
aler9
af7a815f83
update gortsplib
3 years ago
aler9
f7c08f577a
rtmp: fix decoding of chunk3 + chunk3
3 years ago
Alessandro Ros
9e6abc6e9f
rtmp: rewrite implementation of rtmp connection ( #1047 )
...
* rtmp: improve MsgCommandAMF0
* rtmp: fix MsgSetPeerBandwidth
* rtmp: add message tests
* rtmp: replace implementation with new one
* rtmp: rename handshake functions
* rtmp: avoid calling useless function
* rtmp: use time.Duration for PTSDelta
* rtmp: fix decoding chunks with relevant size
* rtmp: rewrite implementation of rtmp connection
* rtmp: fix tests
* rtmp: improve error message
* rtmp: replace h264 config implementation
* link against github.com/notedit/rtmp
* normalize MessageStreamID
* rtmp: make acknowledge optional
* rtmp: fix decoding of chunk2 + chunk3
* avoid using encoding/binary
3 years ago
aler9
50d205274f
fix tests
3 years ago
aler9
822a896a82
rtmp: fix rtmp -> rtsp audio conversion
3 years ago
aler9
ef3e18a9e9
rtmp: add handshake functions
3 years ago