RaspberryPi 树莓派 omxplayer 的音量设置方法实测有效!
正确的设置初始音量的方法,其中n/100=你期望的初始dB值, omxplayer --vol n target.media
omxplayer介绍
omxplayer 在github中的描述是一个弃子,原文是这样的:
Note: omxplayer is being deprecated and resources are directed at improving vlc.
This is due to: omxplayer uses openvg for OSD and subtitles which isn't supported on Pi4. omxplayer uses openmax which has been deprecated for a long time and isn't supported with 64-bit kernels. omxplayer does not support software decode omxplayer does not support advanced subtitles omxplayer does not support playback from ISO files. omxplayer does not integrate with the X desktop
Please try using vlc. If there are features of omxplayer that vlc does not handle then try reporting here.
这段话大概的意思是,omxplayer使用的库很差劲,不支持这、不支持那的,已经被我们放弃了,大家也尽快转向vlc吧!
大家也可以尝试使用vlc,加上-I cli也可以用命令行控制,也挺好用的。
命令解析及发现命令的使用方法的过程
下面这些是 omxplayer 关于音量的帮助,其中 mB=millibels。
--vol n set initial volume in millibels (default 0)
volume = pow(10, mB / 2000.0);
mB = 2000.0 * log10(volume)
--vol n 这个参数接受的数字 n 可能会被分为两部分,小于100的部分化为 正真音量的小数点后两位,大于100的化为小数点左边的值。或者说,n/100=实际的音量 dB 值。
然后,我一开始是怀疑我的程序版本更新了,但是网上依然在挂之前的帮助,所以我没法用她们的格式来初始化音量。所以我首先测试的是参数的格式对不对,比如 --vol=n['n']这类的格式看看有没有报错,有没有报错,然而没有。接着我怀疑人家要求的是 double类型的参数,我如果不加一个小数点可能会以错误方式识别。然而,还是没有反应。
就在我要放弃的时候,突然发现我在控制界面按 - 减音量的时候,下减的间隔一样,但和之前的最终值不一样。我看到了曙光!有了这条线索,我首先重新做了实验!
| 实验次数 | n的值 | 第一次按-的返回值 | 按-的降低间隔 |
|---|---|---|---|
| 1 | -100 | -4.00dB | 3dB |
| 2 | -150 | -4.5dB | 3dB |
| 3 | -15.00 | -3.15dB | 3dB |
| 4 | -6000 | -63.00dB | 3dB |
| 自己动手丰衣足食!欢迎大家留言交流啊! |
RaspberryPi 树莓派 omxplayer 的音量设置方法实测有效!的更多相关文章
- jquery设置html5音量的方法
jquery设置html5音量的方法<pre> setTimeout(function() { alert(1); $('#music1')[0].volume = 0; setTimeo ...
- unity音量设置(同时设置到多个物体上)——引伸语言设置
在游戏中游戏设置是一个很重要的功能,但是比如语言设置和音量设置分散在很多个物体的组件上,如果每个对应的物体都放到一个链表里,会导致程序雍总难堪,使用事件调用是最好的方式 音量存储类 SoundMana ...
- iOS 9音频应用播放音频之音量设置与声道设置
iOS 9音频应用播放音频之音量设置与声道设置 iOS 9音频应用音量设置 音量又称响度.音强,是指人耳对所听到的声音大小强弱的主观感受,其客观评价尺度是声音的振幅大小.在iOS 9音频应用的应用中, ...
- session超时时间设置方法
session超时时间设置方法 由于session值之前没有设置,以至于刚登录的网站,不到一分钟就超时了,总结了一下,原来是session过期的原因,以下是设置session时间的3个方法: 1. 在 ...
- 第一种SUSE Linux IP设置方法
第一种SUSE Linux IP设置方法ifconfig eth0 192.168.1.22 netmask 255.255.255.0 uproute add default gw 192.168. ...
- [Linux] - CentOS IP设置方法
CentOS 7的IP设置方法: 1.手动设置IP方法 a) 运行命令,cd到目录: cd /etc/sysconfig/network-scripts/ b) 运行命令:ls -l 找到类似这个文件 ...
- linux自动以root登录,并自动启动用户程序的设置方法
系统自动以root登录,并自动启动用户程序的设置方法 第一步:删除root用户 vi /etc/passwd 该文件的第一行:root:X:0:0:root:/root:/bin/bash,只需要把第 ...
- LR测试https协议设置方法
测试ssl隧道的设置方法: 前一段时间使用loadrunner测试ssl vpn时,使用ssl隧道一直配置不成功,经过查资料,终于成功,记录一下,方便大家测试.走ssl隧道与普通http,只需多设两个 ...
- (转)mysql账号权限密码设置方法
原文:http://www.greensoftcode.net/techntxt/2013410134247568042483 mysql账号权限密码设置方法 我的mysql安装在c:\mysql 一 ...
- Apache日志不记录图片文件设置方法和来源日志的配置
Apache日志不记录图片文件设置方法 <FilesMatch "\.(ico|gif|jpg|swf)">SetEnv IMAG 1</FilesMatch&g ...
随机推荐
- 构建Keepalived高可用集群
Keepalived的作用是检测服务器的状态,如果有一台web服务器宕机或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作 ...
- Properties集合的使用
Properties集合是唯一一个可以和IO流相结合的集合 可以将集合中的数据持久化存储,也可以将硬盘上的数据加载到该集合中. 1 Properties集合添加.遍历 1 private static ...
- 【双指针】双指针算法详解两道经典OJ【力扣27,力扣26,力扣38】超详细算法教程
[双指针]双指针算法详解两道经典OJ[力扣27,力扣26,力扣38]超详细算法教程 今天又又到了我们刷力扣题的时间啦! 今天博主给大家带来的三道题是: 27. 移除元素 26. 删除有序数组中的重复项 ...
- Java并发(七)----线程sleep、yield、线程优先级
1.sleep 与 yield sleep 调用 sleep 会让当前线程从 Running 进入 Timed Waiting 状态(阻塞) 其它线程可以使用 interrupt 方法打断正在睡眠的线 ...
- ASP.NET Core分布式项目实战(oauth2 + oidc 实现 client部分)--学习笔记
任务16:oauth2 + oidc 实现 client部分 实现 client 之前启动一下上一节的 server,启动之前需要清除一些代码 注释 Program 的 MigrateDbContex ...
- Linux--split命令(将一个大文件拆分成多个小文件)
一.split命令简介 split是Linux系统中的一个文件拆分命令,它可以将一个大文件拆分成多个小文件.这对于处理大型文件,或者需要将数据分解到多个文件中的场景非常有用. 二.split命令的使用 ...
- MySQL-分区表和分区介绍
一.MySQL分区简介 1.数据库分区 MySQL是一种常用的关系型数据库管理系统,分区表是一种在MySQL数据库中处理大规模数据的最佳方案之一,其主要目的是为了在特定的SQL操作中减少数据读写的总量 ...
- [WPF] 使用Silk.NET绘制D3D9或OpenGL内容并完美解决空域问题。
可扩展渲染控件实现的基本思路(D3D.OpenGL绘制所使用的基类): 首先创建一个抽象类 FramebufferBase,该类主要记录当前控件宽高和图像资源. public abstract cla ...
- STC8A/STC8H通用的最小系统板
STC8(包括之前的STC15)因为自带晶振, 所以最小电路需要的外围元件几乎为0 -- 手册上画的两个电容不加也没问题, 直接加上5V电源就能跑. 这样只需要用排针把管脚都引出就行了. 唯一不方便的 ...
- live555开发笔记(一):live555介绍、windows上msvc2017编译和工程模板
前言 在pc上搭建流媒体服务器软件,打开视频接受推流,使用live555方案. live555介绍 Live555是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了标准流媒体传输 ...