Skip to content

Commit

Permalink
fix ip camera bug
Browse files Browse the repository at this point in the history
  • Loading branch information
deepch committed Apr 2, 2023
1 parent def88cb commit 8958197
Showing 1 changed file with 9 additions and 3 deletions.
12 changes: 9 additions & 3 deletions format/rtsp/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ import (
"encoding/hex"
"fmt"
"io"
//"log"
"net"
"net/textproto"
"net/url"
Expand Down Expand Up @@ -147,7 +146,12 @@ func (self *Client) probe() (err error) {
}

func (self *Client) prepare(stage int) (err error) {
var waitIdle int
for self.stage < stage {
waitIdle++
if waitIdle > 20 {
return fmt.Errorf("codec not ready")
}
switch self.stage {
case 0:
if err = self.Options(); err != nil {
Expand Down Expand Up @@ -695,7 +699,9 @@ func (self *Client) Describe() (streams []sdp.Media, err error) {
self.streams = []*Stream{}
for _, media := range medias {
stream := &Stream{Sdp: media, client: self}
stream.makeCodecData()
if err = stream.makeCodecData(); err != nil && DebugRtsp {
fmt.Println("rtsp: makeCodecData error", err)
}
self.streams = append(self.streams, stream)
streams = append(streams, media)
}
Expand Down Expand Up @@ -767,7 +773,7 @@ func (self *Stream) timeScale() int {

func (self *Stream) makeCodecData() (err error) {
media := self.Sdp
if media.PayloadType >= 96 && media.PayloadType <= 127 {
if (media.PayloadType >= 96 && media.PayloadType <= 127) || media.Type == av.H264 || media.Type == av.AAC {
switch media.Type {
case av.H264:
for _, nalu := range media.SpropParameterSets {
Expand Down

0 comments on commit 8958197

Please sign in to comment.