EasyPlayer-rtsp Win版播放器获取媒体信息的代码实现

Posted TSINGSEE

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EasyPlayer-rtsp Win版播放器获取媒体信息的代码实现相关的知识,希望对你有一定的参考价值。

EasyPlayer视频流媒体播放器支持RTSP、RTMP、HTTP、HLS、UDP、RTP、File等多种流媒体协议播放、支持本地文件播放,支持本地抓拍、本地录像、播放旋转、多屏播放、倍数播放等多种功能特性。使用了TSINGSEE青犀视频产品的小伙伴都知道,EasyNVR、EasyDSS内都集成了EasyPlayer.JS版本。

经常遇到有开发者咨询我们如何获取EasyPlayer-rtsp Win版播放器RTSP流的媒体信息,其实通过VLC即可获取,如下图VLC中显示内容:

下面是RTSP播放器获取媒体信息的完整代码实现,请参考:

int	CChannelManager::GetMediaInfo(int channelId, MEDIA_INFO& mediaInfo)
{
	if (NULL == pRealtimePlayThread)			return -1;
	int iNvsIdx = channelId - CHANNEL_ID_GAIN;
	if (iNvsIdx < 0 || iNvsIdx>= MAX_CHANNEL_NUM)	return -1;
	mediaInfo.video_codec = pRealtimePlayThread[iNvsIdx].frameinfo.video_codec ;
	mediaInfo.fps = pRealtimePlayThread[iNvsIdx].frameinfo.fps		;
	mediaInfo.width = pRealtimePlayThread[iNvsIdx].frameinfo.width	;
	mediaInfo.height = pRealtimePlayThread[iNvsIdx].frameinfo.height  ;
	mediaInfo.audio_codec = pRealtimePlayThread[iNvsIdx].frameinfo.audio_codec ;
	mediaInfo.bits_per_sample = pRealtimePlayThread[iNvsIdx].frameinfo.bits_per_sample ;
	mediaInfo.channels = pRealtimePlayThread[iNvsIdx].frameinfo.channels ;
	mediaInfo.sample_rate = pRealtimePlayThread[iNvsIdx].frameinfo.sample_rate;
	return 0;
}

其中channelId为通道号,为EasyPlayer_OpenStream()函数返回值。

如果有用户想将EasyPlayer播放器集成进自己的流媒体平台,也是可以的,我们提供了非常简单易用的SDK及API接口,用户通过API调用就可以非常快速地开发出属于自己的应用程序,进行第二次开发,我们也欢迎大家测试。

以上是关于EasyPlayer-rtsp Win版播放器获取媒体信息的代码实现的主要内容,如果未能解决你的问题,请参考以下文章

RTSP播放器网页web无插件直播流媒体音视频播放器EasyPlayer-RTSP-Android解码获取视频帧的方法

EasyPlayer-rtsp 如何配置向Server发送心跳信息?

EasyPlayer-RTSP播放器集成后为什么会产生大量DUMP文件?如何去除?

网页无插件视频流媒体播放器EasyPlayer-RTSP在WPF框架播放不显示视频画面,该如何排查处理?

EasyPlayer-rtsp播放器中码率及帧率统计的实现方法

EasyPlayer-RTSP WebActiveX注册时提示failed to create control 未指定错误排查