gpt4 book ai didi

ios - 如何在iOS中使用应用隐藏式字幕设置代替系统隐藏式字幕设置

转载 作者:行者123 更新时间:2023-12-01 22:17:00 27 4
gpt4 key购买 nike

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

[self.player setClosedCaptionDisplayEnabled:enable];

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

您能否建议是否有任何方法可以绕过avplayer的系统设置。如果不能,请您提供苹果文件链接作为我们无法做到这一点的证明。

最佳答案

你应该设置

self.player.appliesMediaSelectionCriteriaAutomatically = FALSE;

取而代之的是不推荐使用的方法。
[self.player setClosedCaptionDisplayEnabled:enable];

默认情况下,AVPlayer基于系统首选项应用选择条件。要覆盖任何媒体选择组的默认条件,请使用-[AVPlayer setMediaSelectionCriteria:forMediaCharacteristic:]。

编辑

将使用此方法:

@method setMediaSelectionCriteria:forMediaCharacteristic:

@abstract将自动选择标准应用于具有指定介质特征的介质。

@参数标准
AVPlayerMediaSelectionCriteria的实例。

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

@discussion条件将在以下情况下应用于AVPlayerItem:

a)准备玩

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

c)底层系统偏好设置发生更改,例如系统语言,可访问性字幕。

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


  • (void)setMediaSelectionCriteria :(可空AVPlayerMediaSelectionCriteria *)条件
    forMediaCharacteristic:(AVMediaCharacteristic)mediaCharacteristic
    NS_AVAILABLE(10_9,7_0);


  • 相同的文档是 here

    关于ios - 如何在iOS中使用应用隐藏式字幕设置代替系统隐藏式字幕设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51551655/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com