如何在iOS中使用应用隐藏式字幕设置代替系统隐藏式字幕设置 [英] How use app closedcaption settings instead of system closed caption settings in ios

查看:286
本文介绍了如何在iOS中使用应用隐藏式字幕设置代替系统隐藏式字幕设置的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的应用程序中,我具有隐藏字幕设置,并且我正在使用AVPLayer播放视频/实时内容,而没有显示默认控件.在我的应用程序中,我可以基于该开关状态来启用或禁用诸如开关之类的隐藏式字幕,我将BOOL值存储在userdefaults中.根据用户默认设置,我尝试使用以下api为avplayer启用或禁用cc.

In my application i have closed caption settings and i am using AVPLayer to play video/live content without showing default controls. In my app i can able or disable closed captions like switch based on that switch status i am storing BOOL value in userdefaults. Based on userdefaults i am trying to enable or disable cc for avplayer using below api.

[self.player setClosedCaptionDisplayEnabled:enable];

现在的问题是,即使我在应用程序中关闭了cc,但iPhone系统设置cc启用了该功能,我在avplayer中却获得了cc.如果我关闭系统cc,则我的应用设置会在avplayer中生效.

Now problem is Even if i off cc in app but iphone system settings cc enabled that time i am getting cc in avplayer. If i off system cc then my app settings are effecting in avplayer.

请问您有什么办法可以绕过avplayer的系统设置.如果不能,请提供苹果文件链接作为证明我们无法做到这一点的证明.

Can you please suggest is there any way to bypass system settings for avplayer. If cannot can you please provide apple document link to show as a proof to clinet that we cannot do this like that.

推荐答案

您应设置

self.player.appliesMediaSelectionCriteriaAutomatically = FALSE;

与此相反,它已被弃用.

Instead of this, which is deprecated.

[self.player setClosedCaptionDisplayEnabled:enable];

默认情况下,AVPlayer根据系统偏好设置应用选择条件.要覆盖任何媒体选择组的默认条件,请使用-[AVPlayer setMediaSelectionCriteria:forMediaCharacteristic:].

By default, AVPlayer applies selection criteria based on system preferences. To override the default criteria for any media selection group, use -[AVPlayer setMediaSelectionCriteria:forMediaCharacteristic:].

编辑

将使用此方法:

@method setMediaSelectionCriteria:forMediaCharacteristic:

@method setMediaSelectionCriteria:forMediaCharacteristic:

@abstract对具有指定媒体特征的媒体应用自动选择标准.

@abstract Applies automatic selection criteria for media that has the specified media characteristic.

@param标准AVPlayerMediaSelectionCriteria的实例.

@param criteria An instance of AVPlayerMediaSelectionCriteria.

@param media的特性要应用选择标准的媒体特征.支持的值包括AVMediaCharacteristicAudible,AVMediaCharacteristicLegible和AVMediaCharacteristicVisual.

@param mediaCharacteristic The media characteristic for which the selection criteria are to be applied. Supported values include AVMediaCharacteristicAudible, AVMediaCharacteristicLegible, and AVMediaCharacteristicVisual.

@讨论标准将在以下情况下应用于AVPlayerItem:

a)准备播放

b)通过-[AVPlayerItem selectMediaOption:inMediaSelectionGroup:]在另一个组中进行特定的媒体选择.一组中的自动选择可能会受到另一组中特定选择的影响.

b) Specific media selections are made by -[AVPlayerItem selectMediaOption:inMediaSelectionGroup:] in a different group. The automatic choice in one group may be influenced by a specific selection in another group.

c)底层系统偏好设置发生变化,例如系统语言,可访问性字幕.

在任何组中由-[AVPlayerItem selectMediaOption:inMediaSelectionGroup:]进行的特定选择将覆盖该组中的自动选择,直到收到-[AVPlayerItem selectMediaOptionAutomaticallyInMediaSelectionGroup:].

Specific selections made by -[AVPlayerItem selectMediaOption:inMediaSelectionGroup:] within any group will override automatic selection in that group until -[AVPlayerItem selectMediaOptionAutomaticallyInMediaSelectionGroup:] is received.

  • (无效)setMediaSelectionCriteria :(可空AVPlayerMediaSelectionCriteria *)条件forMediaCharacteristic:(AVMediaCharacteristic)mediaCharacteristicNS_AVAILABLE(10_9,7_0);

相同的文档位于此处

这篇关于如何在iOS中使用应用隐藏式字幕设置代替系统隐藏式字幕设置的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆