xiu
A simple,high performance and secure live media server in pure Rust (RTMP[cluster]/RTSP/WebRTC[whip/whep]/HTTP-FLV/HLS).๐ฆ
ํ์ผ ํ์๊ธฐ
์ต์ข ๋ฒ์ ๋ค์ด๋ก๋ (.zip)- config.toml
- bug_report.md
- other-issues.md
- release.yml
- rust.yml
- main.rs
- Cargo.toml
- main.rs
- Cargo.toml
- CHANGELOG.md
- api.rs
- lib.rs
- main.rs
- service.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- flv.Cargo.toml
- h264.Cargo.toml
- hls.Cargo.toml
- httpflv.Cargo.toml
- mpegts.Cargo.toml
- pprtmp.Cargo.toml
- rtmp.Cargo.toml
- rtsp.Cargo.toml
- streamhub.Cargo.toml
- webrtc.Cargo.toml
- xiu.Cargo.toml
- bytesio.Cargo.toml
- common.Cargo.toml
- flv.Cargo.toml
- h264.Cargo.toml
- hls.Cargo.toml
- httpflv.Cargo.toml
- mpegts.Cargo.toml
- pprtmp.Cargo.toml
- rtmp.Cargo.toml
- rtsp.Cargo.toml
- streamhub.Cargo.toml
- webrtc.Cargo.toml
- xiu.Cargo.toml
- update_project_conf.sh
- recall-logo.svg
- Dockerfile
- start.sh
- bits_errors.rs
- bits_reader.rs
- bits_writer.rs
- bytes_errors.rs
- bytes_reader.rs
- bytes_writer.rs
- bytesio.rs
- bytesio_errors.rs
- lib.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- define.rs
- errors.rs
- lib.rs
- pps.rs
- sps.rs
- utils.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- auth.rs
- define.rs
- errors.rs
- http.rs
- lib.rs
- utils.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- config.toml
- config_rtmp.toml
- config_rtmp_hls.toml
- config_rtmp_httpflv.toml
- config_rtmp_httpflv_hls.toml
- config_rtsp.toml
- errors.rs
- lib.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- amf0_markers.rs
- amf0_reader.rs
- amf0_writer.rs
- define.rs
- errors.rs
- mod.rs
- define.rs
- demuxer.rs
- errors.rs
- flv_tag_header.rs
- lib.rs
- mpeg4_aac.rs
- mpeg4_avc.rs
- mpeg4_hevc.rs
- muxer.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- crc32.rs
- define.rs
- errors.rs
- lib.rs
- pat.rs
- pes.rs
- pmt.rs
- ts.rs
- utils.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- errors.rs
- lib.rs
- logger.rs
- target.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- http.rs
- mod.rs
- mod.rs
- define.rs
- errors.rs
- lib.rs
- stream.rs
- utils.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- define.rs
- errors.rs
- flv2hls.rs
- flv_data_receiver.rs
- lib.rs
- m3u8.rs
- remuxer.rs
- server.rs
- test_flv2hls.rs
- ts.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- define.rs
- errors.rs
- httpflv.rs
- lib.rs
- server.rs
- server_test.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- errors.rs
- gop.rs
- metadata.rs
- mod.rs
- chunk.rs
- define.rs
- errors.rs
- mod.rs
- packetizer.rs
- unpacketizer.rs
- define.rs
- digest.rs
- errors.rs
- handshake_client.rs
- handshake_server.rs
- handshake_trait.rs
- mod.rs
- utils.rs
- define.rs
- errors.rs
- mod.rs
- parser.rs
- errors.rs
- mod.rs
- reader.rs
- writer.rs
- errors.rs
- mod.rs
- writer.rs
- define.rs
- errors.rs
- mod.rs
- reader.rs
- writer.rs
- errors.rs
- mod.rs
- pull_client.rs
- push_client.rs
- errors.rs
- mod.rs
- rtmp_cooker.rs
- rtsp2rtmp.rs
- whip2rtmp.rs
- client_session.rs
- common.rs
- define.rs
- errors.rs
- mod.rs
- server_session.rs
- define.rs
- errors.rs
- mod.rs
- reader.rs
- writer.rs
- errors.rs
- mod.rs
- print.rs
- config.rs
- lib.rs
- rtmp.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- rtmp_specification_1.0.pdf
- errors.rs
- mod.rs
- pull_client_manager.rs
- errors.rs
- mod.rs
- rtcp_app.rs
- rtcp_bye.rs
- rtcp_context.rs
- rtcp_header.rs
- rtcp_rr.rs
- rtcp_sr.rs
- define.rs
- errors.rs
- mod.rs
- rtp_aac.rs
- rtp_h264.rs
- rtp_h265.rs
- rtp_header.rs
- utils.rs
- fmtp.rs
- mod.rs
- rtpmap.rs
- client_session.rs
- define.rs
- errors.rs
- mod.rs
- server_session.rs
- global_trait.rs
- lib.rs
- rtsp.rs
- rtsp_channel.rs
- rtsp_codec.rs
- rtsp_range.rs
- rtsp_track.rs
- rtsp_transport.rs
- rtsp_utils.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- index.html
- whep.js
- define.rs
- errors.rs
- mod.rs
- errors.rs
- lib.rs
- opus2aac.rs
- rtp_queue.rs
- webrtc.rs
- whep.rs
- whip.rs
- Cargo.toml
- CHANGELOG.md
- README.md
- .gitignore
- .travis.yml
- Cargo.lock
- Cargo.toml
- FUNDING.yml
- LICENSE
- Makefile
- README.md
- README_CN.md
# ์ค์น ๊ฐ์ด๋
1. ์ฝ๋ ๋ด๋ ค๋ฐ๊ธฐ
git clone https://github.com/harlanc/xiu
๊นํ๋ธ์์ ํ๋ก์ ํธ ์ฝ๋ ์ ์ฒด๋ฅผ ๋ด ์ปดํจํฐ๋ก ๋ด๋ ค๋ฐ์ต๋๋ค.
cd xiu
๋ฐฉ๊ธ ๋ด๋ ค๋ฐ์ ํ๋ก์ ํธ ํด๋ ์์ผ๋ก ์ด๋ํฉ๋๋ค.
2. Docker
์ฌ์ ์ถ์ฒ์ฌ์ ์ค๋น๋ฌผ
- Git GitHub์์ ํ๋ก์ ํธ ์ฝ๋๋ฅผ ๋ด๋ ค๋ฐ์ผ๋ ค๋ฉด ํ์ํฉ๋๋ค.
- Docker Desktop ์ปจํ ์ด๋๋ฅผ ๋น๋ํ๊ณ ์คํํ๋ ค๋ฉด ํ์ํฉ๋๋ค. ์ค์น ํ ์คํํด์ ๋ฐฑ๊ทธ๋ผ์ด๋์ ์ผ๋์ธ์.
docker build -f docker/Dockerfile -t xiu .
Dockerfile์ ๊ธฐ๋ฐ์ผ๋ก ์คํ ๊ฐ๋ฅํ ์ด๋ฏธ์ง๋ฅผ ๋น๋ํฉ๋๋ค.
docker run -p 8080:80 xiu
๋น๋๋ ์ด๋ฏธ์ง๋ฅผ ์ค์ ์ปจํ ์ด๋๋ก ์คํํฉ๋๋ค.
ํฐ๋ฏธ๋์ docker compose ps ๋ฅผ ์
๋ ฅํด ์ปจํ
์ด๋๋ค์ด Up ์ํ์ธ์ง ํ์ธํ์ธ์. README์ ํฌํธ ๋ฒํธ๊ฐ ์ ํ์๋ค๋ฉด ๋ธ๋ผ์ฐ์ ์์ http://localhost:ํฌํธ๋ฒํธ ๋ก ์ ์ํด๋ณด์ธ์.
3. Rust
๋ณดํต์ฌ์ ์ค๋น๋ฌผ
- Git GitHub์์ ํ๋ก์ ํธ ์ฝ๋๋ฅผ ๋ด๋ ค๋ฐ์ผ๋ ค๋ฉด ํ์ํฉ๋๋ค.
- Rust (rustup) rustup์ผ๋ก ์ค์นํ๋ฉด cargo๋ ํจ๊ป ์ค์น๋ฉ๋๋ค.
cargo build --release
Rust ํ๋ก์ ํธ๋ฅผ ์ปดํ์ผํฉ๋๋ค.
cargo run
๋น๋ ํ ๋ฐ๋ก ์คํ๊น์ง ์งํํฉ๋๋ค.
cargo build๊ฐ ์๋ฌ ์์ด ๋๋๋ฉด ์ฑ๊ณต์
๋๋ค. target/ ํด๋์ ์คํ ํ์ผ์ด ์์ฑ๋ฉ๋๋ค.
4. Make
๋ณดํต์ฌ์ ์ค๋น๋ฌผ
- Git GitHub์์ ํ๋ก์ ํธ ์ฝ๋๋ฅผ ๋ด๋ ค๋ฐ์ผ๋ ค๋ฉด ํ์ํฉ๋๋ค.
- Make Linux/macOS๋ ๋ณดํต ๊ธฐ๋ณธ ์ค์น๋์ด ์์ต๋๋ค. Windows๋ ๋ณ๋ ์ค์น(์: MSYS2, WSL)๊ฐ ํ์ํฉ๋๋ค.
make
์์ฑ๋ ๋น๋ ์ค์ ์ ๋ฐํ์ผ๋ก ์ค์ ์ปดํ์ผ์ ์งํํด ์คํ ํ์ผ์ ๋ง๋ญ๋๋ค.
์๋ฌ ์์ด ๋๋๋ฉด ์ฑ๊ณต์
๋๋ค. ์์ฑ๋ ์คํ ํ์ผ์ ์ง์ ์คํํด๋ณด์ธ์.
// repository documentation
Was this content helpful?
(0 ratings)
