TaifunPlayer 扩展(Audio Player):音频播放器扩展,支持流媒体播放控制

« 返回首页

Player 扩展 TaifunPlayer 扩展(Audio Player)

TaifunPlayer 是一个免费的音频播放器扩展,为 App Inventor 应用提供了强大的流媒体播放功能。该扩展支持在线流媒体播放、播放控制(播放、暂停、停止、前进、后退)、播放状态检查、循环模式设置、静音控制等全面的音频播放管理功能。

包名:com.puravidaapps.TaifunPlayer

作者:Taifun

下载链接

扩展文件

com.puravidaapps.TaifunPlayer.aix

示例文件

Player.aia

功能概述

扩展特性

  • 流媒体播放:支持在线流媒体播放
  • 播放控制:播放、暂停、停止、前进、后退、前进到位置
  • 播放状态:检查播放状态(是否正在播放)
  • 循环模式:设置播放循环模式
  • 静音控制:设置播放器静音状态
  • 时长获取:获取媒体文件的总时长和当前位置
  • 播放位置:获取和设置当前播放位置
  • 完整支持:支持各种音频格式的播放

截图

功能示例

当前位置

时长

播放状态

循环模式

仅播放

函数

Play 播放()
开始播放媒体文件。
  • 返回类型:无返回值
Pause 暂停()
暂停当前播放的媒体。
  • 返回类型:无返回值
Stop 停止()
停止播放并重置播放器状态。
  • 返回类型:无返回值
Forward 前进(位置)
从当前位置前进到指定位置(毫秒)。
  • 位置:数字类型,前进的目标位置(毫秒)
  • 返回类型:无返回值
Backward 后退(位置)
从当前位置后退到指定位置(毫秒)。
  • 位置:数字类型,后退的目标位置(毫秒)
  • 返回类型:无返回值
SeekTo 跳转到(位置)
跳转到指定位置(毫秒)。
  • 位置:数字类型,目标位置(毫秒)
  • 返回类型:无返回值
SetLooping 设置循环(循环模式)
设置播放循环模式。
  • 循环模式:数字类型,0=不循环,1=循环全部,2=循环当前
  • 返回类型:无返回值
GetDuration 获取时长()
获取媒体文件的总时长(毫秒)。
  • 返回类型:数字类型,媒体总时长(毫秒)
  • 返回类型:无返回值(属性)
GetCurrentPosition 获取当前位置()
获取当前播放位置(毫秒)。
  • 返回类型:数字类型,当前播放位置(毫秒)
  • 返回类型:无返回值(属性)
IsPlaying 是否播放中()
检查播放器当前是否正在播放。
  • 返回类型:布尔类型,true 表示正在播放
  • 返回类型:无返回值(属性)
SetMute 设置静音(静音)
设置播放器静音状态。
  • 静音:布尔类型,true 表示静音
  • 返回类型:无返回值

属性

Source 音源
获取或设置要播放的媒体源路径。
  • 类型:文本类型
  • 默认值:空
IsLooping 循环中
获取或设置播放器是否处于循环状态。
  • 类型:布尔类型
  • 默认值:false
Duration 时长
获取媒体文件的总时长。
  • 类型:数字类型
  • 只读:是
Position 位置
获取或设置当前播放位置。
  • 类型:数字类型
  • 只读:是
Playing 播放中
获取播放器当前是否正在播放。
  • 类型:布尔类型
  • 只读:是
Muted 静音
获取或设置播放器静音状态。
  • 类型:布尔类型
  • 默认值:false

应用场景

1. 在线音乐播放器

创建在线音乐播放应用:

当 Button1.点击
    调用 TaifunPlayer1.Play 播放

2. 播放控制

实现完整的播放控制功能:

当 Button_Play.点击
    调用 TaifunPlayer1.Play 播放

当 Button_Pause.点击
    调用 TaifunPlayer1.Pause 暂停

当 Button_Stop.点击
    调用 TaifunPlayer1.Stop 停止

当 Button_Forward.点击
    调用 TaifunPlayer1.Forward 前进 位置为5000

当 Button_Backward.点击
    调用 TaifunPlayer1.Backward 后退 位置为5000

3. 播放进度显示

显示当前播放位置和总时长:

当 Clock1.计时器
    设置 进度条.最大值为 调用 TaifunPlayer1.GetDuration 获取时长
    设置 进度条.值为 调用 TaifunPlayer1.GetCurrentPosition 获取当前位置

4. 循环播放控制

实现单曲循环或列表循环功能:

当 Button_Loop.点击
    如果 循环模式 = 0 则
        调用 TaifunPlayer1.SetLooping 设置循环为 1  // 循环全部
    否则
        调用 TaifunPlayer1.SetLooping 设置循环为 0  // 不循环

5. 状态检查

根据播放状态更新界面:

当 Clock1.计时器
    如果 调用 TaifunPlayer1.IsPlaying 是否播放中 = true 则
        设置 标签.文本为"正在播放"
    否则
        设置 标签.文本为"已停止"

6. 快速跳转

实现快进和快退功能:

当 Button_SeekForward.点击
    调用 TaifunPlayer1.SeekTo 跳转到当前位置 + 10000

当 Button_SeekBackward.点击
    调用 TaifunPlayer1.SeekTo 跳转到当前位置 - 10000

7. 静音控制

实现静音功能:

当 Toggle_Mute.点击
    调用 TaifunPlayer1.SetMute 设置静音为 取反 静音
    如果 调用 TaifunPlayer1.Muted 静音 = true 则
        显示通知"已静音"
    否则
        显示通知"取消静音"

使用说明

基本使用步骤

  1. 添加扩展:将 TaifunPlayer 扩展添加到项目中
  2. 设置音源:使用 Source 属性或函数设置要播放的音频文件路径
  3. 调用播放:使用 Play 函数开始播放
  4. 控制播放:使用 Pause、Stop、Forward、Backward 等函数控制播放
  5. 获取状态:使用 IsPlaying、GetCurrentPosition、GetDuration 等函数获取播放信息
  6. 设置循环:使用 SetLooping 函数设置循环模式

重要提示

  • 文件路径:确保音频文件路径正确,支持相对路径和完整路径
  • 播放状态:使用 IsPlaying 函数检查播放状态,避免重复调用
  • 位置控制:位置以毫秒为单位,前进和后退时注意不要超出总时长
  • 循环模式:循环模式会影响播放结束后的行为,根据需求设置
  • 静音功能:静音状态下播放器仍然在运行,只是不输出声音

性能优化建议

  1. 及时释放:不再需要播放时使用 Stop 函数释放资源
  2. 状态检查:避免频繁调用状态检查函数
  3. 合理跳转:使用 SeekTo 而不是连续的 Forward/Backward
  4. 循环注意:循环播放可能增加电池消耗

技术说明

播放控制

扩展提供了完整的音频播放控制功能:

  • 播放/暂停:Play 和 Pause 函数
  • 停止:Stop 函数完全重置播放器
  • 位置控制:Forward 和 Backward 精确控制播放位置
  • 跳转功能:SeekTo 直接跳转到指定位置

状态管理

通过属性和函数获取播放器状态:

  • 播放状态:Playing 属性和 IsPlaying 函数
  • 播放位置:Position 属性和 GetCurrentPosition 函数
  • 媒体时长:Duration 属性和 GetDuration 函数
  • 循环状态:IsLooping 属性

循环模式

支持三种循环模式:

  • 0:不循环,播放完成后停止
  • 1:循环全部,播放完成后重新开始
  • 2:循环当前,当前曲目循环播放

版本信息

  • 当前版本:1.0
  • 发布日期:2024年12月29日
  • 兼容性:App Inventor 2
  • 文件大小:383.1 KB

常见问题

Q: 如何播放流媒体?

A: 使用 Source 属性设置流媒体 URL,然后调用 Play 函数。

Q: 如何获取播放进度?

A: 使用 GetCurrentPosition 获取当前位置,GetDuration 获取总时长,计算百分比。

Q: 如何实现快进快退?

A: 使用 Forward 和 Backward 函数,或使用 SeekTo 跳转到指定位置。

Q: 如何设置循环播放?

A: 使用 SetLooping 函数设置循环模式,1=循环全部,2=循环当前。

Q: 如何检查播放状态?

A: 使用 IsPlaying 函数或 Playing 属性检查播放器是否正在播放。

Q: 支持哪些音频格式?

A: 扩展支持 Android 支持的各种音频格式,如 MP3、AAC、WAV 等。

版权信息

本文档基于 Puravida Apps 网站页面整理,原作者为 Taifun。

原始链接:https://puravidaapps.com/player.php

文档翻译和整理:AI2中文网

文档反馈