mirror of
https://github.com/wx-chevalier/screen-sharing-rdp.git
synced 2025-12-24 13:08:12 +08:00
feat: update articles or snippets
This commit is contained in:
3
ffmpeg-ws/README.md
Normal file
3
ffmpeg-ws/README.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# ffmpeg-ws
|
||||
|
||||
该分支主要采用本地 FFMpeg 截屏加 WebSocket 协议推送的形式。
|
||||
@@ -1,21 +0,0 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2020 Imtiyaz Shaikh
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
||||
of the Software, and to permit persons to whom the Software is furnished to do
|
||||
so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
@@ -12,10 +12,10 @@ The project is inspired from "WebRTC remote screen (https://github.com/rviscarra
|
||||
|
||||
### Features
|
||||
|
||||
* Remote screen viewing
|
||||
* Mouse controls ( Move, Click, Double Click, Scroll )
|
||||
* Keyboard ( Basic controls )
|
||||
* ... Working on more features !
|
||||
- Remote screen viewing
|
||||
- Mouse controls ( Move, Click, Double Click, Scroll )
|
||||
- Keyboard ( Basic controls )
|
||||
- ... Working on more features !
|
||||
|
||||
<hr>
|
||||
|
||||
@@ -26,11 +26,12 @@ The project is inspired from "WebRTC remote screen (https://github.com/rviscarra
|
||||
- If you want VP8 support: libvpx (Supports Windows & Mac)
|
||||
|
||||
For Windows libvpx installation, follow below installation steps:
|
||||
|
||||
```
|
||||
1. Download and install latest MYSYS2 installer from https://www.msys2.org/
|
||||
2. Open MYSYS Shell
|
||||
3. Install Mingw Toolchain
|
||||
- 32 bit: pacman -S mingw-w64-i686-toolchain
|
||||
- 32 bit: pacman -S mingw-w64-i686-toolchain
|
||||
- 64 bit: pacman -S mingw-w64-x86_64-toolchain
|
||||
4. pacman -S mingw-w64-x86_64-libvpx
|
||||
```
|
||||
@@ -49,38 +50,42 @@ go run -tags "h264enc" cmd/agent.go
|
||||
Open https://localhost:9000 in the browser
|
||||
|
||||
Optional Params:
|
||||
* ```--http.port=8888```
|
||||
* ```--stun.server=stun:stun.l.google.com:19302```
|
||||
|
||||
- For H264 stream: "h264enc"
|
||||
- For VP8 stream: "vp8enc"
|
||||
- `--http.port=8888`
|
||||
- `--stun.server=stun:stun.l.google.com:19302`
|
||||
|
||||
* For H264 stream: "h264enc"
|
||||
* For VP8 stream: "vp8enc"
|
||||
|
||||
<hr>
|
||||
|
||||
### Building for production
|
||||
Build the _deployment_ package by runnning `make`. This should create a tar file with the
|
||||
|
||||
Build the _deployment_ package by runnning `make`. This should create a tar file with the
|
||||
binary and web directory, by default only support for h264 is included, if you want to use VP8 run `make encoders=vp8`, if you want both then `make encoders=vp8,h264`.
|
||||
|
||||
Copy the archive to a remote server, decompress it and run `./agent`. The `agent` application assumes the web dir. is in the same directory.
|
||||
Copy the archive to a remote server, decompress it and run `./agent`. The `agent` application assumes the web dir. is in the same directory.
|
||||
|
||||
WebRTC requires a _secure_ domain to work, the recommended approach towards this is to forward the agent port thru SSH tunneling:
|
||||
|
||||
```bash
|
||||
ssh -L YOUR_LOCAL_PORT:localhost:9000
|
||||
ssh -L YOUR_LOCAL_PORT:localhost:9000
|
||||
```
|
||||
|
||||
Then access the application on `https://localhost:YOUR_LOCAL_PORT`, localhost should be considered
|
||||
Then access the application on `https://localhost:YOUR_LOCAL_PORT`, localhost should be considered
|
||||
secure by modern browsers.
|
||||
|
||||
* <b>Tip for production: You need to write your own gateway server for exchanging SDP with the computers behind the NAT.</b>
|
||||
- <b>Tip for production: You need to write your own gateway server for exchanging SDP with the computers behind the NAT.</b>
|
||||
|
||||
<hr>
|
||||
|
||||
### Contributing
|
||||
|
||||
Amazing people responsible for making this possible:
|
||||
* <a href="https://github.com/rviscarra">Rafael Viscarra</a>
|
||||
* <a href="https://github.com/pion/webrtc">Pion WebRTC</a>
|
||||
* <a href="https://github.com/go-vgo/robotgo">RobotGo</a> - <a href="https://github.com/vcaesar">vcaesar</a>
|
||||
|
||||
- <a href="https://github.com/rviscarra">Rafael Viscarra</a>
|
||||
- <a href="https://github.com/pion/webrtc">Pion WebRTC</a>
|
||||
- <a href="https://github.com/go-vgo/robotgo">RobotGo</a> - <a href="https://github.com/vcaesar">vcaesar</a>
|
||||
|
||||
<hr>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user