# Xstream on Web

This article describes how to configure Xstream DRM with THEOplayer.

Head to our page on [DRM](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/introduction.md) for more general information.

## Integration

We provide open-source DRM integrations which are easy to maintain and allow for a modular approach. You can find them in the [DRM integration samples repository](https://github.com/THEOplayer/samples-drm-integration), alongside guides on how to integrate and use them.

There currently is no ready-made integration for this DRM provider: you can choose to develop one based on the examples in the repository, or get in contact with us about making one.

## Pre-integration

> **Note**
>
> When integrating DRM for the first time or updating your integration, the DRM integration described above is preferred over the pre-integration below.

```js
if (HLS) {
  let drmConfiguration = {
    integration: 'xstream',
    streamId: '<STREAM_ID>',
    ticketAcquisitionURL: '<TICKET_ACQUISITION_URL>',
    /*"fairplay": {
            "licenseAcquisitionURL": "<LICENSE_KEY_URL_FAIRPLAY>",
            "certificateURL": "<CERTIFICATE_URL>"
        }*/
  };
  player.source = {
    sources: {
      src: '<HLS_STREAM_URL>',
      type: 'application/x-mpegurl',
      contentProtection: drmConfiguration,
    },
  };
} else if (DASH) {
  let drmConfiguration = {
    integration: 'xstream',
    streamId: '<STREAM_ID>',
    ticketAcquisitionURL: '<TICKET_ACQUISITION_URL>',
    /*"playready": {
            "licenseAcquisitionURL": "<LICENSE_KEY_URL_PLAYREADY>"
        },
        "widevine": {
            "licenseAcquisitionURL": "<LICENSE_KEY_URL_WIDEVINE>"
        }*/
  };
  player.source = {
    sources: {
      src: '<DASH_STREAM_URL>',
      type: 'application/dash+xml',
      contentProtection: drmConfiguration,
    },
  };
}
```

## Related articles

* [Comcast](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/comcast.md)
* [DoveRunner](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/doverunner.md)
* [BuyDRM KeyOS](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/buydrm-keyos.md)
* [Arris Titanium](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/arris-titanium.md)
* [Uplynk](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/uplynk.md)
* [Xstream](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/xstream.md)
* [Vualto VuDRM](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/vualto-vudrm.md)
