当前位置: 首页 > news >正文

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

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

/** 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);

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

/** 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即可。

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);}
}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 使用 Fyne 构建 GUI 应用:设置标签文本和自增计数器
  • LLMs之Framework:Hugging Face Accelerate后端框架之FSDP和DeepSpeed的对比与分析
  • 【C++第十三章】Stack、Queue和Priority_Queue
  • Scikit-learn:用于数据挖掘和数据分析的简单而有效的工具,建立在 NumPy, SciPy 和 Matplotlib 上。
  • 【数学分析笔记】第2章第2节数列极限(2)
  • 《深入浅出算法竞赛》-递推与递归(笔记版)
  • Python之函数的使用
  • ChatGLM-6B 主要代码分析 RotaryEmbedding
  • vulnhub靶机 DC-9(渗透测试详解)
  • 顺丰科技25届秋季校园招聘常见问题答疑及校招网申测评笔试题型分析SHL题库Verify测评
  • IO器件性能评估
  • 刷刷前端手写题
  • 理解JavaScript的基本概念和语法:让网页动起来
  • 【笔记】Android 多用户模式和用户类型
  • Codeforces Round 965 (Div. 2)
  • 【译】React性能工程(下) -- 深入研究React性能调试
  • Apache Pulsar 2.1 重磅发布
  • Computed property XXX was assigned to but it has no setter
  • IOS评论框不贴底(ios12新bug)
  • isset在php5.6-和php7.0+的一些差异
  • java小心机(3)| 浅析finalize()
  • k个最大的数及变种小结
  • Map集合、散列表、红黑树介绍
  • Meteor的表单提交:Form
  • vue从入门到进阶:计算属性computed与侦听器watch(三)
  • 测试开发系类之接口自动化测试
  • 从零搭建Koa2 Server
  • 多线程 start 和 run 方法到底有什么区别?
  • 紧急通知:《观止-微软》请在经管柜购买!
  • 猫头鹰的深夜翻译:JDK9 NotNullOrElse方法
  • 入口文件开始,分析Vue源码实现
  • 算法之不定期更新(一)(2018-04-12)
  • 网页视频流m3u8/ts视频下载
  • 微服务入门【系列视频课程】
  • 积累各种好的链接
  • 组复制官方翻译九、Group Replication Technical Details
  • ​iOS安全加固方法及实现
  • ‌移动管家手机智能控制汽车系统
  • ## 基础知识
  • ###51单片机学习(2)-----如何通过C语言运用延时函数设计LED流水灯
  • #ifdef 的技巧用法
  • $(selector).each()和$.each()的区别
  • (1)常见O(n^2)排序算法解析
  • (9)STL算法之逆转旋转
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (二)Eureka服务搭建,服务注册,服务发现
  • (二)WCF的Binding模型
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (附源码)ssm基于微信小程序的疫苗管理系统 毕业设计 092354
  • (五)MySQL的备份及恢复
  • (转载)Linux 多线程条件变量同步
  • . ./ bash dash source 这五种执行shell脚本方式 区别
  • .Net Remoting(分离服务程序实现) - Part.3
  • .net 调用海康SDK以及常见的坑解释
  • .NET/C# 如何获取当前进程的 CPU 和内存占用?如何获取全局 CPU 和内存占用?