Windows平台RTSP|RTMP播放器如何实时调节音量

我们在做Windows平台RTSP、RTMP播放器的时候,有这样的技术需求,特别是多路监控的时候,并不是每一路audio都需要播放出来的,所以,这时候,需要有针对音量调节的设计:

cs 复制代码
/*
 * smart_player_sdk.cs
 * Created by daniusdk.com on 2017/04/19.
 * WeChat: xinsheng120
 */

/*
 * 静音接口,1为静音,0为不静音
 */
[DllImport(@"SmartPlayerSDK.dll")]
public static extern UInt32 NT_SP_SetMute(IntPtr handle, Int32 is_mute);

随着需求越来越多,好多场景下,希望能实时调节播放器的音量,所以,后续我们设计了实时音量调节接口:

cs 复制代码
/*
 * smart_player_sdk.cs
 * Created by daniusdk.com on 2017/04/19.
 * WeChat: xinsheng120
 */

/*
 * 设置播放音量, 范围是[0, 100], 0是静音,100是最大音量, 默认是100
 */
[DllImport(@"SmartPlayerSDK.dll")]
public static extern UInt32 NT_SP_SetAudioVolume(IntPtr handle, Int32 volume);

调用如下,拖动实时音量调节slider即可实现播放音量的动态调整,如果需要实时静音,调整到0,或者是直接SetMute设置0即可。

cs 复制代码
if (checkBox_mute.Checked)
{
	NTSmartPlayerSDK.NT_SP_SetMute(player_handle_, 1);
}
else
{
	NTSmartPlayerSDK.NT_SP_SetMute(player_handle_, 0);
}

private void slider_audio_volume_ValueChanged(object sender, EventArgs e)
{
	cur_audio_volume.Text = slider_audio_volume.Value.ToString();

	if (is_playing_ && player_handle_ != IntPtr.Zero)
	{
		NTSmartPlayerSDK.NT_SP_SetAudioVolume(player_handle_, slider_audio_volume.Value);
	}
}
相关推荐
音视频牛哥17 小时前
AR智慧点巡检系统探究和技术方案设计
ar·音视频·实时音视频·大牛直播sdk·unity camera场景·unity场景rtmp·unity ar直播
音视频牛哥4 天前
RTMP|RTSP播放器只解码视频关键帧功能探讨
音视频·实时音视频·大牛直播sdk·rtsp播放器·rtmp播放器·rtsp player·rtmp player
音视频牛哥4 天前
linux平台RTMP|RTSP播放器如何回调SEI数据?
linux·大牛直播sdk·linux rtsp播放器·arm64 rtmp播放器·x86 rtmp播放器·arm64 rtsp播放器·x86 rtsp播放器
黄金右肾20 天前
Qt之FFmpeg播放器设计(十七)
qt·ffmpeg·播放器
黄金右肾23 天前
Qt之简易音视频播放器设计(十五)
qt·播放器·qmediaplayer
音视频牛哥1 个月前
探秘SmartMediakit:低延迟直播方案全方位解析与多元场景展望
音视频·实时音视频·大牛直播sdk·gb28181·rtsp播放器·rtmp播放器·rtsp服务器
音视频牛哥2 个月前
Android中ByteBuffer内存池设计示例
android·大牛直播sdk·bytebuffer·bytebuffer内存池·android内存池·bytebuffer用法
音视频牛哥2 个月前
音视频技术扫盲之预测编码的基本原理探究
音视频·实时音视频·大牛直播sdk·音视频开发·视频编解码·预测编码·预测编码原理
音视频牛哥2 个月前
Android音视频直播低延迟探究之:WLAN低延迟模式
android·音视频·实时音视频·大牛直播sdk·rtsp播放器·rtmp播放器·android rtmp