如何使用应用程序closedcaption设置,而不是系统IOS隐藏式字幕设置(How use ap

2019-10-28 16:54发布

在我的应用程序已经关闭字幕设置和我使用AVPLayer播放视频/直播内容,而不显示默认控件。 在我的应用程序,我可以有能力或禁用隐藏式字幕,如基于对开关状态我在userdefaults存储BOOL值开关。 基于userdefaults我试图启用或avplayer使用下面的API禁用毫升。

[self.player setClosedCaptionDisplayEnabled:enable];

现在的问题是,即使我关闭CC的应用程序,但iphone系统设置CC启用的时候我得到CC在avplayer。 如果我关闭系统CC然后我的应用程序设置影响在avplayer。

你可以请建议有什么办法绕过系统设置avplayer。 如果不能可以请你提供苹果的文档链接显示为证明客户为例,我们不能做到这一点这样的。

Answer 1:

你应该设置

self.player.appliesMediaSelectionCriteriaAutomatically = FALSE;

取而代之的是,它被废弃了。

[self.player setClosedCaptionDisplayEnabled:enable];

默认情况下,AVPlayer将基于系统的喜好选择标准 。 要覆盖任何媒体选择组的默认标准,使用 - [AVPlayer setMediaSelectionCriteria:forMediaCharacteristic:]。

编辑

这种方法将被用于:

@method setMediaSelectionCriteria:forMediaCharacteristic:

@Abstract适用自动选择准则为具有指定媒体特性的介质。

@参数标准AVPlayerMediaSelectionCriteria的实例。

@Param mediaCharacteristic的量,选择标准是要施加的媒体特性。 支持的值包括AVMediaCharacteristicAudible,AVMediaCharacteristicLegible和AVMediaCharacteristicVisual。

@discussion标准将被应用到一个AVPlayerItem时:

一)它是由准备玩

在一个不同的组[::inMediaSelectionGroup AVPlayerItem selectMediaOption] - B)特定媒体选择被由。 一个组中的自动选择可以由另一个组中的特定的选择的影响。

C)底层系统偏好的变化,例如,系统语言,无障碍字幕。

通过由特定的选择 - [AVPlayerItem selectMediaOption:inMediaSelectionGroup:]任何组内将覆盖自动选择该组中,直到 - [AVPlayerItem selectMediaOptionAutomaticallyInMediaSelectionGroup:]被接收到。

  • (空隙)setMediaSelectionCriteria:(可为空AVPlayerMediaSelectionCriteria *)标准forMediaCharacteristic:(AVMediaCharacteristic)mediaCharacteristic NS_AVAILABLE(10_9,7_0);

对同一文档是在这里



文章来源: How use app closedcaption settings instead of system closed caption settings in ios