android – 可以从MediaPlayer的流中检索数据吗?

如果我要将某种媒体流式传输到MediaPlayer,有没有什么方法可以在播放之前/之后复制它?例如,如果我要播放YouTube剪辑,是否可以在播放时保存该剪辑?

编辑:
(Ocelot的回答让我意识到这个问题是如何本地化的).

要做的是复制已在进行中的MediaPlayer流(无论是youtube还是音乐流).我希望能够在新流开始和结束时收到通知.到目前为止,我发现的唯一一件事(对于后者)甚至可以远程关闭广播字符串ACTION_AUDIO_BECOMING_NOISY,但这并不能满足我的需要.我有什么办法吗?

解决方法

我没有对此进行测试,看起来有点工作,但这是我会尝试的:

>创建Socket的子类.在此类中,您可以处理所有字节读取,并在本地保存流或使用它执行任何操作
>创建您自己的内容提供商,您可以使用它以您自己的格式将URI传递到您的媒体播放器.示例:mystream://youtube.com/watch?v = 3Rhy37u
>在内容提供程序中,覆盖openFile方法,然后在其中打开自己的套接字,并打开create a ParcelFileDescriptor with it.

现在,只需将新格式的url传递给您的媒体播放器,就应该让所有流都通过您的Socket,您可以在其中保存数据.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...