From 5a2ea9cf9c5e73403ce7dc999e263e8dbdfcd48c Mon Sep 17 00:00:00 2001 From: aler9 <46489434+aler9@users.noreply.github.com> Date: Thu, 22 Dec 2022 20:36:41 +0100 Subject: [PATCH] partially revert cabfcd6 --- client.go | 2 ++ client_record_test.go | 8 -------- examples/client-publish-format-g711/main.go | 1 - examples/client-publish-format-g722/main.go | 1 - examples/client-publish-format-h264/main.go | 1 - examples/client-publish-format-h265/main.go | 1 - examples/client-publish-format-lpcm/main.go | 1 - examples/client-publish-format-mpeg4audio/main.go | 1 - examples/client-publish-format-opus/main.go | 1 - examples/client-publish-format-vp8/main.go | 1 - examples/client-publish-format-vp9/main.go | 1 - examples/client-publish-options/main.go | 1 - examples/client-publish-pause/main.go | 1 - examples/client-read-republish/main.go | 13 +++++++------ 14 files changed, 9 insertions(+), 25 deletions(-) diff --git a/client.go b/client.go index baabc4cb..67f9ad8a 100644 --- a/client.go +++ b/client.go @@ -1059,6 +1059,8 @@ func (c *Client) doAnnounce(u *url.URL, medias media.Medias) (*base.Response, er return nil, err } + medias.SetControls() + byts, err := medias.Marshal(false).Marshal() if err != nil { return nil, err diff --git a/client_record_test.go b/client_record_test.go index 900768e8..794c9ed5 100644 --- a/client_record_test.go +++ b/client_record_test.go @@ -283,7 +283,6 @@ func TestClientRecordSerial(t *testing.T) { medi := testH264Media medias := media.Medias{medi} - medias.SetControls() err = record(&c, scheme+"://localhost:8554/teststream", medias, func(medi *media.Media, pkt rtcp.Packet) { @@ -439,7 +438,6 @@ func TestClientRecordParallel(t *testing.T) { medi := testH264Media medias := media.Medias{medi} - medias.SetControls() err = record(&c, scheme+"://localhost:8554/teststream", medias, nil) require.NoError(t, err) @@ -592,7 +590,6 @@ func TestClientRecordPauseSerial(t *testing.T) { medi := testH264Media medias := media.Medias{medi} - medias.SetControls() err = record(&c, "rtsp://localhost:8554/teststream", medias, nil) require.NoError(t, err) @@ -723,7 +720,6 @@ func TestClientRecordPauseParallel(t *testing.T) { medi := testH264Media medias := media.Medias{medi} - medias.SetControls() err = record(&c, "rtsp://localhost:8554/teststream", medias, nil) require.NoError(t, err) @@ -863,7 +859,6 @@ func TestClientRecordAutomaticProtocol(t *testing.T) { medi := testH264Media medias := media.Medias{medi} - medias.SetControls() err = record(&c, "rtsp://localhost:8554/teststream", medias, nil) require.NoError(t, err) @@ -1045,7 +1040,6 @@ func TestClientRecordDecodeErrors(t *testing.T) { } medias := media.Medias{testH264Media} - medias.SetControls() err = record(&c, "rtsp://localhost:8554/stream", medias, nil) require.NoError(t, err) @@ -1204,7 +1198,6 @@ func TestClientRecordRTCPReport(t *testing.T) { medi := testH264Media medias := media.Medias{medi} - medias.SetControls() err = record(&c, "rtsp://localhost:8554/teststream", medias, nil) require.NoError(t, err) @@ -1333,7 +1326,6 @@ func TestClientRecordIgnoreTCPRTPPackets(t *testing.T) { } medias := media.Medias{testH264Media} - medias.SetControls() err = record(&c, "rtsp://localhost:8554/teststream", medias, func(medi *media.Media, pkt rtcp.Packet) { diff --git a/examples/client-publish-format-g711/main.go b/examples/client-publish-format-g711/main.go index a2e33b05..62bafb8a 100644 --- a/examples/client-publish-format-g711/main.go +++ b/examples/client-publish-format-g711/main.go @@ -40,7 +40,6 @@ func main() { Type: media.TypeAudio, Formats: []format.Format{&format.G711{}}, }} - medias.SetControls() c := gortsplib.Client{} diff --git a/examples/client-publish-format-g722/main.go b/examples/client-publish-format-g722/main.go index e80f0a3f..ac1b1784 100644 --- a/examples/client-publish-format-g722/main.go +++ b/examples/client-publish-format-g722/main.go @@ -40,7 +40,6 @@ func main() { Type: media.TypeAudio, Formats: []format.Format{&format.G722{}}, }} - medias.SetControls() c := gortsplib.Client{} diff --git a/examples/client-publish-format-h264/main.go b/examples/client-publish-format-h264/main.go index 1fee630a..4c82c147 100644 --- a/examples/client-publish-format-h264/main.go +++ b/examples/client-publish-format-h264/main.go @@ -44,7 +44,6 @@ func main() { PacketizationMode: 1, }}, }} - medias.SetControls() // connect to the server and start recording the media c := gortsplib.Client{} diff --git a/examples/client-publish-format-h265/main.go b/examples/client-publish-format-h265/main.go index 4cd422bd..8187d690 100644 --- a/examples/client-publish-format-h265/main.go +++ b/examples/client-publish-format-h265/main.go @@ -43,7 +43,6 @@ func main() { PayloadTyp: 96, }}, }} - medias.SetControls() // connect to the server and start recording the media c := gortsplib.Client{} diff --git a/examples/client-publish-format-lpcm/main.go b/examples/client-publish-format-lpcm/main.go index ad66b878..07bf28a4 100644 --- a/examples/client-publish-format-lpcm/main.go +++ b/examples/client-publish-format-lpcm/main.go @@ -45,7 +45,6 @@ func main() { ChannelCount: 1, }}, }} - medias.SetControls() c := gortsplib.Client{} diff --git a/examples/client-publish-format-mpeg4audio/main.go b/examples/client-publish-format-mpeg4audio/main.go index a24eb6d4..9781e10b 100644 --- a/examples/client-publish-format-mpeg4audio/main.go +++ b/examples/client-publish-format-mpeg4audio/main.go @@ -51,7 +51,6 @@ func main() { IndexDeltaLength: 3, }}, }} - medias.SetControls() // connect to the server and start recording the media c := gortsplib.Client{} diff --git a/examples/client-publish-format-opus/main.go b/examples/client-publish-format-opus/main.go index 70da9459..ad9e3916 100644 --- a/examples/client-publish-format-opus/main.go +++ b/examples/client-publish-format-opus/main.go @@ -44,7 +44,6 @@ func main() { ChannelCount: 2, }}, }} - medias.SetControls() c := gortsplib.Client{} diff --git a/examples/client-publish-format-vp8/main.go b/examples/client-publish-format-vp8/main.go index 7eea8ce0..03ef567f 100644 --- a/examples/client-publish-format-vp8/main.go +++ b/examples/client-publish-format-vp8/main.go @@ -43,7 +43,6 @@ func main() { PayloadTyp: 96, }}, }} - medias.SetControls() // connect to the server and start recording the media c := gortsplib.Client{} diff --git a/examples/client-publish-format-vp9/main.go b/examples/client-publish-format-vp9/main.go index ef80e06b..d1fcb002 100644 --- a/examples/client-publish-format-vp9/main.go +++ b/examples/client-publish-format-vp9/main.go @@ -43,7 +43,6 @@ func main() { PayloadTyp: 96, }}, }} - medias.SetControls() // connect to the server and start recording the media c := gortsplib.Client{} diff --git a/examples/client-publish-options/main.go b/examples/client-publish-options/main.go index 2c822025..751c22c7 100644 --- a/examples/client-publish-options/main.go +++ b/examples/client-publish-options/main.go @@ -45,7 +45,6 @@ func main() { PacketizationMode: 1, }}, }} - medias.SetControls() // Client allows to set additional client options c := &gortsplib.Client{ diff --git a/examples/client-publish-pause/main.go b/examples/client-publish-pause/main.go index 28c3aa39..3ffea479 100644 --- a/examples/client-publish-pause/main.go +++ b/examples/client-publish-pause/main.go @@ -46,7 +46,6 @@ func main() { PacketizationMode: 1, }}, }} - medias.SetControls() // connect to the server and start recording the media c := gortsplib.Client{} diff --git a/examples/client-read-republish/main.go b/examples/client-read-republish/main.go index 435db163..6db71117 100644 --- a/examples/client-read-republish/main.go +++ b/examples/client-read-republish/main.go @@ -38,6 +38,13 @@ func main() { log.Printf("republishing %d medias", len(medias)) + // setup all medias + // this must be called before StartRecording(), that overrides the control attribute. + err = reader.SetupAll(medias, baseURL) + if err != nil { + panic(err) + } + // connect to the server and start recording the same medias publisher := gortsplib.Client{} err = publisher.StartRecording("rtsp://localhost:8554/mystream2", medias) @@ -46,12 +53,6 @@ func main() { } defer publisher.Close() - // setup all medias - err = reader.SetupAll(medias, baseURL) - if err != nil { - panic(err) - } - // read RTP packets from reader and write them to publisher reader.OnPacketRTPAny(func(medi *media.Media, forma format.Format, pkt *rtp.Packet) { publisher.WritePacketRTP(medi, pkt)