Hi there, I am trying to monitor the incoming stream health status by tracking byte rate and frame rate, etc.
I understand there is an API here https://www.wowza.com/docs/statistics-query-examples but it only contains byte rate info.
Any solution that is lightweight and will not affect the performance of Wowza itself? Cheers
This simple code can get you what you want:
@Override
public void onCodecInfoVideo(IMediaStream stream, MediaCodecInfoVideo codecInfoVideo)
{
WMSLoggerFactory.getLogger(null).info("onCodecInfoVideo: " + stream.getName());
WMSLoggerFactory.getLogger(null).info("onCodecInfoVideoForStream: " + codecInfoVideo.toString());
}
Which will return this IN THE LOGS:
INFO server comment - onCodecInfoVideoForStream: {MediaCodecInfoVideo: codec:H264, profile:Baseline, level:3.1, frameSize:960x600, displaySize:960x600, frameRate:30.000000}
These should also be reported in the logs by default for when the packetizer loads up and decodes the stream.
Hi Rose,
Thanks for the reply, I noticed the log you provided only have frameRate, what about the byte rate of the incoming streams? any settings I can turn it on by default? or there must be code changes.
Thanks Hua
Take hint from ModuleLimitPublishedStreamBandwidth on wowza GitHub repo. It shows how to determine bitrate/data rate.