mirror of
https://github.com/gabehf/Tdarr_Plugins.git
synced 2026-03-15 10:15:54 -07:00
Init flow plugins
This commit is contained in:
parent
92f97a8c81
commit
7521d7eef0
67 changed files with 4765 additions and 0 deletions
197
FlowPluginsTs/FlowHelpers/1.0.0/interfaces/synced/IFileObject.ts
Normal file
197
FlowPluginsTs/FlowHelpers/1.0.0/interfaces/synced/IFileObject.ts
Normal file
|
|
@ -0,0 +1,197 @@
|
|||
export interface IstatSync { // tlint-disable-line statSync
|
||||
mtimeMs: number,
|
||||
ctimeMs: number,
|
||||
|
||||
ctime?: '',
|
||||
mtime?: '',
|
||||
atime?: '',
|
||||
}
|
||||
|
||||
export interface Itags {
|
||||
language?: string,
|
||||
title?: string,
|
||||
[key:string]: string | undefined,
|
||||
}
|
||||
export interface Istreams {
|
||||
codec_name: string;
|
||||
codec_type?: string,
|
||||
bit_rate?: number,
|
||||
channels?: number,
|
||||
tags?: Itags,
|
||||
avg_frame_rate?: string,
|
||||
nb_frames?: string,
|
||||
|
||||
duration?: number;
|
||||
width?: number,
|
||||
height?: number,
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any,@typescript-eslint/explicit-module-boundary-types
|
||||
[index: string]: any
|
||||
}
|
||||
|
||||
export interface Iformat {
|
||||
'filename'?: string,
|
||||
'nb_streams'?: number,
|
||||
'nb_programs'?: number,
|
||||
'format_name'?: string,
|
||||
'format_long_name'?: string,
|
||||
'start_time'?: string,
|
||||
'duration'?: string,
|
||||
'size'?: string,
|
||||
'bit_rate'?: string,
|
||||
'probe_score'?: number,
|
||||
[key:string]: string | number | undefined
|
||||
}
|
||||
|
||||
export interface IffProbeData {
|
||||
streams?: Istreams[]
|
||||
format?: Iformat
|
||||
}
|
||||
|
||||
export interface Imeta {
|
||||
TrackDuration?: number,
|
||||
MediaDuration?: number,
|
||||
'SourceFile'?: string,
|
||||
'errors'?: [],
|
||||
'Duration'?: number,
|
||||
'ExifToolVersion'?: number,
|
||||
'FileName'?: string,
|
||||
'Directory'?: string,
|
||||
'FileSize'?: string,
|
||||
'FileModifyDate'?: {
|
||||
'year'?: number,
|
||||
'month'?: number,
|
||||
'day'?: number,
|
||||
'hour'?: number,
|
||||
'minute'?: number,
|
||||
'second'?: number,
|
||||
'millisecond'?: number,
|
||||
'tzoffsetMinutes'?: number,
|
||||
'rawValue'?: string,
|
||||
},
|
||||
'FileAccessDate'?: {
|
||||
'year'?: number,
|
||||
'month'?: number,
|
||||
'day'?: number,
|
||||
'hour'?: number,
|
||||
'minute'?: number,
|
||||
'second'?: number,
|
||||
'millisecond'?: number,
|
||||
'tzoffsetMinutes'?: number,
|
||||
'rawValue'?: string,
|
||||
},
|
||||
'FileCreateDate'?: {
|
||||
'year'?: number,
|
||||
'month'?: number,
|
||||
'day'?: number,
|
||||
'hour'?: number,
|
||||
'minute'?: number,
|
||||
'second'?: number,
|
||||
'millisecond'?: number,
|
||||
'tzoffsetMinutes'?: number,
|
||||
'rawValue'?: string,
|
||||
},
|
||||
'FilePermissions'?: string,
|
||||
'FileType'?: string,
|
||||
'FileTypeExtension'?: string,
|
||||
'MIMEType'?: string,
|
||||
'EBMLVersion'?: 1,
|
||||
'EBMLReadVersion'?: 1,
|
||||
'DocType'?: string,
|
||||
'DocTypeVersion'?: 4,
|
||||
'DocTypeReadVersion'?: 2,
|
||||
'TimecodeScale'?: string,
|
||||
'MuxingApp'?: string,
|
||||
'WritingApp'?: string,
|
||||
'VideoFrameRate'?: number,
|
||||
'ImageWidth'?: number,
|
||||
'ImageHeight'?: number,
|
||||
'TrackNumber'?: number,
|
||||
'TrackLanguage'?: string,
|
||||
'CodecID'?: string,
|
||||
'TrackType'?: string,
|
||||
'AudioChannels'?: number,
|
||||
'AudioSampleRate'?: number,
|
||||
'AudioBitsPerSample'?: number,
|
||||
'TagName'?: 'DURATION',
|
||||
'TagString'?: string,
|
||||
'ImageSize'?: string,
|
||||
'Megapixels'?: number,
|
||||
}
|
||||
|
||||
export interface ImediaInfo {
|
||||
track?: [{
|
||||
'@type': string,
|
||||
'UniqueID': string,
|
||||
'VideoCount': string,
|
||||
'AudioCount': string,
|
||||
'Format': string,
|
||||
'Format_Version': string,
|
||||
'FileSize': string,
|
||||
'Duration': string,
|
||||
'OverallBitRate': string,
|
||||
'FrameRate': string,
|
||||
'FrameCount': string,
|
||||
'IsStreamable': string,
|
||||
'Encoded_Application': string,
|
||||
'Encoded_Library': string,
|
||||
'extra': {
|
||||
'ErrorDetectionType': string,
|
||||
}
|
||||
}],
|
||||
}
|
||||
|
||||
export interface IFileObjectMin {
|
||||
_id: string,
|
||||
file: string,
|
||||
DB: string,
|
||||
footprintId: string,
|
||||
}
|
||||
|
||||
type IbaseStatus = '' | 'Hold' | 'Queued'
|
||||
export type IHealthCheck = IbaseStatus | 'Success' | 'Error' | 'Cancelled'
|
||||
export type ITranscodeDecisionMaker = IbaseStatus | 'Transcode success'
|
||||
| 'Transcode error' | 'Transcode cancelled' | 'Not required'
|
||||
|
||||
export interface IFileObjectStripped extends IFileObjectMin {
|
||||
container: string,
|
||||
scannerReads: {
|
||||
ffProbeRead: string,
|
||||
}
|
||||
createdAt: number,
|
||||
lastPluginDetails: string,
|
||||
bit_rate: number,
|
||||
statSync: IstatSync, // tlint-disable-line statSync
|
||||
file_size: number,
|
||||
ffProbeData: IffProbeData,
|
||||
hasClosedCaptions: boolean,
|
||||
bumped: boolean,
|
||||
HealthCheck: IHealthCheck,
|
||||
TranscodeDecisionMaker: ITranscodeDecisionMaker,
|
||||
holdUntil: number,
|
||||
fileMedium: string,
|
||||
video_codec_name: string,
|
||||
audio_codec_name: string,
|
||||
video_resolution: string,
|
||||
|
||||
lastHealthCheckDate: number,
|
||||
lastTranscodeDate: number,
|
||||
history: string,
|
||||
oldSize: number,
|
||||
newSize: number,
|
||||
videoStreamIndex: number;
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any,@typescript-eslint/explicit-module-boundary-types
|
||||
[index: string]: any,
|
||||
}
|
||||
|
||||
export interface IFileObject extends IFileObjectStripped {
|
||||
scannerReads: {
|
||||
ffProbeRead: string,
|
||||
exiftoolRead: string,
|
||||
mediaInfoRead: string,
|
||||
closedCaptionRead: string,
|
||||
}
|
||||
meta?: Imeta,
|
||||
mediaInfo?: ImediaInfo,
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any,@typescript-eslint/explicit-module-boundary-types
|
||||
[index: string]: any,
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue