mirror of
https://github.com/giongto35/cloud-game.git
synced 2026-07-25 02:57:24 +00:00
Fixed bug on H264 when packets are limited
This commit is contained in:
parent
e4434c61d6
commit
f5ba4912b2
5 changed files with 11 additions and 5 deletions
|
|
@ -4,6 +4,7 @@ import (
|
|||
"bytes"
|
||||
"image"
|
||||
"log"
|
||||
"runtime/debug"
|
||||
|
||||
"github.com/gen2brain/x264-go"
|
||||
"github.com/giongto35/cloud-game/encoder"
|
||||
|
|
@ -76,6 +77,7 @@ func (v *H264Encoder) startLooping() {
|
|||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
log.Println("Warn: Recovered panic in encoding ", r)
|
||||
log.Println(debug.Stack())
|
||||
}
|
||||
|
||||
if v.Done == true {
|
||||
|
|
@ -92,7 +94,10 @@ func (v *H264Encoder) startLooping() {
|
|||
return
|
||||
}
|
||||
|
||||
v.enc.Encode(img)
|
||||
err := v.enc.Encode(img)
|
||||
if err != nil {
|
||||
log.Println("err encoding ", img, " using h264")
|
||||
}
|
||||
v.Output <- v.buf.Bytes()
|
||||
v.buf.Reset()
|
||||
}
|
||||
|
|
|
|||
2
static/js/controller.js
vendored
2
static/js/controller.js
vendored
|
|
@ -127,8 +127,6 @@ function sendKeyState() {
|
|||
});
|
||||
var data = parseInt(bits, 2);
|
||||
|
||||
console.log(`Key state string: ${bits} ==> ${data}`);
|
||||
|
||||
var arrBuf = new Uint8Array(2);
|
||||
arrBuf[0] = data & ((1 << 8) - 1);
|
||||
arrBuf[1] = data >> 8;
|
||||
|
|
|
|||
2
static/js/ws.js
vendored
2
static/js/ws.js
vendored
|
|
@ -187,7 +187,7 @@ function startWebRTC(iceservers) {
|
|||
}).catch(log);
|
||||
}
|
||||
else if (pc.iceConnectionState === "disconnected") {
|
||||
stopInputTimer();
|
||||
stopGameInputTimer()
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import (
|
|||
"fmt"
|
||||
"log"
|
||||
"math/rand"
|
||||
"runtime/debug"
|
||||
"time"
|
||||
|
||||
"github.com/giongto35/cloud-game/config"
|
||||
|
|
@ -264,6 +265,7 @@ func (w *WebRTC) startStreaming(vp8Track *webrtc.Track, opusTrack *webrtc.Track)
|
|||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
fmt.Println("Recovered from err", r)
|
||||
log.Println(debug.Stack())
|
||||
}
|
||||
}()
|
||||
|
||||
|
|
@ -283,6 +285,7 @@ func (w *WebRTC) startStreaming(vp8Track *webrtc.Track, opusTrack *webrtc.Track)
|
|||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
fmt.Println("Recovered from err", r)
|
||||
log.Println(debug.Stack())
|
||||
}
|
||||
}()
|
||||
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ func (r *Room) startVideo(width, height int) {
|
|||
var err error
|
||||
|
||||
if config.Codec == config.CODEC_H264 {
|
||||
encoder, err = h264encoder.NewH264Encoder(width, height, 20)
|
||||
encoder, err = h264encoder.NewH264Encoder(width, height, 1)
|
||||
} else {
|
||||
encoder, err = vpxencoder.NewVpxEncoder(width, height, 20, 1200, 5)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue