> For the complete documentation index, see [llms.txt](https://docs.clore.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.clore.ai/guides/guides_v2-hi/gaming-and-streaming/sunshine-moonlight.md).

# Sunshine + Moonlight रिमोट गेमिंग

Clore.ai के GPU-संचालित सर्वरों पर Sunshine (होस्ट) और Moonlight (क्लाइंट) का उपयोग करके लगभग शून्य विलंबता के साथ PC गेम्स को दूर से स्ट्रीम और खेलें।

{% hint style="info" %}
**Sunshine** एक ओपन-सोर्स, स्व-होस्टेड गेम स्ट्रीमिंग सर्वर है, जिसके GitHub पर 20,000+ स्टार हैं। **Moonlight** यह उससे जुड़ने वाला मुफ़्त, ओपन-सोर्स क्लाइंट है। साथ मिलकर यह GeForce NOW को टक्कर देता है — वह भी लागत के एक अंश पर।
{% endhint %}

***

## Sunshine + Moonlight क्या हैं?

**Sunshine** मूल Moonlight/GameStream स्टैक का एक फोर्क है, जो अब पूरी तरह स्वतंत्र है और LizardByte द्वारा सक्रिय रूप से मेंटेन किया जाता है। यह आपके GPU आउटपुट को कैप्चर करता है, H.264/H.265/AV1 का उपयोग करके इसे रीयल-टाइम में एनकोड करता है, और इसे नेटवर्क पर बेहद कम विलंबता के साथ स्ट्रीम करता है।

**Moonlight** क्लाइंट ऐप है, जो Windows, macOS, Linux, Android, iOS, Raspberry Pi, और यहाँ तक कि कुछ स्मार्ट टीवी के लिए उपलब्ध है।

### इसे Clore.ai पर क्यों इस्तेमाल करें?

* **एक उच्च-स्तरीय GPU किराए पर लें** (RTX 4090, A100, आदि) स्पॉट मूल्य पर
* **AAA गेम्स स्ट्रीम करें** क्लाउड से किसी भी डिवाइस पर — यहाँ तक कि एक सस्ते लैपटॉप पर भी
* **GeForce NOW सब्सक्रिप्शन की आवश्यकता नहीं** — हार्डवेयर पर आपका नियंत्रण है
* **गेम मॉडिंग, AI-सहायता प्राप्त गेमप्ले**, या शक्तिशाली हार्डवेयर पर गेम डेवलपमेंट टेस्टिंग

***

## पूर्वापेक्षाएँ

| आवश्यकता          | विवरण                                      |
| ----------------- | ------------------------------------------ |
| Clore.ai खाता     | पर्याप्त CLORE बैलेंस के साथ               |
| GPU सर्वर         | NVIDIA GPU (NVENC एनकोडिंग के लिए) वांछनीय |
| Moonlight क्लाइंट | आपके स्थानीय डिवाइस पर इंस्टॉल किया गया    |
| SSH पहुँच         | प्रारंभिक सेटअप के लिए                     |

***

## चरण 1: Clore.ai पर एक GPU सर्वर किराए पर लें

1. पर जाएँ [clore.ai](https://clore.ai) → **मार्केटप्लेस**
2. के अनुसार फ़िल्टर करें **GPU प्रकार**: 1080p/60fps स्ट्रीमिंग के लिए RTX 3080 या बेहतर की अनुशंसा की जाती है
3. पोर्ट वाले सर्वरों की तलाश करें **22**, **47990**और **48010** उपलब्ध
4. एक सर्वर चुनें और ऑर्डर करने के लिए आगे बढ़ें

{% hint style="warning" %}
**पोर्ट आवश्यकताएँ**: Sunshine को पोर्ट 47990 (HTTPS वेब UI) और 48010 (स्ट्रीमिंग) की आवश्यकता होती है। ऑर्डर करने से पहले सुनिश्चित करें कि ये सर्वर के उपलब्ध पोर्ट्स में सूचीबद्ध हैं।
{% endhint %}

### स्ट्रीमिंग के लिए अनुशंसित GPU

| रिज़ॉल्यूशन | लक्षित FPS | न्यूनतम GPU     |
| ----------- | ---------- | --------------- |
| 1080p       | 60 fps     | RTX 3060        |
| 1440p       | 60 fps     | RTX 3080        |
| 4K          | 60 fps     | RTX 3090 / 4080 |
| 1080p       | 120 fps    | RTX 4070+       |

***

## चरण 2: Docker के माध्यम से Sunshine तैनात करें

### Docker Compose (अनुशंसित)

एक फ़ाइल बनाएँ `docker-compose.yml`:

```yaml
version: "3.8"

services:
  sunshine:
    image: lizardbyte/sunshine:latest
    container_name: sunshine
    restart: unless-stopped
    privileged: true
    network_mode: host
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=UTC
      - SUNSHINE_USERNAME=admin
      - SUNSHINE_PASSWORD=your_secure_password
    volumes:
      - ./sunshine-config:/config
      - /tmp/.X11-unix:/tmp/.X11-unix:rw
      - /dev/dri:/dev/dri
    devices:
      - /dev/dri:/dev/dri
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]
```

### कंटेनर शुरू करें

```bash
# पुल करें और शुरू करें
docker compose up -d

# लॉग्स जांचें
docker compose logs -f sunshine

# सत्यापित करें कि यह चल रहा है
docker ps | grep sunshine
```

{% hint style="success" %}
**पहला बूट**: Sunshine को आरंभ होने में लगभग 30 सेकंड लगते हैं। आगे बढ़ने से पहले लॉग में "Sunshine started successfully" देखें।
{% endhint %}

### एकल Docker कमांड (त्वरित शुरुआत)

```bash
docker run -d \\
  --name sunshine \
  --restart unless-stopped \\
  --privileged \\
  --network host \
  -e SUNSHINE_USERNAME=admin \
  -e SUNSHINE_PASSWORD=changeme \
  -v $(pwd)/sunshine-config:/config \
  -v /tmp/.X11-unix:/tmp/.X11-unix \
  --device /dev/dri:/dev/dri \
  --gpus all \\
  lizardbyte/sunshine:latest
```

***

## चरण 3: Sunshine वेब UI कॉन्फ़िगर करें

1. अपना browser खोलें और यहाँ जाएँ:

   ```
   https://<your-clore-server-ip>:47990
   ```
2. स्व-हस्ताक्षरित प्रमाणपत्र चेतावनी स्वीकार करें
3. अपने सेट किए गए क्रेडेंशियल्स से लॉग इन करें (`admin` / `your_secure_password`)

{% hint style="warning" %}
**केवल HTTPS**: Sunshine का वेब UI HTTPS पर चलता है। आपका ब्राउज़र प्रमाणपत्र चेतावनी दिखाएगा — यह अपेक्षित है। जारी रखने के लिए "Advanced" → "Proceed" पर क्लिक करें।
{% endhint %}

### वेब UI अनुभाग

| अनुभाग           | उद्देश्य                                    |
| ---------------- | ------------------------------------------- |
| **पिन**          | Moonlight क्लाइंट के साथ पेयर करें          |
| **एप्लिकेशन**    | स्ट्रीम करने योग्य ऐप्स/गेम्स परिभाषित करें |
| **कॉन्फ़िगरेशन** | एनकोडर, रिज़ॉल्यूशन, बिटरेट सेटिंग्स        |
| **लॉग**          | स्ट्रीमिंग समस्याओं का डिबग करें            |

***

## चरण 4: एनकोडिंग सेटिंग्स कॉन्फ़िगर करें

पर जाएँ **कॉन्फ़िगरेशन** → **वीडियो** वेब UI में:

### Clore.ai के लिए अनुशंसित सेटिंग्स

```
# एनकोडर
encoder: nvenc          # NVIDIA हार्डवेयर एनकोडिंग का उपयोग करें

# रिज़ॉल्यूशन
resolution_width: 1920
resolution_height: 1080

# फ़्रेम दर
fps: 60

# बिटरेट
bitrate: 50000          # 1080p60 के लिए 50 Mbps — उत्कृष्ट गुणवत्ता

# H.265 (बेहतर संपीड़न, यदि क्लाइंट सपोर्ट करता हो तो उपयोग करें)
codec: hevc
```

{% hint style="info" %}
**NVENC बनाम VAAPI**: Clore.ai NVIDIA सर्वरों पर, हमेशा `nvenc` एनकोडर का उपयोग करें। यह एनकोडिंग को GPU हार्डवेयर पर ऑफलोड करता है, जिससे गेम के लिए CPU मुक्त रहता है।
{% endhint %}

### बिटरेट मार्गदर्शिका

| गुणवत्ता | रिज़ॉल्यूशन | बिटरेट    |
| -------- | ----------- | --------- |
| अच्छा    | 1080p60     | 20 Mbps   |
| उत्कृष्ट | 1080p60     | 35 Mbps   |
| उत्कृष्ट | 1080p60     | 50 Mbps   |
| उत्कृष्ट | 1440p60     | 50 Mbps   |
| उत्कृष्ट | 4K60        | 100+ Mbps |

***

## चरण 5: स्ट्रीम करने के लिए एप्लिकेशन जोड़ें

Sunshine वेब UI में → **एप्लिकेशन** → **नया जोड़ें**:

### उदाहरण: डेस्कटॉप स्ट्रीमिंग

```
नाम: Desktop
कमांड: (पूर्ण डेस्कटॉप के लिए खाली छोड़ें)
वर्किंग डायरेक्टरी: /home/user
```

### उदाहरण: Steam गेम

```
नाम: Steam Big Picture
कमांड: steam -bigpicture
वर्किंग डायरेक्टरी: /home/user
डिटैच कमांड: (खाली)
```

### उदाहरण: कस्टम गेम

```
नाम: My Game
कमांड: /opt/games/mygame/start.sh
वर्किंग डायरेक्टरी: /opt/games/mygame
इमेज: /opt/games/mygame/cover.png
```

***

## चरण 6: वर्चुअल डिस्प्ले सेट करें (हेडलेस सर्वर)

Clore.ai सर्वर हेडलेस हैं (कोई भौतिक मॉनिटर नहीं)। आपको एक वर्चुअल डिस्प्ले चाहिए:

```bash
# वर्चुअल डिस्प्ले ड्राइवर इंस्टॉल करें
apt-get update && apt-get install -y xvfb x11vnc xfce4

# वर्चुअल डिस्प्ले बनाएँ
Xvfb :1 -screen 0 1920x1080x24 &
export DISPLAY=:1

# डेस्कटॉप वातावरण शुरू करें
startxfce4 &
```

### या एक वर्चुअल फ्रेमबफ़र स्क्रिप्ट का उपयोग करें

```bash
#!/bin/bash
# start-display.sh

export DISPLAY=:1

# वर्चुअल डिस्प्ले शुरू करें
Xvfb :1 -screen 0 1920x1080x24 -ac +extension GLX +render -noreset &
sleep 2

# विंडो मैनेजर शुरू करें
openbox &
sleep 1

# Sunshine शुरू करें
docker compose up -d sunshine
```

इसे executable बनाकर चलाएँ:

```bash
chmod +x start-display.sh
./start-display.sh
```

{% hint style="info" %}
**बिना डिस्प्ले वाला NVIDIA GPU**: भौतिक डिस्प्ले के बिना GPU का उपयोग करने के लिए अपने Sunshine कॉन्फ़िग में निम्न जोड़ें:

```bash
export __GL_SYNC_TO_VBLANK=0
export __GL_GSYNC_ALLOWED=0
```

{% endhint %}

***

## चरण 7: Moonlight क्लाइंट से कनेक्ट करें

### Moonlight इंस्टॉल करें

| प्लेटफ़ॉर्म  | डाउनलोड                                                  |
| ------------ | -------------------------------------------------------- |
| Windows      | [moonlight-stream.org](https://moonlight-stream.org)     |
| macOS        | Mac App Store या moonlight-stream.org                    |
| Linux        | `flatpak install flathub com.moonlight_stream.Moonlight` |
| Android      | Google Play Store                                        |
| iOS          | App Store                                                |
| Raspberry Pi | `apt install moonlight-embedded`                         |

### Moonlight को Sunshine के साथ पेयर करें

1. अपने स्थानीय डिवाइस पर Moonlight खोलें
2. क्लिक करें **PC जोड़ें** और अपना Clore.ai सर्वर IP दर्ज करें
3. Moonlight दिखाएगा एक **PIN कोड**
4. Sunshine Web UI पर जाएँ → **पिन** → PIN दर्ज करें
5. कनेक्शन स्थापित! ✅

### सबसे अच्छे अनुभव के लिए Moonlight सेटिंग्स

```
रिज़ॉल्यूशन: 1920x1080
FPS: 60
बिटरेट: 50 Mbps
वीडियो कोडेक: HEVC (H.265)
हार्डवेयर डिकोडिंग: सक्षम
ऑडियो: स्टीरियो
```

***

## चरण 8: पोर्ट फ़ॉरवर्डिंग संदर्भ

| पोर्ट       | प्रोटोकॉल | उद्देश्य                   |
| ----------- | --------- | -------------------------- |
| 22          | TCP       | SSH प्रबंधन                |
| 47984       | TCP       | HTTPS (GameStream संगत)    |
| 47989       | TCP       | HTTP (GameStream संगत)     |
| 47990       | TCP       | HTTPS वेब UI               |
| 48010       | TCP       | RTSP (स्ट्रीमिंग नियंत्रण) |
| 47998-48000 | UDP       | वीडियो/ऑडियो स्ट्रीमिंग    |
| 48010       | UDP       | वीडियो स्ट्रीमिंग          |

{% hint style="warning" %}
**Clore.ai पोर्ट मैपिंग**: अपने सर्वर का ऑर्डर देते समय, सुनिश्चित करें कि पोर्ट 47990 और 48010 आपके पोर्ट मैप में हैं। स्ट्रीमिंग के लिए UDP पोर्ट (47998-48000) भी यदि संभव हो तो उपलब्ध होने चाहिए।
{% endhint %}

***

## समस्या निवारण

### Sunshine शुरू नहीं हो रहा

```bash
# कंटेनर लॉग जांचें
docker logs sunshine --tail 50

# सामान्य सुधार: अनुमतियाँ
chmod 777 /tmp/.X11-unix
xhost +local:docker
```

### स्ट्रीमिंग करते समय काली स्क्रीन

```bash
# सत्यापित करें कि वर्चुअल डिस्प्ले चल रहा है
export DISPLAY=:1
xdpyinfo | grep dimensions

# डिस्प्ले पुनः प्रारंभ करें
pkill Xvfb
Xvfb :1 -screen 0 1920x1080x24 &
```

### उच्च विलंबता

* स्विच करें **Wi‑Fi से Ethernet पर** क्लाइंट साइड पर
* Moonlight सेटिंग्स में बिटरेट कम करें
* उपयोग करें **H.265** H.264 के बजाय (समान गुणवत्ता पर बेहतर संपीड़न)
* सक्रिय करें **फ़्रेम पेसिंग** Sunshine कॉन्फ़िग में

### NVENC त्रुटि: "कोई एनकोडर नहीं मिला"

```bash
# सत्यापित करें कि NVIDIA GPU पहुँच योग्य है
nvidia-smi

# जाँचें कि कंटेनर के पास GPU पहुँच है
docker exec sunshine nvidia-smi

# यदि नहीं, तो --gpus all फ़्लैग के साथ पुनः आरंभ करें
docker stop sunshine && docker rm sunshine
# --gpus all के साथ फिर से चलाएँ
```

### प्रमाणीकरण/पेयरिंग समस्याएँ

```bash
# Sunshine क्रेडेंशियल्स रीसेट करें
docker exec sunshine sunshine --creds admin newpassword

# पेयर किए गए क्लाइंट्स साफ़ करें
rm -f ./sunshine-config/sunshine_state.json
docker restart sunshine
```

***

## उन्नत कॉन्फ़िगरेशन

### मल्टी-मॉनिटर समर्थन

```yaml
# Sunshine कॉन्फ़िग में (sunshine.conf)
[video]
adapter_name = /dev/dri/card0
output_name = HDMI-A-1
```

### नेटवर्क पर ऑडियो

PulseAudio वर्चुअल सिंक इंस्टॉल करें:

```bash
apt-get install -y pulseaudio
pulseaudio --daemon
pactl load-module module-null-sink sink_name=virtual_sink
export PULSE_SERVER=unix:/run/user/1000/pulse/native
```

### गेम कंट्रोलर समर्थन

Sunshine वर्चुअल गेमपैड इम्यूलेशन का समर्थन करता है। कॉन्फ़िग में सक्षम करें:

```yaml
[input]
gamepad = enabled
ds4_back_as_touchpad_click = disabled
```

### Wake-on-LAN (स्थायी सर्वरों के लिए)

```bash
# स्ट्रीमिंग न होने पर भी सर्वर को चालू रखें
docker update --restart=always sunshine
```

***

## लागत अनुकूलन

### अपनी स्ट्रीमिंग लागत की गणना करें

```
GPU किराया: $0.05–0.19/घं (RTX 3080)
स्टोरेज: ~$0.01/घंटा (50GB SSD)
कुल: ~$0.31-0.81/घंटा

बनाम GeForce NOW: $9.99-$19.99/माह (सीमित घंटे)
बनाम Xbox Cloud Gaming: $14.99/माह (सीमित कैटलॉग)
```

### पैसे बचाने के सुझाव

1. **स्पॉट इंस्टेंस**: ऑफ-पीक घंटों में सबसे सस्ता उपलब्ध GPU उपयोग करें
2. **गेम न खेलने पर रोकें**: कंटेनर रोकें लेकिन वॉल्यूम बनाए रखें
3. **गेम पहले से इंस्टॉल करें**: एक स्थायी वॉल्यूम का उपयोग करें ताकि हर बार फिर से डाउनलोड न करना पड़े
4. **ऑटो-शटडाउन**: निष्क्रियता के बाद सर्वर रोकने के लिए एक स्क्रिप्ट जोड़ें

```bash
# Moonlight कनेक्शन न होने पर 30 मिनट बाद ऑटो-शटडाउन
#!/bin/bash
while true; do
  connections=$(ss -tn | grep 47990 | wc -l)
  if [ "$connections" -eq 0 ]; then
    idle_count=$((idle_count + 1))
  else
    idle_count=0
  fi
  if [ "$idle_count" -ge 30 ]; then
    echo "30 मिनट से कोई कनेक्शन नहीं, शट डाउन किया जा रहा है"
    docker stop sunshine
    break
  fi
  sleep 60
done
```

***

## सुरक्षा सर्वोत्तम अभ्यास

{% hint style="danger" %}
**Sunshine को बिना प्रमाणीकरण के कभी एक्सपोज़ न करें!** हमेशा एक मजबूत पासवर्ड सेट करें और अतिरिक्त सुरक्षा के लिए VPN या SSH टनल का उपयोग करने पर विचार करें।
{% endhint %}

### SSH टनल विधि (सबसे सुरक्षित)

```bash
# अपनी स्थानीय मशीन पर SSH टनल बनाएँ
ssh -L 47990:localhost:47990 \
    -L 48010:localhost:48010 \
    root@<clore-server-ip>

# फिर सर्वर IP के बजाय Moonlight को localhost से कनेक्ट करें
```

### डिफ़ॉल्ट क्रेडेंशियल्स बदलें

```bash
docker exec sunshine sunshine --creds admin 'Y0urStr0ngP@ssw0rd!'
```

### IP द्वारा पहुँच सीमित करें

Sunshine कॉन्फ़िग में:

```
allowed_ips = 192.168.1.0/24,203.0.113.5
```

***

## प्रदर्शन बेंचमार्क

| GPU      | रिज़ॉल्यूशन | FPS | लेटेंसी | एनकोडर    |
| -------- | ----------- | --- | ------- | --------- |
| RTX 3060 | 1080p       | 60  | \~15ms  | NVENC     |
| RTX 3080 | 1440p       | 60  | \~12ms  | NVENC     |
| RTX 4080 | 4K          | 60  | \~10ms  | NVENC AV1 |
| RTX 4090 | 4K          | 120 | \~8ms   | NVENC AV1 |

*100 Mbps स्थानीय नेटवर्क कनेक्शन पर मापी गई विलंबता*

***

## उपयोगी लिंक

* [Sunshine GitHub](https://github.com/LizardByte/Sunshine) — 20K+ स्टार
* [Moonlight आधिकारिक साइट](https://moonlight-stream.org)
* [Sunshine दस्तावेज़ीकरण](https://docs.lizardbyte.dev/projects/sunshine)
* [LizardByte Discord](https://discord.gg/lizardbyte)
* [Clore.ai मार्केटप्लेस](https://clore.ai)

***

## सारांश

| चरण | क्रिया                                                |
| --- | ----------------------------------------------------- |
| 1   | 22, 47990, 48010 पोर्ट के साथ GPU सर्वर किराए पर लें  |
| 2   | तैनात करें `lizardbyte/sunshine` Docker के माध्यम से  |
| 3   | वेब UI के माध्यम से कॉन्फ़िगर करें `https://IP:47990` |
| 4   | NVENC एनकोडर, 50 Mbps बिटरेट सेट करें                 |
| 5   | वर्चुअल डिस्प्ले (Xvfb) बनाएं                         |
| 6   | Moonlight क्लाइंट को स्थानीय रूप से इंस्टॉल करें      |
| 7   | PIN कोड का उपयोग करके पेयर करें                       |
| 8   | स्ट्रीम करें और खेलें! 🎮                             |

Clore.ai पर Sunshine + Moonlight के साथ, आपको ऐसा क्लाउड गेमिंग अनुभव मिलता है जो किसी भी व्यावसायिक सेवा को टक्कर देता है — अपने हार्डवेयर और गेम्स पर पूर्ण नियंत्रण के साथ। कोई सब्सक्रिप्शन नहीं, कोई प्रतिबंध नहीं, कोई सीमा नहीं।

***

## Clore.ai GPU अनुशंसाएँ

| उपयोग-प्रकरण               | अनुशंसित GPU    | Clore.ai पर अनुमानित लागत |
| -------------------------- | --------------- | ------------------------- |
| 1080p/60fps स्ट्रीमिंग     | RTX 3090 (24GB) | $0.07–0.21/gpu/hr         |
| 4K/उच्च-रिफ्रेश स्ट्रीमिंग | RTX 4090 (24GB) | $0.14–0.42/gpu/hr         |
| AAA गेमिंग + स्ट्रीमिंग    | RTX 4090 (24GB) | $0.14–0.42/gpu/hr         |

> 💡 इस गाइड के सभी उदाहरण [Clore.ai](https://clore.ai/marketplace) GPU servers पर तैनात किए जा सकते हैं। उपलब्ध GPUs ब्राउज़ करें और घंटे के हिसाब से किराए पर लें — कोई प्रतिबद्धता नहीं, पूर्ण root access.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.clore.ai/guides/guides_v2-hi/gaming-and-streaming/sunshine-moonlight.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
