Добавление субтитров в реакцию с родным видео - PullRequest
1 голос
/ 21 июня 2019

Я прошел через нативные реквизиты и узнал, что они добавили selectedTextTrack для поддержки субтитров.Но как именно это можно добавить, я не могу написать код.Могу ли я добавить файл (.SRT) в качестве входных данных для субтитров?

 <Video source={{ uri: ''}}
              resizeMode={this.state.resizeMode}
              style={mediaPlayerStyle.player}
              rate={this.state.rate}
              volume={this.state.volume}
              paused={this.state.paused}
              onLoad={this.onLoad}
              onProgress={this.onProgress}
              onEnd={this.onEnd}
              repeat={true}
              selectedTextTrack= {{
            type:  'index',
            value: 0
          }}
          textTracks={[
            {
              index: 0,
              title: "English CC",
              language: "en",
              type: TextTrackType.VTT, // "text/vtt"
              uri: "https://bitdash-a.akamaihd.net/content/sintel/subtitles/subtitles_en.vtt"
            },
            {
              index: 1,
              title: "Spanish Subtitles",
              language: "es",
              type: TextTrackType.SRT, // "application/x-subrip"
              uri: "https://durian.blender.org/wp-content/content/subtitles/sintel_es.srt"
            }
          ]}``
            />

Так что в основном я хочу добавить в зависимости от нажатия на различные видео, если я могу добавить файл .srt, который был бы очень полезен

1 Ответ

0 голосов
/ 26 июня 2019

используйте ответные нативные элементы управления видео, которые визуализируют субтитры поверх видео с использованием JavaScript, который вы можете попробовать.

Чтобы использовать субтитры, вы должны следовать приведенным ниже инструкциям: сначала, если ваш формат субтитровВам следует преобразовать его в JSON (используйте такие сайты, как: http://multiverso.me/srtToJSON/). Затем, когда вы получили массив JSON, вы можете передать этот массив в VideoPlayer, как показано ниже:

<VideoPlayer subtitle={this.props.subtitle}/>

Подзаголовокожидает, что JSON будет иметь следующий формат значения ключа:

[{
   "startTime": "00:00:04,123", //hh:mm:ss,SSS
   "endTime": "00:00:05,001",
   "text": "When you convert your subtitle file, you might need to modify your JSON"
},
{
   "startTime": "00:00:08,008",
   "endTime": "00:00:09,876",
   "text": "Before passing it to the VidePlayer component"
}]
...