调整页面布局

This commit is contained in:
Sake 2026-01-28 13:44:26 +08:00
parent 70a62c2093
commit 7e20c8b381
2 changed files with 19 additions and 16 deletions

View File

@ -1,6 +1,7 @@
package transcode package transcode
import ( import (
"encoding/binary"
"fmt" "fmt"
"github.com/gorilla/websocket" "github.com/gorilla/websocket"
"log/slog" "log/slog"
@ -19,7 +20,7 @@ func (tk *Task) StartTalkCode(wsURL string, transport string) error {
frameSize := 160 frameSize := 160
dir, _ := os.Getwd() dir, _ := os.Getwd()
inputFile := filepath.Join(dir, tk.EncodeUrl) inputFile := filepath.Join(dir, tk.EncodeUrl)
//SSRC := tk.GetSSRCUint32() SSRC := tk.GetSSRCUint32()
if _, err := os.Stat(inputFile); os.IsNotExist(err) { if _, err := os.Stat(inputFile); os.IsNotExist(err) {
return fmt.Errorf("input file does not exist: %v", err.Error()) return fmt.Errorf("input file does not exist: %v", err.Error())
} }
@ -50,7 +51,6 @@ func (tk *Task) StartTalkCode(wsURL string, transport string) error {
// Calculate frame duration in milliseconds // Calculate frame duration in milliseconds
frameDuration := time.Duration(float64(frameSize)/float64(sampleRate)*1000) * time.Millisecond frameDuration := time.Duration(float64(frameSize)/float64(sampleRate)*1000) * time.Millisecond
nextSendTime := time.Now() nextSendTime := time.Now()
frame := make([]byte, frameSize) frame := make([]byte, frameSize)
var errors error var errors error
for { for {
@ -76,7 +76,7 @@ func (tk *Task) StartTalkCode(wsURL string, transport string) error {
PayloadType: 8, // G711 A-law PayloadType: 8, // G711 A-law
SequenceNumber: seqNumber, SequenceNumber: seqNumber,
Timestamp: currentTimestamp, Timestamp: currentTimestamp,
SSRC: 123456, SSRC: SSRC,
}, },
Payload: frame[:n], Payload: frame[:n],
} }
@ -88,27 +88,30 @@ func (tk *Task) StartTalkCode(wsURL string, transport string) error {
continue continue
} }
if transport == "tcp" { if transport == "tcp" {
tcpBuf := make([]byte, 4) // Create TCP encapsulation: 4-byte length header + RTP packet data
tcpBuf[0] = byte(len(data) >> 24) //tcpData := make([]byte, 4+len(data))
tcpBuf[1] = byte(len(data) >> 16) //binary.BigEndian.PutUint32(tcpData[:4], uint32(len(data))) // 4-byte length header
tcpBuf[2] = byte(len(data) >> 8) //copy(tcpData[4:], data) // RTP packet data
tcpBuf[3] = byte(len(data))
err = c.WriteMessage(websocket.BinaryMessage, tcpBuf) rfc4571Data := make([]byte, 2+len(data))
binary.BigEndian.PutUint16(rfc4571Data[:2], uint16(len(data))) // 2-byte length header (RFC 4571)
copy(rfc4571Data[2:], data)
err = c.WriteMessage(websocket.BinaryMessage, rfc4571Data)
if err != nil { if err != nil {
errors = fmt.Errorf("error sending RTP packet via WebSocket: %v", err.Error()) slog.Debug("Error sending RTP TCP packet via WebSocket", "err", err.Error())
slog.Debug("Error sending RTP packet via WebSocket", "err", err.Error())
break break
} }
} else { } else {
err = c.WriteMessage(websocket.BinaryMessage, data) err = c.WriteMessage(websocket.BinaryMessage, data)
if err != nil { if err != nil {
errors = fmt.Errorf("error sending RTP packet via WebSocket: %v", err.Error()) errors = fmt.Errorf("error sending RTP packet via WebSocket: %v", err.Error())
slog.Debug("Error sending RTP packet via WebSocket", "err", err.Error()) slog.Debug("Error sending RTP UDP packet via WebSocket", "err", err.Error())
break break
} }
} }
slog.Debug("sending RTP TCP packet via WebSocket OK")
// Increment sequence number // Increment sequence number
seqNumber++ seqNumber++

View File

@ -31,7 +31,7 @@ export default function Home() {
return ( return (
<Row gutter={16}> <Row gutter={16}>
<div> <Col sm={24} md={24} lg={3} xl={3} xxl={3} className="w-full">
<Affix className="hidden lg:block" offsetTop={0}> <Affix className="hidden lg:block" offsetTop={0}>
<Box <Box
style={{ minWidth: "10rem", width: "12rem" }} style={{ minWidth: "10rem", width: "12rem" }}
@ -58,8 +58,8 @@ export default function Home() {
items={items} items={items}
/> />
</Box> </Box>
</div> </Col>
<Col sm={24} md={24} lg={18} xl={18} xxl={18} className="w-full"> <Col sm={24} md={24} lg={21} xl={21} xxl={21} className="w-full">
{/* <Col sm={24} md={24} className="w-full"> */} {/* <Col sm={24} md={24} className="w-full"> */}
{currentMenu == "sub0" && ( {currentMenu == "sub0" && (
<Box> <Box>