采样率: samples

441100 每秒 DAC/ADC 采样的频率,声卡一般还支持 48k 8k 等模式。

通道:channels

2声道 左右声道 也有单声道的声音,5.1 声道

位数:

16bit 采样 DAC/ADC 深度 16bit 就是 65536 种声音层次

pcm 原始的 bit 流,如果是2声道 16bit,就是 左 16bit , 右 16bit 共 4个 Byte。

一个典型的 alsa 配置就按上面。

采样频率 支持音频带宽 输出码率 最低算法延迟

G711 8KHz 300 Hz ~ 3,400 Hz 64 Kbps <1ms

G722 16kHz 50 Hz ~ 7 kHz 64 Kbps 3ms

G722.1 16kHz 50 Hz ~7 kHz 24、32 Kbps 40ms

G722.1 C 32kHz 50 Hz~14 kHz 24、32、48Kbps 40ms

AAC-LD 48kHz 20 Hz-20kHz 48~64 Kbps 20ms

G729  8KHz

G 711 有2种编码格式也称为 PCMA A-Law  PCMU μ -Law 。

推荐一个好用的 音频编辑及混音软件

https://www.audacityteam.org/

可以很方便的,查看 左右声道数据,可以播放原始 PCM 数据,也可以播放 PCMA PCMU 。

ffmpeg ffplay 命令用法

windows 版下载地址 https://ffmpeg.zeranoe.com/builds/

ffplay -decoders 显示所有解码器
ffplay -formats 显示所有格式
ffplay -layouts 显示所有layout
ffplay xxx.m4a
ffplay -f s16le -ar 8000 -ac 2 rec.pcm
ffplay 播放 g711 alaw 格式的PCM
ffplay -f s16le -ar 8000 -acodec pcm_alaw -ac 2 xxx.pcm
播放 g722
ffplay -f s16le -ar 16000 -acodec g722 -ac 2 xxx.g722
mp3 转 wav
ffmpeg -i xxx.mp3 -f wav xxx.wav
播放 wav
ffplay -f s16le -ar 44100 -ac 2 SunshineGirl.wav
mp3 转 g722
ffmpeg -i xxx.mp3 -ar 16000 -acodec g722 xxx.g722
g722 转 mp3
ffmpeg -i xxx.g722 xxx.mp3
mp3 转 aac 需要用到 fdk 库,需要安装编译好
ffmpeg -i 11.mp3 -c:a libfdk_aac 11.m4a

生成缩略图
ffmpeg -i xxx.avi -y -f mjpeg -ss 3 -t 1 -s 320x240 d:/1.jpg

查看视频信息
ffmpeg -i xxx.mp4
视频转码FHD 1080p 转 720p
ffmpeg -i xxx.mp4 -b:v 500k -s 1280x720 720p-md.mp4

hls流转 mp4

ffmpeg -i http://xxxx.com/2019.m3u8 -vcodec copy -acodec copy -absf aac_adtstoasc  output.mp4

更新

ubuntu 16.0.4
ffplay 播放出错
Failed to initialize a hardware accelerated renderer: Couldn't find matching render driver
Failed to create window or renderer: Couldn't find matching render driver

因为 SDL 使用 OpenGL 进行渲染,所以需要安装库

sudo apt-get install libgl1-mesa-dev
sudo apt-get install libglew-dev
sudo apt-get install libglm-dev

安装上这几个库以后,重新编译 SDL2 就可以了。

音频相关 ALSA ffmpeg ffplay 命令用法 g7xx的更多相关文章

  1. ffmpeg/ffplay源码剖析笔记<转>

    转载:http://www.cnblogs.com/azraelly/ http://www.cnblogs.com/azraelly/archive/2013/01/18/2865858.html ...

  2. FFMpeg 常用命令格式转换,视频合成

    FFmpeg都是命令行的,用起来肯定不方便.但是,这对技术宅应该不成问题.下面,我就罗列一些比较实用的使用方法吧. FFmpeg的下载与安装 FFmpeg是开源的.但我们不必去下载它的源代码.下载已经 ...

  3. Ubuntu kill命令用法详解

    转自:Ubuntu kill命令用法详解 1. kill   作用:根据进程号杀死进程   用法: kill [信号代码] 进程ID   root@fcola:/# ps -ef | grep sen ...

  4. which、whereis、locate、find 命令用法

    which.whereis.locate.find 命令用法   大部分转自http://312788172.iteye.com/blog/730280,有修改 我们经常在linux要查找某个文件,但 ...

  5. linux的strace命令用法

    strace命令用法 调用:strace [ -dffhiqrtttTvxx ] [ -acolumn ] [ -eexpr ] …[ -ofile ] [ -ppid ] … [ -sstrsize ...

  6. CentOS(十)--与Linux文件和目录管理相关的一些重要命令②

    在结束了第二期的广交会实习之后,又迎来了几天休闲的日子,继续学习Linux.在上一篇随笔 Linux学习之CentOS(十七)--与Linux文件和目录管理相关的一些重要命令① 中,详细记录了与Lin ...

  7. CentOS(九)--与Linux文件和目录管理相关的一些重要命令①

       接上一篇文章,实际生产过程中的目录管理一定要注意用户是root 还是其他用户. 一.目录与路径 1.相对路径与绝对路径 因为我们在Linux系统中,常常要涉及到目录的切换,所以我们必须要了解 & ...

  8. FFmpeg 常用命令收集

    FFmpeg 常用命令 合并视频 ffmpeg -i "KTDS-820A_FHD.mp4" -c copy -bsf:v h264_mp4toannexb -f mpegts i ...

  9. linux学习:特殊符号,数学运算,图像与数组与部分终端命令用法整理

    指令:let.expr.array.convert.tput.date.read.md5.ln.apt.系统信息 一:特殊符号用法整理 系统变量 $# 是传给脚本的参数个数 $0 是脚本本身的名字 $ ...

随机推荐

  1. 之前项目使用的轻量的goweb框架

    技术栈 go 主开发语言 基于 gorilla 项目 javascript(nodejs) 部分小工具,josn对象转换,自动编译 C#,codesmith通用代码生成,生成最基本的crud和翻页. ...

  2. elasticsearch5.4安装

    1.从官网下载ES 安装包: elasticsearch-.tar.gz 2.解压到要安装的目录 注意:一定要切换用户,不能用root用户解压,不能用root用户启动 tar -zxvf elasti ...

  3. import org.apache.commons.codec.binary.Base64;

    import org.apache.commons.codec.binary.Base64;

  4. [洛谷P4720] [模板] 扩展卢卡斯

    题目传送门 求组合数的时候,如果模数p是质数,可以用卢卡斯定理解决. 但是卢卡斯定理仅仅适用于p是质数的情况. 当p不是质数的时候,我们就需要用扩展卢卡斯求解. 实际上,扩展卢卡斯=快速幂+快速乘+e ...

  5. 数据库三大范式和反范式 · oldmee

    后一个范式都是在满足前一个范式的基础上建立的. 1NF 无重复的列.表中的每一列都是不可分割的基本数据项.不满足1NF的数据库不是关系数据库.如联系人表(姓名,电话),一个联系人有家庭电话和公司电话, ...

  6. VRRP笔记一:基本简介(注意iptables和selinux的问题)

    LAN客户端判定哪个路由器应该为其到达目标主机的下一跳网关的方式有动态及静态决策两种方式,其中,觉的动态路由发现方式有如下几种: 1.Proxy ARP —— 客户端使用ARP协议获取其想要到达的目标 ...

  7. Nginx笔记总结十六:nginx优化指南

    1.高层的配置 worker_processes 定义了nginx对外提供web服务时的worker进程数 worker_rlimit_nofile 更改worker进程最大打开文件数量限制,如果没有 ...

  8. Hessian简介

    Hessian Hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能. 相比WebService,Hessian更简单.快捷.采用的是二进制RPC协议,因为 ...

  9. /lib64/libc.so.6: version `GLIBC_2.18' not found报错解决

    今日安装一区块链服务时报错:/lib64/libc.so.6: version `GLIBC_2.18' not found,检查后现有的glibc版本是2.17,然后参考https://www.ji ...

  10. Windows 下 LaTeX 手动安装宏包(package)以及生成帮助文档的整套流程

    本文简单介绍如何手动安装一个 LaTeX 宏包. 一般来说,下载的 TeX 发行版已经自带了很多宏包,可以满足绝大部分需求,但是偶尔我 们也可能碰到需要使用的宏包碰巧没有安装的情况,这时我们就需要自己 ...