1

Android RTSP 流协议支持多少个音频编解码器。我正在研究 Android 音频 RTSP 流,很容易实现 android RTSP 流客户端。

import android.media.MediaPlayer;
MediaPlayer player = new MediaPlayer();
player.setDataSource(RTSP_URL);
player.prepare();
player.start();

但在 Android API 概述/参考和 RFC 规范中都没有指定音频语音/媒体编解码器支持列表。

谁能帮忙分享一下它的背景?

4

1 回答 1

1

每个设备支持的编解码器可能不同。例如,某些设备可能决定只支持专利/免版税编解码器(不知道,但作为一个例子......)。

您可以使用 AudioCodec 的 getCodecs() 方法以编程方式找到特定设备支持的编解码器列表:

public static AudioCodec[] getCodecs ()

SDP(会话描述协议)的目的之一是允许连接的任一端从它们都支持的集合中协商要使用的编解码器。

Android 文档解释了编解码器如何“公开”给应用程序开发人员:

Stagefright 服务解析 system/etc/media_codecs.xml 和 system/etc/media_profiles.xml 以通过 android.media.MediaCodecList 和 android.media.CamcorderProfile 类向应用程序开发人员公开设备上支持的编解码器和配置文件。

这描述的是向设备添加编解码器的某人(例如设备供应商)使用该方法使该编解码器可供在设备上开发应用程序的人(例如常规应用程序开发人员)使用。

以这种方式添加编解码器后,将在调用上述 getCodecs() 方法时返回它们。

于 2015-06-02T20:44:25.363 回答