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 ...
随机推荐
- LyScript 插件实现UPX寻找入口
LyScript 插件可实现对压缩壳的快速脱壳操作,目前支持两种脱壳方式,一种是运用API接口自己编写脱壳过程,另一种是直接加载现有的脱壳脚本运行脱壳. 插件地址:https://github.com ...
- hydra 密码爆破工具入门
Hydra(九头蛇海德拉)是希腊神话之中的一个怪兽,以九个头闻名于世,在Kali中hydray(hai der rua) 是默认被安装的,该工具是密码破解的老司机,可以破解各种登录密码,非常怪兽,但是 ...
- JDK8新特性Stream流操作
1 package stream; 2 3 import java.util.ArrayList; 4 import java.util.function.Function; 5 import jav ...
- Java开发学习(四十七)----MyBatisPlus删除语句之多记录操作
1.多记录操作 先来看下问题: 之前添加了很多商品到购物车,过了几天发现这些东西又不想要了,该怎么办呢? 很简单删除掉,但是一个个删除的话还是比较慢和费事的,所以一般会给用户一个批量操作,也就是前面有 ...
- 测试DHCP服务器
一:前期准备 1.准备三台虚拟机,不要配ip. 都改成仅主机模式,这样它们和DHCP才会相连 2.进入有DHCP服务器的虚拟机,更改虚拟网络编辑器 (编辑→虚拟网络编辑器(N)) 不勾选使用本地DHC ...
- 【简写MyBatis】01-简单映射器
前言 新开一个坑,为了学习一下MyBatis的源码,写代码是次要的,主要为了吸收一下其中的思想和手法. 目的 关联对象接口和映射类的问题,把 DAO 接口使用代理类,包装映射操作. 知识点 动态代理 ...
- NC17877 整数序列
题目链接 题目 题目描述 给出一个长度为n的整数序列 \(a_1,a_2,...,a_n\) ,进行 \(m\) 次操作,操作分为两类. 操作1:给出 \(l,r,v\) ,将 \(a_l,a_{l+ ...
- 存储过程分页以及参数拼接sql语句、C#调用存储过程
1.C#调用存储过程,带参数返回的功能,而且是参数化拼接,这样就可以防止sql注入 System.Data.SqlClient.SqlParameter[] parameters = { new Sy ...
- GCC Arm 11.3rel1, 12.2编译提示 _close is not implemented and will always fail
使用GCC Arm工具链开发的项目, 在11.2下编译正常, 但是升级到 arm-gnu-toolchain-11.3.rel1 以及 arm-gnu-toolchain-12.2 之后, 编译出现警 ...
- 优先队列(PriorityQueue)常用方法及简单案例
1 前言 PriorityQueue是一种特殊的队列,满足队列的"队尾进.队头出"条件,但是每次插入或删除元素后,都对队列进行调整,使得队列始终构成最小堆(或最大堆).具体调整如下 ...