如何解决这个错误。Android资源链接失败?
以下这两个代码在我的Android Studio Project 中都处于同一主进性. 1)在按下播放按钮时从智能手机中重新编码音频并播放它: public class Main2Activity extends AppCompatActivity { //Declare variables Button btnRecord, btnStopRecord, btnPlay, btnStop; //String pathSave =""; private static String pathSave; MediaRecorder mediaRecorder; MediaPlayer mediaPlayer; final int REQUEST_PERMISSION_CODE=1000; @Override protected void onCreate(Bundle savedInstanceState
0 2024-02-18
编程技术问答社区
ExtAudioRecorder。"写入失败。EBADF (Bad file descriptor) " 在录制音频到WAV文件中-Android Studio
我正在尝试创建一个从麦克风记录的应用,并将文件保存到WAV格式中. 我找到了一个帮助我录制并保存WAV格式录制的Java课程. import java.io.File; import java.io.IOException; import java.io.RandomAccessFile; import android.media.AudioFormat; import android.media.AudioRecord; import android.media.MediaRecorder; import android.media.MediaRecorder.AudioSource; import android.util.Log; public class ExtAudioRecorder { private final static int[] sampleRates = {44100, 22050, 11025, 8000}; public stat
0 2024-02-18
编程技术问答社区
警告:File.mkdir()被忽略。
我使用媒体录音机API创建了一个基本的音频录制应用程序.我正在尝试在SD卡中创建一个文件夹,并将记录的文件保存到该文件夹​​中.我会通过以下代码获取此警告. file.mkdir()被忽略 // Assign random number to avoid audio file from overwriting Long tsLong = System.currentTimeMillis()/1000; // Specify a Location for the recorded file to be stored in the SD card mFileName = Environment.getExternalStorageDirectory().getAbsolutePath() + "/AudioRecordTest/"; File path = new File(mFileName); if(!path.exists(
2 2024-02-17
编程技术问答社区
如何在安卓系统中使用superpowered SDK将文件写到外部存储?
在使用超级能力实施一个项目的同时,我可以通过本机进行录制并在外部存储中写入文件,然后使用SuperPowered Crossfader示例我打开该文件并应用效果工作正常. 现在,我需要在具有应用效果的外部存储中写入输出文件,但不知道该执行此操作. 有iOS的示例,例如 解决方案 我需要对刚刚记录的音频施加效果(因此我有原始wav并对其应用效果). 这是一种方法的塑造,它适用于原始文件并将其保存到单独的文件: : applyEffect(const char *input, const char *output, int effectId) { SuperpoweredDecoder *decoder = new SuperpoweredDecoder(); const char *openError = decoder->open(input, false); if (openError) { delete decoder; return false
0 2024-02-17
编程技术问答社区
用OpenSL进行通话录音
我尝试在Galaxy S5中的Lolipop更新以来,尝试在我的应用中修复呼叫录制.作为基础,我正在此处使用Google样本项目:样本. 这是代码的主要部分: Audiorecorder :: Audiorecorder(SampleFormat *sampleFormat,SlengineItf Slengine):Freequeue_(NullPtr),recqueue_(nullptr),DevShadowqueue_(nullptr),callback_(nullptr)(nullptr) SLresult result; sampleInfo_ = *sampleFormat; SLAndroidDataFormat_PCM_EX format_pcm; ConvertToSLSampleFormat(&format_pcm, &sampleInfo_); gFp = fopen("/storage/emulated/0/file.pcm", "w"); //
0 2024-02-17
编程技术问答社区
使用线程的安卓媒体录制
我正在开发一个仅使用按钮启动和停止录制的Android应用程序. 我使用了线程.我创建了三个类.一个开始录制. 问题在于我可以在手机中看到该文件,但它是空的,手机给我一个味精"无法播放视频" ..我希望它与线程一起使用..我不想要其他方法. . 这是我的代码 主要课程: public class MediaRecorderSampleActivity extends Activity { Button start; Button stop ; private MediaRecorder recorder ; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); start = (But
0 2024-02-17
编程技术问答社区
如何从媒体播放器计算振幅的分贝(dB)?
我有一个代码来计算Audiorecord的实时DB振幅.该代码在计算数据库振幅中效果很好.录制后,我将其保存到WAV文件.现在,我想播放该文件并重新计算数据库振幅.但是,我之前无法取得类似的结果.您能帮我解决它吗?这是我在录制和播放时计算数据库幅度的代码. 1.录制时插入db振幅 bufferSize = AudioRecord.getMinBufferSize(16000, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_16BIT); record = new AudioRecord(MediaRecorder.AudioSource.VOICE_COMMUNICATION, SAMPLE_RATE, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_16BIT, bufferSize); audioBuff
0 2024-02-17
编程技术问答社区
查找属性 "ro.vendor.df.effect.conflict "的访问被拒绝。
嗨,我正在做音频记录它的错误. 我无法弄清楚它可以帮助我. 2021-01-24 19:21:53.708 4661-4661/com.koteswara.mediarecordersample E/libc: Access denied finding property "ro.vendor.df.effect.conflict" 2021-01-24 19:21:53.716 4661-4703/com.koteswara.mediarecordersample E/Perf: Fail to get file list com.koteswara.mediarecordersample 2021-01-24 19:21:53.716 4661-4703/com.koteswara.mediarecordersample E/Perf: getFolderSize() : Exception_1 = java.lang.NullPointerExcepti
0 2024-02-17
编程技术问答社区
检查Android MediaRecorder是否在录音
我已经为Android 2.2编写了一些使用Android Mediaplayer播放音频文件的代码.没有介绍代码的详细信息,我注意到存在一个称为 的函数 isPlaying() 允许您检查MediaPlayer当前正在播放音频文件.因此,例如,当以下代码段运行 时 Toast.makeText(getApplicationContext(), "Sound playing is: " + mediaPlayer.isPlaying(), Toast.LENGTH_SHORT).show(); 它显示以下消息 Sound playing is: true / false 取决于是否有声音播放. 当我使用Android Mediarecorder编写一些代码来录制麦克风的声音时,我注意到确实存在不是 似乎存在称为 的函数 isRecording() 检查是否正在进行录制. 所以,我想知道是否在程序员身上进行责任,然后通过将某些逻
0 2024-02-17
编程技术问答社区
录制/抓取安卓应用的内部声音播放并导出MP3?
是否可以记录应用程序生成的内部声音? 我的应用程序允许您创建和播放音乐序列. soundPool.play(soundIds[i], 1f, 1f, 1, 0, Constants.TIME_RATE); 我希望能够记录序列并导出到mp3. 我已经研究了 音频捕获 ,但是setAudioSource(int audio_source)似乎接受麦克风记录. 谢谢 解决方案 否,即使对于您自己的应用程序,也没有API获得音频输出(实际上不是完全正确的,因为您可以通过 Visualizer api,但是它的质量很低,我怀疑它是否对您有用). 如果您想要这种功能,则必须自己实施.那是;当您开始播放声音时,将它们混合并将结果写入文件.如果压缩声音,您还必须自己解码它们. 请注意,Android中没有包含MP3编码器,因此,如果您想导出的格式,则必须提供自己的MP3编码器. 其他解决方案 正如迈克尔所说,您需要为此实施自己的编码器和解码器.可视化
0 2024-02-17
编程技术问答社区
调用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] configure
2 2024-02-17
编程技术问答社区
为什么无法在安卓模拟器上使用语音记录器?
我正在尝试运行Android 2.2仿真器随附的语音录音机.问题是我单击"记录"按钮的那一刻: 它用错误消息中止了"应用程序录音机(Process com.android.speechrecorder)已经意外停止.请重试." 问题是再次尝试无济于事. 现在,我搜索了Stackoverflow,并梳理了整个Internet,发现了许多相同问题的报告,没有任何工作解决方案. 我的结论是,出于某种奇怪的原因,Android模拟器能够使用Windows Audio设备输出,但不能用于输入. 为什么? 我知道,使用主机的音频设备的输出和输入部分,其他虚拟化软件(例如VMware)都没有问题. 另外,如果语音录音机从未为任何人为模拟器工作,为什么将其放在那里? 肯定对某人有用.有没有办法使我的语音录音机也为我工作? 我使用的是Windows XP 32位,我的AVD使用SD卡定义(启动时安装). 更新:我遵循@klaus的建议,尝试查看是
0 2024-02-14
编程技术问答社区
如何用手机麦克风读取声音频率?
我正在研究应用程序.在这里,我想使用Android应用程序阅读各种声音.我知道如何在Android中记录.现在,我要做的是阅读声音并根据其频率,我想在Android屏幕上显示它.那么如何阅读Hz或KHz中的频率? 解决方案 您需要在您记录的音频样本上执行离散傅立叶变换.您可以自己编写代码或为其使用库.不幸的是,我不知道Java存在哪个FFT库,但是我相信您可以谷歌搜索.我在2分钟内发现了两个: /~mflanaga/java/fouriertransform.html /a>
0 2024-02-12
编程技术问答社区
在java或android中合并AMR音频文件
我想在Android中暂停简历选项记录音频. 为此,我应该记录多个文件并将它们合并到单个文件中. 但是现在如何合并.amr文件? 解决方案 (此答案假设我们正在谈论RAW .AMR文件,而不是3GP容器中的AMR数据或类似的内容) 文件的前6个字节是AMR签名,其余文件由音频帧组成.因此,您应该能够通过获取第一个文件的完整内容来串联两个AMR文件,然后附加第二个文件的内容减去其第一个6个字节..
0 2024-02-11
编程技术问答社区
安卓语音录制-语音与背景噪音问题
我正在开发语音录制Android应用程序.为此,我使用以下代码.当我录制和播放它时,我会以noice的背景获得录制的声音.我只能获得录制的声音.谁能帮我? import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import android.app.Activity; import android.media.AudioFormat; import android.media.AudioRecord; import android.media.MediaRecorder; import android.os.Bundle; import android.os.Environment; import android.view.View;
0 2024-02-11
编程技术问答社区
如何去除音轨中的背景噪音?
我正在开发VOIP的应用程序.发送声音是完美的 我在线程中正在调用at.play()和at.write,以便我应该从其他设备中录制并发送的所有声音. 但是,现在我面临的问题是,如果没有声音比仍然像子弹声那样播放的声音,我的意思是,当我尝试玩时,有一个连续的背景声音. i m在线程中使用以下功能: if (at != null) { if (at.getPlayState() != AudioTrack.PLAYSTATE_PLAYING) { at.play(); } else { if (playing == true) { System.out.println("BEFORE W
0 2024-02-11
编程技术问答社区
安卓系统使用输入文字存储录制的音频?
我有一个应用程序记录并将音频存储在SDCARD上.它记录并保存在正确的位置,但将其保存为android.widget.edittext@random号码.我正在使用递观来获取文件名. 有人知道如何让用户输入一些文本并保存文件.我以为我正在使用下面的代码,但没有... try { //Set user input as filename String filename = getInput.toString(); // set the storage directory to SDcard File storageDir = new File(Environment.getExternalStorageDirectory(), "audio"); storageDir.mkdir(
0 2024-02-11
编程技术问答社区
如何让客户记录查看仪表?
我想在用户记录声音上弹出的custome视图仪? 有人知道用于录制音频的数字VU仪表的任何编码示例吗? 有人知道有任何编码示例以显示录音时显示反馈吗? 解决方案 这是一个MediaStore文件表示音频录制.就像单击按钮并启动录制 一样 public class MediastoreActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button btn = (Button)findViewById(R.id.recordBtn); btn.setOnClickListener(new OnClickListener(){ @Override public void onClick(View view)
2 2024-02-10
编程技术问答社区
安卓。没有发现此类文件或目录的错误?
我正在同时播放和录制音频,以便使用MusicG API执行音频匹配分析.每次运行应用程序时,我都会遇到以下错误: V/playRecordAudio: Playing sound & recording stopped W/System.err: java.io.FileNotFoundException: /storage/emulated/0: open failed: EISDIR (Is a directory) W/System.err: at libcore.io.IoBridge.open(IoBridge.java:452) W/System.err: at java.io.FileOutputStream.(FileOutputStream.java:87) W/System.err: at java.io.FileOutputStream.(FileOutputStream.java:127) W/System.
2 2024-02-10
编程技术问答社区