mirror of
https://github.com/aler9/gortsplib
synced 2025-10-05 15:16:51 +08:00
rename StreamProtocol and StreamDelivery into TransportProtocol and TransportDelivery
This commit is contained in:
@@ -73,19 +73,19 @@ func TestClientPublishSerial(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
}
|
}
|
||||||
|
|
||||||
if transport == "udp" {
|
if transport == "udp" {
|
||||||
th.Protocol = base.StreamProtocolUDP
|
th.Protocol = headers.TransportProtocolUDP
|
||||||
th.ServerPorts = &[2]int{34556, 34557}
|
th.ServerPorts = &[2]int{34556, 34557}
|
||||||
th.ClientPorts = inTH.ClientPorts
|
th.ClientPorts = inTH.ClientPorts
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
th.Protocol = base.StreamProtocolTCP
|
th.Protocol = headers.TransportProtocolTCP
|
||||||
th.InterleavedIDs = inTH.InterleavedIDs
|
th.InterleavedIDs = inTH.InterleavedIDs
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -259,19 +259,19 @@ func TestClientPublishParallel(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
}
|
}
|
||||||
|
|
||||||
if transport == "udp" {
|
if transport == "udp" {
|
||||||
th.Protocol = base.StreamProtocolUDP
|
th.Protocol = headers.TransportProtocolUDP
|
||||||
th.ServerPorts = &[2]int{34556, 34557}
|
th.ServerPorts = &[2]int{34556, 34557}
|
||||||
th.ClientPorts = inTH.ClientPorts
|
th.ClientPorts = inTH.ClientPorts
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
th.Protocol = base.StreamProtocolTCP
|
th.Protocol = headers.TransportProtocolTCP
|
||||||
th.InterleavedIDs = inTH.InterleavedIDs
|
th.InterleavedIDs = inTH.InterleavedIDs
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -399,19 +399,19 @@ func TestClientPublishPauseSerial(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
}
|
}
|
||||||
|
|
||||||
if transport == "udp" {
|
if transport == "udp" {
|
||||||
th.Protocol = base.StreamProtocolUDP
|
th.Protocol = headers.TransportProtocolUDP
|
||||||
th.ServerPorts = &[2]int{34556, 34557}
|
th.ServerPorts = &[2]int{34556, 34557}
|
||||||
th.ClientPorts = inTH.ClientPorts
|
th.ClientPorts = inTH.ClientPorts
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
th.Protocol = base.StreamProtocolTCP
|
th.Protocol = headers.TransportProtocolTCP
|
||||||
th.InterleavedIDs = inTH.InterleavedIDs
|
th.InterleavedIDs = inTH.InterleavedIDs
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -555,19 +555,19 @@ func TestClientPublishPauseParallel(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
}
|
}
|
||||||
|
|
||||||
if transport == "udp" {
|
if transport == "udp" {
|
||||||
th.Protocol = base.StreamProtocolUDP
|
th.Protocol = headers.TransportProtocolUDP
|
||||||
th.ServerPorts = &[2]int{34556, 34557}
|
th.ServerPorts = &[2]int{34556, 34557}
|
||||||
th.ClientPorts = inTH.ClientPorts
|
th.ClientPorts = inTH.ClientPorts
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
th.Protocol = base.StreamProtocolTCP
|
th.Protocol = headers.TransportProtocolTCP
|
||||||
th.InterleavedIDs = inTH.InterleavedIDs
|
th.InterleavedIDs = inTH.InterleavedIDs
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -701,14 +701,14 @@ func TestClientPublishAutomaticProtocol(t *testing.T) {
|
|||||||
var inTH headers.Transport
|
var inTH headers.Transport
|
||||||
err = inTH.Read(req.Header["Transport"])
|
err = inTH.Read(req.Header["Transport"])
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Equal(t, base.StreamProtocolTCP, inTH.Protocol)
|
require.Equal(t, headers.TransportProtocolTCP, inTH.Protocol)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
InterleavedIDs: &[2]int{0, 1},
|
InterleavedIDs: &[2]int{0, 1},
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -809,11 +809,11 @@ func TestClientPublishRTCPReport(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
InterleavedIDs: inTH.InterleavedIDs,
|
InterleavedIDs: inTH.InterleavedIDs,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -90,11 +90,11 @@ func TestClientReadTracks(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: headers.TransportProtocolUDP,
|
||||||
ClientPorts: inTH.ClientPorts,
|
ClientPorts: inTH.ClientPorts,
|
||||||
ServerPorts: &[2]int{34556 + i*2, 34557 + i*2},
|
ServerPorts: &[2]int{34556 + i*2, 34557 + i*2},
|
||||||
}
|
}
|
||||||
@@ -252,9 +252,9 @@ func TestClientRead(t *testing.T) {
|
|||||||
|
|
||||||
switch transport {
|
switch transport {
|
||||||
case "udp":
|
case "udp":
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
th.Delivery = &v
|
th.Delivery = &v
|
||||||
th.Protocol = base.StreamProtocolUDP
|
th.Protocol = headers.TransportProtocolUDP
|
||||||
th.ClientPorts = inTH.ClientPorts
|
th.ClientPorts = inTH.ClientPorts
|
||||||
th.ServerPorts = &[2]int{34556, 34557}
|
th.ServerPorts = &[2]int{34556, 34557}
|
||||||
|
|
||||||
@@ -267,9 +267,9 @@ func TestClientRead(t *testing.T) {
|
|||||||
defer l2.Close()
|
defer l2.Close()
|
||||||
|
|
||||||
case "multicast":
|
case "multicast":
|
||||||
v := base.StreamDeliveryMulticast
|
v := headers.TransportDeliveryMulticast
|
||||||
th.Delivery = &v
|
th.Delivery = &v
|
||||||
th.Protocol = base.StreamProtocolUDP
|
th.Protocol = headers.TransportProtocolUDP
|
||||||
v2 := net.ParseIP("224.1.0.1")
|
v2 := net.ParseIP("224.1.0.1")
|
||||||
th.Destination = &v2
|
th.Destination = &v2
|
||||||
th.Ports = &[2]int{25000, 25001}
|
th.Ports = &[2]int{25000, 25001}
|
||||||
@@ -303,9 +303,9 @@ func TestClientRead(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
case "tcp", "tls":
|
case "tcp", "tls":
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
th.Delivery = &v
|
th.Delivery = &v
|
||||||
th.Protocol = base.StreamProtocolTCP
|
th.Protocol = headers.TransportProtocolTCP
|
||||||
th.InterleavedIDs = &[2]int{0, 1}
|
th.InterleavedIDs = &[2]int{0, 1}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -492,11 +492,11 @@ func TestClientReadPartial(t *testing.T) {
|
|||||||
require.Equal(t, &[2]int{0, 1}, inTH.InterleavedIDs)
|
require.Equal(t, &[2]int{0, 1}, inTH.InterleavedIDs)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
InterleavedIDs: inTH.InterleavedIDs,
|
InterleavedIDs: inTH.InterleavedIDs,
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -635,11 +635,11 @@ func TestClientReadNoContentBase(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: headers.TransportProtocolUDP,
|
||||||
ClientPorts: inTH.ClientPorts,
|
ClientPorts: inTH.ClientPorts,
|
||||||
ServerPorts: &[2]int{34556, 34557},
|
ServerPorts: &[2]int{34556, 34557},
|
||||||
}
|
}
|
||||||
@@ -746,9 +746,9 @@ func TestClientReadAnyPort(t *testing.T) {
|
|||||||
StatusCode: base.StatusOK,
|
StatusCode: base.StatusOK,
|
||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: headers.TransportProtocolUDP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
ClientPorts: th.ClientPorts,
|
ClientPorts: th.ClientPorts,
|
||||||
@@ -878,15 +878,15 @@ func TestClientReadAutomaticProtocol(t *testing.T) {
|
|||||||
var inTH headers.Transport
|
var inTH headers.Transport
|
||||||
err = inTH.Read(req.Header["Transport"])
|
err = inTH.Read(req.Header["Transport"])
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Equal(t, base.StreamProtocolTCP, inTH.Protocol)
|
require.Equal(t, headers.TransportProtocolTCP, inTH.Protocol)
|
||||||
|
|
||||||
err = base.Response{
|
err = base.Response{
|
||||||
StatusCode: base.StatusOK,
|
StatusCode: base.StatusOK,
|
||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
InterleavedIDs: &[2]int{0, 1},
|
InterleavedIDs: &[2]int{0, 1},
|
||||||
@@ -1004,11 +1004,11 @@ func TestClientReadAutomaticProtocol(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: headers.TransportProtocolUDP,
|
||||||
ServerPorts: &[2]int{34556, 34557},
|
ServerPorts: &[2]int{34556, 34557},
|
||||||
ClientPorts: inTH.ClientPorts,
|
ClientPorts: inTH.ClientPorts,
|
||||||
}
|
}
|
||||||
@@ -1072,11 +1072,11 @@ func TestClientReadAutomaticProtocol(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th = headers.Transport{
|
th = headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
InterleavedIDs: inTH.InterleavedIDs,
|
InterleavedIDs: inTH.InterleavedIDs,
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1197,11 +1197,11 @@ func TestClientReadDifferentInterleavedIDs(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
InterleavedIDs: &[2]int{2, 3},
|
InterleavedIDs: &[2]int{2, 3},
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1361,9 +1361,9 @@ func TestClientReadRedirect(t *testing.T) {
|
|||||||
StatusCode: base.StatusOK,
|
StatusCode: base.StatusOK,
|
||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: headers.TransportProtocolUDP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
ClientPorts: th.ClientPorts,
|
ClientPorts: th.ClientPorts,
|
||||||
@@ -1420,7 +1420,7 @@ func TestClientReadPause(t *testing.T) {
|
|||||||
defer close(writerDone)
|
defer close(writerDone)
|
||||||
|
|
||||||
var l1 net.PacketConn
|
var l1 net.PacketConn
|
||||||
if inTH.Protocol == base.StreamProtocolUDP {
|
if inTH.Protocol == headers.TransportProtocolUDP {
|
||||||
var err error
|
var err error
|
||||||
l1, err = net.ListenPacket("udp", "localhost:34556")
|
l1, err = net.ListenPacket("udp", "localhost:34556")
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
@@ -1433,7 +1433,7 @@ func TestClientReadPause(t *testing.T) {
|
|||||||
for {
|
for {
|
||||||
select {
|
select {
|
||||||
case <-t.C:
|
case <-t.C:
|
||||||
if inTH.Protocol == base.StreamProtocolUDP {
|
if inTH.Protocol == headers.TransportProtocolUDP {
|
||||||
l1.WriteTo([]byte("\x00\x00\x00\x00"), &net.UDPAddr{
|
l1.WriteTo([]byte("\x00\x00\x00\x00"), &net.UDPAddr{
|
||||||
IP: net.ParseIP("127.0.0.1"),
|
IP: net.ParseIP("127.0.0.1"),
|
||||||
Port: inTH.ClientPorts[0],
|
Port: inTH.ClientPorts[0],
|
||||||
@@ -1517,19 +1517,19 @@ func TestClientReadPause(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
}
|
}
|
||||||
|
|
||||||
if transport == "udp" {
|
if transport == "udp" {
|
||||||
th.Protocol = base.StreamProtocolUDP
|
th.Protocol = headers.TransportProtocolUDP
|
||||||
th.ServerPorts = &[2]int{34556, 34557}
|
th.ServerPorts = &[2]int{34556, 34557}
|
||||||
th.ClientPorts = inTH.ClientPorts
|
th.ClientPorts = inTH.ClientPorts
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
th.Protocol = base.StreamProtocolTCP
|
th.Protocol = headers.TransportProtocolTCP
|
||||||
th.InterleavedIDs = inTH.InterleavedIDs
|
th.InterleavedIDs = inTH.InterleavedIDs
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1706,9 +1706,9 @@ func TestClientReadRTCPReport(t *testing.T) {
|
|||||||
StatusCode: base.StatusOK,
|
StatusCode: base.StatusOK,
|
||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
ClientPorts: th.ClientPorts,
|
ClientPorts: th.ClientPorts,
|
||||||
@@ -1878,8 +1878,8 @@ func TestClientReadErrorTimeout(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
}
|
}
|
||||||
@@ -1891,12 +1891,12 @@ func TestClientReadErrorTimeout(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
defer l1.Close()
|
defer l1.Close()
|
||||||
|
|
||||||
th.Protocol = base.StreamProtocolUDP
|
th.Protocol = headers.TransportProtocolUDP
|
||||||
th.ServerPorts = &[2]int{34556, 34557}
|
th.ServerPorts = &[2]int{34556, 34557}
|
||||||
th.ClientPorts = inTH.ClientPorts
|
th.ClientPorts = inTH.ClientPorts
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
th.Protocol = base.StreamProtocolTCP
|
th.Protocol = headers.TransportProtocolTCP
|
||||||
th.InterleavedIDs = inTH.InterleavedIDs
|
th.InterleavedIDs = inTH.InterleavedIDs
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2035,12 +2035,12 @@ func TestClientReadIgnoreTCPInvalidTrack(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
}
|
}
|
||||||
th.Protocol = base.StreamProtocolTCP
|
th.Protocol = headers.TransportProtocolTCP
|
||||||
th.InterleavedIDs = inTH.InterleavedIDs
|
th.InterleavedIDs = inTH.InterleavedIDs
|
||||||
|
|
||||||
err = base.Response{
|
err = base.Response{
|
||||||
@@ -2165,11 +2165,11 @@ func TestClientReadSeek(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
th := headers.Transport{
|
th := headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
InterleavedIDs: inTH.InterleavedIDs,
|
InterleavedIDs: inTH.InterleavedIDs,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1249,23 +1249,23 @@ func (cc *ClientConn) doSetup(
|
|||||||
rtpListener, rtcpListener = newClientConnUDPListenerPair(cc)
|
rtpListener, rtcpListener = newClientConnUDPListenerPair(cc)
|
||||||
}
|
}
|
||||||
|
|
||||||
v1 := base.StreamDeliveryUnicast
|
v1 := headers.TransportDeliveryUnicast
|
||||||
th.Delivery = &v1
|
th.Delivery = &v1
|
||||||
th.Protocol = base.StreamProtocolUDP
|
th.Protocol = headers.TransportProtocolUDP
|
||||||
th.ClientPorts = &[2]int{
|
th.ClientPorts = &[2]int{
|
||||||
rtpListener.port(),
|
rtpListener.port(),
|
||||||
rtcpListener.port(),
|
rtcpListener.port(),
|
||||||
}
|
}
|
||||||
|
|
||||||
case TransportUDPMulticast:
|
case TransportUDPMulticast:
|
||||||
v1 := base.StreamDeliveryMulticast
|
v1 := headers.TransportDeliveryMulticast
|
||||||
th.Delivery = &v1
|
th.Delivery = &v1
|
||||||
th.Protocol = base.StreamProtocolUDP
|
th.Protocol = headers.TransportProtocolUDP
|
||||||
|
|
||||||
case TransportTCP:
|
case TransportTCP:
|
||||||
v1 := base.StreamDeliveryUnicast
|
v1 := headers.TransportDeliveryUnicast
|
||||||
th.Delivery = &v1
|
th.Delivery = &v1
|
||||||
th.Protocol = base.StreamProtocolTCP
|
th.Protocol = headers.TransportProtocolTCP
|
||||||
th.InterleavedIDs = &[2]int{(trackID * 2), (trackID * 2) + 1}
|
th.InterleavedIDs = &[2]int{(trackID * 2), (trackID * 2) + 1}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1325,7 +1325,7 @@ func (cc *ClientConn) doSetup(
|
|||||||
|
|
||||||
switch proto {
|
switch proto {
|
||||||
case TransportUDP:
|
case TransportUDP:
|
||||||
if thRes.Delivery != nil && *thRes.Delivery != base.StreamDeliveryUnicast {
|
if thRes.Delivery != nil && *thRes.Delivery != headers.TransportDeliveryUnicast {
|
||||||
return nil, liberrors.ErrClientTransportHeaderInvalidDelivery{}
|
return nil, liberrors.ErrClientTransportHeaderInvalidDelivery{}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1338,7 +1338,7 @@ func (cc *ClientConn) doSetup(
|
|||||||
}
|
}
|
||||||
|
|
||||||
case TransportUDPMulticast:
|
case TransportUDPMulticast:
|
||||||
if thRes.Delivery == nil || *thRes.Delivery != base.StreamDeliveryMulticast {
|
if thRes.Delivery == nil || *thRes.Delivery != headers.TransportDeliveryMulticast {
|
||||||
return nil, liberrors.ErrClientTransportHeaderInvalidDelivery{}
|
return nil, liberrors.ErrClientTransportHeaderInvalidDelivery{}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1364,7 +1364,7 @@ func (cc *ClientConn) doSetup(
|
|||||||
}
|
}
|
||||||
|
|
||||||
case TransportTCP:
|
case TransportTCP:
|
||||||
if thRes.Delivery != nil && *thRes.Delivery != base.StreamDeliveryUnicast {
|
if thRes.Delivery != nil && *thRes.Delivery != headers.TransportDeliveryUnicast {
|
||||||
return nil, liberrors.ErrClientTransportHeaderInvalidDelivery{}
|
return nil, liberrors.ErrClientTransportHeaderInvalidDelivery{}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,73 +0,0 @@
|
|||||||
package base
|
|
||||||
|
|
||||||
// StreamProtocol is the protocol of a stream.
|
|
||||||
type StreamProtocol int
|
|
||||||
|
|
||||||
const (
|
|
||||||
// StreamProtocolUDP means that the stream uses the UDP protocol
|
|
||||||
StreamProtocolUDP StreamProtocol = iota
|
|
||||||
|
|
||||||
// StreamProtocolTCP means that the stream uses the TCP protocol
|
|
||||||
StreamProtocolTCP
|
|
||||||
)
|
|
||||||
|
|
||||||
var streamProtocolLabels = map[StreamProtocol]string{
|
|
||||||
StreamProtocolUDP: "UDP",
|
|
||||||
StreamProtocolTCP: "TCP",
|
|
||||||
}
|
|
||||||
|
|
||||||
// String implements fmt.Stringer.
|
|
||||||
func (sp StreamProtocol) String() string {
|
|
||||||
if l, ok := streamProtocolLabels[sp]; ok {
|
|
||||||
return l
|
|
||||||
}
|
|
||||||
return "unknown"
|
|
||||||
}
|
|
||||||
|
|
||||||
// StreamDelivery is the delivery method of a stream.
|
|
||||||
type StreamDelivery int
|
|
||||||
|
|
||||||
const (
|
|
||||||
// StreamDeliveryUnicast means that the stream is unicasted
|
|
||||||
StreamDeliveryUnicast StreamDelivery = iota
|
|
||||||
|
|
||||||
// StreamDeliveryMulticast means that the stream is multicasted
|
|
||||||
StreamDeliveryMulticast
|
|
||||||
)
|
|
||||||
|
|
||||||
var streamDeliveryLabels = map[StreamDelivery]string{
|
|
||||||
StreamDeliveryUnicast: "unicast",
|
|
||||||
StreamDeliveryMulticast: "multicast",
|
|
||||||
}
|
|
||||||
|
|
||||||
// String implements fmt.Stringer.
|
|
||||||
func (sc StreamDelivery) String() string {
|
|
||||||
if l, ok := streamDeliveryLabels[sc]; ok {
|
|
||||||
return l
|
|
||||||
}
|
|
||||||
return "unknown"
|
|
||||||
}
|
|
||||||
|
|
||||||
// StreamType is the stream type.
|
|
||||||
type StreamType int
|
|
||||||
|
|
||||||
const (
|
|
||||||
// StreamTypeRTP means that the stream contains RTP packets
|
|
||||||
StreamTypeRTP StreamType = iota
|
|
||||||
|
|
||||||
// StreamTypeRTCP means that the stream contains RTCP packets
|
|
||||||
StreamTypeRTCP
|
|
||||||
)
|
|
||||||
|
|
||||||
var streamTypeLabels = map[StreamType]string{
|
|
||||||
StreamTypeRTP: "RTP",
|
|
||||||
StreamTypeRTCP: "RTCP",
|
|
||||||
}
|
|
||||||
|
|
||||||
// String implements fmt.Stringer
|
|
||||||
func (st StreamType) String() string {
|
|
||||||
if l, ok := streamTypeLabels[st]; ok {
|
|
||||||
return l
|
|
||||||
}
|
|
||||||
return "unknown"
|
|
||||||
}
|
|
@@ -1,18 +0,0 @@
|
|||||||
package base
|
|
||||||
|
|
||||||
import (
|
|
||||||
"testing"
|
|
||||||
|
|
||||||
"github.com/stretchr/testify/require"
|
|
||||||
)
|
|
||||||
|
|
||||||
func TestDefs(t *testing.T) {
|
|
||||||
require.NotEqual(t, "unknown", StreamProtocolUDP.String())
|
|
||||||
require.Equal(t, "unknown", StreamProtocol(4).String())
|
|
||||||
|
|
||||||
require.NotEqual(t, "unknown", StreamDeliveryUnicast.String())
|
|
||||||
require.Equal(t, "unknown", StreamDelivery(4).String())
|
|
||||||
|
|
||||||
require.NotEqual(t, "unknown", StreamTypeRTP.String())
|
|
||||||
require.Equal(t, "unknown", StreamType(4).String())
|
|
||||||
}
|
|
25
pkg/base/streamtype.go
Normal file
25
pkg/base/streamtype.go
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
package base
|
||||||
|
|
||||||
|
// StreamType is a stream type.
|
||||||
|
type StreamType int
|
||||||
|
|
||||||
|
const (
|
||||||
|
// StreamTypeRTP means that the stream contains RTP packets
|
||||||
|
StreamTypeRTP StreamType = iota
|
||||||
|
|
||||||
|
// StreamTypeRTCP means that the stream contains RTCP packets
|
||||||
|
StreamTypeRTCP
|
||||||
|
)
|
||||||
|
|
||||||
|
var streamTypeLabels = map[StreamType]string{
|
||||||
|
StreamTypeRTP: "RTP",
|
||||||
|
StreamTypeRTCP: "RTCP",
|
||||||
|
}
|
||||||
|
|
||||||
|
// String implements fmt.Stringer
|
||||||
|
func (st StreamType) String() string {
|
||||||
|
if l, ok := streamTypeLabels[st]; ok {
|
||||||
|
return l
|
||||||
|
}
|
||||||
|
return "unknown"
|
||||||
|
}
|
12
pkg/base/streamtype_test.go
Normal file
12
pkg/base/streamtype_test.go
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
package base
|
||||||
|
|
||||||
|
import (
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
"github.com/stretchr/testify/require"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestStreamType(t *testing.T) {
|
||||||
|
require.NotEqual(t, "unknown", StreamTypeRTP.String())
|
||||||
|
require.Equal(t, "unknown", StreamType(4).String())
|
||||||
|
}
|
@@ -11,6 +11,24 @@ import (
|
|||||||
"github.com/aler9/gortsplib/pkg/base"
|
"github.com/aler9/gortsplib/pkg/base"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// TransportProtocol is a transport protocol.
|
||||||
|
type TransportProtocol int
|
||||||
|
|
||||||
|
// standard transport protocols.
|
||||||
|
const (
|
||||||
|
TransportProtocolUDP TransportProtocol = iota
|
||||||
|
TransportProtocolTCP
|
||||||
|
)
|
||||||
|
|
||||||
|
// TransportDelivery is a delivery method.
|
||||||
|
type TransportDelivery int
|
||||||
|
|
||||||
|
// standard transport delivery methods.
|
||||||
|
const (
|
||||||
|
TransportDeliveryUnicast TransportDelivery = iota
|
||||||
|
TransportDeliveryMulticast
|
||||||
|
)
|
||||||
|
|
||||||
// TransportMode is a transport mode.
|
// TransportMode is a transport mode.
|
||||||
type TransportMode int
|
type TransportMode int
|
||||||
|
|
||||||
@@ -25,10 +43,10 @@ const (
|
|||||||
// Transport is a Transport header.
|
// Transport is a Transport header.
|
||||||
type Transport struct {
|
type Transport struct {
|
||||||
// protocol of the stream
|
// protocol of the stream
|
||||||
Protocol base.StreamProtocol
|
Protocol TransportProtocol
|
||||||
|
|
||||||
// (optional) delivery method of the stream
|
// (optional) delivery method of the stream
|
||||||
Delivery *base.StreamDelivery
|
Delivery *TransportDelivery
|
||||||
|
|
||||||
// (optional) destination IP
|
// (optional) destination IP
|
||||||
Destination *net.IP
|
Destination *net.IP
|
||||||
@@ -107,19 +125,19 @@ func (h *Transport) Read(v base.HeaderValue) error {
|
|||||||
|
|
||||||
switch k {
|
switch k {
|
||||||
case "RTP/AVP", "RTP/AVP/UDP":
|
case "RTP/AVP", "RTP/AVP/UDP":
|
||||||
h.Protocol = base.StreamProtocolUDP
|
h.Protocol = TransportProtocolUDP
|
||||||
protocolFound = true
|
protocolFound = true
|
||||||
|
|
||||||
case "RTP/AVP/TCP":
|
case "RTP/AVP/TCP":
|
||||||
h.Protocol = base.StreamProtocolTCP
|
h.Protocol = TransportProtocolTCP
|
||||||
protocolFound = true
|
protocolFound = true
|
||||||
|
|
||||||
case "unicast":
|
case "unicast":
|
||||||
v := base.StreamDeliveryUnicast
|
v := TransportDeliveryUnicast
|
||||||
h.Delivery = &v
|
h.Delivery = &v
|
||||||
|
|
||||||
case "multicast":
|
case "multicast":
|
||||||
v := base.StreamDeliveryMulticast
|
v := TransportDeliveryMulticast
|
||||||
h.Delivery = &v
|
h.Delivery = &v
|
||||||
|
|
||||||
case "destination":
|
case "destination":
|
||||||
@@ -221,14 +239,14 @@ func (h *Transport) Read(v base.HeaderValue) error {
|
|||||||
func (h Transport) Write() base.HeaderValue {
|
func (h Transport) Write() base.HeaderValue {
|
||||||
var rets []string
|
var rets []string
|
||||||
|
|
||||||
if h.Protocol == base.StreamProtocolUDP {
|
if h.Protocol == TransportProtocolUDP {
|
||||||
rets = append(rets, "RTP/AVP")
|
rets = append(rets, "RTP/AVP")
|
||||||
} else {
|
} else {
|
||||||
rets = append(rets, "RTP/AVP/TCP")
|
rets = append(rets, "RTP/AVP/TCP")
|
||||||
}
|
}
|
||||||
|
|
||||||
if h.Delivery != nil {
|
if h.Delivery != nil {
|
||||||
if *h.Delivery == base.StreamDeliveryUnicast {
|
if *h.Delivery == TransportDeliveryUnicast {
|
||||||
rets = append(rets, "unicast")
|
rets = append(rets, "unicast")
|
||||||
} else {
|
} else {
|
||||||
rets = append(rets, "multicast")
|
rets = append(rets, "multicast")
|
||||||
|
@@ -20,9 +20,9 @@ var casesTransport = []struct {
|
|||||||
base.HeaderValue{`RTP/AVP;unicast;client_port=3456-3457;mode="PLAY"`},
|
base.HeaderValue{`RTP/AVP;unicast;client_port=3456-3457;mode="PLAY"`},
|
||||||
base.HeaderValue{`RTP/AVP;unicast;client_port=3456-3457;mode=play`},
|
base.HeaderValue{`RTP/AVP;unicast;client_port=3456-3457;mode=play`},
|
||||||
Transport{
|
Transport{
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: TransportProtocolUDP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
ClientPorts: &[2]int{3456, 3457},
|
ClientPorts: &[2]int{3456, 3457},
|
||||||
@@ -37,9 +37,9 @@ var casesTransport = []struct {
|
|||||||
base.HeaderValue{`RTP/AVP/UDP;unicast;client_port=3056-3057;server_port=5000-5001`},
|
base.HeaderValue{`RTP/AVP/UDP;unicast;client_port=3056-3057;server_port=5000-5001`},
|
||||||
base.HeaderValue{`RTP/AVP;unicast;client_port=3056-3057;server_port=5000-5001`},
|
base.HeaderValue{`RTP/AVP;unicast;client_port=3056-3057;server_port=5000-5001`},
|
||||||
Transport{
|
Transport{
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: TransportProtocolUDP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
ClientPorts: &[2]int{3056, 3057},
|
ClientPorts: &[2]int{3056, 3057},
|
||||||
@@ -51,9 +51,9 @@ var casesTransport = []struct {
|
|||||||
base.HeaderValue{`RTP/AVP;multicast;destination=225.219.201.15;port=7000-7001;ttl=127`},
|
base.HeaderValue{`RTP/AVP;multicast;destination=225.219.201.15;port=7000-7001;ttl=127`},
|
||||||
base.HeaderValue{`RTP/AVP;multicast;destination=225.219.201.15;port=7000-7001;ttl=127`},
|
base.HeaderValue{`RTP/AVP;multicast;destination=225.219.201.15;port=7000-7001;ttl=127`},
|
||||||
Transport{
|
Transport{
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: TransportProtocolUDP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *TransportDelivery {
|
||||||
v := base.StreamDeliveryMulticast
|
v := TransportDeliveryMulticast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Destination: func() *net.IP {
|
Destination: func() *net.IP {
|
||||||
@@ -72,7 +72,7 @@ var casesTransport = []struct {
|
|||||||
base.HeaderValue{`RTP/AVP/TCP;interleaved=0-1`},
|
base.HeaderValue{`RTP/AVP/TCP;interleaved=0-1`},
|
||||||
base.HeaderValue{`RTP/AVP/TCP;interleaved=0-1`},
|
base.HeaderValue{`RTP/AVP/TCP;interleaved=0-1`},
|
||||||
Transport{
|
Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: TransportProtocolTCP,
|
||||||
InterleavedIDs: &[2]int{0, 1},
|
InterleavedIDs: &[2]int{0, 1},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -81,9 +81,9 @@ var casesTransport = []struct {
|
|||||||
base.HeaderValue{`RTP/AVP/UDP;unicast;server_port=8052;client_port=14186;ssrc=0B6020AD;mode=PLAY`},
|
base.HeaderValue{`RTP/AVP/UDP;unicast;server_port=8052;client_port=14186;ssrc=0B6020AD;mode=PLAY`},
|
||||||
base.HeaderValue{`RTP/AVP;unicast;client_port=14186-14187;server_port=8052-8053;ssrc=0B6020AD;mode=play`},
|
base.HeaderValue{`RTP/AVP;unicast;client_port=14186-14187;server_port=8052-8053;ssrc=0B6020AD;mode=play`},
|
||||||
Transport{
|
Transport{
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: TransportProtocolUDP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *TransportMode {
|
Mode: func() *TransportMode {
|
||||||
@@ -103,9 +103,9 @@ var casesTransport = []struct {
|
|||||||
base.HeaderValue{`RTP/AVP/UDP;unicast;mode=receive;source=localhost;client_port=14186-14187;server_port=5000-5001`},
|
base.HeaderValue{`RTP/AVP/UDP;unicast;mode=receive;source=localhost;client_port=14186-14187;server_port=5000-5001`},
|
||||||
base.HeaderValue{`RTP/AVP;unicast;client_port=14186-14187;server_port=5000-5001;mode=record`},
|
base.HeaderValue{`RTP/AVP;unicast;client_port=14186-14187;server_port=5000-5001;mode=record`},
|
||||||
Transport{
|
Transport{
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: TransportProtocolUDP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *TransportMode {
|
Mode: func() *TransportMode {
|
||||||
@@ -121,9 +121,9 @@ var casesTransport = []struct {
|
|||||||
base.HeaderValue{`client_port=3456-3457;RTP/AVP;mode="PLAY";unicast`},
|
base.HeaderValue{`client_port=3456-3457;RTP/AVP;mode="PLAY";unicast`},
|
||||||
base.HeaderValue{`RTP/AVP;unicast;client_port=3456-3457;mode=play`},
|
base.HeaderValue{`RTP/AVP;unicast;client_port=3456-3457;mode=play`},
|
||||||
Transport{
|
Transport{
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: TransportProtocolUDP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
ClientPorts: &[2]int{3456, 3457},
|
ClientPorts: &[2]int{3456, 3457},
|
||||||
@@ -138,9 +138,9 @@ var casesTransport = []struct {
|
|||||||
base.HeaderValue{`RTP/AVP/UDP;unicast;client_port=14186;server_port=8052;ssrc=4317f;mode=play`},
|
base.HeaderValue{`RTP/AVP/UDP;unicast;client_port=14186;server_port=8052;ssrc=4317f;mode=play`},
|
||||||
base.HeaderValue{`RTP/AVP;unicast;client_port=14186-14187;server_port=8052-8053;ssrc=0004317F;mode=play`},
|
base.HeaderValue{`RTP/AVP;unicast;client_port=14186-14187;server_port=8052-8053;ssrc=0004317F;mode=play`},
|
||||||
Transport{
|
Transport{
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: TransportProtocolUDP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *TransportMode {
|
Mode: func() *TransportMode {
|
||||||
|
@@ -358,9 +358,9 @@ func TestServerPublishSetupPath(t *testing.T) {
|
|||||||
require.Equal(t, base.StatusOK, res.StatusCode)
|
require.Equal(t, base.StatusOK, res.StatusCode)
|
||||||
|
|
||||||
th := &headers.Transport{
|
th := &headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -439,9 +439,9 @@ func TestServerPublishErrorSetupDifferentPaths(t *testing.T) {
|
|||||||
require.Equal(t, base.StatusOK, res.StatusCode)
|
require.Equal(t, base.StatusOK, res.StatusCode)
|
||||||
|
|
||||||
th := &headers.Transport{
|
th := &headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -521,9 +521,9 @@ func TestServerPublishErrorSetupTrackTwice(t *testing.T) {
|
|||||||
require.Equal(t, base.StatusOK, res.StatusCode)
|
require.Equal(t, base.StatusOK, res.StatusCode)
|
||||||
|
|
||||||
th := &headers.Transport{
|
th := &headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -623,9 +623,9 @@ func TestServerPublishErrorRecordPartialTracks(t *testing.T) {
|
|||||||
require.Equal(t, base.StatusOK, res.StatusCode)
|
require.Equal(t, base.StatusOK, res.StatusCode)
|
||||||
|
|
||||||
th := &headers.Transport{
|
th := &headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -775,8 +775,8 @@ func TestServerPublish(t *testing.T) {
|
|||||||
<-sessionOpened
|
<-sessionOpened
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -786,10 +786,10 @@ func TestServerPublish(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if transport == "udp" {
|
if transport == "udp" {
|
||||||
inTH.Protocol = base.StreamProtocolUDP
|
inTH.Protocol = headers.TransportProtocolUDP
|
||||||
inTH.ClientPorts = &[2]int{35466, 35467}
|
inTH.ClientPorts = &[2]int{35466, 35467}
|
||||||
} else {
|
} else {
|
||||||
inTH.Protocol = base.StreamProtocolTCP
|
inTH.Protocol = headers.TransportProtocolTCP
|
||||||
inTH.InterleavedIDs = &[2]int{0, 1}
|
inTH.InterleavedIDs = &[2]int{0, 1}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -961,15 +961,15 @@ func TestServerPublishErrorInvalidProtocol(t *testing.T) {
|
|||||||
require.Equal(t, base.StatusOK, res.StatusCode)
|
require.Equal(t, base.StatusOK, res.StatusCode)
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
v := headers.TransportModeRecord
|
v := headers.TransportModeRecord
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: headers.TransportProtocolUDP,
|
||||||
ClientPorts: &[2]int{35466, 35467},
|
ClientPorts: &[2]int{35466, 35467},
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1062,15 +1062,15 @@ func TestServerPublishRTCPReport(t *testing.T) {
|
|||||||
require.Equal(t, base.StatusOK, res.StatusCode)
|
require.Equal(t, base.StatusOK, res.StatusCode)
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
v := headers.TransportModeRecord
|
v := headers.TransportModeRecord
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
InterleavedIDs: &[2]int{0, 1},
|
InterleavedIDs: &[2]int{0, 1},
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1221,8 +1221,8 @@ func TestServerPublishTimeout(t *testing.T) {
|
|||||||
require.Equal(t, base.StatusOK, res.StatusCode)
|
require.Equal(t, base.StatusOK, res.StatusCode)
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -1232,10 +1232,10 @@ func TestServerPublishTimeout(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if transport == "udp" {
|
if transport == "udp" {
|
||||||
inTH.Protocol = base.StreamProtocolUDP
|
inTH.Protocol = headers.TransportProtocolUDP
|
||||||
inTH.ClientPorts = &[2]int{35466, 35467}
|
inTH.ClientPorts = &[2]int{35466, 35467}
|
||||||
} else {
|
} else {
|
||||||
inTH.Protocol = base.StreamProtocolTCP
|
inTH.Protocol = headers.TransportProtocolTCP
|
||||||
inTH.InterleavedIDs = &[2]int{0, 1}
|
inTH.InterleavedIDs = &[2]int{0, 1}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1348,8 +1348,8 @@ func TestServerPublishWithoutTeardown(t *testing.T) {
|
|||||||
require.Equal(t, base.StatusOK, res.StatusCode)
|
require.Equal(t, base.StatusOK, res.StatusCode)
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -1359,10 +1359,10 @@ func TestServerPublishWithoutTeardown(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if transport == "udp" {
|
if transport == "udp" {
|
||||||
inTH.Protocol = base.StreamProtocolUDP
|
inTH.Protocol = headers.TransportProtocolUDP
|
||||||
inTH.ClientPorts = &[2]int{35466, 35467}
|
inTH.ClientPorts = &[2]int{35466, 35467}
|
||||||
} else {
|
} else {
|
||||||
inTH.Protocol = base.StreamProtocolTCP
|
inTH.Protocol = headers.TransportProtocolTCP
|
||||||
inTH.InterleavedIDs = &[2]int{0, 1}
|
inTH.InterleavedIDs = &[2]int{0, 1}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1467,15 +1467,15 @@ func TestServerPublishUDPChangeConn(t *testing.T) {
|
|||||||
require.Equal(t, base.StatusOK, res.StatusCode)
|
require.Equal(t, base.StatusOK, res.StatusCode)
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
v := headers.TransportModeRecord
|
v := headers.TransportModeRecord
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: headers.TransportProtocolUDP,
|
||||||
ClientPorts: &[2]int{35466, 35467},
|
ClientPorts: &[2]int{35466, 35467},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -116,9 +116,9 @@ func TestServerReadSetupPath(t *testing.T) {
|
|||||||
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
||||||
|
|
||||||
th := &headers.Transport{
|
th := &headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -174,9 +174,9 @@ func TestServerReadErrorSetupDifferentPaths(t *testing.T) {
|
|||||||
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
||||||
|
|
||||||
th := &headers.Transport{
|
th := &headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -246,9 +246,9 @@ func TestServerReadErrorSetupTrackTwice(t *testing.T) {
|
|||||||
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
||||||
|
|
||||||
th := &headers.Transport{
|
th := &headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -399,20 +399,20 @@ func TestServerRead(t *testing.T) {
|
|||||||
|
|
||||||
switch transport {
|
switch transport {
|
||||||
case "udp":
|
case "udp":
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
inTH.Delivery = &v
|
inTH.Delivery = &v
|
||||||
inTH.Protocol = base.StreamProtocolUDP
|
inTH.Protocol = headers.TransportProtocolUDP
|
||||||
inTH.ClientPorts = &[2]int{35466, 35467}
|
inTH.ClientPorts = &[2]int{35466, 35467}
|
||||||
|
|
||||||
case "multicast":
|
case "multicast":
|
||||||
v := base.StreamDeliveryMulticast
|
v := headers.TransportDeliveryMulticast
|
||||||
inTH.Delivery = &v
|
inTH.Delivery = &v
|
||||||
inTH.Protocol = base.StreamProtocolUDP
|
inTH.Protocol = headers.TransportProtocolUDP
|
||||||
|
|
||||||
default:
|
default:
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
inTH.Delivery = &v
|
inTH.Delivery = &v
|
||||||
inTH.Protocol = base.StreamProtocolTCP
|
inTH.Protocol = headers.TransportProtocolTCP
|
||||||
inTH.InterleavedIDs = &[2]int{4, 5}
|
inTH.InterleavedIDs = &[2]int{4, 5}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -433,16 +433,16 @@ func TestServerRead(t *testing.T) {
|
|||||||
|
|
||||||
switch transport {
|
switch transport {
|
||||||
case "udp":
|
case "udp":
|
||||||
require.Equal(t, base.StreamProtocolUDP, th.Protocol)
|
require.Equal(t, headers.TransportProtocolUDP, th.Protocol)
|
||||||
require.Equal(t, base.StreamDeliveryUnicast, *th.Delivery)
|
require.Equal(t, headers.TransportDeliveryUnicast, *th.Delivery)
|
||||||
|
|
||||||
case "multicast":
|
case "multicast":
|
||||||
require.Equal(t, base.StreamProtocolUDP, th.Protocol)
|
require.Equal(t, headers.TransportProtocolUDP, th.Protocol)
|
||||||
require.Equal(t, base.StreamDeliveryMulticast, *th.Delivery)
|
require.Equal(t, headers.TransportDeliveryMulticast, *th.Delivery)
|
||||||
|
|
||||||
default:
|
default:
|
||||||
require.Equal(t, base.StreamProtocolTCP, th.Protocol)
|
require.Equal(t, headers.TransportProtocolTCP, th.Protocol)
|
||||||
require.Equal(t, base.StreamDeliveryUnicast, *th.Delivery)
|
require.Equal(t, headers.TransportDeliveryUnicast, *th.Delivery)
|
||||||
}
|
}
|
||||||
|
|
||||||
<-sessionOpened
|
<-sessionOpened
|
||||||
@@ -666,9 +666,9 @@ func TestServerReadTCPResponseBeforeFrames(t *testing.T) {
|
|||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"CSeq": base.HeaderValue{"1"},
|
"CSeq": base.HeaderValue{"1"},
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -737,9 +737,9 @@ func TestServerReadPlayPlay(t *testing.T) {
|
|||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"CSeq": base.HeaderValue{"1"},
|
"CSeq": base.HeaderValue{"1"},
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: headers.TransportProtocolUDP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -844,9 +844,9 @@ func TestServerReadPlayPausePlay(t *testing.T) {
|
|||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"CSeq": base.HeaderValue{"1"},
|
"CSeq": base.HeaderValue{"1"},
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -958,9 +958,9 @@ func TestServerReadPlayPausePause(t *testing.T) {
|
|||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"CSeq": base.HeaderValue{"1"},
|
"CSeq": base.HeaderValue{"1"},
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -1065,8 +1065,8 @@ func TestServerReadTimeout(t *testing.T) {
|
|||||||
bconn := bufio.NewReadWriter(bufio.NewReader(nconn), bufio.NewWriter(nconn))
|
bconn := bufio.NewReadWriter(bufio.NewReader(nconn), bufio.NewWriter(nconn))
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -1075,7 +1075,7 @@ func TestServerReadTimeout(t *testing.T) {
|
|||||||
}(),
|
}(),
|
||||||
}
|
}
|
||||||
|
|
||||||
inTH.Protocol = base.StreamProtocolUDP
|
inTH.Protocol = headers.TransportProtocolUDP
|
||||||
inTH.ClientPorts = &[2]int{35466, 35467}
|
inTH.ClientPorts = &[2]int{35466, 35467}
|
||||||
|
|
||||||
res, err := writeReqReadRes(bconn, base.Request{
|
res, err := writeReqReadRes(bconn, base.Request{
|
||||||
@@ -1162,8 +1162,8 @@ func TestServerReadWithoutTeardown(t *testing.T) {
|
|||||||
bconn := bufio.NewReadWriter(bufio.NewReader(nconn), bufio.NewWriter(nconn))
|
bconn := bufio.NewReadWriter(bufio.NewReader(nconn), bufio.NewWriter(nconn))
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -1173,10 +1173,10 @@ func TestServerReadWithoutTeardown(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if transport == "udp" {
|
if transport == "udp" {
|
||||||
inTH.Protocol = base.StreamProtocolUDP
|
inTH.Protocol = headers.TransportProtocolUDP
|
||||||
inTH.ClientPorts = &[2]int{35466, 35467}
|
inTH.ClientPorts = &[2]int{35466, 35467}
|
||||||
} else {
|
} else {
|
||||||
inTH.Protocol = base.StreamProtocolTCP
|
inTH.Protocol = headers.TransportProtocolTCP
|
||||||
inTH.InterleavedIDs = &[2]int{0, 1}
|
inTH.InterleavedIDs = &[2]int{0, 1}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1253,15 +1253,15 @@ func TestServerReadUDPChangeConn(t *testing.T) {
|
|||||||
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
v := headers.TransportModePlay
|
v := headers.TransportModePlay
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: headers.TransportProtocolUDP,
|
||||||
ClientPorts: &[2]int{35466, 35467},
|
ClientPorts: &[2]int{35466, 35467},
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1344,15 +1344,15 @@ func TestServerReadErrorUDPSamePorts(t *testing.T) {
|
|||||||
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
v := headers.TransportModePlay
|
v := headers.TransportModePlay
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: headers.TransportProtocolUDP,
|
||||||
ClientPorts: &[2]int{35466, 35467},
|
ClientPorts: &[2]int{35466, 35467},
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1386,15 +1386,15 @@ func TestServerReadErrorUDPSamePorts(t *testing.T) {
|
|||||||
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
v := headers.TransportModePlay
|
v := headers.TransportModePlay
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolUDP,
|
Protocol: headers.TransportProtocolUDP,
|
||||||
ClientPorts: &[2]int{35466, 35467},
|
ClientPorts: &[2]int{35466, 35467},
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1448,15 +1448,15 @@ func TestServerReadNonSetuppedPath(t *testing.T) {
|
|||||||
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
bconn := bufio.NewReadWriter(bufio.NewReader(conn), bufio.NewWriter(conn))
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
v := headers.TransportModePlay
|
v := headers.TransportModePlay
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
InterleavedIDs: &[2]int{0, 1},
|
InterleavedIDs: &[2]int{0, 1},
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1500,15 +1500,15 @@ func TestServerReadAdditionalInfos(t *testing.T) {
|
|||||||
ssrcs := make([]*uint32, 2)
|
ssrcs := make([]*uint32, 2)
|
||||||
|
|
||||||
inTH := &headers.Transport{
|
inTH := &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
v := headers.TransportModePlay
|
v := headers.TransportModePlay
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
InterleavedIDs: &[2]int{0, 1},
|
InterleavedIDs: &[2]int{0, 1},
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1529,15 +1529,15 @@ func TestServerReadAdditionalInfos(t *testing.T) {
|
|||||||
ssrcs[0] = th.SSRC
|
ssrcs[0] = th.SSRC
|
||||||
|
|
||||||
inTH = &headers.Transport{
|
inTH = &headers.Transport{
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
v := headers.TransportModePlay
|
v := headers.TransportModePlay
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
InterleavedIDs: &[2]int{2, 3},
|
InterleavedIDs: &[2]int{2, 3},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -700,9 +700,9 @@ func TestServerErrorTCPTwoConnOneSession(t *testing.T) {
|
|||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"CSeq": base.HeaderValue{"1"},
|
"CSeq": base.HeaderValue{"1"},
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -738,9 +738,9 @@ func TestServerErrorTCPTwoConnOneSession(t *testing.T) {
|
|||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"CSeq": base.HeaderValue{"1"},
|
"CSeq": base.HeaderValue{"1"},
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -797,9 +797,9 @@ func TestServerErrorTCPOneConnTwoSessions(t *testing.T) {
|
|||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"CSeq": base.HeaderValue{"1"},
|
"CSeq": base.HeaderValue{"1"},
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -830,9 +830,9 @@ func TestServerErrorTCPOneConnTwoSessions(t *testing.T) {
|
|||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"CSeq": base.HeaderValue{"3"},
|
"CSeq": base.HeaderValue{"3"},
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -995,9 +995,9 @@ func TestServerSessionClose(t *testing.T) {
|
|||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"CSeq": base.HeaderValue{"1"},
|
"CSeq": base.HeaderValue{"1"},
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -1048,9 +1048,9 @@ func TestServerSessionAutoClose(t *testing.T) {
|
|||||||
Header: base.Header{
|
Header: base.Header{
|
||||||
"CSeq": base.HeaderValue{"1"},
|
"CSeq": base.HeaderValue{"1"},
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
@@ -1156,9 +1156,9 @@ func TestServerErrorInvalidPath(t *testing.T) {
|
|||||||
"CSeq": base.HeaderValue{"2"},
|
"CSeq": base.HeaderValue{"2"},
|
||||||
"Session": base.HeaderValue{sxID},
|
"Session": base.HeaderValue{sxID},
|
||||||
"Transport": headers.Transport{
|
"Transport": headers.Transport{
|
||||||
Protocol: base.StreamProtocolTCP,
|
Protocol: headers.TransportProtocolTCP,
|
||||||
Delivery: func() *base.StreamDelivery {
|
Delivery: func() *headers.TransportDelivery {
|
||||||
v := base.StreamDeliveryUnicast
|
v := headers.TransportDeliveryUnicast
|
||||||
return &v
|
return &v
|
||||||
}(),
|
}(),
|
||||||
Mode: func() *headers.TransportMode {
|
Mode: func() *headers.TransportMode {
|
||||||
|
@@ -76,22 +76,22 @@ func setupGetTrackIDPathQuery(
|
|||||||
}
|
}
|
||||||
|
|
||||||
func setupGetTransport(th headers.Transport) (Transport, bool) {
|
func setupGetTransport(th headers.Transport) (Transport, bool) {
|
||||||
delivery := func() base.StreamDelivery {
|
delivery := func() headers.TransportDelivery {
|
||||||
if th.Delivery != nil {
|
if th.Delivery != nil {
|
||||||
return *th.Delivery
|
return *th.Delivery
|
||||||
}
|
}
|
||||||
return base.StreamDeliveryUnicast
|
return headers.TransportDeliveryUnicast
|
||||||
}()
|
}()
|
||||||
|
|
||||||
switch th.Protocol {
|
switch th.Protocol {
|
||||||
case base.StreamProtocolUDP:
|
case headers.TransportProtocolUDP:
|
||||||
if delivery == base.StreamDeliveryUnicast {
|
if delivery == headers.TransportDeliveryUnicast {
|
||||||
return TransportUDP, true
|
return TransportUDP, true
|
||||||
}
|
}
|
||||||
return TransportUDPMulticast, true
|
return TransportUDPMulticast, true
|
||||||
|
|
||||||
default: // TCP
|
default: // TCP
|
||||||
if delivery != base.StreamDeliveryUnicast {
|
if delivery != headers.TransportDeliveryUnicast {
|
||||||
return 0, false
|
return 0, false
|
||||||
}
|
}
|
||||||
return TransportTCP, true
|
return TransportTCP, true
|
||||||
@@ -696,15 +696,15 @@ func (ss *ServerSession) handleRequest(sc *ServerConn, req *base.Request) (*base
|
|||||||
sst.udpRTPPort = inTH.ClientPorts[0]
|
sst.udpRTPPort = inTH.ClientPorts[0]
|
||||||
sst.udpRTCPPort = inTH.ClientPorts[1]
|
sst.udpRTCPPort = inTH.ClientPorts[1]
|
||||||
|
|
||||||
th.Protocol = base.StreamProtocolUDP
|
th.Protocol = headers.TransportProtocolUDP
|
||||||
de := base.StreamDeliveryUnicast
|
de := headers.TransportDeliveryUnicast
|
||||||
th.Delivery = &de
|
th.Delivery = &de
|
||||||
th.ClientPorts = inTH.ClientPorts
|
th.ClientPorts = inTH.ClientPorts
|
||||||
th.ServerPorts = &[2]int{sc.s.udpRTPListener.port(), sc.s.udpRTCPListener.port()}
|
th.ServerPorts = &[2]int{sc.s.udpRTPListener.port(), sc.s.udpRTCPListener.port()}
|
||||||
|
|
||||||
case TransportUDPMulticast:
|
case TransportUDPMulticast:
|
||||||
th.Protocol = base.StreamProtocolUDP
|
th.Protocol = headers.TransportProtocolUDP
|
||||||
de := base.StreamDeliveryMulticast
|
de := headers.TransportDeliveryMulticast
|
||||||
th.Delivery = &de
|
th.Delivery = &de
|
||||||
v := uint(127)
|
v := uint(127)
|
||||||
th.TTL = &v
|
th.TTL = &v
|
||||||
@@ -724,8 +724,8 @@ func (ss *ServerSession) handleRequest(sc *ServerConn, req *base.Request) (*base
|
|||||||
|
|
||||||
ss.setuppedTracksByChannel[inTH.InterleavedIDs[0]] = trackID
|
ss.setuppedTracksByChannel[inTH.InterleavedIDs[0]] = trackID
|
||||||
|
|
||||||
th.Protocol = base.StreamProtocolTCP
|
th.Protocol = headers.TransportProtocolTCP
|
||||||
de := base.StreamDeliveryUnicast
|
de := headers.TransportDeliveryUnicast
|
||||||
th.Delivery = &de
|
th.Delivery = &de
|
||||||
th.InterleavedIDs = inTH.InterleavedIDs
|
th.InterleavedIDs = inTH.InterleavedIDs
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user