CloudflareStreamVideo constructor
CloudflareStreamVideo({
- String? id,
- DateTime? uploaded,
- int? size,
- Watermark? watermark,
- bool? requireSignedURLs,
- Map? meta,
- List<
String> ? allowedOrigins, - int? maxDurationSeconds,
- DateTime? created,
- String? preview,
- DateTime? modified,
- VideoSize? input,
- String? thumbnail,
- String? animatedThumbnail,
- VideoStatus? status,
- double? duration,
- DateTime? uploadExpiry,
- double? thumbnailTimestampPct,
- VideoPlaybackInfo? playback,
- MediaNFT? nft,
- bool? readyToStream,
- String? liveInput,
- String? customAccountSubdomainUrl,
Implementation
CloudflareStreamVideo({
String? id,
DateTime? uploaded,
int? size,
this.watermark,
bool? requireSignedURLs,
this.meta,
List<String>? allowedOrigins,
this.maxDurationSeconds,
DateTime? created,
String? preview,
DateTime? modified,
VideoSize? input,
String? thumbnail,
String? animatedThumbnail,
VideoStatus? status,
double? duration,
this.uploadExpiry,
double? thumbnailTimestampPct,
VideoPlaybackInfo? playback,
this.nft,
bool? readyToStream,
this.liveInput,
String? customAccountSubdomainUrl,
}) : id = id ??= '',
uploaded = uploaded ?? DateTime.now(),
size = size ?? 0,
requireSignedURLs = requireSignedURLs ?? false,
allowedOrigins = allowedOrigins ?? [],
created = created ?? DateTime.now(),
preview = preview ??
(id.isNotEmpty
? (customAccountSubdomainUrl != null
? '$customAccountSubdomainUrl/$id/watch'
: '$watchVideoDeliveryUrl/$id')
: ''),
modified = modified ?? DateTime.now(),
input = input ?? VideoSize(),
thumbnail = thumbnail ??
(id.isNotEmpty
? '${customAccountSubdomainUrl ?? videoDeliveryUrl}/$id/thumbnails/thumbnail.jpg'
: ''),
animatedThumbnail = thumbnail ??
(id.isNotEmpty
? '${customAccountSubdomainUrl ?? videoDeliveryUrl}/$id/thumbnails/thumbnail.gif'
: ''),
status = status ?? VideoStatus(),
duration = duration ?? -1,
thumbnailTimestampPct = thumbnailTimestampPct ?? 0,
playback = playback ??
(id.isNotEmpty
? VideoPlaybackInfo(
hls:
'${customAccountSubdomainUrl ?? videoDeliveryUrl}/$id/manifest/video.m3u8',
dash:
'${customAccountSubdomainUrl ?? videoDeliveryUrl}/$id/manifest/video.mpd',
)
: null),
readyToStream = readyToStream ?? false;