【问题标题】:Unable to play DRM Video with React Native Video DRM Fork in Android无法在 Android 中使用 React Native Video DRM Fork 播放 DRM 视频
【发布时间】:2020-08-03 18:08:11
【问题描述】:

我正在尝试使用React Native DRM Fork 播放任何 DRM 流。不幸的是,当我在 Android 中使用以下代码 sn-p 时,出现以下错误:-

代码 sn-p:-

<Video
  source={{uri: 'https://storage.googleapis.com/wvmedia/cenc/h264/tears/tears.mpd'}}
  drm={{
     type: 'widevine',
     licenseServer:
          'https://proxy.uat.widevine.com/proxy?video_id=efd045b1eb61888a&provider=widevine_test',
  }}
  style={styles.video}
/>

Android Logcat 中的错误:-

E/MediaPlayerNative: error (1, -2147483648)
E/MediaPlayer: Error (1,-2147483648)

我也尝试了以下代码,结果相同:-

<Video
  source={{ uri: 'https://storage.googleapis.com/wvmedia/cenc/h264/tears/tears.mpd',
   drm: {
     type: 'widevine',
     licenseServer: 'https://proxy.uat.widevine.com/proxy?video_id=efd045b1eb61888a&provider=widevine_test', 
  }}
  style={styles.video}
/>

任何非 DRM 视频都可以正常播放 :)

【问题讨论】:

    标签: react-native drm react-native-video android-drm


    【解决方案1】:

    调试 DRM 和视频可能会很棘手,因为错误代码并不总是如您所见非常有用。如果访问该视频允许这样做,那么在其他播放器中尝试该视频通常也很有用 - 例如例如,如果观看视频不需要用户登录。

    对于上面的manifest和上面的LA URL组合,当这样测试时,其他播放器也产生了错误。一些容易测试的包括:

    您还可以在开发者控制台中查看错误报告,这些通常会提供更多信息。

    对于您的情况,从上面的测试看来,DRM 许可证响应表明存在一些限制 - 例如,这些限制可能与设备的安全级别有关。如果您有其他可以测试的内容,您也可以通过确认它在上述内容和您的代码上都有效来验证这一点。

    【讨论】:

      【解决方案2】:

      这是由于 exoplayer 没有正确链接,在我的情况下,我必须手动链接 exoplayer,然后在 react-native.config.js 中添加以下 json

      module.exports = {
        dependencies: {
          'react-native-video': {
            platforms: {
              android: null,
            },
          },
        },
      };
      
      

      【讨论】:

        猜你喜欢
        • 2019-01-28
        • 1970-01-01
        • 2021-12-01
        • 2019-12-16
        • 2020-03-29
        • 1970-01-01
        • 2020-10-05
        • 2017-03-30
        • 2021-07-05
        相关资源
        最近更新 更多