> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dwe.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# GStreamer-guide for stellarHD

> En guide til bruk av GStreamer med stellarHD-kameraet for høyytelses videostrømming og -opptak.

## Oversikt

GStreamer er et kraftig multimediarammeverk som muliggjør effektiv videostrømming og -behandling. stellarHD støtter komprimeringsformatene **MJPEG** og rå **YUYV**, med støtte for høy bildefrekvens opp til 60 FPS.

## Krav

Du må ha GStreamer installert på en Linux-datamaskin for dette. Du kan bruke følgende installasjonskommando for å få de nødvendige pakkene.

```bash theme={null}
sudo apt install v4l-utils libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-libav gstreamer1.0-plugins-ugly
```

## Identifisering av enhetsnoder

Når du kobler til et stellarHD-kamera, oppretter Linux-kjernen (via V4L2) vanligvis fire enhetsnoder (f.eks. `/dev/video0` til `/dev/video3`).

* **MJPEG / YUYV:** Finnes på den første noden i gruppen (f.eks. `/dev/video0`).

Du kan bekrefte enhetsnodene dine ved hjelp av `v4l2-ctl`:

```bash theme={null}
v4l2-ctl --list-devices
```

Se etter oppføringen som tilsvarer stellarHD. Den vil liste opp stiene som er knyttet til det spesifikke kameraet.

## MJPEG-modus

MJPEG-modus er den primære måten å oppnå høye bildefrekvenser (opp til 60 FPS) på stellarHD.

### Lokal forhåndsvisning

Forutsatt at `/dev/video0` er MJPEG-noden:

```bash theme={null}
gst-launch-1.0 v4l2src device=/dev/video0 ! \
    image/jpeg,width=1600,height=1200,framerate=60/1 ! \
    jpegdec ! autovideosink
```

### UDP-nettverksstrøm

For å strømme MJPEG over et nettverk til en annen enhet (f.eks. IP `192.168.1.50` på port `5600`):

```bash theme={null}
gst-launch-1.0 v4l2src device=/dev/video0 ! \
    image/jpeg,width=1600,height=1200,framerate=60/1 ! \
    rtpjpegpay ! udpsink host=192.168.1.50 port=5600
```

For å motta strømmen på en annen datamaskin kan du bruke følgende:

```bash theme={null}
gst-launch-1.0 -v udpsrc port=5600 ! \
    "application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)JPEG, payload=(int)26" ! \
    rtpjpegdepay ! jpegdec ! videoconvert ! autovideosink
```

## YUYV-modus

Merk at YUYV er begrenset til lavere bildefrekvenser ved høyere oppløsninger på grunn av USB-båndbredde.

### Lokal forhåndsvisning

Forutsatt at `/dev/video0` er noden:

```bash theme={null}
gst-launch-1.0 v4l2src device=/dev/video0 ! \
    video/x-raw,format=YUY2,width=640,height=480,framerate=5/1 ! \
    videoconvert ! autovideosink
```

<Note>
  Se [tekniske spesifikasjoner for stellarHD](/no/stellarHD/specs/stellarHD#støttede-oppløsninger-og-bildefrekvenser) for å se hvilke kombinasjoner av oppløsning og bildefrekvens som støttes i YUYV-modus.
</Note>

## Programvarekoding (H.264)

Siden stellarHD ikke har en innebygd maskinvare-H.264-koder, kan du bruke GStreamer til å utføre programvarekoding hvis du trenger å strømme H.264 over et nettverk.

```bash theme={null}
gst-launch-1.0 v4l2src device=/dev/video0 ! \
    image/jpeg,width=1280,height=720,framerate=60/1 ! \
    jpegdec ! queue ! x264enc tune=zerolatency bitrate=4000 speed-preset=ultrafast ! \
    h264parse ! rtph264pay config-interval=10 pt=96 ! \
    udpsink host=192.168.1.50 port=5600
```
