Files
SCrawler/SCrawler.YouTube/Objects/IYouTubeMediaContainer.vb
Andy 3ea59a6acd 2023.8.27.0
YT: fix 'Shorts' downloading
2023-09-03 19:38:18 +03:00

89 lines
3.5 KiB
VB.net

' Copyright (C) 2023 Andy https://github.com/AAndyProgram
' This program is free software: you can redistribute it and/or modify
' it under the terms of the GNU General Public License as published by
' the Free Software Foundation, either version 3 of the License, or
' (at your option) any later version.
'
' This program is distributed in the hope that it will be useful,
' but WITHOUT ANY WARRANTY
Imports SCrawler.Plugin
Imports SCrawler.API.YouTube.Base
Imports PersonalUtilities.Functions.XML
Imports PersonalUtilities.Functions.XML.Base
Imports PersonalUtilities.Forms.Toolbars
Imports UMTypes = SCrawler.Plugin.UserMediaTypes
Imports UMStates = SCrawler.Plugin.UserMediaStates
Namespace API.YouTube.Objects
Public Interface IYouTubeMediaContainer : Inherits IDownloadableMedia, IEContainerProvider, IComparable(Of IYouTubeMediaContainer)
#Region "Events"
Event FileDownloaded As EventHandler
Event FileDownloadStarted As EventHandler
Event DataDownloaded As EventHandler
#End Region
#Region "Base data"
ReadOnly Property ObjectType As YouTubeMediaType
ReadOnly Property MediaType As UMTypes
ReadOnly Property MediaState As UMStates
Property IsMusic As Boolean
Property IsShorts As Boolean
Property ID As String
Property Description As String
Property PlaylistID As String
Property PlaylistTitle As String
Property UserID As String
Property UserTitle As String
#End Region
#Region "Playlist support"
ReadOnly Property Elements As List(Of IYouTubeMediaContainer)
ReadOnly Property HasElements As Boolean
ReadOnly Property Count As Integer
Property PlaylistIndex As Integer
#End Region
#Region "Data info"
#Region "Thumbnails"
ReadOnly Property Thumbnails As List(Of Thumbnail)
ReadOnly Property ThumbnailUrlMedia As String
Overloads ReadOnly Property ThumbnailFile As SFile
#End Region
#Region "Subtitles"
ReadOnly Property Subtitles As List(Of Subtitles)
ReadOnly Property SubtitlesSelectedIndexes As List(Of Integer)
#End Region
#Region "MediaObjects"
ReadOnly Property MediaObjects As List(Of MediaObject)
Property SelectedAudioIndex As Integer
Property SelectedVideoIndex As Integer
#End Region
ReadOnly Property SizeStr As String
Property Height As Integer
Property Bitrate As Integer
Property DateCreated As Date
Property DateAdded As Date
Property DateDownloaded As Date
Property OutputVideoExtension As String
Property OutputAudioCodec As String
Property OutputSubtitlesFormat As String
#End Region
#Region "HasError, Exists, Checked"
ReadOnly Property CheckState As CheckState
#End Region
#Region "URL, File, Command"
Overloads Property File As SFile
ReadOnly Property Files As List(Of SFile)
Property UseCookies As Boolean
ReadOnly Property Command(ByVal WithCookies As Boolean) As String
Sub UpdateInfoFields()
#End Region
#Region "Download"
Overloads Property Progress As MyProgress
#End Region
#Region "Parse, Load"
Overloads Sub Load(ByVal f As SFile)
Overloads Function Parse(ByVal Container As EContainer, ByVal Path As SFile, ByVal IsMusic As Boolean,
Optional ByVal Token As Threading.CancellationToken = Nothing, Optional ByVal Progress As IMyProgress = Nothing) As Boolean
#End Region
#Region "IDisposable"
ReadOnly Property IsDisposed As Boolean
#End Region
End Interface
End Namespace