【bass】设置与显示音频的播放进度

上代码:

//获取文件流的长度, 单位是字节
function BASS_ChannelGetLength(
  handle: DWORD; {流句柄}
  mode: DWORD    {获取模式; 有两种选择, 但对 HSTREAM 流只能使用 BASS_POS_BYTE}
): QWORD; stdcall; external bassdll;

//获取流的当前指针位置, 单位是字节
function BASS_ChannelGetPosition(
  handle: DWORD; {流句柄}
  mode: DWORD    {获取模式; 有两种选择, 但对 HSTREAM 流只能使用 BASS_POS_BYTE}
): QWORD; stdcall; external bassdll;

//根据流的指针位置来获取时间点, 单位是秒, 是非常精确的浮点数
function BASS_ChannelBytes2Seconds(
  handle: DWORD; {流句柄}
  pos: QWORD     {流的指针位置, 单位是字节, QWORD = Int64}
): Double; stdcall;external bassdll;

//和 BASS_ChannelBytes2Seconds 相反, BASS_ChannelSeconds2Bytes 可以通过时间获取流的指针位置.
function BASS_ChannelSeconds2Bytes(
  handle: DWORD;
  pos: Double
): QWORD; stdcall;external bassdll;

//和 BASS_ChannelGetPosition 相反, BASS_ChannelSetPosition 可以设置流的指针位置.
function BASS_ChannelSetPosition(
  handle: DWORD;
  pos: QWORD;
  mode: DWORD
): BOOL; stdcall; external bassdll;



//要获取音乐的总时间可以:
BASS_ChannelBytes2Seconds(hs, BASS_ChannelGetLength(hs, BASS_POS_BYTE));

//要获取音乐播放的当前时间可以:
BASS_ChannelBytes2Seconds(hs, BASS_ChannelGetPosition(hs, BASS_POS_BYTE));

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hellokandy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值