如何用火猴播放从TMediaPlayer中的URL加载的.mp3文件? [英] How play .mp3 files loaded from a URL in TMediaPlayer with Firemonkey?

查看:16
本文介绍了如何用火猴播放从TMediaPlayer中的URL加载的.mp3文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有办法在Delphi XE7中使用TMediaPlayer和FireMoney从URL播放.mp3文件?此代码不起作用;

MediaPlayer1.FileName := 'http://wwww.some_site.com/some_song.mp3';
MediaPlayer1.Play;

抛出找不到文件的异常,所以我想TMediaPlayer只能处理本地文件,不是吗?如果有任何帮助,我们将不胜感激,非常感谢。

推荐答案

设置TMediaPlayer.FileName属性时,它只是从指定路径的末尾(最后.字符之后和包括的所有内容)提取文件扩展名,定位该扩展名的注册编解码器,然后告诉编解码器按原样加载FileName值。编解码器返回TMedia对象,然后TMediaPlayer根据需要使用该对象来播放/控制媒体。默认情况下,FireMonkey仅为本地文件实现TMedia个类。

您必须实现一个自定义的TMedia派生类来处理流媒体,并实现一个自定义的TCustomMediaCodec派生类(使用TMediaCodecManager.RegisterMediaCodecClass()为自定义文件扩展名注册)来创建您的TMedia类。然后,您可以为TMediaPlayer.FileName分配一个以您的扩展名结尾的URL(实际的URL不会,因此您的编解码器必须在访问URL之前将其去掉),例如:

MediaPlayer1.FileName := 'http://wwww.some_site.com/some_song.mp3.myext';

这篇关于如何用火猴播放从TMediaPlayer中的URL加载的.mp3文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆