首页 > TAG信息列表 > Alsa

音视频开发之【ALSA】

linux的主流音频体系结构 alsa 1.pcm数据是什么? 脉冲编码调制(Pulse Code Modulation,PCM) 脉冲编码调制就是把一个时间连续,取值连续的模拟信号变换成时间离散,取值离散的数字信号后在信道中传输。脉冲编码调制就是对模拟信号先抽样,再对样值幅度量化,编码的过程。 2.如何分离pcm的左

【嵌入式流媒体开发】Linux ALSA 声卡数据采集与播放

文章目录 ALSA框架环境搭建ALSA 交叉编译移植alsa-libalsa-util配置USB声卡查看声卡设备并测试查看音卡:录音测试播放测试 音频采集常见参数WAV文件头 编程实现录音的播放audio.cppaudio.haudio_wav.cppaudio_wav.h 播放录音测试代码运行方式audio_recordaudio_play ALS

alsa-lib、alsa-utils编译

1.  ALSA的体系结构 官方主页  AlsaProject 主要跟编程相关是   alsa-lib. ALSA 应用库(最常用) ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.0.22.tar.bz2alsa-driver 一些常见芯片的ALSA驱动代码,一般内核会集成. ftp://ftp.alsa-project.org/pub/driver/alsa-d

[ALSA架构][ASOC架构][第七话]如何写ALSA app 程序

简单粗暴,直接上图: 如果是capture的话,只需要修改: a.  SND_PCM_STREAM_PLAYBACK      ->       SND_PCM_STREAM_CAPTURE if ((err = snd_pcm_open (&capture_handle, argv[1], SND_PCM_STREAM_CAPTURE, 0)) < 0) { fprintf (stderr, "cannot open audio device %

linux alsa asoc总结

1. 引入 在没有计算机的年代,比如小时候听的收音机,它接收电磁波,将其中调制的声音信号解调出,这个声音信号是经转换后的一种模拟电信号,在经过适当的放大电路放大后,便可以直接送到耳机或者扬声器进行播放。 如下是一段声音的波形图,是对声音信号转换成的模拟电信号的形象化展示。

alsamixer保存音量设置

首先使用 amixer 设置声卡,然后输入如下命令保存声卡设置 alsactl -f /var/lib/alsa/asound.state store 没有/var/lib/alsa/asound.state的话就新建一个。 执行下面的命令加载配置: alsactl -f /var/lib/alsa/asound.state restore 可以打开/etc/init.d/rcS 文件,在最后面追

linux下lame&alsa进行音频流操作(二)alsa知识介绍和libasound使用

说明   在Linux平台, 设计到音频的开发,必然离不开liasound,无论是混音器的参数设置,还是录音、播放音频等,liasound都提供了支持。这篇文章介绍的时播放音频部分,即 PCM 部分 1. 预备知识 1.1 音频相关知识 采样率(每秒采样次数)\帧率, 表示每一秒对声音的波形模拟量取样的次数,频

Linux系统下录音方法

Linux系统下录音方法 安装软件 录音可选命令行和图形软件录制。 命令行安装alsa-utils: Ubuntu/Debian: sudo apt-get install alsa-utils alsa-tools alsa-tools-gui alsamixergui -y Redhat/Centos: yum install alsa-utils* 图形软件安装Audacity,Ubuntu的软件市场可以装

菜鸟修炼笔记-alsa-调节音频音量大小

alsa-调节音频音量大小 前言一。方法一:直接放大缓存中的数据1. 基本原理2. 相关尝试和结果2.1 在播放前放大音频缓存数据2.2 在录制前放大缓存 二。方法二:在linux终端直接设置alsa的参数。1. 基本原理2. 过程2.1 获取可以设置的参数2.2 获取各个参数当前的值2.3 设置`播放

Linux ALSA声卡驱动之五:移动设备中的ALSA(ASoC)

整理自:         https://blog.csdn.net/DroidPhone/article/details/7165482         https://www.cnblogs.com/blogs-of-lxl/p/6538769.html 1. ASoC--ALSA System on Chip:   建立在标准ALSA驱动层上,为了更好地支持嵌入式处理器和移动设备 中的音频Codec的一套软件

ALSA-hda开发笔记

初次接触ALSA感觉其深不可测,涉及到内核驱动代码的分析,架构的理解、应用层的alsa-lib库的使用以及系统运行环境的相关配置管理机制。一开始因为缺乏总体上的认识, 所以只能以项目中的遇到的实际问题为起点,一点一点深入其中。经过差不多两年的积累,现在无论时总体上的理解还是细

ALSA架构简介

一、概述 ALSA是Advanced Linux Sound Architecture 的缩写,目前已经成为了linux的主流音频体系结构。 在内核设备驱动层,ALSA提供了alsa-driver,同时在应用层,ALSA为我们提供了alsa-lib,应用程序只要调用alsa-lib提供的API,即可以完成对底层音频硬件的控制。如下图1.1所示:       

ALSA驱动框架——从程序的角度分析

  本节博客开始介绍,alsa声卡的软件框架。 1.入口函数alsa_sound_init kernel/linux-3.4.2/sound/core/Sound.c static const struct file_operations snd_fops = { .owner = THIS_MODULE, .open = snd_open, .llseek = noop_llseek, }; static int __init a

Linux ALSA

目录一、ALSA简介1.1 Linux Audio发展1.2 ALSA1.3 ALSA vs OSS1.4 ALSA设备文件与驱动代码文件1.4.1 设备文件1.4.2 驱动代码二、ALSA CORE2.1 声卡2.2 逻辑设备2.2.1 PCM2.2.2 CONTROL三、ASOC四、ALSA初始化及Playback流程 Linux音频子系统是Linux内核中最为庞大和复杂的组件之

ArchLinux声卡安装

以下有一些可能没有必要安装,也不管什么全部安装后重启一下系统就可以了。 sudo pacman -S alsa-utils sudo pacman -S alsa-plugins sudo pacman -S pulseaudio-alsa sudo pacman -S pavucontrol-qt sudo pacman -S pavucontrol 启用:amixer sset Master unmute 命令行设置:alsamixe

uos-20sp1 龙芯系统 编译51版本火狐浏览器,公司有npapi插件 52版本后不支持

2020-04-22 13:48:14 正规的龙芯系统需要以下依赖  做参考 1.从龙芯官网上下载源码 源码下载:git clone git://cgit.loongnix.org/browser/mozilla-esr52.git 2.安装以下编译依赖库 yum install zbar-gtk-devel dbus-devel dbug-glib-devel bzip zip hunspell alsa-lib-devel wi

c-用alsa录制8位带符号单声道16khz声音的最简单方法(与脉冲兼容)?

我完全迷失了,没有人有一个非常简单的示例,说明如何使用带有c的ALSA录制声音吗?我唯一需要的是将原始样本作为带符号的字节,以将其馈送到程序的另一部分.我发现谷歌搜索的所有示例似乎与PulseAudio存在问题,或者没有满足我的需求.解决方法:此article中的清单4显示了如何使用ALSA库AP

使用ALSA是否可以同时捕获麦克风和线路输入?

不太熟悉ALSA,但我支持使用它的应用程序. 是否可以同时录制来自麦克风和线路输入的音频?不一定要混合音频,尽管这已被要求.是否可以同时设置为记录并使用ALSA分别读取它们? 关于ALSA的文档并不是很有帮助,这基本上是我第一次涉足使用ALSA在Linux上进行混音. 任何帮助都将不胜感激;希望

我正在寻找可以播放MP3和OGG并支持ALSA或类似功能的跨平台Python库.

有几种不同的音频库,但是它们都不满足我的确切需求: -它必须是跨平台的.-它必须能够在Linux下使用ALSA,PulseAudio或任何其他常见的默认混音器.-它必须能够自动检测采样频率.-它必须(相当)简单地使用,如果有人可以给我一个额外的脚本,使我更容易接受的话.-我唯一需要的功能是播放/暂

c – ALSA期间的含义

我在Linux上使用ALSA和音频应用程序,我发现很棒的文档解释了如何使用它:1和this one.虽然我有一些问题需要理解这部分设置: /* Set number of periods. Periods used to be called fragments. */ if (snd_pcm_hw_params_set_periods(pcm_handle, hwparams, periods, 0) < 0) { f

树莓派 ffmpeg 录制 USB 摄像头+话筒 视频+音频 mp4

// record video&audio in the same file ffmpeg -y -f alsa -ac 1 -i hw:1 -acodec pcm_s16le -f v4l2 -framerate 25 -video_size 640x480 -i /dev/video0 -t 10 out.mp4   ffmpeg 需要编译安装 需要先安装alsa dev lib,否则无法录制音频,会报 Unknown input format: 'alsa'

Arm-Linux 移植 alsa

背景:   ALSA是Advanced Linux Sound Architecture的缩写,高级Linux声音架构的简称,它在Linux操作系统上提供了音频和MIDI(Musical Instrument Digital Interface,音乐设备数字化接口)的支持理论知识:    1、人的声音是模拟信号(连续)--》声音需要经过采样--》量化--》编码    采

linux – ALSA:snd_pcm_writei调用的缓冲区欠载

在运行我最近从灰烬中带回来的旧程序时,我得到缓冲区欠载. 程序将原始声音文件完全加载到内存中(2100字节长,525帧)并准备ALSA输出(44.1khz,2个通道,16位有符号): if ((err = snd_pcm_set_params(audio_handle, SND_PCM_FORMAT_S16_LE,

Linux,C音频采集(只是麦克风)库

我正在开发一个音乐游戏,它就像一个明星,但不是唱歌,你必须玩recorder.它被称为oFlute,它仍处于早期开发阶段. 在游戏中,我捕获麦克风输入,然后运行简单的FFT分析,并将结果与​​典型的录音机频率进行比较,从而得到播放音符. 一开始,我使用的音频库是RtAudio,但我不记得为什么我切

在bash脚本中设置系统卷(在linux中)

我需要在bash脚本中设置系统卷,但我不知道如何执行此操作. 我应该使用alsactl吗?我可以使用/ proc或/ sys中的某些值吗?解决方法:您应该使用amixer工具. 运行不带参数的amixer以获取混音器控件列表.使用这样的命令: amixer set Master 50% # set absolute amixer set Master 2dB+