我需要通过转换一堆较小的wav文件并将它们串在一起来动态创建mp3。我使用一个名为Sox的开源命令行工具来创建mp3。 http://sox.sourceforge.net/我正在使用Amazon aws,并且可以使用s3在上载所有wav文件时存储它们,并使它们可用于流式传输。我要实现的方式是:
上载:
只需将wav文件放在s3上
创建mp3:
检查每个wav文件是否存在于Web服务器上,如果不存在,请下载该文件。
然后在Web服务器上进行媒体处理并将mp3发送到客户端。
将mp3存储在s3上,以供以后检索。
我的问题是,是否需要做一些特殊的事情才能有效地实现这一目标。我会死胡同吗?
最佳答案
我已经建立了可以做到这一点的东西。它是Radio Reddit Media Transcoder,并且是开源的。
https://bitbucket.org/radioreddit/radio-reddit-media-transcoder
S3功能尚未内置,但我会尽快添加。同时,可以根据您的需要对其进行一些修改。基本上,此服务器以任何格式读取您的原始媒体文件,通过外部编解码器(例如FFmpeg或Sox)运行它们,并将输出流式传输到客户端。
此方法对于MP3效果很好,但是您需要注意不能直接从编码器流式传输的格式。首先需要将MP4容器中的所有内容写入磁盘,因为在写入文件的其余部分之后,首先需要写入一些文件。我正计划采用一种模式,在这些模式下,先将这些文件写入暂存空间,然后再发送给客户端,但这尚未完成。无论如何,对于MP3,您都可以原样使用它。
关于audio - 如何实现动态创建mp3?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28970760/