Wowza Community

Dynamic SMIL not working

Hello,

I am trying to generate smil file dynamically , but somehow it not works for me.

When I am trying to play video using following line :

It shows me no playable resource found

Same working with “http://192.168.7.10:1935/vod/smil:bigbuckbunny.smil/playlist.m3u8” URL

I have created j2ee web project.

Below is my code :

HTML code

=========

Java code

========

package com.jagir.wowza.smil;

import com.wowza.wms.application.IApplicationInstance;

import com.wowza.wms.medialist.MediaList;

import com.wowza.wms.medialist.MediaListRendition;

import com.wowza.wms.medialist.MediaListSegment;

import com.wowza.wms.module.ModuleBase;

import com.wowza.wms.stream.IMediaListProvider;

import com.wowza.wms.stream.IMediaListReader;

import com.wowza.wms.stream.IMediaStream;

public class ModuleAMLSTTest extends ModuleBase

{

class MyMediaListProvider implements IMediaListProvider

{

public MediaList resolveMediaList(IMediaListReader mediaListReader, IMediaStream stream, String streamName)

{

MediaList mediaList = new MediaList();

MediaListSegment segment = new MediaListSegment();

mediaList.addSegment(segment);

MediaListRendition rendition1 = new MediaListRendition();

segment.addRendition(rendition1);

rendition1.setName(“mp4:”+streamName+"_450.mp4");

rendition1.setBitrateAudio(44100);

rendition1.setBitrateVideo(45000);

rendition1.setWidth(424);

rendition1.setHeight(240);

rendition1.setAudioCodecId(“mp4a.40.2”);

rendition1.setVideoCodecId(“avc1.66.12”);

MediaListRendition rendition2 = new MediaListRendition();

segment.addRendition(rendition2);

rendition2.setName(“mp4:”+streamName+"_750.mp4");

rendition2.setBitrateAudio(44100);

rendition2.setBitrateVideo(750000);

rendition2.setWidth(640);

rendition2.setHeight(480);

rendition2.setAudioCodecId(“mp4a.40.2”);

rendition2.setVideoCodecId(“avc1.77.31”);

MediaListRendition rendition3 = new MediaListRendition();

segment.addRendition(rendition3);

rendition3.setName(“mp4:”+streamName+"_1100.mp4");

rendition3.setBitrateAudio(44100);

rendition3.setBitrateVideo(1100000);

rendition3.setWidth(1272);

rendition3.setHeight(720);

rendition3.setAudioCodecId(“mp4a.40.2”);

rendition3.setVideoCodecId(“avc1.77.31”);

MediaListRendition rendition4 = new MediaListRendition();

segment.addRendition(rendition4);

rendition4.setName(“mp4:”+streamName+"_1500.mp4");

rendition4.setBitrateAudio(44100);

rendition4.setBitrateVideo(1100000);

rendition4.setWidth(1272);

rendition4.setHeight(720);

rendition4.setAudioCodecId(“mp4a.40.2”);

rendition4.setVideoCodecId(“avc1.77.31”);

System.out.println("::::::::::::::::::::::"+streamName);

return mediaList;

}

}

public void onAppStart(IApplicationInstance appInstance)

{

appInstance.setMediaListProvider(new MyMediaListProvider());

}

}

bigbuckbunny_450.mp4

bigbuckbunny_750.mp4

bigbuckbunny_1100.mp4

bigbuckbunny_1500.mp4

files are stored in content folder.

I have also added

ModuleAMLSTTest

ModuleAMLSTTest

com.jagir.wowza.smil.ModuleAMLSTTest

to

C:\Program Files (x86)\Wowza Media Systems\Wowza Streaming Engine 4.5.0\conf\vod\Application.xml inside

Duplicate. No need to double post.

Best,

Salvadore