

# IVS 广播 SDK \| 低延迟直播功能
<a name="broadcast"></a>

Amazon Interactive Video Services（IVS）低延迟流式传输广播 SDK 适用于使用 Amazon IVS 构建应用程序的开发人员。此开发工具包旨在利用 Amazon IVS 架构，并将实现 Amazon IVS 的持续改进和新功能。作为本机广播开发工具包，它旨在最大限度地减少对应用程序以及用户有权访问应用程序所在设备的性能影响。

您的应用程序可以利用 Amazon IVS 广播开发工具包的主要功能：
+ **高质量的流式传输** - 广播开发工具包支持高质量的流式传输。从您的相机捕获视频，并以高达 1080p 的质量对其进行编码，以获得高质量的观看体验。
+ **自动比特率调整** - 智能手机用户是移动的，因此他们的网络条件会在整个广播过程中发生变化。Amazon IVS 广播开发工具包会自动调整视频比特率，以适应不断变化的网络条件。
+ **支持纵向和横向** - 无论您的用户如何持有其设备，图像都会显示为顶部朝上并正确缩放。广播 SDK 支持纵向和横向画布大小。当用户从配置的方向旋转设备时，它会自动管理宽高比。
+ **安全流式传输** - 使用 TLS 对用户的广播进行加密，因此他们可以保护其流的安全。
+ **外部音频设备** - Amazon IVS 广播开发工具包支持音频插孔、USB 和蓝牙 SCO 外接麦克风。

## 平台要求
<a name="broadcast-platform-requirements"></a>

### 本机平台
<a name="broadcast-native-platforms"></a>


| 平台 | 受支持的版本 | 
| --- | --- | 
| Android | 6.0 和更高版本 | 
| iOS | 14\+<br /> 如果广播对于您的应用程序至关重要，请使用 [UIRequiredDeviceCapabilities](https://developer.apple.com/documentation/bundleresources/information_property_list/uirequireddevicecapabilities)，指定 Metal 作为从 Apple 应用商店下载应用的要求。 | 

IVS 至少支持 4 个主要 iOS 版本和 6 个主要 Android 版本。我们当前版本的支持可能会超出这些最低限度。如果主要版本不再受支持，将至少提前 3 个月通过 SDK 发布说明通知客户。

### 桌面浏览器
<a name="browser-desktop"></a>


| 浏览器 | 支持的平台 | 受支持的版本 | 
| --- | --- | --- | 
| Chrome | Windows、macOS | 两个主要版本（当前版本和最新版本） | 
| Firefox | Windows、macOS | 两个主要版本（当前版本和最新版本） | 
| 边缘 | （Windows 8.1 和更高版本） | 两个主要版本（当前版本和最新版本）<br />不包括 Edge Legacy | 
| Safari | macOS | 两个主要版本（当前版本和最新版本） | 

### 移动浏览器
<a name="browser-mobile"></a>


| 浏览器 | 受支持的版本 | 
| --- | --- | 
| iOS 版 Chrome、iOS 版 Safari | 两个主要版本（当前版本和最新版本） | 
| Chrome for iPadOS，Safari for iPadOS | 两个主要版本（当前版本和最新版本） | 
| Android 版 Chrome | 两个主要版本（当前版本和最新版本） | 

## Webviews
<a name="broadcast-webviews"></a>

Web 广播 SDK 不支持 Webviews 或 Weblike 环境（电视、控制台等）。有关移动实施，请参阅适用于 [Android](broadcast-android.md) 和 [iOS](broadcast-ios.md) 的 Low-Latency Streaming Broadcast SDK Guide。

## 所需设备访问
<a name="broadcast-device-access"></a>

广播开发工具包需要访问设备的摄像头和麦克风，包括设备内置的摄像头和麦克风以及通过蓝牙、USB 或音频插孔连接的摄像头和麦克风。

## 支持
<a name="broadcast-support"></a>

如果您的视频流出现广播错误或其他问题，请通过广播 API 确定唯一的播放会话标识符。


| 对于此 Amazon IVS 广播开发工具包： | 使用： | 
| --- | --- | 
| Android | `BroadcastSession` 上的 `getSessionId` 函数 | 
| iOS | `sessionId` 的属性 `IVSBroadcastSession` | 
| Web | `getSessionId` 函数 | 

与 Amazon Support 共享此广播会话标识符。利用它可获得有助于解决问题的信息。

**注意：**广播开发工具包在不断改进。请参阅 [Amazon IVS 发布说明](release-notes.md)了解可用版本和已修复问题。如果合适，请在联系支持部门之前更新您的广播开发工具包版本，看看这是否解决了您的问题。

### 版本控制
<a name="broadcast-support-versioning"></a>

Amazon IVS 广播开发工具包使用[语义化版本](https://semver.org/)。

在此讨论中，假设：
+ 最新版本是 4.1.3。
+ 先前主要版本的最新版本为 3.2.4。
+ 版本 1.x 最新版本是 1.5.6。

最新版本的次要版本已添加向后兼容的新功能。在本例中，版本 4.2.0 已添加新功能。

最新版本的补丁版本已添加向后兼容、次要错误修复。在这里，版本 4.1.4 已添加次要错误修复。

向后兼容、主要错误修复处理方式不同；将在以下几个版本中添加：
+ 最新版本补丁版本。在本例中是版本 4.1.4。
+ 先前次要版本的补丁版本。在本例中是版本 3.2.5。
+ 最新版本 1.x 版本的补丁版本。在本例中是版本 1.5.7。

主要错误修复由 Amazon IVS 产品团队定义。典型示例包括关键安全更新和客户所需的其他选定修复。

**注意：**在上面的例子中，发布的版本递增但不会跳过任何数字（例如，从 4.1.3 到 4.1.4）。实际上，一个或多个补丁编号可能保留在内部而不发布，因此发布版本可以从 4.1.3 增加到 4.1.6。