Skip to content

Commit

Permalink
Add knowledge base
Browse files Browse the repository at this point in the history
  • Loading branch information
ehfd authored Aug 15, 2024
1 parent 2abda84 commit 0ded955
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 3 deletions.
2 changes: 1 addition & 1 deletion docs/design.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ The first step of a user working in a clustered computing environment always ten

However, because RFB, the protocol for VNC, is based on a 30-year-old protocol, several pitfalls exist, like the Tight encoding format, combining "rectangle, palette and gradient filling with zlib and JPEG" being adequate for partial screen refresh, but not fullscreen refresh and 3D graphics. Several alternative solutions exist for Linux that support video codecs including H.264, and even software encoding on video delivers better performance and efficiency with recent hardware.

Although, such solutions are currently primarily proprietary, requiring license servers and license seats integrated into the infrastructure, and having major issues integrating into reproducible environments such as virtual machine snapshots or containers. Due to using closed-source installer packages for these proprietary solutions, the flexibility to deploy on various niche environments, such as for embedded devices or exotic CPU architectures, also suffers. Other open-source solutions available such as RustDesk are meant for TeamViewer-like remote user support, not for large-scale client-server deployments.
Although, such solutions are currently primarily proprietary, requiring license servers and license seats integrated into the infrastructure, and having major issues integrating into reproducible environments such as virtual machine snapshots or containers. Due to using closed-source installer packages for these proprietary solutions, the flexibility to deploy on various niche environments, such as for embedded devices or exotic CPU architectures, also suffers. Other open-source solutions available such as RustDesk are meant for TeamViewer-like remote user support, not for large-scale client-server deployments in the cloud or in clusters.

## Design

Expand Down
40 changes: 38 additions & 2 deletions docs/development.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,14 +52,18 @@ Contact information for contributors currently available for paid consulting tas

These people make structural decisions for this project and press the `Merge Pull Request` button.

[Dan Isla](https://github.com/danisla): Project Founder, Owner, Industry Representative (ex-Google, ex-NASA, ex-itopia), Head Maintainer (Start - Sep 2023, July 2024 -), **currently available for paid consulting tasks**
[Dan Isla](https://github.com/danisla): Project Founder, Owner, Head Maintainer (Start - Sep 2023, August 2024 -), Industry Representative (ex-Google, ex-NASA, ex-itopia), **currently available for paid consulting tasks**

[Seungmin Kim](https://github.com/ehfd): Co-Owner, Academia Representative (Yonsei University College of Medicine, San Diego Supercomputer Center), Head Maintainer (Apr 2022 - July 2024, est. 2025 -), currently not available for paid consulting tasks
[Seungmin Kim](https://github.com/ehfd): Co-Owner, Head Maintainer (Apr 2022 - August 2024, est. 2025 -), Academia Representative (Yonsei University College of Medicine, San Diego Supercomputer Center), currently not available for paid consulting tasks (on hiatus from project)

[Dmitry Mishin](https://github.com/dimm0): Interim Head Maintainer (August 2024 -), Interim Academia Representative (University of California San Diego, San Diego Supercomputer Center)

### Code Contributors

[PMohanJ](https://github.com/PMohanJ): Contributed new features for the X11 input protocol as well as providing various fixes for the project overall and providing various means of analysis, **currently available for paid consulting tasks in tandem with senior maintainers**

[Kristian Ollikainen](https://github.com/DatCaptainHorse): Professional WebRTC and JavaScript frontend engineer, contributed various insights to the GStreamer and web components

[ayunami2000](https://github.com/ayunami2000): Provided various fixes for the WebRTC HTML5 web interface, as well as providing various means of analysis, **currently available for paid consulting tasks in tandem with senior maintainers**

[Carlos Ruiz](https://github.com/cruizba): [OpenVidu](https://openvidu.io) Team, provided various proposals for fixing the X11 input protocol
Expand All @@ -74,6 +78,38 @@ These people make structural decisions for this project and press the `Merge Pul

This section is a knowledge base for code contributions and development.

## Communities:

- Selkies Discord: <https://discord.gg/wDNGDeSW5F>

- Selkies Matrix Space (Connect with United States HPC Academics, needs Matrix Account from <https://app.element.io>): <https://matrix.to/#/#ue4research:matrix.nrp-nautilus.io>

- Real-Time Streaming Discord (General WebRTC Advice): <https://discord.gg/KFS32mYXPr>

- GStreamer Matrix Space (Specific to GStreamer, needs Matrix Account from <https://app.element.io>): <https://matrix.to/#/#community:gstreamer.org>

## Resources:

- **Our [Documentation](/docs/README.md) and [Issues](https://github.com/selkies-project/selkies-gstreamer/issues)/[Pull Requests](https://github.com/selkies-project/selkies-gstreamer/pulls)** (including closed Issues/Pull Requests) and <https://github.com/m1k1o/neko/issues/371>

- GStreamer Repository (sources of truth are below, other repositories such as `gst-plugins-base` have been relocated to the below):

<https://gitlab.freedesktop.org/gstreamer/gstreamer>

<https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs>

<https://gitlab.freedesktop.org/gstreamer/meson-ports>

- GStreamer Documentation (`gst-inspect-1.0 module` tends to be much more accurate than this): <https://gstreamer.freedesktop.org/documentation/>

- WebRTC for the Curious: <https://webrtcforthecurious.com>

- WebRTC Official Google Groups: <https://groups.google.com/g/discuss-webrtc>

- Mozilla MDN: <https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API>

- WebRTC Hacks: <https://webrtchacks.com>

## Container Customization

**If you want to change the `Dockerfile`, you are recommended to use the original container as a base container and only replace the `entrypoint.sh` and `supervisord.conf` files. This will keep you up to date with the latest updates. Use persistent container tags (such as `v1.0.0-ubuntu24.04` for the [Example Container](component.md#example-container) or `24.04-20210101010101` for the desktop containers) to preserve a specific container build.**
Expand Down

0 comments on commit 0ded955

Please sign in to comment.