EasyPlayerPro-win音量控制实现

EasyPlayerPro-win音量控制实现

背景描述

作为一个播放器, 除了能播放视频和声音外,音量控制是绝对不能缺少的功能; 本文在音视频播放的基础上,增加对音量的控制;

EasyPlayerPro-win音量控制实现_第1张图片

实现流程

调用mixerGetDevCaps获取音频输出设备列表;
打开指定的音频输出设备;
获取指定音频输出设备的音频属性;
获取和设置音量;

DWORD GetVolume();
int   SetVolume(DWORD vol);
int   Init(DWORD ComponentType,int *min,int *max);

int     GetAudioOutputDeviceList(MIXER_DEVICE_INFO_T    **devicelist, int *deviceNum);
int     SetAudioDeviceId(int _deviceIdx);

代码实现

//获取音频输出设备列表
int CVolumeControl::GetAudioOutputDeviceList(MIXER_DEVICE_INFO_T    **devicelist, int *deviceNum)
{
int     idx = 0;
if (mDeviceNum < 1)
{
    MIXERCAPS           mxcaps;
    UINT cMixerDevs = mixerGetNumDevs();
    for (UINT iDevIndex = 0; iDevIndex < cMixerDevs && iDevIndex

关于EasyPlayerPro

EasyPlayerPro是一款全功能的流媒体播放器,支持RTSP、RTMP、HTTP、HLS、UDP、RTP、File等多种流媒体协议播放、支持本地文件播放,支持本地抓拍、本地录像、播放旋转、多屏播放、倍数播放等多种功能特性,核心基于ffmpeg,稳定、高效、可靠、可控,支持Windows、Android、iOS三个平台,目前在多家教育、安防、行业型公司,都得到的应用,广受好评!

EasyPlayerPro:https://github.com/EasyDSS/EasyPlayerPro

点击链接加入群【EasyPlayer & EasyPlayerPro】:544917793

技术支持

EasyPlayerPro是一款非常稳定的全协议/全功能播放器组件,可以通过以上渠道进行更深入的技术与合作咨询;

获取更多信息

EasyDarwin开源流媒体服务器:www.EasyDarwin.org

EasyDSS商用流媒体解决方案:www.EasyDSS.com

EasyNVR无插件直播方案:www.EasyNVR.com

Copyright © EasyDarwin Team 2012-2017

EasyDarwin

你可能感兴趣的:(EasyPlayerPro-win音量控制实现)