2012-11-05 4 views
0

AVPlayer 기반 비디오 플레이어에 자막 지원을 추가했습니다. [self.player.currentItem.asset mediaSelectionGroupForMediaCharacteristic : AVMediaCharacteristicLegible]에 의해 생성 된 AVMediaSelectionGroup에서 mediaType "sbtl"의 AVMediaSelectionOption 객체를 검색 할 수 있으며, 라이브 스트림에 자막을 표시하기 위해 적절한 AVMediaSelectionOption을 선택할 수 있습니다. 이것은 모두 정상적으로 작동합니다.iOS 5에서 자막을 비활성화하면 마지막으로 표시된 자막 텍스트가 화면에 남습니다.

문제가있는 곳은 iOS 5.01 및 iOS 5.1에서 AVMediaSelectionOption의 선택을 취소하는 것입니다.

iOS 6을 실행하는 기기에서 [self.player.currentItem selectMediaOption : nil inMediaSelectionGroup : self.subtitleSelectionGroup]을 사용하여 자막을 사용 중지 할 수 있으며 예상대로 사라집니다. 그러나 iOS 5.01 및 iOS 5.1에서는 자막이 업데이트되지 않지만 플레이어가 닫히거나 전원 버튼을 누르거나 앱이 배경으로 이동하기 전까지는 마지막으로 표시된 텍스트가 동영상 플레이어에 남아 있습니다.

우리는 강제 전용 자막을 필터링하여 문제가 있다고 생각했지만 아무 소용이 없었습니다. 이것은 OS의 버그입니까? 스트리밍 비디오에 문제가 있습니까?

제공 할 수있는 도움과 도움에 감사드립니다.

+0

"큰 녀석"처럼 작동하는 것 같습니다. 드물게 "자막"텍스트 줄 (종종 부분적으로 만 완성 됨)이 TV에서 광고 중단을 통해 지속되는 것을 보는 것은 흔하지 않습니다. –

답변

1

iOS5에서 도움이되는지는 모르지만 비디오 스트림에는 자막 옵션과 각 언어에 대한 강제 자막 옵션이 있습니다. 강제 자막 옵션으로 변경하면 자막이 표시되지 않습니다 (자막이있는 경우에만). 이렇게 동영상을 만들고 자막이없는 강제 자막을 사용하면 강제 자막을 선택하여 iOS5에서 트릭을 만들 수 있습니다. 이 주제에 대한 가능한 많은 정보를 원하시면이 없기 때문에 이것이 당신에 대한 모든 사용이 될 수

<__NSArrayM 0x2006d590>(
    <AVMediaSelectionTrackOption: 0x200297a0, mediaType = sbtl, locale = en, title = (null), option ID = 3, associated forced-only option = <AVMediaSelectionTrackOption: 0x2006d600>>, 
    <AVMediaSelectionTrackOption: 0x2006d600, mediaType = sbtl, locale = en, title = (null), option ID = 3, default = YES, forced subtitles only>, 
    <AVMediaSelectionTrackOption: 0x20057210, mediaType = sbtl, locale = zh, title = (null), option ID = 4, associated forced-only option = <AVMediaSelectionTrackOption: 0x20044bc0>>, 
    <AVMediaSelectionTrackOption: 0x20044bc0, mediaType = sbtl, locale = zh, title = (null), option ID = 4, forced subtitles only>, 
    <AVMediaSelectionTrackOption: 0x2002d450, mediaType = sbtl, locale = ce, title = (null), option ID = 5, associated forced-only option = <AVMediaSelectionTrackOption: 0x20028660>>, 
    <AVMediaSelectionTrackOption: 0x20028660, mediaType = sbtl, locale = ce, title = (null), option ID = 5, forced subtitles only> 
    ) 

희망 : 여기

내 선택 그룹 옵션 배열과 같은 모양을의 인쇄 개체입니다.