2013-10-20 48 views
0

我即将开发涉及交互式音频直播的服务。交互式的意思是主持人可以暂停他的流并根据请求暂停他的流(来自流媒体会话期间)。直播流服务开发

其更像其中什么流经但水能够从仅在与分配给该管被打开每个流控制主持人一时间连接到它的许多小管中的一个来在大管。我对媒体流不了解,我不知道云服务是否提供了这种交互式可编程解决方案。

我是一个程序员,我就可以参与这种互动的逻辑程序。问题是我是新手,以媒体流,没有任何知识如果它的技术和服务器为此目的所使用的各种软件,是否有能引进到媒体流所采用的技术的任何书籍,我试图避免使用Flash,?

客户可以是网络或移动。我不认为我会与客户系统集成有任何问题。我的问题是执行服务器端

回答

0

您正在有效地编程切换器。基本上,你需要能够从一个音频流切换到另一个。使用未压缩的PCM,这非常简单。只要采样率和位深度相等,就可以在任何帧上剪切音频(这是精确的采样)并切换到另一帧。您可以重新采样音频并应用抖动来在不同的采样率和位深度之间进行转换。

复杂的部分是有损编解码器涉及时。在一个类似的项目中,我已经走上了尝试将流连接在一起的道路,而且我可以告诉你几乎不可能,即使像MP3一样简单。 (位储存器使事情变得困难。)另外,听起来好像您将支持各种各样的设备,这意味着您无论如何都无法在编解码器上实现标准化。最好的做法是采取多个流并在系统的混合点解码它们。然后,您可以使用PCM轻松切换流。

在你的系统的输出,你要编码重一些有损编解码器。

由于等待时间,你通常不希望服务器做这个开关。切换应该在编码流的人的桌子上完成,以便他们可以准确地提示它。只需写一些能够完成所有切换和编码的功能,并使用SHOUTcast/Icecast来托管您的流。

+0

如果我理解得非常好,流媒体并不是真正的问题,这个问题更多的是编码/解码和切换。但我是音频处理方面的新手,对于如何去编程切换器,做所有的编码事情等没有任何想法。是否有任何资源,书籍或教程可以让我从媒体/音频世界中走出来处理和编程。 Python/Java编程,最好是python,因为它将被托管在互联网上,所以我想使用它。 –

+0

编码/解码是由应用程序之外的编解码器处理的。如果是我,我只需将其转换为FFMPEG即可。其余的,你只需要从一个流切换到另一个。 – Brad