node build fixed
This commit is contained in:
115
seanime-2.9.10/internal/mkvparser/structs.go
Normal file
115
seanime-2.9.10/internal/mkvparser/structs.go
Normal file
@@ -0,0 +1,115 @@
|
||||
package mkvparser
|
||||
|
||||
import (
|
||||
"time"
|
||||
)
|
||||
|
||||
// Info element and its children
|
||||
type Info struct {
|
||||
Title string
|
||||
MuxingApp string
|
||||
WritingApp string
|
||||
TimecodeScale uint64
|
||||
Duration float64
|
||||
DateUTC time.Time
|
||||
}
|
||||
|
||||
// TrackEntry represents a track in the MKV file
|
||||
type TrackEntry struct {
|
||||
TrackNumber uint64
|
||||
TrackUID uint64
|
||||
TrackType uint64
|
||||
FlagEnabled uint64
|
||||
FlagDefault uint64
|
||||
FlagForced uint64
|
||||
DefaultDuration uint64
|
||||
Name string
|
||||
Language string
|
||||
LanguageIETF string
|
||||
CodecID string
|
||||
CodecPrivate []byte
|
||||
Video *VideoTrack
|
||||
Audio *AudioTrack
|
||||
ContentEncodings *ContentEncodings
|
||||
}
|
||||
|
||||
// VideoTrack contains video-specific track data
|
||||
type VideoTrack struct {
|
||||
PixelWidth uint64
|
||||
PixelHeight uint64
|
||||
}
|
||||
|
||||
// AudioTrack contains audio-specific track data
|
||||
type AudioTrack struct {
|
||||
SamplingFrequency float64
|
||||
Channels uint64
|
||||
BitDepth uint64
|
||||
}
|
||||
|
||||
// ContentEncodings contains information about how the track data is encoded
|
||||
type ContentEncodings struct {
|
||||
ContentEncoding []ContentEncoding
|
||||
}
|
||||
|
||||
// ContentEncoding describes a single encoding applied to the track data
|
||||
type ContentEncoding struct {
|
||||
ContentEncodingOrder uint64
|
||||
ContentEncodingScope uint64
|
||||
ContentEncodingType uint64
|
||||
ContentCompression *ContentCompression
|
||||
}
|
||||
|
||||
// ContentCompression describes how the track data is compressed
|
||||
type ContentCompression struct {
|
||||
ContentCompAlgo uint64
|
||||
ContentCompSettings []byte
|
||||
}
|
||||
|
||||
// ChapterAtom represents a single chapter point
|
||||
type ChapterAtom struct {
|
||||
ChapterUID uint64
|
||||
ChapterTimeStart uint64
|
||||
ChapterTimeEnd uint64
|
||||
ChapterDisplay []ChapterDisplay
|
||||
}
|
||||
|
||||
// ChapterDisplay contains displayable chapter information
|
||||
type ChapterDisplay struct {
|
||||
ChapString string
|
||||
ChapLanguage []string
|
||||
ChapLanguageIETF []string
|
||||
}
|
||||
|
||||
// AttachedFile represents a file attached to the MKV container
|
||||
type AttachedFile struct {
|
||||
FileDescription string
|
||||
FileName string
|
||||
FileMimeType string
|
||||
FileData []byte
|
||||
FileUID uint64
|
||||
}
|
||||
|
||||
// Block represents a data block in the MKV file
|
||||
type Block struct {
|
||||
TrackNumber uint64
|
||||
Timecode int16
|
||||
Data [][]byte
|
||||
}
|
||||
|
||||
// BlockGroup represents a group of blocks with additional information
|
||||
type BlockGroup struct {
|
||||
Block Block
|
||||
BlockDuration uint64
|
||||
}
|
||||
|
||||
// Cluster represents a cluster of blocks in the MKV file
|
||||
type Cluster struct {
|
||||
Timecode uint64
|
||||
SimpleBlock []Block
|
||||
BlockGroup []BlockGroup
|
||||
}
|
||||
|
||||
// Tracks element and its children
|
||||
type Tracks struct {
|
||||
TrackEntry []TrackEntry `ebml:"TrackEntry"`
|
||||
}
|
||||
Reference in New Issue
Block a user