Refactoring.
This commit is contained in:
parent
0a4bdd8f42
commit
a4678342ee
@ -442,7 +442,7 @@ func RTSP(dir string, period int, link string) error {
|
|||||||
seg := storage.Segment{
|
seg := storage.Segment{
|
||||||
Date: time.Now().Format("15-04-05_02-01-2006"),
|
Date: time.Now().Format("15-04-05_02-01-2006"),
|
||||||
Duration: strconv.Itoa(period),
|
Duration: strconv.Itoa(period),
|
||||||
Packets: storage.InterleavedPacket{},
|
Packet: storage.InterleavedPacket{},
|
||||||
}
|
}
|
||||||
|
|
||||||
// Write StreamID.
|
// Write StreamID.
|
||||||
@ -472,9 +472,9 @@ func RTSP(dir string, period int, link string) error {
|
|||||||
|
|
||||||
if au != nil {
|
if au != nil {
|
||||||
// Add appropriate lines to the interleaved packet.
|
// Add appropriate lines to the interleaved packet.
|
||||||
seg.Packets.Type = storage.PacketTypeH264
|
seg.Packet.Type = storage.PacketTypeH264
|
||||||
seg.Packets.Pts = pts
|
seg.Packet.Pts = pts
|
||||||
seg.Packets.H264AUs = au
|
seg.Packet.H264AUs = au
|
||||||
|
|
||||||
// Write segment with interleaved packets.
|
// Write segment with interleaved packets.
|
||||||
if err := storage.WriteInterleavedPacket(file, seg); err != nil {
|
if err := storage.WriteInterleavedPacket(file, seg); err != nil {
|
||||||
@ -502,9 +502,9 @@ func RTSP(dir string, period int, link string) error {
|
|||||||
lpcmSamples := formats.ConvertG711ToLPCM(au, f.MULaw)
|
lpcmSamples := formats.ConvertG711ToLPCM(au, f.MULaw)
|
||||||
|
|
||||||
// Add appropriate lines to the interleaved packet.
|
// Add appropriate lines to the interleaved packet.
|
||||||
seg.Packets.Type = storage.PacketTypeLPCM
|
seg.Packet.Type = storage.PacketTypeLPCM
|
||||||
seg.Packets.Pts = pts
|
seg.Packet.Pts = pts
|
||||||
seg.Packets.LPCMSamples = lpcmSamples
|
seg.Packet.LPCMSamples = lpcmSamples
|
||||||
|
|
||||||
// Write segment with interleaved packets.
|
// Write segment with interleaved packets.
|
||||||
if err := storage.WriteInterleavedPacket(file, seg); err != nil {
|
if err := storage.WriteInterleavedPacket(file, seg); err != nil {
|
||||||
@ -562,7 +562,7 @@ func RTSP(dir string, period int, link string) error {
|
|||||||
seg = storage.Segment{
|
seg = storage.Segment{
|
||||||
Date: time.Now().Format("15-04-05_02-01-2006"),
|
Date: time.Now().Format("15-04-05_02-01-2006"),
|
||||||
Duration: strconv.Itoa(period),
|
Duration: strconv.Itoa(period),
|
||||||
Packets: storage.InterleavedPacket{},
|
Packet: storage.InterleavedPacket{},
|
||||||
}
|
}
|
||||||
|
|
||||||
// Write StreamID.
|
// Write StreamID.
|
||||||
|
@ -26,9 +26,8 @@ const (
|
|||||||
type InterleavedPacket struct {
|
type InterleavedPacket struct {
|
||||||
Type byte
|
Type byte
|
||||||
Pts int64
|
Pts int64
|
||||||
// Для H264 – access units как [][]byte.
|
|
||||||
H264AUs [][]byte
|
H264AUs [][]byte
|
||||||
// Для LPCM (из G711) – samples.
|
|
||||||
LPCMSamples []byte
|
LPCMSamples []byte
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -36,7 +35,8 @@ type InterleavedPacket struct {
|
|||||||
type Segment struct {
|
type Segment struct {
|
||||||
Date string
|
Date string
|
||||||
Duration string
|
Duration string
|
||||||
Packets InterleavedPacket
|
Packet InterleavedPacket
|
||||||
|
Packets []InterleavedPacket
|
||||||
}
|
}
|
||||||
|
|
||||||
// writeString записывает строку: сначала int32 длина, затем данные.
|
// writeString записывает строку: сначала int32 длина, затем данные.
|
||||||
@ -113,7 +113,7 @@ func WriteInterleavedPacket(w io.Writer, seg Segment) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
// Записываем каждый пакет.
|
// Записываем каждый пакет.
|
||||||
if err := WritePacket(&buf, seg.Packets); err != nil {
|
if err := WritePacket(&buf, seg.Packet); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user