AVPlayer を使用して、ビデオ ストリームとクローズド キャプション テキストを表示しています。表示されるクローズド キャプション (CC) テキストのフォント、テキストの色、およびその他の属性を変更する方法はありますか? AVPlayer のドキュメントを見たところ、利用可能なコントロールは CC をオンまたはオフにすることだけのようです。
これを達成する方法があれば教えてください。
iOS 6 では、字幕の属性に影響を与えるために使用できる AVTextStyleRule が導入されました。ドキュメントは、クローズド キャプションにも適用されることを示しているように見えますが、そうではないようです。
AVTextStyleRule *rule = [[AVTextStyleRule alloc]initWithTextMarkupAttributes:@{
(id)kCMTextMarkupAttribute_RelativeFontSize : @(200),
(id)kCMTextMarkupAttribute_ForegroundColorARGB : @[ @1, @1, @0, @0 ]}];
playerItem.textStyleRules = @[rule];
字幕の詳細については、HLS での WebVTT の使用に関するこのチュートリアルを参照してください。
API を調べても、これを達成する方法がわかりません。理論的には、キャプションは UILabel のような何らかの UIView 実装で表示する必要があります。この場合、プレーヤーを確立する前に UILabel の外観を変更してみてください。
これが何かをするかどうか私に知らせてください:
[[UILabel appearance] setFontSize:20];
[[UILabel appearance] setColor:[UIColor redColor]];