# dynamic playlist

**URL:** <https://community.wowza.com/t/dynamic-playlist/35138>\
**Category:** Wowza Streaming Engine\
**Created:** [July 25, 2010, 9:04am UTC](https://community.wowza.com/t/dynamic-playlist/35138 "2010-07-25T09:04:22Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![East\_Eagle](https://avatars.discourse-cdn.com/v4/letter/e/c2a13f/32.png) [@East\_Eagle](https://community.wowza.com/u/East_Eagle)\
**Post date:** [July 25, 2010, 9:04am UTC](https://community.wowza.com/t/dynamic-playlist/35138/1 "2010-07-25T09:04:22Z")

</div>

i have a situation , need your advice

I need to stream 3 filesin successive when a user tries to play

[http://192.168.200.200/vod/mp4:test.f4v/playlist.m3u8](http://192.168.200.200/vod/mp4:test.f4v/playlist.m3u8)

((( this is for Cupertino VOd streaming ))))

the files are

test1.f4v

test2.f4v

test3.f4v

these files , i need to stream back in successive to the user when he/she writes the url as shown above.

* * *

can you show me how to write a server side module to do that.

my best regards

---

<div class="post-metadata">

**Author:** ![Charlie\_Good](https://sea2.discourse-cdn.com/flex002/user_avatar/community.wowza.com/charlie_good/32/383_2.png) [@Charlie\_Good](https://community.wowza.com/u/Charlie_Good)\
**Post date:** [July 25, 2010, 4:00am UTC](https://community.wowza.com/t/dynamic-playlist/35138/2 "2010-07-25T04:00:51Z")

</div>

There is currently not a way to do this to the iPhone. We can do this type of playlist streaming to Flash but not to the iPhone.

Charlie

---

<div class="post-metadata">

**Author:** ![Charlie\_Good](https://sea2.discourse-cdn.com/flex002/user_avatar/community.wowza.com/charlie_good/32/383_2.png) [@Charlie\_Good](https://community.wowza.com/u/Charlie_Good)\
**Post date:** [July 26, 2010, 4:05am UTC](https://community.wowza.com/t/dynamic-playlist/35138/3 "2010-07-26T04:05:56Z")

</div>

We just don’t have a way to do it. You will need to use a video editor tools to combine the individual files into a single file.

Charlie

---

<div class="post-metadata">

**Author:** ![Charlie\_Good](https://sea2.discourse-cdn.com/flex002/user_avatar/community.wowza.com/charlie_good/32/383_2.png) [@Charlie\_Good](https://community.wowza.com/u/Charlie_Good)\
**Post date:** [July 26, 2010, 5:18am UTC](https://community.wowza.com/t/dynamic-playlist/35138/4 "2010-07-26T05:18:23Z")

</div>

You can do a server-side playlist using the Stream class. See this post:

[https://www.wowza.com/docs/how-to-schedule-streaming-with-wowza-streaming-engine-streampublisher](https://www.wowza.com/docs/how-to-schedule-streaming-with-wowza-streaming-engine-streampublisher)

Charlie

---

<div class="post-metadata">

**Author:** ![Richard\_Lanham](https://avatars.discourse-cdn.com/v4/letter/r/c68b51/32.png) [@Richard\_Lanham](https://community.wowza.com/u/Richard_Lanham)\
**Post date:** [July 27, 2010, 12:54pm UTC](https://community.wowza.com/t/dynamic-playlist/35138/5 "2010-07-27T12:54:39Z")

</div>

The Stream class you are proposing to use creates a live stream, not a vod stream. I think the only way this might work is if you use a HTTProvider to prepare it first, then quickly play it.

So the player would have to call an HTTProvider something like:

[http://localhost:1935/prepStream](http://localhost:1935/prepStream)

Where prepStream refers to an HTTProvider that you create, and have loaded in VHost.xml /HTTProviders list, which creates the Stream class stream.

Then, immediately following that, you play this live stream:

[http://localhost:1935/app/myStreamClassStream/Manifest](http://localhost:1935/app/myStreamClassStream/Manifest)

Richard

---

<div class="post-metadata">

**Author:** ![Richard\_Lanham](https://avatars.discourse-cdn.com/v4/letter/r/c68b51/32.png) [@Richard\_Lanham](https://community.wowza.com/u/Richard_Lanham)\
**Post date:** [July 27, 2010, 3:16pm UTC](https://community.wowza.com/t/dynamic-playlist/35138/6 "2010-07-27T15:16:14Z")

</div>

Because it is a live stream.

Richard

---

<div class="post-metadata">

**Author:** ![Richard\_Lanham](https://avatars.discourse-cdn.com/v4/letter/r/c68b51/32.png) [@Richard\_Lanham](https://community.wowza.com/u/Richard_Lanham)\
**Post date:** [July 27, 2010, 3:24pm UTC](https://community.wowza.com/t/dynamic-playlist/35138/7 "2010-07-27T15:24:17Z")

</div>

I understand, but it’s not supported at present in Wowza.

Richard

---

<div class="post-metadata">

**Author:** ![Richard\_Lanham](https://avatars.discourse-cdn.com/v4/letter/r/c68b51/32.png) [@Richard\_Lanham](https://community.wowza.com/u/Richard_Lanham)\
**Post date:** [July 28, 2010, 12:20pm UTC](https://community.wowza.com/t/dynamic-playlist/35138/8 "2010-07-28T12:20:17Z")

</div>

You tried that already, right? It works, but it is a live stream. It’s not substitute for video on demand.

Richard

---

<div class="post-metadata">

**Author:** ![East\_Eagle](https://avatars.discourse-cdn.com/v4/letter/e/c2a13f/32.png) [@East\_Eagle](https://community.wowza.com/u/East_Eagle)\
**Post date:** [July 26, 2010, 7:57am UTC](https://community.wowza.com/t/dynamic-playlist/35138/9 "2010-07-26T07:57:55Z")

</div>

Thank you charlie.

But if a need to do same thing for iPhone , could you advice any way,please.

what is the technical reason that you do not implement it to iPhone.

---

<div class="post-metadata">

**Author:** ![East\_Eagle](https://avatars.discourse-cdn.com/v4/letter/e/c2a13f/32.png) [@East\_Eagle](https://community.wowza.com/u/East_Eagle)\
**Post date:** [July 27, 2010, 7:29am UTC](https://community.wowza.com/t/dynamic-playlist/35138/10 "2010-07-27T07:29:21Z")

</div>

Actually , i did cobine them before sending. I was searching for a server side like solution. any way many thanks , charlie. but i still need the following

if the user tires to write

[http://MyIPAddress:1935/VOD/test.f4v/playlist.m3u8?0907100930\_30](http://MyIPAddress:1935/VOD/test.f4v/playlist.m3u8?0907100930_30)

wowza plays test.f4v.

I want to cancel playing test.f4v and instead send the combined file based on the paparamter 0907100930\_30.

---

<div class="post-metadata">

**Author:** ![Alex\_Israelit](https://avatars.discourse-cdn.com/v4/letter/a/b487fb/32.png) [@Alex\_Israelit](https://community.wowza.com/u/Alex_Israelit)\
**Post date:** [July 26, 2010, 3:07pm UTC](https://community.wowza.com/t/dynamic-playlist/35138/11 "2010-07-26T15:07:49Z")

</div>

How can I create dynamic playlist (like Composite Manifest Structure .csm) for Silverlight ?

---

<div class="post-metadata">

**Author:** ![Alex\_Israelit](https://avatars.discourse-cdn.com/v4/letter/a/b487fb/32.png) [@Alex\_Israelit](https://community.wowza.com/u/Alex_Israelit)\
**Post date:** [July 26, 2010, 4:40pm UTC](https://community.wowza.com/t/dynamic-playlist/35138/12 "2010-07-26T16:40:40Z")

</div>

Thank you.

---

<div class="post-metadata">

**Author:** ![Alex\_Israelit](https://avatars.discourse-cdn.com/v4/letter/a/b487fb/32.png) [@Alex\_Israelit](https://community.wowza.com/u/Alex_Israelit)\
**Post date:** [July 27, 2010, 11:04am UTC](https://community.wowza.com/t/dynamic-playlist/35138/13 "2010-07-27T11:04:47Z")

</div>

I have experience on FMS and now my company want go to Silverlight+Smooth streaming server

I have tested WOWZA and I see we can work with it

But I can’t resolve the last issue.

for example FMS:

application.onConnect = function(user)

{

Client.prototype.songPlay = function(songsNow)

{

this.songStream = Stream.get(“songs”);

if (this.songStream)

{

this.songStream.play(“mp4:Flash”, 0);

this.songStream.play(“mp4:Take5”, 0, -1, false);

this.songStream.play(“mp4:PrideofMan”, 0, -1, false);

}

};

Client.prototype.stopPlay = function(songsNow)

{

this.songStream.play(false);

};

};

and after that I can play rtmp:\SERVER:port\fms\_app\songs

I see I can write same code for WOWZA

but I don’t understand How to do it for Silverlight Smooth Streaming because:

I can’t call “songPlay” (nc.call(“songPlay”,…)) from Silverlight

and I don’t know where I can create Stream

…

Stream stream = Stream.createInstance(vhost, app.getName(), streamName);

stream.play(“mp4:Flash”, 0);

stream.play(“mp4:Take5”, 0, -1, false);

stream.play(“mp4:PrideofMan”, 0, -1, false);

…

and how can I play it from Silverlight player ([http://localhost:1935/app/songs.mp4/Manifest](http://localhost:1935/app/songs.mp4/Manifest) ???)

But if I can do the query - [http://localhost:1935/app/FileA\_FileB\_FileC.mp4/Manifest](http://localhost:1935/app/FileA_FileB_FileC.mp4/Manifest)

and on the fly create stream

public void onStreamCreate(IMediaStream stream)

{

Stream stream = Stream.createInstance(vhost, app.getName(), streamName);

stream.play(“mp4:FileA”, 0);

stream.play(“mp4:FileB”, 0, -1, false);

stream.play(“mp4:FileC”, 0, -1, false);

}

and Smooth Streaming PLayer will play it I think it will resolve my problem.

Sorry for my bad English.

---

<div class="post-metadata">

**Author:** ![Alex\_Israelit](https://avatars.discourse-cdn.com/v4/letter/a/b487fb/32.png) [@Alex\_Israelit](https://community.wowza.com/u/Alex_Israelit)\
**Post date:** [July 27, 2010, 5:14pm UTC](https://community.wowza.com/t/dynamic-playlist/35138/14 "2010-07-27T17:14:30Z")

</div>

but in this case I haven’t FastForward FastBackward Seek and Slow Motion

---

<div class="post-metadata">

**Author:** ![Alex\_Israelit](https://avatars.discourse-cdn.com/v4/letter/a/b487fb/32.png) [@Alex\_Israelit](https://community.wowza.com/u/Alex_Israelit)\
**Post date:** [July 27, 2010, 5:21pm UTC](https://community.wowza.com/t/dynamic-playlist/35138/15 "2010-07-27T17:21:16Z")

</div>

my task play playlist like ordinary file (like .csm file on IIS7+Smooth Streaming )

---

<div class="post-metadata">

**Author:** ![Alex\_Israelit](https://avatars.discourse-cdn.com/v4/letter/a/b487fb/32.png) [@Alex\_Israelit](https://community.wowza.com/u/Alex_Israelit)\
**Post date:** [July 28, 2010, 10:18am UTC](https://community.wowza.com/t/dynamic-playlist/35138/16 "2010-07-28T10:18:57Z")

</div>

ok. We haven’t support for .CSM but can we do so:

public void onAppStart(IApplicationInstance appInstance) {

Stream stream=Stream.createInstance(appInstance, “myStream”);

stream.play(“test.mp4”, 0, -1, true);

stream.play(“test2.mp4”, 0, -1, false);

}

and from Silverlight player :

[http://localhost:1935/app/myStream/Manifest](http://localhost:1935/app/myStream/Manifest)

---

<div class="post-metadata">

**Author:** ![Alex\_Israelit](https://avatars.discourse-cdn.com/v4/letter/a/b487fb/32.png) [@Alex\_Israelit](https://community.wowza.com/u/Alex_Israelit)\
**Post date:** [July 28, 2010, 4:16pm UTC](https://community.wowza.com/t/dynamic-playlist/35138/17 "2010-07-28T16:16:27Z")

</div>

Yes I did. It’s working but I can’t get what I need.

Thank you for your help.
