mirror of
https://github.com/legop3/MultiRoombaRover.git
synced 2026-09-16 01:21:20 -04:00
transcoding adjustments
This commit is contained in:
@@ -144,3 +144,6 @@ Input/control implementation:
|
|||||||
- all movement controls should send stop commands on key/button release, blur, disconnect, controller close, or turn loss
|
- all movement controls should send stop commands on key/button release, blur, disconnect, controller close, or turn loss
|
||||||
|
|
||||||
## NEW UI STUFF
|
## NEW UI STUFF
|
||||||
|
- desktop:
|
||||||
|
- sidebar like there is now
|
||||||
|
-
|
||||||
@@ -275,6 +275,12 @@ function startPublisher() {
|
|||||||
that is useful for compression quality but harmful when the camera is being
|
that is useful for compression quality but harmful when the camera is being
|
||||||
driven live. Sliced threads allow x264 to keep some parallelism without
|
driven live. Sliced threads allow x264 to keep some parallelism without
|
||||||
waiting on future frames the way normal frame-threading can.
|
waiting on future frames the way normal frame-threading can.
|
||||||
|
|
||||||
|
The RTSP and muxer flags below bias the whole pipeline toward "latest frame
|
||||||
|
wins". If the server falls behind, ffmpeg should discard stale video frames
|
||||||
|
instead of spending CPU to render a delayed backlog. That matters more for
|
||||||
|
PTZ control than perfect frame delivery because delayed motion feedback makes
|
||||||
|
the camera hard to aim.
|
||||||
*/
|
*/
|
||||||
const proc = spawn('ffmpeg', [
|
const proc = spawn('ffmpeg', [
|
||||||
'-hide_banner',
|
'-hide_banner',
|
||||||
@@ -283,12 +289,26 @@ function startPublisher() {
|
|||||||
'-nostdin',
|
'-nostdin',
|
||||||
'-fflags',
|
'-fflags',
|
||||||
'nobuffer',
|
'nobuffer',
|
||||||
|
'-avioflags',
|
||||||
|
'direct',
|
||||||
'-flags',
|
'-flags',
|
||||||
'low_delay',
|
'low_delay',
|
||||||
|
'-use_wallclock_as_timestamps',
|
||||||
|
'1',
|
||||||
|
'-max_delay',
|
||||||
|
'0',
|
||||||
|
'-probesize',
|
||||||
|
'32768',
|
||||||
|
'-analyzeduration',
|
||||||
|
'0',
|
||||||
'-rtsp_transport',
|
'-rtsp_transport',
|
||||||
'tcp',
|
'tcp',
|
||||||
'-i',
|
'-i',
|
||||||
input,
|
input,
|
||||||
|
'-frame_drop_threshold',
|
||||||
|
'1',
|
||||||
|
'-fps_mode',
|
||||||
|
'drop',
|
||||||
'-map',
|
'-map',
|
||||||
'0:v:0',
|
'0:v:0',
|
||||||
'-map',
|
'-map',
|
||||||
@@ -300,7 +320,7 @@ function startPublisher() {
|
|||||||
'-tune',
|
'-tune',
|
||||||
'zerolatency',
|
'zerolatency',
|
||||||
'-threads',
|
'-threads',
|
||||||
'1',
|
'2',
|
||||||
'-x264-params',
|
'-x264-params',
|
||||||
'sliced-threads=1:sync-lookahead=0:rc-lookahead=0:keyint=20:min-keyint=20:scenecut=0',
|
'sliced-threads=1:sync-lookahead=0:rc-lookahead=0:keyint=20:min-keyint=20:scenecut=0',
|
||||||
'-bf',
|
'-bf',
|
||||||
|
|||||||
Reference in New Issue
Block a user