subtitle_wrapper_package 3.0.0-dev.1 subtitle_wrapper_package: ^3.0.0-dev.1 copied to clipboard
A Subtitle Wrapper package, this subtitle wrapper package displays subtitles for a video player.
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 🎉
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]