У меня возникают некоторые проблемы с последней версией'act-native-video '(4.0.1), обновленной с версии 3.2.1
После обновления все нормально работает на Android, но когдаприходит в iOS каждый раз, когда базовый AVPlayer должен установить источник данного носителя, это вызывает сбой.Когда проигрыватель инициализируется, он вызывает [RCTVideo setSrc] , который вызывает [RCTVideo setFilter] , который затем падает на [AVPlayerItem _setVideoCompositionFrameDuration] :
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[AVPlayerItem setVideoComposition:] video composition must have a positive renderSize'
*** First throw call stack:
(
0 CoreFoundation 0x000000010b5e61bb __exceptionPreprocess + 331
1 libobjc.A.dylib 0x00000001096d0735 objc_exception_throw + 48
2 AVFoundation 0x000000010a0be357 -[AVPlayerItem _setVideoCompositionFrameDuration:] + 0
3 news_app 0x00000001088764ea -[RCTVideo setFilter:] + 330
4 news_app 0x000000010886ca13 __19-[RCTVideo setSrc:]_block_invoke_2 + 179
5 news_app 0x000000010886e35a -[RCTVideo playerItemPrepareText:assetOptions:withCallback:] + 3450
6 news_app 0x000000010886e88f -[RCTVideo playerItemForSource:withCallback:] + 1103
7 news_app 0x000000010886c92f __19-[RCTVideo setSrc:]_block_invoke + 175
8 libdispatch.dylib 0x000000010f8e4595 _dispatch_call_block_and_release + 12
9 libdispatch.dylib 0x000000010f8e5602 _dispatch_client_callout + 8
10 libdispatch.dylib 0x000000010f8f299a _dispatch_main_queue_callback_4CF + 1541
11 CoreFoundation 0x000000010b54b3e9 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 9
12 CoreFoundation 0x000000010b545a76 __CFRunLoopRun + 2342
13 CoreFoundation 0x000000010b544e11 CFRunLoopRunSpecific + 625
14 GraphicsServices 0x00000001118451dd GSEventRunModal + 62
15 UIKitCore 0x0000000116d4a81d UIApplicationMain + 140
16 news_app 0x0000000108524ce0 main + 112
17 libdyld.dylib
Я устанавливаю Фильтр Опора для iOS, как описано в документации .Я не настолько опытен в разработке под iOS и Objective-C, кто-нибудь еще видел эту ошибку раньше, когда использовал новейшую версию response-native-video ?
Моя реализация компонента реакциивыглядит так:
<VideoPlayer
ref={(ref) => { this.player = ref }}
source={{ uri: [someURL] }}
allowsExternalPlayback={allowsExternalPlayback}
audioOnly={audioOnly}
bufferConfig={bufferConfig}
ignoreSilentSwitch={ignoreSilentSwitch}
muted={muted}
paused={paused}
playInBackground={playInBackground}
playWhenInactive={playWhenInactive}
progressUpdateInterval={progressUpdateInterval}
rate={rate}
repeat={loop}
resizeMode={resizeMode}
selectedAudioTrack={selectedAudioTrack}
selectedTextTrack={selectedTextTrack}
stereoPan={stereoPan}
textTracks={textTracks}
useTextureView={useTextureView}
volume={volume}
style={fullScreen ? styles.fullScreen : inline}
onAudioBecomingNoisy={() => this.onAudioBecomingNoisy()}
onLoadStart={() => this.onLoadStart()}
onLoad={e => this.onLoad(e)}
onProgress={e => this.progress(e)}
onEnd={() => this.onEnd()}
onError={e => this.onError(e)}
onTimedMetadata={e => onTimedMetadata(e)}
filter={FilterType.NONE}
/>