mirror of
https://github.com/aler9/gortsplib
synced 2025-10-05 15:16:51 +08:00
track: expose Set/GetControl
This is useful for clients that need to override the control field, which was
possible prior to 6d5bf0c1bb
via the Media field.
This commit is contained in:

committed by
Alessandro Ros

parent
247571eec8
commit
1b2a78a744
@@ -28,7 +28,7 @@ func invalidURLAnnounceReq(t *testing.T, control string) base.Request {
|
||||
Body: func() []byte {
|
||||
track, err := NewTrackH264(96, []byte{0x01, 0x02, 0x03, 0x04}, []byte{0x01, 0x02, 0x03, 0x04}, nil)
|
||||
require.NoError(t, err)
|
||||
track.setControl(control)
|
||||
track.SetControl(control)
|
||||
|
||||
sout := &psdp.SessionDescription{
|
||||
SessionName: psdp.SessionName("Stream"),
|
||||
@@ -260,7 +260,7 @@ func TestServerPublishSetupPath(t *testing.T) {
|
||||
track, err := NewTrackH264(96, []byte{0x01, 0x02, 0x03, 0x04}, []byte{0x01, 0x02, 0x03, 0x04}, nil)
|
||||
require.NoError(t, err)
|
||||
|
||||
track.setControl(ca.control)
|
||||
track.SetControl(ca.control)
|
||||
|
||||
sout := &psdp.SessionDescription{
|
||||
SessionName: psdp.SessionName("Stream"),
|
||||
|
8
track.go
8
track.go
@@ -15,8 +15,10 @@ type Track interface {
|
||||
// ClockRate returns the track clock rate.
|
||||
ClockRate() int
|
||||
clone() Track
|
||||
getControl() string
|
||||
setControl(string)
|
||||
// GetControl returns the track control
|
||||
GetControl() string
|
||||
// SetControl returns the track control
|
||||
SetControl(string)
|
||||
url(*base.URL) (*base.URL, error)
|
||||
// MediaDescription returns structured SDP media information
|
||||
MediaDescription() *psdp.MediaDescription
|
||||
@@ -76,7 +78,7 @@ func trackURL(t Track, contentBase *base.URL) (*base.URL, error) {
|
||||
return nil, fmt.Errorf("no Content-Base header provided")
|
||||
}
|
||||
|
||||
control := t.getControl()
|
||||
control := t.GetControl()
|
||||
|
||||
// no control attribute, use base URL
|
||||
if control == "" {
|
||||
|
@@ -138,11 +138,13 @@ func (t *TrackAAC) clone() Track {
|
||||
}
|
||||
}
|
||||
|
||||
func (t *TrackAAC) getControl() string {
|
||||
// GetControl gets the track control.
|
||||
func (t *TrackAAC) GetControl() string {
|
||||
return t.control
|
||||
}
|
||||
|
||||
func (t *TrackAAC) setControl(c string) {
|
||||
// SetControl sets the track control.
|
||||
func (t *TrackAAC) SetControl(c string) {
|
||||
t.control = c
|
||||
}
|
||||
|
||||
|
@@ -139,11 +139,13 @@ func (t *TrackGeneric) clone() Track {
|
||||
}
|
||||
}
|
||||
|
||||
func (t *TrackGeneric) getControl() string {
|
||||
// GetControl returns the track control.
|
||||
func (t *TrackGeneric) GetControl() string {
|
||||
return t.control
|
||||
}
|
||||
|
||||
func (t *TrackGeneric) setControl(c string) {
|
||||
// SetControl set the track control.
|
||||
func (t *TrackGeneric) SetControl(c string) {
|
||||
t.control = c
|
||||
}
|
||||
|
||||
|
@@ -111,11 +111,13 @@ func (t *TrackH264) clone() Track {
|
||||
}
|
||||
}
|
||||
|
||||
func (t *TrackH264) getControl() string {
|
||||
// GetControl gets the track control.
|
||||
func (t *TrackH264) GetControl() string {
|
||||
return t.control
|
||||
}
|
||||
|
||||
func (t *TrackH264) setControl(c string) {
|
||||
// SetControl sets the track control.
|
||||
func (t *TrackH264) SetControl(c string) {
|
||||
t.control = c
|
||||
}
|
||||
|
||||
|
@@ -69,11 +69,13 @@ func (t *TrackOpus) clone() Track {
|
||||
}
|
||||
}
|
||||
|
||||
func (t *TrackOpus) getControl() string {
|
||||
// GetControl returns the track control.
|
||||
func (t *TrackOpus) GetControl() string {
|
||||
return t.control
|
||||
}
|
||||
|
||||
func (t *TrackOpus) setControl(c string) {
|
||||
// SetControl sets the track control.
|
||||
func (t *TrackOpus) SetControl(c string) {
|
||||
t.control = c
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user