我們使用AVPlayer來顯示視頻流和隱藏字幕文本。有什麼方法可以修改隱藏式字幕(CC)文本的字體,文本顏色和其他屬性?我查看了AVPlayer文檔,似乎唯一可用的控件是打開或關閉CC。修改iOS中隱藏字幕的字體,textColor
請讓我知道是否有辦法實現這一點。
我們使用AVPlayer來顯示視頻流和隱藏字幕文本。有什麼方法可以修改隱藏式字幕(CC)文本的字體,文本顏色和其他屬性?我查看了AVPlayer文檔,似乎唯一可用的控件是打開或關閉CC。修改iOS中隱藏字幕的字體,textColor
請讓我知道是否有辦法實現這一點。
從通過API查看我沒有看到一種方法來實現這一點。理論上,字幕應該顯示在某種像UILabel這樣的UIView實現中。如果是這種情況,您可以在建立播放器之前嘗試修改UILabel的外觀。
讓我知道,如果這沒有做任何事情:
[[UILabel appearance] setFontSize:20];
[[UILabel appearance] setColor:[UIColor redColor]];
iOS 6中推出AVTextStyleRule可用於影響字幕的屬性。文件似乎表明它們也適用於隱藏式字幕,但似乎並非如此。
AVTextStyleRule *rule = [[AVTextStyleRule alloc]initWithTextMarkupAttributes:@{
(id)kCMTextMarkupAttribute_RelativeFontSize : @(200),
(id)kCMTextMarkupAttribute_ForegroundColorARGB : @[ @1, @1, @0, @0 ]}];
playerItem.textStyleRules = @[rule];
見this tutorial on using WebVTT in HLS的詳細信息,字幕
有人試過嗎? –
我試過這個;它不適用於CEA 608/708隱藏字幕,但它確實適用於字幕。 –
如何提取CC文本並顯示給一個標籤嗎?我們通過HTTP直播流獲取我們的流。 –
您不會提取CC文本並創建自己的標籤。由於cc文本是由AVPlayer封裝的,因此我們只能設置全局外觀屬性來影響文本的呈現方式(如果AVPlayer完全使用UILabel)。我修改了一下代碼,然後將這些代碼粘貼到初始化播放器的位置,並查看它是否會影響CC文本。 –
不,CC文本未呈現在標籤中。 –