StreamVideoThumbnailImage class

A custom ImageProvider class for loading video thumbnails as images in Flutter.

Use this class to load a video thumbnail as an image. It takes a video URL or path and generates a thumbnail image from the video. The generated thumbnail image can be used with the Image widget.

{@tool snippet} Load a video thumbnail from a URL:

Image(
  image: StreamVideoThumbnailImage(
    video: 'https://example.com/video.mp4',
    maxHeight: 200,
    maxWidth: 200,
  ),
)

{@end-tool}

{@tool snippet} Load a video thumbnail from a local file path:

Image(
  image: StreamVideoThumbnailImage(
    video: '/path/to/video.mp4',
    maxHeight: 200,
    maxWidth: 200,
  ),
)

{@end-tool}

Inheritance

Constructors

StreamVideoThumbnailImage({required String video, Map<String, String>? headers, ImageFormat imageFormat = ImageFormat.PNG, int maxHeight = 0, int maxWidth = 0, int timeMs = 0, int quality = 10, double scale = 1.0})
A custom ImageProvider class for loading video thumbnails as images in Flutter.
const

Properties

hashCode int
The hash code for this object.
no setteroverride
headers Map<String, String>?
Additional headers to include in the HTTP request when fetching the video.
final
imageFormat → ImageFormat
The format of the generated thumbnail image.
final
maxHeight int
The maximum height of the generated thumbnail image.
final
maxWidth int
The maximum width of the generated thumbnail image.
final
quality int
The quality of the generated thumbnail image.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
scale double
The scale to place in the ImageInfo object of the image.
final
timeMs int
The timestamp in milliseconds at which to generate the thumbnail.
final
video String
The URL or path of the video from which to generate the thumbnail.
final

Methods

createStream(ImageConfiguration configuration) ImageStream
Called by resolve to create the ImageStream it returns.
inherited
evict({ImageCache? cache, ImageConfiguration configuration = ImageConfiguration.empty}) Future<bool>
Evicts an entry from the image cache.
inherited
loadBuffer(StreamVideoThumbnailImage key, DecoderBufferCallback decode) ImageStreamCompleter
Converts a key into an ImageStreamCompleter, and begins fetching the image.
override
loadImage(StreamVideoThumbnailImage key, ImageDecoderCallback decode) ImageStreamCompleter
Converts a key into an ImageStreamCompleter, and begins fetching the image.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
obtainCacheStatus({required ImageConfiguration configuration, ImageErrorListener? handleError}) Future<ImageCacheStatus?>
Returns the cache location for the key that this ImageProvider creates.
inherited
obtainKey(ImageConfiguration configuration) Future<StreamVideoThumbnailImage>
Converts an ImageProvider's settings plus an ImageConfiguration to a key that describes the precise image to load.
override
resolve(ImageConfiguration configuration) ImageStream
Resolves this image provider using the given configuration, returning an ImageStream.
inherited
resolveStreamForKey(ImageConfiguration configuration, ImageStream stream, StreamVideoThumbnailImage key, ImageErrorListener handleError) → void
Called by resolve with the key returned by obtainKey.
inherited
toString() String
A string representation of this object.
override

Operators

operator ==(Object other) bool
The equality operator.
override