Audio and Video
文章平均质量分 66
Advanced Linux Sound Architecture,高级Linux声音架构,Alsa的一些原理、调用流程和部分视频编解码基本知识
山猫Show
科学 -> 技术 -> 工程
展开
-
[FFmpeg]编译av1的dav1d解码库
1 编译dav1ddav1d是一种新的AV1跨平台解码器,是开源的,专注于速度和正确性。该存储库的规范存储库URL为https:https://code.videolan.org/videolan/dav1d该项目由开放媒体/ AOM联盟部分资助。具体编译步骤1, Install Meson (0.47 or higher), Ninja, and, for x86* targets, nasm (2.14 or higher)2, Run mkdir build && cd b原创 2020-12-03 10:45:01 · 5778 阅读 · 0 评论 -
[V4L2_Utils]1,How to use v4l-utils
v4l-utils provides a series of utilities for media devices, allowing to handle the proprietary formats available at most webcams (libv4l), and providing tools to test V4L devices.v4l-utils为媒体设备提供了一系列...原创 2020-03-19 13:34:50 · 3292 阅读 · 7 评论 -
[V4L2_Utils]4,v4l-utils之v4l2-ctl
NAMEv4l2-ctl - An application to control video4linux driversSYNOPSISv4l2-ctl [-h] [-d <dev>] [many other options]DESCRIPTIONThe v4l2-ctl tool is used to control video4linux devices, ...翻译 2020-03-19 14:27:11 · 1884 阅读 · 0 评论 -
[V4L2_Utils]2,v4l-utils之v4l2-compliance
NAMEv4l2-compliance - An application to test video4linux driversSYNOPSISv4l2-compliance [-h] [-d <dev>] [-r <dev>] [-V <dev>] [-S <dev>] [-e <dev>] [-s <count>...原创 2020-03-19 14:05:21 · 1285 阅读 · 0 评论 -
[Alsa Document]7, clocking.txt
本篇来介绍音频时钟clock,如果没有了心跳或者心跳出了问题,音频质量就会大打折扣。基于4.9.123版本内核 Documentation/sound/alsa/soc/DAI.txt----------The Digital Audio Interface is usually driven by a Bit Clock (often referred toas BCLK). This ...翻译 2019-03-06 14:16:05 · 210 阅读 · 0 评论 -
[Alsa Document]8, DPCM.txt
本篇来介绍动态PCM——Dynamic PCM,这部分现在还没仔细研究,先译在这里,回头好做引用。基于4.9.123版本内核 Documentation/sound/alsa/soc/DPCM.txtDynamic PCM===========1. Description==============Dynamic PCM allows an ALSA PCM device to d...翻译 2019-03-06 15:02:22 · 611 阅读 · 0 评论 -
[Alsa Document]1, overview.txt
在之前几篇文章中,我们发现了官方文档的重要性,在这个系列中,我们先把文档读一下:基于4.9.123版本内核multiple re-usable component drivers :-多个可重用的组件驱动程序 * Codec class drivers: The codec class driver is platform independent and contains au...翻译 2019-03-04 13:43:26 · 293 阅读 · 0 评论 -
[Alsa Document]9, jack.txt
本篇来介绍插头——jack,主要是插头插拔状态检测。基于4.9.123版本内核 Documentation/sound/alsa/soc/jack.txtASoC jack detection===================ALSA has a standard API for representing physical jacks to user space,the kerne...翻译 2019-03-06 15:15:01 · 263 阅读 · 0 评论 -
[Alsa Document]5, dapm.txt
仔细读过前几篇machine.txtcodec.txtplatform.txt文档的同学会发现,里面反复出现一个名词——“dapm”,比如:Platform:Codec:本篇来介绍dapm (Dynamic Audio Power Management, 动态音频电源管理)基于4.9.123版本内核 Documentation/sound/alsa/soc/dapm.tx...翻译 2019-03-05 14:06:52 · 568 阅读 · 0 评论 -
[Alsa Document]3, platform.txt
从[Alsa Document]1, overall.txt的描述中我们了解到Alsa分为三部分,分别是:&lt;1&gt; codec driver&lt;2&gt; platform driver&lt;3&gt; Machine driver本篇来介绍platform driver基于4.9.123版本内核ASoC Platform Driver================...翻译 2019-03-04 14:48:35 · 209 阅读 · 0 评论 -
[Alsa Document]4, machine.txt
从[Alsa Document]1, overall.txt的描述中我们了解到Alsa分为三部分,分别是:<1> codec driver<2> platform driver<3> Machine driver本篇来介绍machine driver基于4.9.123版本内核 Documentation/sound/alsa/soc/machine.t...翻译 2019-03-04 15:05:06 · 224 阅读 · 0 评论 -
[Alsa Document]2, codec.txt
从[Alsa Document]1, overall.txt的描述中我们了解到Alsa分为三部分,分别是:&lt;1&gt; codec driver&lt;2&gt; platform driver&lt;3&gt; Machine driver本篇来介绍codec driver基于4.9.123版本内核ASoC Codec Class Driver================...翻译 2019-03-04 14:30:11 · 225 阅读 · 0 评论 -
[Alsa Document]6, DAI.txt
其实本来不想来介绍DAI,但是为了文档的完整性,还是放在这边,内容比较简单,就说了一个事情——DAI包含三种总线接口:AC97,I2S和PCM。本篇来介绍DAI (Digital Audio Interface, 数字音频接口)基于4.9.123版本内核 Documentation/sound/alsa/soc/DAI.txtASoC currently supports the three...翻译 2019-03-06 14:00:12 · 202 阅读 · 0 评论 -
[Alsa]9, Machine驱动的编写(2)
上篇说到Machine驱动中的snd_soc_register_card函数初始化到了最核心的snd_soc_instantiate_card函数,可以说这才是重中之重,本篇分三部分来讲这个内容。Linux 4.9.123 可从以下地址获得https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/本文Codec基于wm8994。1 soc...原创 2019-03-11 14:27:59 · 520 阅读 · 0 评论 -
[Alsa]8, Machine驱动的编写(1)
上篇说到Machine驱动在纯净版的kernel里是找不到的,但是Alsa三驾马车,这个又是很重要的一环,下面就来说说怎么写Machine驱动。Linux 4.9.123 可从以下地址获得https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/本文Codec基于wm8994。1 从probe开始由于一般来说Machine驱动自己写的情...原创 2019-03-08 19:32:13 · 825 阅读 · 3 评论 -
[Alsa]7, wm8524 Alsa driver
我们已经知道,ASoC中的driver分为三部分Codec ASoC的codec端,主要作用于codec daiPlatform ASoC的Platform端,主要作用于cpu daiMachine 完成platform和codec的串联,使之协同工作0 Prepare 几个重要的结构体在Alsa中,大量运用了面向对象的思想,下面先来认识几个重要的结构体:snd_soc_op...原创 2019-03-08 14:27:19 · 666 阅读 · 0 评论 -
[Alsa]6, dapm之widget和route
dapm最核心的部分大概就是widgets、paths和routes三驾马车,其中widgets是DAPM的基本单元,paths是widget之间的连接器,routes表示widget的连接关系。下面仔细介绍一下这几部分:Linux 4.9.123 可从以下地址获得https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/本文Codec基于w...原创 2019-03-07 13:52:12 · 1896 阅读 · 0 评论 -
[Alsa]5, dapm之kcontrol
在看本文之前建议先仔细看一下[Alsa Document]5, dapm.txt本文大量借鉴droidphone大神的博客,并使之适应于4.x版本的Alsa,特此声明。Linux 4.9.123 可从以下地址获得https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/本文Codec基于wm8978。之前介绍Alsa各部分流程的时候是...原创 2019-03-06 13:10:44 · 1248 阅读 · 0 评论 -
[Alsa]4, wm8524 Kernel音频子系统入口
上篇说到音频子系统的环境搭建,环境搭建好了以后我们会发现这样一个问题,对于已有的,已驱动的音频Codec,我们可以很方便地用aplayer、arecorder来录放音频,但是这表象背后到底隐藏了什么不为人知的PY(朋友)交易,确实是值得我们深究的,本篇从设备树作为突破口,一层一层的揭开这一谜题,欢迎收看本期走近科学。。。1, 内核版本和Codec型号Linux 4.9.123 可从以下地址获...原创 2019-03-01 19:45:20 · 1368 阅读 · 0 评论 -
[Alsa]3, ASoC Linux音频子系统入口
上篇说到音频子系统的环境搭建和ASoC,我们会发现这样一个问题,对于已有的,已驱动的音频Codec,我们可以很方便地用aplayer、arecorder来录放音频,但是这表象背后到底隐藏了什么不为人知的PY(朋友)交易,确实是值得我们深究的,本篇从设备树作为突破口,一层一层的揭开这一谜题,欢迎收看本期走近科学。。。1, 内核版本和Codec型号Linux 4.9.123 可从以下地址获得h...原创 2019-03-01 16:49:12 · 482 阅读 · 0 评论 -
[Alsa]2, Arm Linux音频子系统环境搭建
最近接到任务,要接手一些音频的一些东西,搞过的都知道这玩意在裸机环境下搞起来极其难受,毕竟有写有读,不上操作系统估计用中断来搞最后累死人。于是开始接触Alsa的一些东西,包括基本知识,Linux内核Alsa子系统部分,最后我们的目标当然是把开发环境打好,把Alsa用起来,下面开搞。1.基础知识基础知识可以在另一个大神的博客里了解一下,讲的很透彻,虽然是基于2.6.x版本来串联的,但是我看了一...原创 2019-02-25 11:24:48 · 815 阅读 · 0 评论 -
[Alsa]1, ASoC 简介
ASoC 简介可以在Documentation/sound/alsa/soc/overview.txt路径下看到,其中的ASoC Design详细说明了ASoC设计的目的:ASoC设计ASoC层旨在解决这些问题并提供以下功能:*Codec独立性。允许在其他平台和计算机上重用codec驱动程序。*Codec和SoC之间的简易I2S / PCM音频接口设置。每个SoC接口和编解码器都将其音频...原创 2019-03-01 09:38:05 · 617 阅读 · 0 评论