标签: audio-recording

Android系统.如何进行大音量录音?

我将简要介绍一下录音的麻烦.

所以,我正在使用MediaRecorder进行录音,但不幸的是,当我播放录制的音频时,我的媒体音量非常低.我什么都听不到.

是否有可能设置录音音量?

谢谢.

android audio-recording

7
推荐指数
1
解决办法
6574
查看次数

任何人都可以建议如何使用html5和javascript在网站上录制麦克风的音频

我想用javascript和html5录制音频,html5中有设备元素,但我不知道使用它.找不到同样的例子.

javascript browser html5 audio-recording

7
推荐指数
1
解决办法
4651
查看次数

后台进程subprocess.Popen with Pipe

我正在尝试使用arecord记录和转换使用python的流.

在shell中,这是一个或多或少的命令:

arecord -B 5000 -f dat | lame -m j -q 5 -V 2 - test.mp3 &
Run Code Online (Sandbox Code Playgroud)

在Python中,我尝试使用subprocess.Popen:

reccmd = ["arecord", "-B", "5000", "-f", "dat"]
mp3cmd = ["lame", "-m", "j", "-q", "5", "-V", "2", "-", "test.mp3"]
p = subprocess.Popen(reccmd, stdout=subprocess.PIPE)
p2 = subprocess.Popen(mp3cmd, stdin=p.stdout)
p2.communicate()
Run Code Online (Sandbox Code Playgroud)

但我不知道如何在代码中包含"&"或类似内容,以便能够使用a来停止录制

killall arecord 命令

python subprocess background audio-recording

7
推荐指数
1
解决办法
6448
查看次数

构造WaveIn时出现NAudio InvalidOperationException

我是NAudio的新手,我正在尝试编写一个小程序,用于记录麦克风中的一些音频并将其写入Wave文件.当我在程序的Main函数中调用recordStuff()函数时,程序没有通过WaveIn对象的构造,并且程序死于InvalidOperationException,其中包含消息"使用WaveInEvent在后台线程上记录" .知道NAudio的人可能会告诉我这意味着什么吗?我试过在它自己的线程中调用recordStuff()函数,但我最终得到了相同的结果.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using NAudio.Wave;

namespace SimpleWave
{
    class Recorder
    {
        public Recorder()
        {
            writer = new WaveFileWriter("C:\\Users\\Paul\\Desktop\\yeah.wav", new NAudio.Wave.WaveFormat(44100, 1));
        }

        public static List<byte> buff = new List<byte>();
        public static WaveFileWriter writer;

        public void recordStuff()
        {
            // WaveIn Streams for recording
            WaveIn waveInStream;

            waveInStream = new WaveIn();
            waveInStream.DeviceNumber = 0;
            waveInStream.WaveFormat = new WaveFormat(44100, 2);
            writer = new WaveFileWriter(@"C:\Users\Paul\Desktop\this.wav", waveInStream.WaveFormat);

            waveInStream.DataAvailable += new EventHandler<WaveInEventArgs>(waveInStream_DataAvailable);
            waveInStream.StartRecording();
        }

        public void waveInStream_DataAvailable(object sender, WaveInEventArgs e) …
Run Code Online (Sandbox Code Playgroud)

.net c# audio audio-recording naudio

7
推荐指数
1
解决办法
5464
查看次数

HTML5录制低kbps的音频

我使用getUserMedia()做了录音机.并使用Recorder.js保存文件

但是输出文件比我想象的要重得多.

4分钟的录音记录有40mb.我无法将其发送到我的服务器.如果是这样,它会崩溃.

所以,我搜索了如何降低录制kbps.但我一无所获.只是一些Flash解决方案.但这些不适合我的项目.

所以,我的问题是,是否可以使用getUserMedia()降低音频记录的kbps?

javascript html5 audio-recording web-audio-api

7
推荐指数
2
解决办法
3805
查看次数

调用MediaCodec.configure()时出现非法状态异常

我在MediaCodec.configure()行上得到了IllegalStateException,我正在尝试使用MediaCodec录制音频.这只发生在某些手机上,标签上的一切都很好.这个特殊的崩溃示例来自三星Galaxy S4.异常痕迹:

01-22 17:33:38.379: V/ACodec(16541): [OMX.google.aac.decoder] Now Loaded
01-22 17:33:38.379: V/ACodec(16541): onConfigureComponent
01-22 17:33:38.379: W/ACodec(16541): [OMX.google.aac.decoder] Failed to set standard component role 'audio_encoder.aac'.
01-22 17:33:38.379: E/ACodec(16541): [OMX.google.aac.decoder] configureCodec returning error -2147483648
01-22 17:33:38.379: E/MediaCodec(16541): Codec reported an error. (omx error 0x80001001, internalError -2147483648)
01-22 17:33:38.384: D/AndroidRuntime(16541): Shutting down VM
01-22 17:33:38.384: W/dalvikvm(16541): threadid=1: thread exiting with uncaught exception (group=0x418d0700)
01-22 17:33:38.414: W/BugSenseHandler(16541): Transmitting crash Exception Unable to resolve host "bugsense.appspot.com": No address associated with hostname
01-22 17:33:41.404: E/AndroidRuntime(16541): FATAL EXCEPTION: …
Run Code Online (Sandbox Code Playgroud)

android codec audio-recording mediacodec

7
推荐指数
1
解决办法
9693
查看次数

如何在Android中使用Visualizer图形视图录制音频?

我需要显示带有录音的Visualizer图

音频记录,在图表中显示效果。

像这样的图。

在此处输入图片说明

如果有人有解决方案,请帮助我。我尝试找到最多但没有得到适当解决方案的解决方案。

audio android audio-recording

7
推荐指数
1
解决办法
4960
查看次数

我怎么能播放pcm文件

以下代码应记录音频并以PCM格式存储到SD卡中.代码正在与我合作,但PCM文件无法播放!!!!

我从这个链接获得了这个代码.... Android:使用audiorecord类播放录制音频作为快进

我需要播放PCM文件我该怎么做???????

public class Audio_Record extends Activity {
private static final int RECORDER_SAMPLERATE = 8000;
private static final int RECORDER_CHANNELS = AudioFormat.CHANNEL_IN_MONO;
private static final int RECORDER_AUDIO_ENCODING = AudioFormat.ENCODING_PCM_16BIT;
private AudioRecord recorder = null;
private Thread recordingThread = null;
private boolean isRecording = false;

 @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

setButtonHandlers();
enableButtons(false);

int bufferSize = AudioRecord.getMinBufferSize(RECORDER_SAMPLERATE,
        RECORDER_CHANNELS, RECORDER_AUDIO_ENCODING);

System.out.println("BUFFER SIZE VALUE IS " + bufferSize);

 }

       private void setButtonHandlers() {
 ((Button) findViewById(R.id.btnStart)).setOnClickListener(btnClick);
((Button) findViewById(R.id.btnStop)).setOnClickListener(btnClick);
    }

   private …
Run Code Online (Sandbox Code Playgroud)

android audio-recording voice-recording

6
推荐指数
1
解决办法
2万
查看次数

ALSA阈值,avail_min和期间有什么区别?

我正在四核debian盒子上进行ALSA捕获程序,我很困惑.

基本的ALSA捕获,hw:0接口,16位,44.1 KHz,使用带有poll()的阻塞线程,由snd_pcm_start()和控制snd_pcm_drop().我检查所有ALSA API调用的返回值.基本捕获工作正常,但我无法弄清楚如何设置轮询速率(即,ALSA通知我的poll()例程返回的频率,因为可以读取帧).

我用它snd_pcm_sw_params_set_avail_min()来设置为2048帧,当有大约2048帧可供读取时,poll()返回.我打电话snd_pcm_avail_delay()之前打电话snd_pcm_readi(),这一切看似合理.但如果我将它设置为低于2048的任何值,我会得到不一致的结果.如果我将avail_min设置为1024的一半时间poll()返回时有大约1024帧可用,而有一半时间直到1500帧可用.当我将avail_min设置为512时,第一次读取是512,但随后95%的后续读取是1024帧或更大.当我呼叫snd_pcm_hw_params_get_period_size_min/max()此设备报告有效范围为16-8192帧时,因此512帧的时间段似乎不合理 - 驱动程序报告hw支持它.

我已经试过的每个组合snd_pcm_sw_params_set_avail_min(),snd_pcm_hw_params_set_period_size()snd_pcm_sw_params_set_start_threshold(),但仍不能得到合理的结果.

我已经尝试用pthread setaffinity将这个线程钉到单个CPU核心.我试图sched_setschedule()给这个过程"软"实时优先级.似乎没有什么能让我得到一致的poll()返回,除了将avail_min设置为至少2048.

以下是一些ALSA问题:

  1. 是启动阈值(snd_pcm_sw_params_set_start_threshold()仅与异步捕获相关吗?也就是说,启动阈值似乎不适用于基于poll()的捕获.这是正确的吗?

  2. 帧中的周期大小和帧中的avail_min大小有什么区别?文档似乎暗示avail_min设置poll()将返回的点,因为至少有许多帧可供读取.句点大小是一个hw参数,但API仍然提供最小值和最大值以及设置它的方法.在我看来,他们真的是一样的但我不能让我的poll()根据我设定的时间段返回.

  3. 当我解释snd_pcm_sw_params_set_avail_min()为触发poll()例程设置可用捕获帧的目标数量的意图时,我是否误读了文档?

  4. 对于我来说,期望poll()应该比任何可用于读取的500到1500帧之间的返回更加一致,这是否合理?或者这是正常的行为,我应该期望可供阅读的帧数有很大的变化吗?

  5. 如果预期有很大的变化,最好总是读取报告的总可用帧,snd_pcm_avail()或者每次poll()返回时最好读取一定数量的帧?

audio alsa audio-recording

6
推荐指数
1
解决办法
3882
查看次数

如何在android中以编程方式录制具有特定声音的视频?

我已经创建了在我的应用中录制视频的功能.

播放歌曲时,该歌曲会录制视频并创建视频文件,类似于dubshmash应用程序.

现在我面临的问题是,其他声音如声音附近也会被记录下来.歌曲文件记录在视频录制屏幕中,我在视频录制活动启动时播放歌曲.

如何让我的应用程序只记录带有视频的歌曲?

 mediaRecorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
  mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
  mediaRecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH));
Run Code Online (Sandbox Code Playgroud)

音频源设置为扬声器是否有任何解决方案,因为歌曲声音通过扬声器?如果是另一种可能的方式请回复我.

audio android audio-recording video-recording

6
推荐指数
2
解决办法
5626
查看次数