capture: video: codec: vp8 ids: [ hq, lq ] pipelines: hq: fps: 25 gst_encoder: vp8enc gst_params: target-bitrate: round(3072 * 650) cpu-used: 4 end-usage: cbr threads: 4 deadline: 1 undershoot: 95 buffer-size: (3072 * 4) buffer-initial-size: (3072 * 2) buffer-optimal-size: (3072 * 3) keyframe-max-dist: 25 min-quantizer: 4 max-quantizer: 20 lq: fps: 25 gst_encoder: vp8enc gst_params: target-bitrate: round(1024 * 650) cpu-used: 4 end-usage: cbr threads: 4 deadline: 1 undershoot: 95 buffer-size: (1024 * 4) buffer-initial-size: (1024 * 2) buffer-optimal-size: (1024 * 3) keyframe-max-dist: 25 min-quantizer: 4 max-quantizer: 20 # video: # codec: h264 # ids: [ main ] # pipelines: # main: # width: (width / 3) * 2 # height: (height / 3) * 2 # fps: 20 # gst_prefix: "! video/x-raw,format=I420" # gst_encoder: "x264enc" # gst_params: # threads: 4 # bitrate: 4096 # key-int-max: 15 # byte-stream: true # tune: zerolatency # speed-preset: veryfast # gst_suffix: "! video/x-h264,stream-format=byte-stream" screencast: enabled: true server: pprof: true desktop: screen: "1920x1080@60" member: provider: "object" object: users: - username: "admin" password: "admin" profile: name: "Administrator" is_admin: true can_login: true can_connect: true can_watch: true can_host: true can_share_media: true can_access_clipboard: true sends_inactive_cursor: true can_see_inactive_cursors: true - username: "user" password: "neko" profile: name: "User" is_admin: false can_login: true can_connect: true can_watch: true can_host: true can_share_media: true can_access_clipboard: true sends_inactive_cursor: true can_see_inactive_cursors: false # provider: "file" # file: # path: "/home/neko/members.json" # provider: "multiuser" # multiuser: # admin_password: "admin" # user_password: "neko" # provider: "noauth" session: # Allows reconnecting the websocket even if the previous # connection was not closed. Can lead to session hijacking. merciful_reconnect: true # Show inactive cursors on the screen. Can lead to multiple # data sent via WebSockets and additonal rendering cost on # the clients. inactive_cursors: true api_token: "neko123" cookie: # Disabling cookies will result to use Bearer Authentication. # This is less secure, because access token will be sent to # client in playload and accessible via JS app. enabled: false secure: false webrtc: icelite: true iceservers: # Backend servers are ignored if icelite is true. backend: - urls: [ stun:stun.l.google.com:19302 ] frontend: - urls: [ stun:stun.l.google.com:19305 ] #username: foo #credential: bar # estimator: # enabled: true # passive: false # debug: true # initial_bitrate: 1000000 # read_interval: 1s # stable_duration: 10s # unstable_duration: 5s # stalled_duration: 20s # downgrade_backoff: 10s # upgrade_backoff: 30s # diff_threshold: 0.5