mirror of
https://github.com/m1k1o/neko.git
synced 2024-07-24 14:40:50 +12:00
opus useinbandfec.
This commit is contained in:
parent
130832177c
commit
2189e4fd49
@ -19,6 +19,7 @@
|
|||||||
- Broadcast status change is sent to all admins now.
|
- Broadcast status change is sent to all admins now.
|
||||||
- NordVPN replaced with Sponsorblock extension in default configuration #144.
|
- NordVPN replaced with Sponsorblock extension in default configuration #144.
|
||||||
- Removed `vncviewer` image, as its functionality is replaced and extended by remmina.
|
- Removed `vncviewer` image, as its functionality is replaced and extended by remmina.
|
||||||
|
- Opus uses `useinbandfec=1` from now on, hopefully fixes minor audio loss issues.
|
||||||
|
|
||||||
## [n.eko v2.5](https://github.com/m1k1o/neko/releases/tag/v2.5)
|
## [n.eko v2.5](https://github.com/m1k1o/neko/releases/tag/v2.5)
|
||||||
|
|
||||||
|
@ -160,7 +160,7 @@ func CreateAppPipeline(codecName string, pipelineDevice string, pipelineSrc stri
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
pipelineStr = fmt.Sprintf(audioSrc+"opusenc bitrate=%d"+pipelineStr, pipelineDevice, bitrate*1000)
|
pipelineStr = fmt.Sprintf(audioSrc+"opusenc inband-fec=true bitrate=%d"+pipelineStr, pipelineDevice, bitrate*1000)
|
||||||
case "G722":
|
case "G722":
|
||||||
// https://gstreamer.freedesktop.org/documentation/libav/avenc_g722.html?gi-language=c
|
// https://gstreamer.freedesktop.org/documentation/libav/avenc_g722.html?gi-language=c
|
||||||
// gstreamer1.0-libav
|
// gstreamer1.0-libav
|
||||||
|
@ -322,7 +322,7 @@ func (manager *WebRTCManager) createTrack(codecName string) (*webrtc.TrackLocalS
|
|||||||
codec = webrtc.RTPCodecParameters{RTPCodecCapability: webrtc.RTPCodecCapability{MimeType: webrtc.MimeTypeH264, ClockRate: 90000, Channels: 0, SDPFmtpLine: "level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f", RTCPFeedback: fb}, PayloadType: 102}
|
codec = webrtc.RTPCodecParameters{RTPCodecCapability: webrtc.RTPCodecCapability{MimeType: webrtc.MimeTypeH264, ClockRate: 90000, Channels: 0, SDPFmtpLine: "level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f", RTCPFeedback: fb}, PayloadType: 102}
|
||||||
id = "video"
|
id = "video"
|
||||||
case "Opus":
|
case "Opus":
|
||||||
codec = webrtc.RTPCodecParameters{RTPCodecCapability: webrtc.RTPCodecCapability{MimeType: webrtc.MimeTypeOpus, ClockRate: 48000, Channels: 2, SDPFmtpLine: "", RTCPFeedback: fb}, PayloadType: 111}
|
codec = webrtc.RTPCodecParameters{RTPCodecCapability: webrtc.RTPCodecCapability{MimeType: webrtc.MimeTypeOpus, ClockRate: 48000, Channels: 2, SDPFmtpLine: "useinbandfec=1", RTCPFeedback: fb}, PayloadType: 111}
|
||||||
id = "audio"
|
id = "audio"
|
||||||
case "G722":
|
case "G722":
|
||||||
codec = webrtc.RTPCodecParameters{RTPCodecCapability: webrtc.RTPCodecCapability{MimeType: webrtc.MimeTypeG722, ClockRate: 8000, Channels: 0, SDPFmtpLine: "", RTCPFeedback: fb}, PayloadType: 9}
|
codec = webrtc.RTPCodecParameters{RTPCodecCapability: webrtc.RTPCodecCapability{MimeType: webrtc.MimeTypeG722, ClockRate: 8000, Channels: 0, SDPFmtpLine: "", RTCPFeedback: fb}, PayloadType: 9}
|
||||||
|
Loading…
Reference in New Issue
Block a user