草庐IT

Android - 在智能手机和蓝牙模块之间路由音频的功能

这是我在Stackoverflow上的第一篇文章。在过去的几天里,我尝试在Android智能手机上路由音频,但我找不到正确执行此操作的功能。用于制作蓝牙婴儿电话。我需要在智能手机和蓝牙模块之间建立路由。蓝牙模块最初是用来做Handset、车载Handfree、无线音箱……我在项目的音频方面使用A2DP和HFP(免提)配置文件进行通信。我可以在设备之间建立“sco”连接(用于音频蓝牙交换的连接)并从蓝牙模块取回音频。但是当连接“sco”工作时,我无法再使用智能手机上的扬声器和麦克风。我希望找到一个解决方案,在我的智能手机上使用音频,同时在我的蓝牙模块上使用音频。我搜索了http://de

java - 在 Android 中将循环音频与动画精确同步

问题:有没有什么方法可以使用AudioTrack和setLoopPoints()来配置一个基于每毫秒样本/帧的精度的循环?编辑:我明白,从大多数Android设备所拥有的处理能力来看,不能指望完美的准确性。但是,我希望平均循环时间接近节奏的“真实”间隔(以毫秒为单位),因为这就是我基于“动画”的方式,它也应该与节奏同步(动画是重绘的SurfaceView节奏间隔期间的一条线的坐标)。详细信息:我正在尝试将AudioTrack与setLoopPoints结合使用来创建准确的节拍器。为此,我使用两个wav文件(Tick和Tock)来填充byte[]数组以馈送到AudioTrack。考虑一个

java - 如何在上一个 Activity 中单击某个按钮时播放音频文件

我正在制作一款语言应用,用于我的学习目的和在Android中练习我想将所有类(class)的音频存储在一个数组中,当我按下例如音频1时,每节课都有一个Activity,它会弹出一个带有播放器的新Activity(AudioPopup.java)但问题是我不想让弹出窗口为每节课播放某些音频我需要的是识别按下了哪个按钮并打开我创建的AudioPopup并播放特定的mp3AudioPopup代码publicclassAudioPopupextendsAppCompatActivity{SeekBarseek_bar;ImageViewplay_button,pause_button;Medi

Android AudioRecord 和 AudioTrack 编解码器选项?

我目前在Android中使用AudioTrack和AudioRecord类。我使用纯PCM数据,但我想知道其他编解码器有哪些选择?来自thispage好像只能用AMR窄带编解码?我目前按如下方式设置音频类:arec=newAudioRecord(MediaRecorder.AudioSource.MIC,11025,AudioFormat.CHANNEL_CONFIGURATION_MONO,AudioFormat.ENCODING_PCM_16BIT,buffersize);atrack=newAudioTrack(AudioManager.STREAM_VOICE_CALL,110

java - Android - 如何将我自己的音频编解码器添加到 AudioRecord?

我目前有一个用于在Android设备上测试音频的环回程序。它使用AudioRecord和AudioTrack从Mic录制PCM音频并从耳机播放PCM音频。代码如下:publicclassRecordextendsThread{staticfinalintbufferSize=200000;finalshort[]buffer=newshort[bufferSize];short[]readBuffer=newshort[bufferSize];publicvoidrun(){isRecording=true;android.os.Process.setThreadPriority(an

java - 一首接一首播放歌曲导致 MP3Extractor 错误

@OverridepublicvoidonCreate(BundlesavedInstanceState){...mMediaPlayer=newMediaPlayer();mMediaPlayer.setOnCompletionListener(newMediaPlayer.OnCompletionListener(){publicvoidonCompletion(MediaPlayermediaPlayer){playAudio(getNextAudioFile());}});..}@OverrideprotectedvoidonDestroy(){super.onDestroy(

android - android模拟器可以播放音频吗

我想录制并将录制的声音传递给手机的扬声器,但我无法让录制代码正常工作(应用程序崩溃,SEEMYATTEMPTHERE)所以我现在想看看模拟器是否可以做任何相关的事情音频与否。我将wav(16位pcm,44k采样频率,单声道)和mp3(通过Audacity完成录制和转换)的1秒录音复制到sdcard。我可以在IDE的文件资源管理器中看到这些文件,所以我猜模拟器正在正确检测到sdcard。但是我无法让模拟器的内置音乐播放器检测到它们(为什么??)。作为第二次尝试,我复制了代码HERE示例helloworldAndroid应用程序。这是主要的Activity类publicclassMainA

java - 在android中使用哪种音频格式来存储录音

我正在开发从麦克风录制语音的应用程序,目前我正在将录制的音频存储在波形文件中,但波形的大小正在成为一个问题。我才知道android没有mp3解码器是真的吗?如何以压缩形式存储录制的音频?我正在使用AudioRecord类进行录音,不想使用MediaRecorder。 最佳答案 使用AudioRecord不会给您很多选择。它仅以PCM格式存储音频。您只能通过将channel配置设置为CHANNEL_IN_MONO并将音频格式设置为ENCODING_PCM_8BIT来降低尺寸。此外,您可以尝试扩展AudioRecord类并覆盖read(

通话后Android麦克风灵敏度发生变化

我的应用程序正在测量捕获音频的音量作为样本绝对振幅的函数。我注意到AndroidSDK的android.media.AudioRecord中出现意外行为。让我们假设以下流程:应用启动正在测量音频音量已接/拨电话正在测量音频音量麦克风周围的噪音是由音量设置恒定的电视产生的。点2的测量值在[55-65]范围内,点4的测量值在[15-25]范围内(请参阅下面的2.和4.的音频可视化)。我知道来电时一定要进行一些音量调节。是否有可能监控这些调整或摆脱它们?我尝试过AutomaticGainControl,但我的Nexus5不支持它,我不想使用它,因为目标设备可能也不支持它。更新此音量调整不仅在

android - 如何使用 MediaMetadataRetriever 获取嵌入式章节元数据

有没有办法在Android中使用MediaMetadataRetriever获取mp3/m4a文件中嵌入章节的元数据?这仅适用于音频文件。我只需要获取章节名称、起始位置和持续时间。嵌入艺术品会很好,但不是必需的。我曾尝试使用FFmpegMediaMetadataRetriever库,但我在使用API19时遇到了一些问题。https://github.com/wseemann/FFmpegMediaMetadataRetriever也许我可以使用更好的库? 最佳答案 内置的MediaMetadataRetriever没有获取每章元数据