标签: audio-player

Android 中带手势(滑动功能)的 VideoView

我想结合默认的VideoView手势侦听器

如果用户向左滑动则歌曲向后播放或向右滑动则歌曲向前播放,我想在 VideoView 上实现同样的方法。

通过以下代码打开默认媒体播放器:

Intent intent = new Intent("android.intent.action.MUSIC_PLAYER");
    startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

那么如何添加手势监听器..?

android gesture audio-player android-music-player

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

无法使用 ExoPlayer 获取 AAC 文件的 getDuration()

我一直在尝试流式传输URL使用ExoPlayer. 网址:

STREAM_URL_1 = " http://storage.googleapis.com/exoplayer-test-media-0/play.mp3 "

STREAM_URL_2 = " https://s3-ap-southeast-1.amazonaws.com/ok.talk.channels/zakirkhan/Zakir+khan+-+when+my+father+took+my+gf%27s+call.aac "

两个 URL 都可以播放,但我无法获得getDuration()STREAM_URL_2 的 .aac 文件。.mp3 有效。

以下是我的做法。如何获取getDuration()第二个 URL。即使seekTo()如果不工作getDuration()不工作。

我应该做出什么改变?我需要改变任何Extractor吗?

player = ExoPlayer.Factory.newInstance(RENDERER_COUNT, MIN_BUFFER_MS, MIN_RE_BUFFER_MS);
playerControl = new PlayerControl(player);
Allocator allocator = new DefaultAllocator(BUFFER_SEGMENT_SIZE);

private static final String STREAM_URL = "http://storage.googleapis.com/exoplayer-test-media-0/play.mp3";
uri = Uri.parse(STREAM_URL);

// Build the video and audio renderers.
DefaultBandwidthMeter bandwidthMeter = new DefaultBandwidthMeter(player.getMainHandler(),
    null);
String userAgent = Util.getUserAgent(this, "MyMediaPlayer");
DataSource dataSource …
Run Code Online (Sandbox Code Playgroud)

android audio-player android-music-player android-mediaplayer exoplayer

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

使用 pcm_s24le 的 ALSA

使用 Linux Mint 17.1 和 ALSA。我有两个产生相同声音的 wav 文件:一个使用 pcm_s16le,另一个使用 pcm_s24le。每个图腾/视频都能正确播放。我设置硬件参数并使用 pcm_s16le 播放的代码工作正常。但是,当我尝试调整这些参数以适应 pcm_s24le 时,如下所示:

snd_pcm_hw_params_set_format(audioHandle, audioParams, SND_PCM_FORMAT_S24_LE);
Run Code Online (Sandbox Code Playgroud)

[我只是用“SND_PCM_FORMAT_S24LE”替换“SND_PCM_FORMAT_S16_LE”]。对 snd_pcm_writei 的调用是

snd_pcm_writei(m_audioHandle, *m_pAudioFrameData, *m_pAudioFrameSize / (m_nChannels * m_bitsPerSample / 8);
Run Code Online (Sandbox Code Playgroud)

我听到的大部分是垃圾声音(嘶嘶声、断断续续的声音),但带有一丝正确的声音。

本质上我的问题是,如何将适用于 SND_PCM_FORMAT_S16_LE 的代码转换为适用于 SND_PCM_FORMAT_S24_LE 的代码?

alsa audio-player

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

pyqt5 循环 mp3 文件

我想循环一个音频文件并使用这个代码(我的原始问题和解决方案)和这个代码(Qt C示例)的组合设法创建这个:

from PyQt5.QtCore import *
from PyQt5.QtMultimedia import *
import sys

if __name__ == "__main__":

    app = QCoreApplication(sys.argv)

    playlist = QMediaPlaylist()
    url = QUrl.fromLocalFile("./sound2.mp3")
    playlist.addMedia(url)
    playlist.setPlaybackMode(QMediaPlaylist.Loop)

    content = playlist()
    player = QMediaPlayer()
    player.setMedia(content)
    player.play()

    app.lastWindowClosed.connect(player.stop)
    app.exec()
Run Code Online (Sandbox Code Playgroud)

但是,此代码不起作用,报告的错误是:

类型错误:参数不匹配任何重载调用:addMedia(self, QMediaContent):参数 1 具有意外类型 'QUrl' addMedia(self, object):参数 1 具有意外类型 'QUrl'

我的代码哪里出错了?非常感谢任何帮助。

python pyqt audio-player pyqt5 qtmultimedia

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

颤振音频播放器播放声音在 IOS 中不起作用

我正在使用 flutter 插件音频播放器:^0.7.8,以下代码在 Android 中有效,但在 IOS 中无效。我在真实的 ios 设备中运行代码并单击按钮。它假设播放 mp3 文件,但根本没有声音。请帮助解决这个问题。

我已经设置了 info.plist

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>
Run Code Online (Sandbox Code Playgroud)

这里是从控制台打印出来的:

  • 颤振:加载完成,uri=file:///var/mobile/Containers/Data/Application/E3A576E2-0F21-44CF-AF99-319D539767D0/Library/Caches/demo.mp3
  • 正在将文件同步到设备 iPhone...
  • 颤振:_platformCallHandler 调用 audio.onCurrentPosition {playerId:273e1d27-b6e8-4516-bb3f-967a41dff308,值:0}
  • 颤振:_platformCallHandler 调用 audio.onError {playerId:273e1d27-b6e8-4516-bb3f-967a41dff308,值:AVPlayerItemStatus.failed}

这里有我的代码:

class _MyHomePageState extends State<MyHomePage> {
  AudioPlayer audioPlugin = AudioPlayer();
  String mp3Uri;

  @override
  void initState() {
    AudioPlayer.logEnabled = true;
    _load();
  }

  Future<Null> _load() async {
    final ByteData data = await rootBundle.load('assets/demo.mp3');
    Directory tempDir = await getTemporaryDirectory();
    File tempFile = File('${tempDir.path}/demo.mp3');
    await tempFile.writeAsBytes(data.buffer.asUint8List(), flush: true);
    mp3Uri = tempFile.uri.toString();
    print('finished …
Run Code Online (Sandbox Code Playgroud)

audio-player ios flutter

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

ffmpeg 扬声器爆裂音效

我想知道如何使用 ffmpeg 来实现声音被完全破坏的扬声器效果。

我在 ffmpeg 上尝试了一堆不同命令的组合,我得到的最接近的是以下(我使用超级均衡器,然后使音量超高):

import ffmpeg
(
    ffmpeg
    .input('shark.wav')
    .filter("superequalizer", 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20)
    .filter("volume", 10)
    .output('output_speaker.wav')
    .run()
)
Run Code Online (Sandbox Code Playgroud)

我正在使用 python 包装器,但这是等效的命令行:

ffmpeg -i shark.wav -af "superequalizer=1b=20:2b=20:3b=20:4b=20:5b=20:6b=20:7b=20:8b=20:9b=20:10b=20:11b=20:12b=20:13b=20:14b=20:15b=20:16b=20:17b=20:18b=20,volume=10" output_speaker.wav
Run Code Online (Sandbox Code Playgroud)

上述问题是,它对声音还不是很大的文件(例如录制的音频)没有任何作用,并且大多数时候音频实际上只是最终被削波,然后变得超级柔和。

有人对如何实现这种效果有建议吗?谢谢!

python mp3 ffmpeg wav audio-player

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

当应用程序在后台时运行函数 | 扑

我的应用程序包含一些背景音乐。我希望能够在用户离开应用程序时将其关闭。我可以通过使用以下方法来部分完成此操作WillPopScope

Future<bool> _willPopCallback() async {
    player.stop();
    return true;
  }
Run Code Online (Sandbox Code Playgroud)

但这不是正确的做法,因为它仅在用户单击 时才起作用back-button,而不是home-button。这是一个很大的问题,因为这样音乐就会一直在后台播放。我该如何解决?

background-process audio-player flutter

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

如何制作用于播放MP3文件的intent-filter?

我在Android中创建了一个音乐播放器应用程序.现在,当在手机的文件管理器中选择音乐文件时,我希望我的应用程序显示为"使用完整操作"弹出窗口中的一个选项.我的想法是使用意图过滤器来做到这一点,但我不知道我需要提供什么动作,类别或数据.如何为此创建一个intent过滤器?

我在这里也看到了一个相关的问题:如何制作一个用于流式传输MP3文件的intent-filter?但我的不是流媒体,我只是从文件播放音乐.

先感谢您.

android intentfilter audio-player android-music-player

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

如何判断MediaPlayer是否正在播放?

如何判断javafx.scene.media.MediaPlayer是否正在播放?最好不要对构建路径进行任何外部导入或添加.如果这是不可能的,那么我可以使用任何自包含的库吗?我正在ARM CPU上安装此软件,所以我试图使这段代码尽可能简约.我只会使用这个框架播放音乐文件,主要是MP3.有关如何判断玩家是否正在使用此库或其他库播放音乐的任何建议?

java mp3 arm audio-player javafx-2

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

Sun,音频播放器和声音I/O.

我有几个与Sun,音频播放器和声音输入/输出相关的问题

为什么sun.audio.AudioPlayer包不是Java API的一部分?一些信息在这里:http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6b14/sun/audio/AudioPlayer.java但它仍然是默认JDK构建的一部分我我正在使用.

我已经尝试过使用JMF,花了半天时间用螺丝钉绕它,但没有真正有用.我设法导入jmf.jarEclipse我尝试了一个演示脚本,它仍然吐出像无人业务一样的错误.考虑到现在放弃了?!?然而,Java提供了一个相对较新版本的链接:http://www.oracle.com/technetwork/java/javase/download-142937.html我有点担心但是如何在页面底部写下面的内容"假,,,,,,,"?

您认为什么是用于音频I/O和操作的最佳软件包?

我只是想在一个项目上工作,虽然MP3播放器是一个很好的起点,因为我可以做一点摆动.然而它似乎相当困难,因为从我所看到的Java并不是非常热衷于制作mp3和音频操作包.

java jmf sun javasound audio-player

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