一、前言

主要为播放mp3音频,

二、引用

audioplayers

功能:控制mp3文件播放。

地址:https://pub.dev/packages/audioplayers

方法:

  • await audioPlayer.setUrl('clicking.mp3'); /// 预加载但不播放,返回1为成功
    
  • await audioPlayer.resume(); /// 快速播放,返回1为成功
    
  • await audioPlayer.pause(); /// 暂停播放
    
  • await audioPlayer.seek(new Duration(seconds: 1)); /// 跳转进度播放
    
  • audioPlayer.onAudioPositionChanged.listen((event) async {// event参数可以获取当前进度,也是可以调整的,比如p.inMilliseconds
    })
    
  • await audioPlayer.release(); /// 释放资源
    

三、使用

1. 进度条部分

/// 当前播放进度
var playProcess = 0.0;
/// 是否正在拖动播放部分
var nowSeekPlay = false;Slider(value: playProcess.value, onChanged: (double v) {playProcess.value = v;
},onChangeStart: (double v){nowSeekPlay = true;
}, onChangeEnd: (double v){seekPlay(Duration(microseconds: (v*实际总微秒).toInt()));nowSeekPlay = false;
})

2. 音频播放

AudioPlayer audioPlayer = AudioPlayer();/// 播放
play() async {int result = await audioPlayer.setUrl("http://m701.music.126.net/20220108171336/cf03e7f017702d1c503a8af97277abb9/jdymusic/obj/wo3DlMOGwrbDjj7DisKw/12493523436/3543/fc68/56a2/4436b5c2d97ad152ce6f1a2ca10635a9.mp3");await audioPlayer.resume();if (result == 1) {audioPlayer.onAudioPositionChanged.listen((event) {if(!nowSeekPlay && (event.inMicroseconds.toDouble()/实际总微秒) <= 1.0){playProcess.value = (event.inMicroseconds.toDouble()/实际总微秒);} else if(nowSeekPlay){} else {playProcess.value = 1.0;}});} else {print('play failed');}
}/// 继续播放
continuePlay() async {await audioPlayer.resume();audioPlayer.onAudioPositionChanged.listen((event) {if((event.inMicroseconds.toDouble()/实际总微秒) <= 1.0){playProcess.value = (event.inMicroseconds.toDouble()/实际总微秒);} else {playProcess.value = 1.0;}});
}/// 暂停
pause() async {int result = await audioPlayer.pause();if (result == 1) {// successprint('pause success');} else {print('pause failed');}
}/// 拖动播放
seekPlay(Duration duration) async {int result = await audioPlayer.seek(duration);if (result == 1) {// successprint('seek success');} else {print('seek failed');}
}

Flutter播放音频相关推荐

  1. python播放音频及playsound模块解除占用的3种方法

    python播放音频文件及playsound模块解除占用的3种方法 pip install playsound 播放mp3文件 from playsound import playsound impo ...

  2. python ffmpeg 视频转图片 视频转音频 播放音频 多张图片+音频转视频 多个视频合成一个视频 改变视频播放速度

    文章目录 视频转图片 视频转音频 播放音频 图片+音频 转 视频 多个视频合成一个视频 改变视频播放速度 视频转图片 #!/usr/bin/env python # -*- encoding: utf ...

  3. Unity 播放音频文件

    Unity 播放音频文件参考代码: 1 public void Play(string strSoundName, float autoDestroyTime = 0f, bool bLoop = f ...

  4. iOS 9音频应用播放音频之iOS 9音频播放进度

    iOS 9音频应用播放音频之iOS 9音频播放进度 iOS 9音频应用开发播放进度 音频文件在播放后经过了多久以及还有多久才可以播放完毕,想必是用户所关注的问题.为了解决这一问题,在很多的音乐播放器中 ...

  5. iOS 9音频应用播放音频之控制播放速度

    iOS 9音频应用播放音频之控制播放速度 iOS 9音频控制播放速度 iOS9音频文件在播放时是以一定的速度进行的.这个速度是可以进行更改的,从而实现iOS9音频文件的快速播放和慢速播放功能.要实现i ...

  6. iOS 9音频应用播放音频之音量设置与声道设置

    iOS 9音频应用播放音频之音量设置与声道设置 iOS 9音频应用音量设置 音量又称响度.音强,是指人耳对所听到的声音大小强弱的主观感受,其客观评价尺度是声音的振幅大小.在iOS 9音频应用的应用中, ...

  7. ​iOS 9音频应用播放音频之第一个ios9音频实例2

    ​iOS 9音频应用播放音频之第一个ios9音频实例2 ios9音频应用关联 iOS9音频应用中对于在主视图上添加的视图或控件,在使用它们时必须要与插座变量进行关联.ios9插座变量其实就是为主视图中 ...

  8. iOS 9音频应用播放音频之第一个ios9音频实例

    iOS 9音频应用播放音频之第一个ios9音频实例 第一个ios9音频实例 为了让开发者可以对上面的内容有更加深入的了解,本节将实现播放音频的第一个实例.在此实例中会涉及到项目的创建.界面设计.关联以 ...

  9. iOS 9音频应用播放音频之ios9音频基本功能

    iOS 9音频应用播放音频之ios9音频基本功能 在iOS 9音频应用开发中最为简单和常用的就是AVFoundation框架中的AVAudioPlayer类.虽然AVAudioPlayer类不能播放网 ...

最新文章

  1. Ubuntu安装python3.7,并将python链接指向python3.7
  2. Oracle函数列表速查
  3. 百练-16年9月推免-B题-字符串判等
  4. Java中的static———静态变量
  5. 高可用集群heartbeat安装配置(一)
  6. springboot学习笔记(三)
  7. hibernate.hbm2ddl.auto配置及意义
  8. java 持久_Java持久锁总结 -解道Jdon
  9. Exploration(POJ-3618)
  10. UIKit框架-高级控件Swift版本: 2.UITableView方法/属性详解
  11. 为XHR对象所有方法和属性提供钩子 全局拦截AJAX
  12. 遇到一个奇怪的问题——关于VS2013、VS2015中字符集(多字节字符集和Unicode字符集)的选择
  13. 贪心科技机器学习训练营(九)
  14. linux时钟(时间)同步
  15. linux镜像文件超过4G怎么办,Systemback无法将超过4G的sblive文件转存为镜像文件的解决办法...
  16. MATLAB编写m函数理解 y=f(g(x))*h(x)
  17. 小米平板可以编程c语言吗,小米平板方便使用吗
  18. 微信翻译如何使用?在微信中如何进行中翻译英
  19. win10清理_教你一招win10如何彻底清理C盘垃圾
  20. 大数据分析-智能消息推送策略

热门文章

  1. 目前市面上堡垒机的品牌有哪些?采购时候需要考虑哪些?
  2. 2021年中国电子商务行业投融资现状及未来发展趋势分析[图]
  3. QT5.10开发(5)QT入门知识
  4. 疫情汹涌,餐饮行业如何修炼内功科学选址?——市场趋势及数据洞察篇
  5. 把文件放在服务器上以供用户下载
  6. AWS S3 and Glacier
  7. acwing 217.绿豆蛙的归宿
  8. Echarts字体和线条颜色设置操作笔记
  9. java信徒齐(七)步走
  10. GBDT、XGBoost、LightGBM比较