subtitle_wrapper_package
Features
Subtitle playback for the 2 most widely used subtitle formats are supported currently which can be dynamically updated during playback from a url of content string. As well as basic styling of the subtitle text item.
The package is nearly completely unit tested and widget tests are in progress.
Function | Description | Implemented |
---|---|---|
Parse WebVTT | Parsing of WebVtt subtitles. | ✔ |
Parse SubRip (.srt) | Parsing of SubRip subtitles. | ✔ |
Remote loading utf8 encoded subtitles | The parsing of subtitle files with the utf8 encoding from an url. | ✔ |
Remote loading latin1 encoded subtitles | The parsing of subtitle files with the latin1 encoding from an url. | ✔ |
Dynamic updating of subtitle | Update subtitle content during playback. | ✔ |
Standard subtitle styling | Standard styling of subtitle items. | ✔ |
Advance subtitle styling | Advance styling of subtitle items. Like custom fonts. | ✔ |
Installation
The basic setup of the package is really straight forward, create a instance of SubtitleController
with a subtitleUrl
or subtitlesContent
depending if your resource is remote or local.
Unfortunately currently its required to specify the subtitle type so webvtt
or srt
.
After this you need to wrap your video player with the SubTitleWrapper
and add the SubtitleController
and videoPlayerController
to the SubTitleWrapper
. That's it :tada:
final SubtitleController subtitleController = SubtitleController(
subtitleUrl: "https://pastebin.com/raw/ZWWAL7fK",
subtitleType: SubtitleType.webvtt,
);
SubtitleWrapper(
videoPlayerController: videoPlayerController,
subtitleController: subtitleController,
subtitleStyle: SubtitleStyle(
textColor: Colors.white,
hasBorder: true,
),
videoChild: Chewie(
controller: chewieController,
),
),
Example
Demonstrates how to use the subtitle_wrapper_package plugin.
See the example documentation for more information.
Changelog
See CHANGELOG.md.
Contributing
Feel free to contribute by opening issues and/or pull requests. Your feedback is very welcome!
License
MIT License
Copyright (c) 2019
Joran Dob
Libraries
- bloc/bloc
- bloc/subtitle/subtitle_bloc
- data/constants/constants
- data/constants/view_keys
- data/data
- data/models/models
- data/models/style/subtitle_border_style
- data/models/style/subtitle_position
- data/models/style/subtitle_style
- data/models/subtitle
- data/models/subtitles
- data/repository/repositories
- data/repository/subtitle_repository
- deprecated_subtitle_wrapper
- subtitle_controller
- subtitle_text_view
- subtitle_wrapper
- subtitle_wrapper_package