标签: audio-player

单击耳机按钮时应用程序崩溃

我已经构建了一个部署在 android google playstore 中的音频播放器。我正在使用 crashlytics 来监控崩溃和 ANR。最近我遇到了很多 MediaButtonReceiver 崩溃的情况。耳机的咔嗒声在许多设备上都能正常工作。但有些设备会出现这个问题。

Crashlytics 报告 -

Fatal Exception: java.lang.RuntimeException: Unable to start receiver android.support.v4.media.session.MediaButtonReceiver: java.lang.IllegalStateException: Could not find any Service that handles android.intent.action.MEDIA_BUTTON or implements a media browser service.
       at android.app.ActivityThread.handleReceiver(ActivityThread.java:2866)
       at android.app.ActivityThread.access$1700(ActivityThread.java:182)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1551)
       at android.os.Handler.dispatchMessage(Handler.java:111)
       at android.os.Looper.loop(Looper.java:194)
       at android.app.ActivityThread.main(ActivityThread.java:5706)
       at java.lang.reflect.Method.invoke(Method.java)
       at java.lang.reflect.Method.invoke(Method.java:372)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1033)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:828)
Run Code Online (Sandbox Code Playgroud)

媒体会话代码 -

private void initMediaSession() throws RemoteException {
        if (mediaSessionManager != null) return; //mediaSessionManager exists

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            mediaSessionManager = (MediaSessionManager) getSystemService(Context.MEDIA_SESSION_SERVICE); …
Run Code Online (Sandbox Code Playgroud)

android audio-player headset android-mediaplayer android-mediasession

5
推荐指数
1
解决办法
2184
查看次数

当应用程序从最近状态清除时,如何处理作为前台运行的服务?

我的 Android 应用程序正在播放音频,同时该应用程序在后台运行,并有一个作为前台运行的服务,类似于许多其他应用程序,例如 Google Play Music、Spotify 和其他音乐播放器/播客播放器应用程序。

我检查过的大多数应用程序(包括 Google Play Music)即使在最近清除应用程序后也会使服务保持运行状态。另一方面,有些会停止音频并关闭服务(我只发现 Spotify 这样做)。

我想知道处理这个问题的正确方法是什么?尽管大多数应用程序都将服务保持打开状态,但用户似乎希望音频停止并且通知与应用程序一起从状态栏消失。

这里有正确的方法吗?

android audio-player foreground-service

5
推荐指数
1
解决办法
3058
查看次数

音频文件无法在reactjs中播放

我一直在尝试在 Recact.js 中播放音频文件,但它无法播放。我没有遇到任何错误,滚动条显示,但播放按钮不起作用。我尝试播放该歌曲以检查文件是否已损坏。mp3 文件工作正常。

import React from 'react'

class AudioPlayer extends React.Component {
  render() {
    return (
      <div>
        <audio ref="audio_tag" src="./abc.mp3" controls autoPlay/>
      </div>
    );
  }
}

export default AudioPlayer;
Run Code Online (Sandbox Code Playgroud)

html javascript audio-player reactjs

5
推荐指数
1
解决办法
8613
查看次数

找不到模块错误:您尝试导入位于项目 src/ 目录之外的模块。不支持 src/ 之外的相对导入

我目前正在 React 上制作一个音乐播放器应用程序,并且是 React js 的新手。不知道为什么我会收到此错误,因为我一直按照我正在观看的教程中的确切步骤进行操作。

完整的错误代码是:

Module not found: Error: You attempted to import ../components/Player which falls outside of the project src/ directory. Relative imports outside of src/ are not supported.
You can either move it inside src/, or add a symlink to it from project's node_modules/.
Run Code Online (Sandbox Code Playgroud)

为了更清楚起见,这是 Player 组件的代码:

import React from 'react';
import PlayerDetails from './PlayerDetails';

function Player(props) {
    return (  
        <div className="c-player">
            <audio></audio>
            <h4>Now playing</h4>
            <PlayerDetails song={props.song}/>
            {/*CONTROLS */}
            <p><strong> Next Up:</strong> {props.nextSong.title} {props.nextSong.artist}</p>

        </div>
    ); …
Run Code Online (Sandbox Code Playgroud)

javascript css jsx audio-player reactjs

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

声音处理:应该使用DirectSound还是直接使用Win32 API?

我将在以下位置进行申请:

  • 从麦克风录音并在输入上进行一些实时处理
  • 播放MP3文件(常规歌曲),但实时处理输出
  • 我偶尔也会需要在这首歌上播放其他声音,但是我想我可以通过简单地添加缓冲区来做到这一点。

简而言之,我需要同时具有用于记录和播放的循环缓冲区,并且需要每20毫秒左右将即将播放的新数据“馈入”输出缓冲区。

我一直在看DirectSound,但似乎并没有太大帮助。读取和写入输出缓冲区似乎与Win32非常相似,唯一似乎可以帮助在主歌曲上播放“其他声音”的地方。

我应该使用DirectSound,还是应该直接使用原始Windows API?
DirectSound会为我做任何事情吗?

提前致谢!

audio winapi directsound audio-recording audio-player

4
推荐指数
2
解决办法
9178
查看次数

有没有办法在不安装DirectX SDK的情况下在C#中播放音频片段?

对于一个学校项目,我需要创建一个程序,如果它可以包含一些声音效果会很好.我们正在使用C#(和Visual C#Express Edition 2008 Edition)对我们的程序进行编码,我想知道是否还可以在不安装DirectX SDK的情况下播放简短的音频文件.

在我们的学校计算机上,我们没有足够的权限来安装任何SDK,我们必须使用这些计算机进行开发.有没有办法播放没有DirectX SDK的音频文件?

c# audio audio-player

4
推荐指数
1
解决办法
488
查看次数

AS3麦克风录音/保存工作,闪光PCM播放双倍速

我在AS3中有一个工作的麦克风录音脚本,我已经成功地通过AMF将.wav文件保存到服务器.这些文件在任何音频播放器中都能正常播放,没有奇怪的效果.

作为参考,我正在做的是捕捉麦克风的ByteArray :(在一个名为AudioRecorder的类中)

public function startRecording():void {
_rawData = new ByteArray();
_microphone
 .addEventListener(SampleDataEvent.SAMPLE_DATA,_samplesCaptured, false, 0, true);
}

private function _samplesCaptured(e:SampleDataEvent):void {
  _rawData.writeBytes(e.data);
}
Run Code Online (Sandbox Code Playgroud)

这没有问题.录制完成后,我可以使用_rawData变量并通过WavWriter类等运行它.

但是,如果我使用以下代码运行同样的ByteArray作为声音我从adobe cookbook改编:(在一个名为WavPlayer的类中)

public function playSound(data:ByteArray):void {
  _wavData = data;
  _wavData.position = 0;
  _sound.addEventListener(SampleDataEvent.SAMPLE_DATA, _playSoundHandler);
  _channel = _sound.play();
  _channel
    .addEventListener(Event.SOUND_COMPLETE, _onPlaybackComplete, false, 0, true);
}

private function _playSoundHandler(e:SampleDataEvent):void {
  if(_wavData.bytesAvailable <= 0) return;
  for(var i:int = 0; i < 8192; i++) {
    var sample:Number = 0;
    if(_wavData.bytesAvailable > 0) sample = _wavData.readFloat();
    e.data.writeFloat(sample);
  }
}
Run Code Online (Sandbox Code Playgroud)

音频文件以双倍速度播放!我检查了记录比特率等等,我很确定这些都是正确的,我尝试改变缓冲区大小和我能想到的任何其他数字.它可能是单声道与立体声的东西吗?

希望我在这里很清楚,谢谢!

flash wav actionscript-3 audio-recording audio-player

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

如何在android中设置预设eq?

我想开发一个预设均衡器(非图形),并设置为古典,爵士,普通,摇滚(这些都在旋转器中表示).有人可以帮我解决这个问题.

android audio-player android-music-player

4
推荐指数
1
解决办法
5186
查看次数

隐藏MP3完整网址

我有一个使用以下语法链接到歌曲的音乐播放器:

<li><a href="" data-src="http://s3.amazonaws.com/audiojs/02-juicy-r.mp3">title</a></li>
Run Code Online (Sandbox Code Playgroud)

有没有办法让我可以执行服务器端,然后为用户显示(如下所示)?

在搜索时,我碰到了这个...我喜欢有一个外部文件背后有这个数据的想法...像:

<?php
// get-file.php
// call with: http://yoururl.com/path/get-file.php?id=1
$id = (isset($_GET["id"])) ? strval($_GET["id"]) : "1";
// lookup
$url[1] = 'link.mp3';
$url[2] = 'link2.mp3';
header("Location: $url[$id]");
exit;
?>
Run Code Online (Sandbox Code Playgroud)

然后使用:http://yoururl.com/path/get-file.php?id = 1作为链接...唯一的问题是当你输入http://yoururl.com/path/get-file时. php?id = 1用户直接进入文件...是否有任何方法可以禁用该功能......也许是get-file.php本身的一些代码?

php mp3 hide audio-player

4
推荐指数
1
解决办法
7217
查看次数

如何将SoundCloud文件添加到jPlayer?

现在我有一个网站,使用jPlayer来播放mp3.我还希望能够直接在播放器上添加SoundCloud流的功能.

我知道这是可能的,因为我最喜欢的音乐博客之一hillydilly这样做.通过查看他们的代码,我看到他们的jPlayer设置有一些额外的参数,即sc和sclink.

$(".play-music").each(function(){
        myPlaylist.add({
         title: $(this).attr('data-title'),
         artist: $(this).attr('data-artist'),
         mp3: $(this).attr('data-mp3'),
         url: $(this).attr('data-url'),
         sc: $(this).attr('data-sc'),
         sclink: $(this).attr('data-sclink')         
        });
});
Run Code Online (Sandbox Code Playgroud)

我试着查看其余代码,但无法弄清楚他们如何或在何处实现sc和sclink.有帮助吗?

html5 audio-player jplayer soundcloud

4
推荐指数
1
解决办法
4622
查看次数