0

我不是音频方面的专家,所以如果你们中有任何人是,我会很感激你对此的见解。

我的客户有一些以相对较高的比特率存储的 MP3 播客,我希望能够根据用户的凭据以“不同”的比特率向她的用户提供这些文件。(例如,如果您是经过身份验证的用户,您可能会获得完整的、未更改的流,但如果您不是,您将获得较低比特率的版本——或者至少是故意调整的较低质量的比原来的版本。)

似乎有两种选择:在源处下采样和在客户端下采样。在这种情况下,当然知道源流将以高比特率到达客户端(并且对此有一些考虑,我意识到),我宁愿以某种方式改变客户端的流,而不是在服务器上,有几个原因。

在运行时(甚至使用第三方库)单独使用 Flash Player 和 ActionScript 是否可以做到这一点,或者像这样的场景是否需要基于服务器的解决方案?如果是后者,Flash Media Server 可以专门处理这个需求吗?同样,如果可以,我想避免使用 FMS,因为她并没有真正的预算,但如果这是唯一的选择,而且确实是一个选择,我愿意考虑。

提前致谢...


注意:请不要质疑请求的合理性——我意识到这听起来可能有点奇怪,但要求就是这样。鉴于此,为了回答问题,您可以忽略比特的来源和传递路径;我真正想要的是解释 Flash 客户端是否(以及如何)可以在运行时对 MP3 音频流进行下采样,而不管音频是通过网络连接到达还是直接从磁盘读取。非常感谢!

4

2 回答 2

0

出于几个原因,我宁愿以某种方式在客户端而不是在服务器上更改流。

请说明原因,因为在客户端重新采样通常被认为是疯狂的:浪费带宽将更高质量的版本发送给听不见的用户,并冒着让精明的用户翻录更高质量的流的风险。网络。

在任何情况下,Flash Player 都不会为您提供处理音频的工具,只能播放它。

您不需要 FMS 在服务器端处理音频。您可以有一个服务器端脚本来加载新上传的播客并将它们保存为低比特率文件,这些文件可以通过普通的 Web 服务器提供给低端用户。对于 Python,请参见例如。PyMedia,py-lame;甚至使用 lame 或 ffmpeg 或命令行中的其他东西的 shell 脚本应该很容易实现。

于 2009-02-11T01:48:19.323 回答
0

如果存储非常宝贵,您是否研究过 AAC 音频?我相信桌面浏览器上的 Flash 9 和 10 会播放它。以我的经验,AAC 只占用同等 MP3 的一半大小(即 80kbps AAC 听起来与 160kbps MP3 相同)。

至于播放质量,如果我没记错的话,Flash 编辑器的“发布设置”部分中有音频播放设置。我不确定是否可以在运行时更改播放比特率。

于 2009-08-02T10:26:42.793 回答