# Control Stream class streams dynamically with a Wowza Streaming Engine Java module

Updated on 07/16/2026 8:08 am PDT

You can use the **HTTPStreamControl** module for Wowza Streaming Engine™ [media server software](/content/products/streaming-engine/index.html) to control Stream class streams and playlists through HTTP requests. Use it to dynamically create, set up, and start new live Stream class streams from static and live sources, and to add sources to existing Stream class streams. For extra control, use this HTTP provider with the **StreamPublisher** module.

> **Notes:**
>
> - Be careful when using **HTTPStreamControl** with the **StreamPublisher** module. Changes made to one module may not be picked up in the other module.
> - **HTTPStreamControl** uses internal **ApplicationInstance** properties to store references to streams and playlists. Do _not_ use the same name for a stream and a playlist. Using the same name for both will have unexpected results because the last object defined (either the stream or the playlist) will be stored in the properties and will overwrite what's already there.

## Prerequisites [Copy to clipboard](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol\#prerequisites "Copy to clipboard"/index.html)

* * *

Wowza Streaming Engine 4.0.0 or later is required.

## Installation [Copy to clipboard](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol\#installation "Copy to clipboard"/index.html)

* * *

1. Download **[wse-plugin-httpstreamcontrol.zip](/content/downloads/forums/collection/wse-plugin-httpstreamcontrol.zip)**.
2. Extract the contents from the downloaded (zipped) package, and then copy the **lib/wse-plugin-httpstreamcontrol.jar** file from the package to the **lib** folder in your Wowza Streaming Engine installation ( **\[ _install-dir_\]/lib**).
3. Restart Wowza Streaming Engine.

## Configuration [Copy to clipboard](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol\#configuration "Copy to clipboard"/index.html)

* * *

1. Navigate to **\[ _install-dir_\]/conf** and open **VHost.xml** in a text editor.
2. Locate the section **<HostPortList>/<HostPort>/<Name>Default Streaming</Name>**.
3. Add the following HTTP provider definition to the **<HTTPProviders>** section:

Copy

```
<HTTPProvider>
	<BaseClass>com.wowza.wms.plugin.HTTPStreamControl</BaseClass>
	<RequestFilters>streamcontrol*</RequestFilters>
	<AuthenticationMethod>none</AuthenticationMethod>
</HTTPProvider>
```

> **Important:** The new HTTP provider must be above the last HTTP provider that's used to resolve all requests that aren't handled by other providers. **RequestFilters** identifies the last part of the URL that's checked to see if the HTTP provider can handle the request. It isn't the name of a custom image.
>
> To make it harder for someone to detect that this is a referer check, change the request filter to your own value, but note that stream extensions that aren't currently used elsewhere in the server won't work.

4. Save and close **VHost.xml**, and then restart Wowza Streaming Engine.

## Usage [Copy to clipboard](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol\#usage "Copy to clipboard"/index.html)

* * *

Control the playlist through an HTTP request, passing the required variables as query string parameters.

Add a new stream:

Copy

```
curl "http://localhost:8086/streamcontrol?appName=myApplication&action=addNewStream&streamName=testStream"
```

Add a new playlist:

Copy

```
curl "http://localhost:8086/streamcontrol?appName=myApplication&action=addNewPlaylist&playlistName=p1"
```

Add a playlist item:

Copy

```
curl "http://localhost:8086/streamcontrol?appName=myApplication&action=addItemToPlaylist&playlistName=p1&streamName=testStream&playlistItemName=sample.mp4"
```

Open the playlist on a stream. By default, start is **0** and length is **-1**. For live streams, use **-2** for start. Any positive integer for length plays the source for that number of seconds:

Copy

```
curl "http://localhost:8086/streamcontrol?appName=myApplication&action=openPlaylistOnStream&playlistName=p1&streamName=testStream"
```

Play the next item on the playlist:

Copy

```
curl "http://localhost:8086/streamcontrol?appName=myApplication&action=playNextPlaylistItem&streamName=testStream"
```

Remove an item from a playlist:

Copy

```
curl "http://localhost:8086/streamcontrol?appName=myApplication&action=removeItemFromPlaylist&playlistItemName=sample.mp4&streamName=testStream"
```

Stop a stream:

Copy

```
curl "http://localhost:8086/streamcontrol?appName=myApplication&action=stopStream&streamName=testStream"
```

## For developers [Copy to clipboard](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol\#for-developers "Copy to clipboard"/index.html)

* * *

- Get the source code on [GitHub](https://github.com/WowzaMediaSystems/wse-plugin-httpstreamcontrol)

Was this article helpful?

[Helpful](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol# "Helpful"/index.html)

Thank you for your feedback!

300 characters remaining

Name

Email

reCAPTCHA

Recaptcha requires verification.

I'm not a robot

reCAPTCHA

[Submit](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol# "Submit comment"/index.html)

Thank you for providing feedback to help us improve our documentation!

##### Popular Video Topics [Copy to clipboard](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol\#popular-video-topics "Copy to clipboard"/index.html)

- [The Future of Video Tech](/content/blog/future-of-video-technology/index.html)
- [Streaming Starter Guide](/content/blog/complete-guide-to-live-streaming/index.html)
- [Live Event Streaming Guide](/content/blog/live-event-streaming-guide/index.html)
- [Interactive Streaming Guide](/content/blog/low-latency-streaming-technologies-the-key-to-interactive-video/index.html)
- [Streaming Protocols](/content/blog/streaming-protocols/index.html)
- [Transcoding](/content/blog/what-is-transcoding-and-why-its-critical-for-streaming/index.html)
- [Low Latency](/content/blog/what-is-low-latency/index.html)
- [Security](/content/blog/secure-video-streaming/index.html)

##### Video Resources [Copy to clipboard](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol\#video-resources "Copy to clipboard"/index.html)

- [APIs & SDKs](/content/docs/wowza-developer-apis-and-sdks/index.html)
- [Developer IDE](/content/docs/how-to-extend-wowza-streaming-engine-using-the-wowza-ide/index.html)
- [Test Players](/content/testplayers/index.html)
- [Wowza System Status](https://status.wowza.com/)

##### Partners [Copy to clipboard](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol\#partners "Copy to clipboard"/index.html)

- [Partners Overview](/content/partners/index.html)
- [Find a Partner](/content/partners/preferred-international-resellers/index.html)
- [Channel Program](/content/partners/channel-partner-program/index.html)
- [OEM Program](/content/partners/oem/index.html)
- [Partner Portal](/content/partners/resources/index.html)

##### Company [Copy to clipboard](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol\#company "Copy to clipboard"/index.html)

- [About Us](/content/company/index.html)
- [Blog](/content/blog/category/blog/index.html)
- [News](/content/news/index.html)
- [Events & Webinars](/content/company/events/index.html)
- [Careers](/content/careers/index.html)
- [Customers](/content/customers/index.html)
- [Contact Us](/content/contact/index.html)

##### Stay Connected [Copy to clipboard](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol\#stay-connected "Copy to clipboard"/index.html)

##### Stay Up to Date with the Blog [Copy to clipboard](/content/docs/how-to-control-stream-class-streams-dynamically-httpstreamcontrol\#stay-up-to-date-with-the-blog "Copy to clipboard"/index.html)

Email

X - Form Filled Type

© 2007–2025 Wowza Media Systems™, LLC. All rights reserved.   [Security & Privacy Policy](/content/legal/privacy/index.html) \| [Legal](/content/legal/index.html) \| [System Status](https://status.wowza.com/)

reCAPTCHA
