网站开发需要解决的问题,化妆品网站建设策划书,深圳做营销网站公司简介,网站规划与建设评分标准请先安装 pip install flet, tinytag 组件
tinytag 是用来读取音频文件的信息的
测试用最好找一个有封面的音频的文件, 我是windows电脑,打开预览模式,选中文件时候能够右边显示图片, 如下,我电脑上某个音频文件的封面 import flet as ft
from tinytag import TinyTag
import…请先安装 pip install flet, tinytag 组件
tinytag 是用来读取音频文件的信息的
测试用最好找一个有封面的音频的文件, 我是windows电脑,打开预览模式,选中文件时候能够右边显示图片, 如下,我电脑上某个音频文件的封面 import flet as ft
from tinytag import TinyTag
import base64def main(page: ft.Page):page.window_width 600page.window_height 600# bytes 转 base64def byte_to_base64(data):encoded_data base64.b64encode(data)return encoded_data.decode(utf-8)def ms_to_time(ms):# 毫秒转换为时间格式ms int(ms)minute, second divmod(ms / 1000, 60)minute min(99, minute)return %02d:%02d % (minute, second)# 音频文件路径# 这是我本地的歌曲,请确认自己的文件路径song_url E:/music/从不后悔爱上你-姜育恒.mp3# 首先我们给这个图片载入一个没有图片的默认图片,我这里是设置了默认图片# 我这是放在 项目目录 assets/album.png的 一张图片song_cover ft.Image(width200, height200, srcalbum.png)# 读取音频文件song_info TinyTag.get(song_url, imageTrue)# 获取文件内图片(一般为专辑封面)img song_info.get_image()# 这里注意, img 是一个bytes格式的,所以要把他转成base64位# flet Image控件,有两个属性src和src_base64, 第一个是接收一个图片的路径(本地文件或者网络文件的url)# 这样我们需要把img的格式转换成src_base64用来显示图片 byte_to_base64函数就是这个作用# 这里测试的结果 Image 会优先显示 src_base64的内容if img:song_cover.src_base64 byte_to_base64(img)print(song_info)song_name ft.Text(valuef歌名:{song_info.title})song_artist ft.Text(valuef歌手:{song_info.artist})song_duration ft.Text(valuef歌曲长度:{ms_to_time(song_info.duration*1000)})cont ft.Row([song_name,song_artist,song_duration,song_cover,])page.add(cont)ft.app(targetmain, assets_dirassets)下面是运行界面,我这里只是演示,没有进行美化