登录
首页 » Android » 音乐播放器【支持:速率调节,音调调节,调节采样率】

音乐播放器【支持:速率调节,音调调节,调节采样率】

于 2022-07-24 发布 文件大小:2.04 MB
0 156
下载积分: 2 下载次数: 1

代码说明:

这是一个音乐播放器,支持:速率调节,音调调节,调节采样率,这三个功能基于soundTouch开源项目,解决了Android 6.0之前不能调节播放速率的问题。 由于公司项目需要做一个倍速播放的音乐播放器,我们知道,使用Android 自带的MediaPlayer的在Android 6.0之前的是不支持倍速播放的,我看过很多关于音频播放的开源项目,找到soundTouch能够改变音频播放速度,但是没有一个完整的能封装成播放器的。于是,我结合AudioTrack+MediaExtractor+MediaCodec+SoundTouch封装成一个音乐播放器。因为之前都是用Android 自带的MediaPlayer进行播放,使用这些新技术我花了很多的时间去了解他们的使用。

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • bms(终版)
    实现WIFI环境下的以太网通信,在手机上监控BMS的运行参数(Realize the Ethernet communication in WIFI environment, monitor the operation parameters of BMS on the mobile phone)
    2017-11-23 13:17:13下载
    积分:1
  • 将音乐列表做成3D球状
    将音乐列表做成3D球状,将音乐列表做成3D球状,将音乐列表做成3D球状,将音乐列表做成3D球状,将音乐列表做成3D球状
    2022-09-13 11:40:03下载
    积分:1
  • android 播放网络MP3 音乐播放
    简单的基本功能,实测可行。 核心代码:package com.sharpandroid.music.activity;import java.io.IOException;import android.app.Activity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.Button;import android.widget.ImageButton;import android.widget.SeekBar;import android.widget.TextView;import com.sharpandroid.music.R;import com.sharpandroid.music.StreamingMediaPlayer;public class MediaPlayer extends Activity { private Button streamButton; private ImageButton playButton; private boolean isPlaying; private TextView playTime; private StreamingMediaPlayer audioStreamer; @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.main); initControls(); } private void initControls() { playTime=(TextView) findViewById(R.id.playTime); streamButton = (Button) findViewById(R.id.button_stream); streamButton.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { startStreamingAudio(); }}); playButton = (ImageButton) findViewById(R.id.button_play); playButton.setEnabled(false); playButton.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { if (audioStreamer.getMediaPlayer().isPlaying()) { audioStreamer.getMediaPlayer().pause(); playButton.setImageResource(R.drawable.button_play); } else { audioStreamer.getMediaPlayer().start(); audioStreamer.startPlayProgressUpdater(); playButton.setImageResource(R.drawable.button_pause); } isPlaying = !isPlaying; }}); } private void startStreamingAudio() { try { final SeekBar progressBar = (SeekBar) findViewById(R.id.progress_bar); if ( audioStreamer != null) { audioStreamer.interrupt(); } audioStreamer = new StreamingMediaPlayer(this, playButton, streamButton, progressBar,playTime); audioStreamer.startStreaming("http://192.168.64.1/xa.mp3",5208, 216); streamButton.setEnabled(false); } catch (IOException e) { Log.e(getClass().getName(), "读取音乐出错!", e); } }}
    2014-05-26下载
    积分:1
  • base64 jar包
    解决android开发时,导入sun.misc.BASE64Decoder错误,自己就提取源码后做的jar包,导入就可用
    2022-03-11 18:08:07下载
    积分:1
  • Android 强制回到待机界面 回到桌面
    Android 强制回到待机界面 回到桌面,类似于手机中HOME键,单击一下会将当前程序隐藏至后台运行,并转到待机画面。不知道什么意思的,可看看截图所示的效果。
    2022-06-21 08:57:34下载
    积分:1
  • android OAuth认证、使用网易微博开放平台实现聊天功能源码
    OAuth认证、使用网易微博开放平台实现聊天功能
    2014-09-22下载
    积分:1
  • Androit 电池信息
    在这篇文章中,我们会尝试获取信息的 Android 设备的电池状态。在某些情况下它是更像一个传感器系统,虽然 XE5 特尔斐,不考虑在特定的类来访问传感器。不管怎么说,没什么比从另一个方面,我们的设备获取信息的方式。用于访问设备的电池,我们将做到所使用"意图"。在 Delphi 中你可以通过 JIntent 在 unitAndroidapi.JNI.GraphicsContentViewText 中定义的类的访问。
    2022-01-22 07:05:19下载
    积分:1
  • android堆栈布局的使用
    堆栈布局又叫帧布局,是一种控件之间可以相互覆盖的布局方式,这种布局的特点是后一个控件会覆盖前一个控件,如果后一个比前一个小的话,前一个未被覆盖的部分还会露出来。利用这个布局方式的特性可以实现控件直接的对齐,图片之间的相互覆盖等一些其他布局比较难实现的效果。
    2022-05-06 18:34:10下载
    积分:1
  • Android获取屏幕适配的小工具
    这是一个用于获取Android屏幕分辨率的信息,主要可以用来做屏幕适配功能。
    2022-03-04 23:43:26下载
    积分:1
  • SQLite
       创建子菜单的步骤:   (1) 覆盖Activity的onCreateOptionsMenu()方法,调用Menu的addSubMenu()方法来添加子菜单   (2) 调用SubMenu的add()方法,添加子菜单项   (3) 覆盖onContextItemSelected()方法,响应子菜单的单击事件   子菜单提供了一种自然的组织菜单项的方式,我们可以通过addSubMenu(int groupId, int itemId, int order, int titleRes)方法非常方便的创建和响应子菜单。  
    2022-03-17 20:56:41下载
    积分:1
  • 696518资源总数
  • 105885会员总数
  • 31今日下载