Wowza Community

Record Lowest Bitrate stream

Hi

I’m new to development…I want to build the plugin for wowza application which will automatically detect the lowest bitrate incoming stream and start recording of it. for example if there is a stream, say test.stream, and transcoder transcode it in test_160 ,test_360 ,test_720 so my plugin should tell test_160 has lowest bitrate and start recording test_160. My problem is I’m able to record the stream but not able to find the lowest bitrate stream. how to find lowest bitrate stream of all the incoming stream??it would be very helpful if you answer this question…

hello

what coding language are you using ? where do you take the video source from ?

if you have access to the client side, maybe you could determine the bitrate from the source, and name the stream including the bitrate as a string

Hi,

You may want to check out this module, which monitors bandwidth of published streams. The source is available in GitHub, link in the article.

Regards,

Paul

i’m using java … i want to list all the streams…and get the lowest bitrate stream from that stream…and then record that stream…i’m providing with my code…see what can i do

public void onAppStart(IApplicationInstance appInstance) {

String fullname = appInstance.getApplication().getName() + “/” + appInstance.getName();

getLogger().info("onAppStart: " + fullname);

this.appInstance = appInstance;

this.vhost = appInstance.getVHost();

checkFile = new HashMap<String, Integer>();

StreamRecorderParameters recordParams = new StreamRecorderParameters(this.appInstance);

writeListener=new WriteListener();

appInstance.addMediaWriterListener(writeListener);

recordParams.segmentationType = IStreamRecorderConstants.SEGMENT_BY_DURATION;

recordParams.segmentDuration = 30* 60 * 1000;

recordParams.versioningOption = IStreamRecorderConstants.OVERWRITE_FILE;

recordParams.fileVersionDelegate = new MyFileVersionDelegate();

recordParams.notifyListener = new MyStreamRecorderListener();

this.vhost.getLiveStreamRecordManager().startRecording(appInstance,“Prostream_160p”, recordParams);;

}

thanks

ayush