### InstallFFmpegOptions Struct Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Configuration options for installing FFmpeg, allowing control over whether to disable download or system installation. ```APIDOC type InstallFFmpegOptions struct { DisableDownload bool DisableSystem bool } ``` -------------------------------- ### yt-dlp Installation Functions Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Provides functions to install yt-dlp and its dependencies like FFmpeg and FFprobe. These functions handle checking for existing installations, downloading, and verifying executables. Options can be provided to customize the installation process. ```APIDOC func Install(ctx context.Context, opts *InstallOptions) (*ResolvedInstall, error) - Installs yt-dlp based on the provided options. - Parameters: - ctx: The context for the operation. - opts: Pointer to InstallOptions struct for configuration. - Returns: - *ResolvedInstall: Information about the installed executable. - error: An error if the installation fails. func InstallAll(ctx context.Context) ([]*ResolvedInstall, error) - Installs all required dependencies for yt-dlp. - Parameters: - ctx: The context for the operation. - Returns: - []*ResolvedInstall: A slice of information about installed executables. - error: An error if any installation fails. func InstallFFmpeg(ctx context.Context, opts *InstallFFmpegOptions) (*ResolvedInstall, error) - Installs FFmpeg, a common dependency for yt-dlp. - Parameters: - ctx: The context for the operation. - opts: Pointer to InstallFFmpegOptions struct for configuration. - Returns: - *ResolvedInstall: Information about the installed FFmpeg executable. - error: An error if the installation fails. func InstallFFprobe(ctx context.Context, opts *InstallFFmpegOptions) (*ResolvedInstall, error) - Installs FFprobe, another common dependency for yt-dlp. - Parameters: - ctx: The context for the operation. - opts: Pointer to InstallFFmpegOptions struct for configuration. - Returns: - *ResolvedInstall: Information about the installed FFprobe executable. - error: An error if the installation fails. func MustInstallAll(ctx context.Context) []*ResolvedInstall - Installs all required dependencies and panics if any installation fails. - Parameters: - ctx: The context for the operation. - Returns: - []*ResolvedInstall: A slice of information about installed executables. ``` -------------------------------- ### InstallFFmpegOptions Struct Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Configuration options for installing FFmpeg, allowing control over whether to disable download or system installation. ```APIDOC type InstallFFmpegOptions struct { DisableDownload bool DisableSystem bool } ``` -------------------------------- ### InstallFFmpegOptions Struct Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Configuration options for installing FFmpeg, allowing control over whether to disable download or system installation. ```APIDOC type InstallFFmpegOptions struct { DisableDownload bool DisableSystem bool } ``` -------------------------------- ### yt-dlp Installation Functions Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Provides functions to install yt-dlp and its dependencies like FFmpeg and FFprobe. These functions handle checking for existing installations, downloading, and verifying executables. Options can be provided to customize the installation process. ```APIDOC func Install(ctx context.Context, opts *InstallOptions) (*ResolvedInstall, error) - Installs yt-dlp based on the provided options. - Parameters: - ctx: The context for the operation. - opts: Pointer to InstallOptions struct for configuration. - Returns: - *ResolvedInstall: Information about the installed executable. - error: An error if the installation fails. func InstallAll(ctx context.Context) ([]*ResolvedInstall, error) - Installs all required dependencies for yt-dlp. - Parameters: - ctx: The context for the operation. - Returns: - []*ResolvedInstall: A slice of information about installed executables. - error: An error if any installation fails. func InstallFFmpeg(ctx context.Context, opts *InstallFFmpegOptions) (*ResolvedInstall, error) - Installs FFmpeg, a common dependency for yt-dlp. - Parameters: - ctx: The context for the operation. - opts: Pointer to InstallFFmpegOptions struct for configuration. - Returns: - *ResolvedInstall: Information about the installed FFmpeg executable. - error: An error if the installation fails. func InstallFFprobe(ctx context.Context, opts *InstallFFmpegOptions) (*ResolvedInstall, error) - Installs FFprobe, another common dependency for yt-dlp. - Parameters: - ctx: The context for the operation. - opts: Pointer to InstallFFmpegOptions struct for configuration. - Returns: - *ResolvedInstall: Information about the installed FFprobe executable. - error: An error if the installation fails. func MustInstallAll(ctx context.Context) []*ResolvedInstall - Installs all required dependencies and panics if any installation fails. - Parameters: - ctx: The context for the operation. - Returns: - []*ResolvedInstall: A slice of information about installed executables. ``` -------------------------------- ### yt-dlp Installation Functions Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Provides functions to install yt-dlp and its dependencies like FFmpeg and FFprobe. These functions handle checking for existing installations, downloading, and verifying executables. Options can be provided to customize the installation process. ```APIDOC func Install(ctx context.Context, opts *InstallOptions) (*ResolvedInstall, error) - Installs yt-dlp based on the provided options. - Parameters: - ctx: The context for the operation. - opts: Pointer to InstallOptions struct for configuration. - Returns: - *ResolvedInstall: Information about the installed executable. - error: An error if the installation fails. func InstallAll(ctx context.Context) ([]*ResolvedInstall, error) - Installs all required dependencies for yt-dlp. - Parameters: - ctx: The context for the operation. - Returns: - []*ResolvedInstall: A slice of information about installed executables. - error: An error if any installation fails. func InstallFFmpeg(ctx context.Context, opts *InstallFFmpegOptions) (*ResolvedInstall, error) - Installs FFmpeg, a common dependency for yt-dlp. - Parameters: - ctx: The context for the operation. - opts: Pointer to InstallFFmpegOptions struct for configuration. - Returns: - *ResolvedInstall: Information about the installed FFmpeg executable. - error: An error if the installation fails. func InstallFFprobe(ctx context.Context, opts *InstallFFmpegOptions) (*ResolvedInstall, error) - Installs FFprobe, another common dependency for yt-dlp. - Parameters: - ctx: The context for the operation. - opts: Pointer to InstallFFmpegOptions struct for configuration. - Returns: - *ResolvedInstall: Information about the installed FFprobe executable. - error: An error if the installation fails. func MustInstallAll(ctx context.Context) []*ResolvedInstall - Installs all required dependencies and panics if any installation fails. - Parameters: - ctx: The context for the operation. - Returns: - []*ResolvedInstall: A slice of information about installed executables. ``` -------------------------------- ### yt-dlp Install Options Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Defines configuration options for installing yt-dlp and its dependencies. These include flags to control version checking, checksum verification, and download sources. ```APIDOC type InstallOptions struct { AllowVersionMismatch bool // If true, allows installing a version that doesn't match the expected version. DisableChecksum bool // If true, skips checksum verification of downloaded files. DisableDownload bool // If true, prevents downloading if an executable is already found. DisableSystem bool // If true, prevents using system-installed executables. DownloadURL string // Custom URL to download yt-dlp from. } type InstallFFmpegOptions struct { DownloadURL string // Custom URL to download FFmpeg/FFprobe from. } type ResolvedInstall struct { Downloaded bool // Indicates if the executable was downloaded during this operation. Executable string // The path to the resolved executable. FromCache bool // Indicates if the executable was retrieved from a cache. Version string // The version of the installed executable. } ``` -------------------------------- ### Live Streaming and Info Loading API Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Configure live streaming behavior and load video information from JSON files. This allows starting live streams from the beginning or pre-loading metadata. ```APIDOC LiveFromStart() - Starts live streams from the beginning. LoadInfoJSON(file string) - Loads video information from a JSON file. - Parameters: - file: The path to the JSON file containing video info. ``` -------------------------------- ### yt-dlp Install Options Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Defines configuration options for installing yt-dlp and its dependencies. These include flags to control version checking, checksum verification, and download sources. ```APIDOC type InstallOptions struct { AllowVersionMismatch bool // If true, allows installing a version that doesn't match the expected version. DisableChecksum bool // If true, skips checksum verification of downloaded files. DisableDownload bool // If true, prevents downloading if an executable is already found. DisableSystem bool // If true, prevents using system-installed executables. DownloadURL string // Custom URL to download yt-dlp from. } type InstallFFmpegOptions struct { DownloadURL string // Custom URL to download FFmpeg/FFprobe from. } type ResolvedInstall struct { Downloaded bool // Indicates if the executable was downloaded during this operation. Executable string // The path to the resolved executable. FromCache bool // Indicates if the executable was retrieved from a cache. Version string // The version of the installed executable. } ``` -------------------------------- ### yt-dlp Install Options Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Defines configuration options for installing yt-dlp and its dependencies. These include flags to control version checking, checksum verification, and download sources. ```APIDOC type InstallOptions struct { AllowVersionMismatch bool // If true, allows installing a version that doesn't match the expected version. DisableChecksum bool // If true, skips checksum verification of downloaded files. DisableDownload bool // If true, prevents downloading if an executable is already found. DisableSystem bool // If true, prevents using system-installed executables. DownloadURL string // Custom URL to download yt-dlp from. } type InstallFFmpegOptions struct { DownloadURL string // Custom URL to download FFmpeg/FFprobe from. } type ResolvedInstall struct { Downloaded bool // Indicates if the executable was downloaded during this operation. Executable string // The path to the resolved executable. FromCache bool // Indicates if the executable was retrieved from a cache. Version string // The version of the installed executable. } ``` -------------------------------- ### Live Streaming and Info Loading API Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Configure live streaming behavior and load video information from JSON files. This allows starting live streams from the beginning or pre-loading metadata. ```APIDOC LiveFromStart() - Starts live streams from the beginning. LoadInfoJSON(file string) - Loads video information from a JSON file. - Parameters: - file: The path to the JSON file containing video info. ``` -------------------------------- ### Live Streaming and Info Loading API Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Configure live streaming behavior and load video information from JSON files. This allows starting live streams from the beginning or pre-loading metadata. ```APIDOC LiveFromStart() - Starts live streams from the beginning. LoadInfoJSON(file string) - Loads video information from a JSON file. - Parameters: - file: The path to the JSON file containing video info. ``` -------------------------------- ### go-ytdlp: Utility Functions Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Provides utility functions for managing yt-dlp installations, cache, and error handling. ```APIDOC GetCacheDir() (string, error) Retrieves the cache directory for yt-dlp. Returns: string: The path to the cache directory. error: An error if the directory cannot be determined. IsExitCodeError(err error) bool Checks if the given error is an exit code error from yt-dlp. Parameters: err: The error to check. Returns: bool: True if it's an exit code error, false otherwise. IsMisconfigError(err error) bool Checks if the given error indicates a misconfiguration issue. Parameters: err: The error to check. Returns: bool: True if it's a misconfiguration error, false otherwise. IsParsingError(err error) bool Checks if the given error is related to parsing output. Parameters: err: The error to check. Returns: bool: True if it's a parsing error, false otherwise. IsUnknownError(err error) bool Checks if the given error is an unknown type. Parameters: err: The error to check. Returns: bool: True if it's an unknown error, false otherwise. MustInstall(ctx context.Context, opts *InstallOptions) Installs yt-dlp, panicking if an error occurs. Parameters: ctx: The context for the operation. opts: Options for the installation. MustInstallFFmpeg(ctx context.Context, opts *InstallFFmpegOptions) Installs FFmpeg, panicking if an error occurs. Parameters: ctx: The context for the operation. opts: Options for FFmpeg installation. MustInstallFFprobe(ctx context.Context, opts *InstallFFmpegOptions) Installs FFprobe, panicking if an error occurs. Parameters: ctx: The context for the operation. opts: Options for FFprobe installation. RemoveInstallCache() error Removes the cached yt-dlp installation. Returns: error: An error if the cache removal fails. ``` -------------------------------- ### go-ytdlp: Utility Functions Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Provides utility functions for managing yt-dlp installations, cache, and error handling. ```APIDOC GetCacheDir() (string, error) Retrieves the cache directory for yt-dlp. Returns: string: The path to the cache directory. error: An error if the directory cannot be determined. IsExitCodeError(err error) bool Checks if the given error is an exit code error from yt-dlp. Parameters: err: The error to check. Returns: bool: True if it's an exit code error, false otherwise. IsMisconfigError(err error) bool Checks if the given error indicates a misconfiguration issue. Parameters: err: The error to check. Returns: bool: True if it's a misconfiguration error, false otherwise. IsParsingError(err error) bool Checks if the given error is related to parsing output. Parameters: err: The error to check. Returns: bool: True if it's a parsing error, false otherwise. IsUnknownError(err error) bool Checks if the given error is an unknown type. Parameters: err: The error to check. Returns: bool: True if it's an unknown error, false otherwise. MustInstall(ctx context.Context, opts *InstallOptions) Installs yt-dlp, panicking if an error occurs. Parameters: ctx: The context for the operation. opts: Options for the installation. MustInstallFFmpeg(ctx context.Context, opts *InstallFFmpegOptions) Installs FFmpeg, panicking if an error occurs. Parameters: ctx: The context for the operation. opts: Options for FFmpeg installation. MustInstallFFprobe(ctx context.Context, opts *InstallFFmpegOptions) Installs FFprobe, panicking if an error occurs. Parameters: ctx: The context for the operation. opts: Options for FFprobe installation. RemoveInstallCache() error Removes the cached yt-dlp installation. Returns: error: An error if the cache removal fails. ``` -------------------------------- ### go-ytdlp: Utility Functions Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Provides utility functions for managing yt-dlp installations, cache, and error handling. ```APIDOC GetCacheDir() (string, error) Retrieves the cache directory for yt-dlp. Returns: string: The path to the cache directory. error: An error if the directory cannot be determined. IsExitCodeError(err error) bool Checks if the given error is an exit code error from yt-dlp. Parameters: err: The error to check. Returns: bool: True if it's an exit code error, false otherwise. IsMisconfigError(err error) bool Checks if the given error indicates a misconfiguration issue. Parameters: err: The error to check. Returns: bool: True if it's a misconfiguration error, false otherwise. IsParsingError(err error) bool Checks if the given error is related to parsing output. Parameters: err: The error to check. Returns: bool: True if it's a parsing error, false otherwise. IsUnknownError(err error) bool Checks if the given error is an unknown type. Parameters: err: The error to check. Returns: bool: True if it's an unknown error, false otherwise. MustInstall(ctx context.Context, opts *InstallOptions) Installs yt-dlp, panicking if an error occurs. Parameters: ctx: The context for the operation. opts: Options for the installation. MustInstallFFmpeg(ctx context.Context, opts *InstallFFmpegOptions) Installs FFmpeg, panicking if an error occurs. Parameters: ctx: The context for the operation. opts: Options for FFmpeg installation. MustInstallFFprobe(ctx context.Context, opts *InstallFFmpegOptions) Installs FFprobe, panicking if an error occurs. Parameters: ctx: The context for the operation. opts: Options for FFprobe installation. RemoveInstallCache() error Removes the cached yt-dlp installation. Returns: error: An error if the cache removal fails. ``` -------------------------------- ### Network and Connection Options Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Settings related to network connections, proxies, and client certificates. ```go func (c *Command) CNVerificationProxy(url string) *Command // Sets a proxy for CN verification. func (c *Command) ClientCertificate(certfile string) *Command // Specifies a client certificate file for authentication. func (c *Command) ClientCertificateKey(keyfile string) *Command // Specifies the private key file for the client certificate. func (c *Command) ClientCertificatePassword(password string) *Command // Sets the password for the client certificate key. ``` -------------------------------- ### Format and Output Configuration Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Options for selecting and converting video and thumbnail formats, and cleaning output information. ```go func (c *Command) CheckAllFormats() *Command // Ensures all available formats are checked. func (c *Command) CheckFormats() *Command // Checks available formats without downloading. func (c *Command) CleanInfoJSON() *Command // Cleans the output JSON by removing unnecessary fields. func (c *Command) ConvertSubs(format string) *Command // Converts subtitle files to the specified format. func (c *Command) ConvertThumbnails(format string) *Command // Converts thumbnail files to the specified format. ``` -------------------------------- ### Format and Output Configuration Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Options for selecting and converting video and thumbnail formats, and cleaning output information. ```go func (c *Command) CheckAllFormats() *Command // Ensures all available formats are checked. func (c *Command) CheckFormats() *Command // Checks available formats without downloading. func (c *Command) CleanInfoJSON() *Command // Cleans the output JSON by removing unnecessary fields. func (c *Command) ConvertSubs(format string) *Command // Converts subtitle files to the specified format. func (c *Command) ConvertThumbnails(format string) *Command // Converts thumbnail files to the specified format. ``` -------------------------------- ### General Command and Behavior Options Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Miscellaneous options that control command behavior, output, and internal processes. ```go func (c *Command) AutoNumberSize(number int) *Command // Sets the number of digits for auto-numbered filenames. func (c *Command) AutoNumberStart(number int) *Command // Sets the starting number for auto-numbered filenames. func (c *Command) BidiWorkaround() *Command // Enables workarounds for bidirectional text display. func (c *Command) BufferSize(size string) *Command // Sets the buffer size for downloads. func (c *Command) CallHome() *Command // Enables the 'call home' feature for statistics. func (c *Command) Clone() *Command // Creates a clone of the current command configuration. func (c *Command) Color(policy string) *Command // Sets the colorization policy for output. func (c *Command) CompatOptions(opts string) *Command // Applies compatibility options for older yt-dlp versions. func (c *Command) ConcatPlaylist(policy ConcatPlaylistOption) *Command // Specifies how to concatenate playlist items. func (c *Command) ConcurrentFragments(n int) *Command // Sets the number of concurrent fragments to download. func (c *Command) ConfigLocations(path string) *Command // Specifies custom configuration file locations. func (c *Command) ConsoleTitle() *Command // Sets the console window title. func (c *Command) Continue() *Command // Continues interrupted downloads. ``` -------------------------------- ### Format and Output Configuration Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Options for selecting and converting video and thumbnail formats, and cleaning output information. ```go func (c *Command) CheckAllFormats() *Command // Ensures all available formats are checked. func (c *Command) CheckFormats() *Command // Checks available formats without downloading. func (c *Command) CleanInfoJSON() *Command // Cleans the output JSON by removing unnecessary fields. func (c *Command) ConvertSubs(format string) *Command // Converts subtitle files to the specified format. func (c *Command) ConvertThumbnails(format string) *Command // Converts thumbnail files to the specified format. ``` -------------------------------- ### Network and Connection Options Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Settings related to network connections, proxies, and client certificates. ```go func (c *Command) CNVerificationProxy(url string) *Command // Sets a proxy for CN verification. func (c *Command) ClientCertificate(certfile string) *Command // Specifies a client certificate file for authentication. func (c *Command) ClientCertificateKey(keyfile string) *Command // Specifies the private key file for the client certificate. func (c *Command) ClientCertificatePassword(password string) *Command // Sets the password for the client certificate key. ``` -------------------------------- ### General Command and Behavior Options Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Miscellaneous options that control command behavior, output, and internal processes. ```go func (c *Command) AutoNumberSize(number int) *Command // Sets the number of digits for auto-numbered filenames. func (c *Command) AutoNumberStart(number int) *Command // Sets the starting number for auto-numbered filenames. func (c *Command) BidiWorkaround() *Command // Enables workarounds for bidirectional text display. func (c *Command) BufferSize(size string) *Command // Sets the buffer size for downloads. func (c *Command) CallHome() *Command // Enables the 'call home' feature for statistics. func (c *Command) Clone() *Command // Creates a clone of the current command configuration. func (c *Command) Color(policy string) *Command // Sets the colorization policy for output. func (c *Command) CompatOptions(opts string) *Command // Applies compatibility options for older yt-dlp versions. func (c *Command) ConcatPlaylist(policy ConcatPlaylistOption) *Command // Specifies how to concatenate playlist items. func (c *Command) ConcurrentFragments(n int) *Command // Sets the number of concurrent fragments to download. func (c *Command) ConfigLocations(path string) *Command // Specifies custom configuration file locations. func (c *Command) ConsoleTitle() *Command // Sets the console window title. func (c *Command) Continue() *Command // Continues interrupted downloads. ``` -------------------------------- ### Network and Connection Options Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Settings related to network connections, proxies, and client certificates. ```go func (c *Command) CNVerificationProxy(url string) *Command // Sets a proxy for CN verification. func (c *Command) ClientCertificate(certfile string) *Command // Specifies a client certificate file for authentication. func (c *Command) ClientCertificateKey(keyfile string) *Command // Specifies the private key file for the client certificate. func (c *Command) ClientCertificatePassword(password string) *Command // Sets the password for the client certificate key. ``` -------------------------------- ### General Command and Behavior Options Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Miscellaneous options that control command behavior, output, and internal processes. ```go func (c *Command) AutoNumberSize(number int) *Command // Sets the number of digits for auto-numbered filenames. func (c *Command) AutoNumberStart(number int) *Command // Sets the starting number for auto-numbered filenames. func (c *Command) BidiWorkaround() *Command // Enables workarounds for bidirectional text display. func (c *Command) BufferSize(size string) *Command // Sets the buffer size for downloads. func (c *Command) CallHome() *Command // Enables the 'call home' feature for statistics. func (c *Command) Clone() *Command // Creates a clone of the current command configuration. func (c *Command) Color(policy string) *Command // Sets the colorization policy for output. func (c *Command) CompatOptions(opts string) *Command // Applies compatibility options for older yt-dlp versions. func (c *Command) ConcatPlaylist(policy ConcatPlaylistOption) *Command // Specifies how to concatenate playlist items. func (c *Command) ConcurrentFragments(n int) *Command // Sets the number of concurrent fragments to download. func (c *Command) ConfigLocations(path string) *Command // Specifies custom configuration file locations. func (c *Command) ConsoleTitle() *Command // Sets the console window title. func (c *Command) Continue() *Command // Continues interrupted downloads. ``` -------------------------------- ### Go Struct: ExtractedChapterData Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Defines the structure for extracted chapter data, including start time, end time, and title. ```APIDOC type ExtractedChapterData struct EndTime *float64 The end time of the chapter in seconds. StartTime *float64 The start time of the chapter in seconds. Title *string The title of the chapter. ``` -------------------------------- ### ID Method API Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Retrieves the video ID. This method provides a direct way to get the unique identifier for a video. ```APIDOC ID() string - Retrieves the video ID. ``` -------------------------------- ### Go Struct: ExtractedChapterData Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Defines the structure for extracted chapter data, including start time, end time, and title. ```APIDOC type ExtractedChapterData struct EndTime *float64 The end time of the chapter in seconds. StartTime *float64 The start time of the chapter in seconds. Title *string The title of the chapter. ``` -------------------------------- ### Go Struct: ExtractedChapterData Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Defines the structure for extracted chapter data, including start time, end time, and title. ```APIDOC type ExtractedChapterData struct EndTime *float64 The end time of the chapter in seconds. StartTime *float64 The start time of the chapter in seconds. Title *string The title of the chapter. ``` -------------------------------- ### Batch and File Handling Options Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Options related to processing multiple URLs from a file or managing cookies and batch operations. ```go func (c *Command) BatchFile(file string) *Command // Specifies a file containing URLs to process in batch. func (c *Command) Cookies(file string) *Command // Loads cookies from a specified file. func (c *Command) CookiesFromBrowser(browser string) *Command // Attempts to load cookies from a specified browser. ``` -------------------------------- ### ID Method API Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Retrieves the video ID. This method provides a direct way to get the unique identifier for a video. ```APIDOC ID() string - Retrieves the video ID. ``` -------------------------------- ### ID Method API Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Retrieves the video ID. This method provides a direct way to get the unique identifier for a video. ```APIDOC ID() string - Retrieves the video ID. ``` -------------------------------- ### Playlist and Server Connection API Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Configure playlist handling and server connection methods. This includes options for lazy playlist loading and legacy server connection protocols. ```APIDOC LazyPlaylist() - Loads playlists lazily. LegacyServerConnect() - Uses legacy server connection methods. ``` -------------------------------- ### ExtractedHeatmapData Fields Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Outlines the fields for the ExtractedHeatmapData struct, which likely stores data points for a heatmap visualization. It includes start time, end time, and the associated value for each data point. ```go EndTime *float64 StartTime *float64 Value *float64 ``` -------------------------------- ### Playlist and Server Connection API Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Configure playlist handling and server connection methods. This includes options for lazy playlist loading and legacy server connection protocols. ```APIDOC LazyPlaylist() - Loads playlists lazily. LegacyServerConnect() - Uses legacy server connection methods. ``` -------------------------------- ### go-ytdlp: Get Command Part Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Retrieves a specific part of the command configuration. The exact nature of 'part' is context-dependent but generally refers to an internal component or aspect of the command's state. ```go func (c *Command) Part() *Command ``` -------------------------------- ### Batch and File Handling Options Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Options related to processing multiple URLs from a file or managing cookies and batch operations. ```go func (c *Command) BatchFile(file string) *Command // Specifies a file containing URLs to process in batch. func (c *Command) Cookies(file string) *Command // Loads cookies from a specified file. func (c *Command) CookiesFromBrowser(browser string) *Command // Attempts to load cookies from a specified browser. ``` -------------------------------- ### ExtractedHeatmapData Fields Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Outlines the fields for the ExtractedHeatmapData struct, which likely stores data points for a heatmap visualization. It includes start time, end time, and the associated value for each data point. ```go EndTime *float64 StartTime *float64 Value *float64 ``` -------------------------------- ### Batch and File Handling Options Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Options related to processing multiple URLs from a file or managing cookies and batch operations. ```go func (c *Command) BatchFile(file string) *Command // Specifies a file containing URLs to process in batch. func (c *Command) Cookies(file string) *Command // Loads cookies from a specified file. func (c *Command) CookiesFromBrowser(browser string) *Command // Attempts to load cookies from a specified browser. ``` -------------------------------- ### ExtractedHeatmapData Fields Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Outlines the fields for the ExtractedHeatmapData struct, which likely stores data points for a heatmap visualization. It includes start time, end time, and the associated value for each data point. ```go EndTime *float64 StartTime *float64 Value *float64 ``` -------------------------------- ### Playlist and Server Connection API Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Configure playlist handling and server connection methods. This includes options for lazy playlist loading and legacy server connection protocols. ```APIDOC LazyPlaylist() - Loads playlists lazily. LegacyServerConnect() - Uses legacy server connection methods. ``` -------------------------------- ### go-ytdlp: Get Command Part Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Retrieves a specific part of the command configuration. The exact nature of 'part' is context-dependent but generally refers to an internal component or aspect of the command's state. ```go func (c *Command) Part() *Command ``` -------------------------------- ### go-ytdlp: Get Command Part Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Retrieves a specific part of the command configuration. The exact nature of 'part' is context-dependent but generally refers to an internal component or aspect of the command's state. ```go func (c *Command) Part() *Command ``` -------------------------------- ### Command Configuration Methods Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Methods on the Command struct for configuring specific yt-dlp options. These methods allow fine-grained control over download behavior, such as setting HTTP headers, managing playlist concatenation, and handling YouTube manifest options. ```APIDOC Command.XFF(value string) - Sets the X-Forwarded-For HTTP header value. - Parameters: - value: The string value for the X-Forwarded-For header. Command.XattrSetFileSize() - Configures yt-dlp to set the file size attribute. Command.Xattrs() - Configures yt-dlp to write extended file attributes. Command.YesPlaylist() - Configures yt-dlp to treat the input as a playlist even if it's a single video. Command.YoutubeIncludeDashManifest() - Configures yt-dlp to include DASH manifests for YouTube videos. Command.YoutubeIncludeHLSManifest() - Configures yt-dlp to include HLS manifests for YouTube videos. Command.YoutubeSkipDashManifest() - Configures yt-dlp to skip DASH manifests for YouTube videos. Command.YoutubeSkipHLSManifest() - Configures yt-dlp to skip HLS manifests for YouTube videos. ``` -------------------------------- ### go-ytdlp Command: Unset LiveFromStart Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Unsets the 'live_from_start' option for the yt-dlp command. This method disables the feature to start downloading a live stream from its beginning. It returns a pointer to the Command struct for method chaining. -------------------------------- ### go-ytdlp Command: Unset LiveFromStart Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Unsets the 'live_from_start' option for the yt-dlp command. This method disables the feature to start downloading a live stream from its beginning. It returns a pointer to the Command struct for method chaining. -------------------------------- ### go-ytdlp: Configure Download Paths and Plugins Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Methods to set custom directories for plugin loading and to define general paths for operations. These are essential for managing external resources or organizing download outputs. ```go func (c *Command) Paths(path string) *Command func (c *Command) PluginDirs(path string) *Command ``` -------------------------------- ### go-ytdlp Command: Unset LiveFromStart Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Unsets the 'live_from_start' option for the yt-dlp command. This method disables the feature to start downloading a live stream from its beginning. It returns a pointer to the Command struct for method chaining. -------------------------------- ### go-ytdlp: Configure Download Paths and Plugins Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Methods to set custom directories for plugin loading and to define general paths for operations. These are essential for managing external resources or organizing download outputs. ```go func (c *Command) Paths(path string) *Command func (c *Command) PluginDirs(path string) *Command ``` -------------------------------- ### go-ytdlp: Configure Download Paths and Plugins Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Methods to set custom directories for plugin loading and to define general paths for operations. These are essential for managing external resources or organizing download outputs. ```go func (c *Command) Paths(path string) *Command func (c *Command) PluginDirs(path string) *Command ``` -------------------------------- ### go-ytdlp: Configure Playlist Handling Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Options to control playlist processing, including specifying the range of items to download (start and end numbers), selecting items randomly, reversing the playlist order, or specifying which items to include based on a specifier. ```go func (c *Command) PlaylistEnd(number int) *Command func (c *Command) PlaylistItems(itemSpec string) *Command func (c *Command) PlaylistRandom() *Command func (c *Command) PlaylistReverse() *Command func (c *Command) PlaylistStart(number int) *Command ``` -------------------------------- ### Command Configuration Methods Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Methods on the Command struct for configuring specific yt-dlp options. These methods allow fine-grained control over download behavior, such as setting HTTP headers, managing playlist concatenation, and handling YouTube manifest options. ```APIDOC Command.XFF(value string) - Sets the X-Forwarded-For HTTP header value. - Parameters: - value: The string value for the X-Forwarded-For header. Command.XattrSetFileSize() - Configures yt-dlp to set the file size attribute. Command.Xattrs() - Configures yt-dlp to write extended file attributes. Command.YesPlaylist() - Configures yt-dlp to treat the input as a playlist even if it's a single video. Command.YoutubeIncludeDashManifest() - Configures yt-dlp to include DASH manifests for YouTube videos. Command.YoutubeIncludeHLSManifest() - Configures yt-dlp to include HLS manifests for YouTube videos. Command.YoutubeSkipDashManifest() - Configures yt-dlp to skip DASH manifests for YouTube videos. Command.YoutubeSkipHLSManifest() - Configures yt-dlp to skip HLS manifests for YouTube videos. ``` -------------------------------- ### go-ytdlp: Configure Playlist Handling Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Options to control playlist processing, including specifying the range of items to download (start and end numbers), selecting items randomly, reversing the playlist order, or specifying which items to include based on a specifier. ```go func (c *Command) PlaylistEnd(number int) *Command func (c *Command) PlaylistItems(itemSpec string) *Command func (c *Command) PlaylistRandom() *Command func (c *Command) PlaylistReverse() *Command func (c *Command) PlaylistStart(number int) *Command ``` -------------------------------- ### go-ytdlp: Configure Playlist Handling Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Options to control playlist processing, including specifying the range of items to download (start and end numbers), selecting items randomly, reversing the playlist order, or specifying which items to include based on a specifier. ```go func (c *Command) PlaylistEnd(number int) *Command func (c *Command) PlaylistItems(itemSpec string) *Command func (c *Command) PlaylistRandom() *Command func (c *Command) PlaylistReverse() *Command func (c *Command) PlaylistStart(number int) *Command ``` -------------------------------- ### Command Methods for yt-dlp Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Provides methods for interacting with the yt-dlp command, such as setting environment variables, building the command with arguments, and managing flag configurations. These methods facilitate the execution and customization of yt-dlp processes. ```APIDOC Command.SetEnvVarInherit(enabled bool) *Command - Sets whether to inherit environment variables for the yt-dlp process. - Parameters: - enabled: A boolean indicating whether to inherit environment variables. - Returns: A pointer to the Command instance for chaining. Command.BuildCommand(ctx context.Context, args ...string) *exec.Cmd - Builds an os/exec.Cmd object for executing yt-dlp with the specified arguments. - Parameters: - ctx: The context for the command execution. - args: Variadic string arguments to pass to yt-dlp. - Returns: A pointer to an os/exec.Cmd object. Command.GetFlagConfig() *FlagConfig - Retrieves the current flag configuration associated with the command. - Returns: A pointer to the FlagConfig struct. Command.SetFlagConfig(flagConfig *FlagConfig) *Command - Sets a custom flag configuration for the command. - Parameters: - flagConfig: A pointer to the FlagConfig struct to apply. - Returns: A pointer to the Command instance for chaining. ``` -------------------------------- ### Command Configuration Methods Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/index Methods on the Command struct for configuring specific yt-dlp options. These methods allow fine-grained control over download behavior, such as setting HTTP headers, managing playlist concatenation, and handling YouTube manifest options. ```APIDOC Command.XFF(value string) - Sets the X-Forwarded-For HTTP header value. - Parameters: - value: The string value for the X-Forwarded-For header. Command.XattrSetFileSize() - Configures yt-dlp to set the file size attribute. Command.Xattrs() - Configures yt-dlp to write extended file attributes. Command.YesPlaylist() - Configures yt-dlp to treat the input as a playlist even if it's a single video. Command.YoutubeIncludeDashManifest() - Configures yt-dlp to include DASH manifests for YouTube videos. Command.YoutubeIncludeHLSManifest() - Configures yt-dlp to include HLS manifests for YouTube videos. Command.YoutubeSkipDashManifest() - Configures yt-dlp to skip DASH manifests for YouTube videos. Command.YoutubeSkipHLSManifest() - Configures yt-dlp to skip HLS manifests for YouTube videos. ``` -------------------------------- ### Command Methods for yt-dlp Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.1 Provides methods for interacting with the yt-dlp command, such as setting environment variables, building the command with arguments, and managing flag configurations. These methods facilitate the execution and customization of yt-dlp processes. ```APIDOC Command.SetEnvVarInherit(enabled bool) *Command - Sets whether to inherit environment variables for the yt-dlp process. - Parameters: - enabled: A boolean indicating whether to inherit environment variables. - Returns: A pointer to the Command instance for chaining. Command.BuildCommand(ctx context.Context, args ...string) *exec.Cmd - Builds an os/exec.Cmd object for executing yt-dlp with the specified arguments. - Parameters: - ctx: The context for the command execution. - args: Variadic string arguments to pass to yt-dlp. - Returns: A pointer to an os/exec.Cmd object. Command.GetFlagConfig() *FlagConfig - Retrieves the current flag configuration associated with the command. - Returns: A pointer to the FlagConfig struct. Command.SetFlagConfig(flagConfig *FlagConfig) *Command - Sets a custom flag configuration for the command. - Parameters: - flagConfig: A pointer to the FlagConfig struct to apply. - Returns: A pointer to the Command instance for chaining. ``` -------------------------------- ### Command Methods for yt-dlp Source: https://pkg.go.dev/github.com/lrstanley/go-ytdlp/%40v1.2 Provides methods for interacting with the yt-dlp command, such as setting environment variables, building the command with arguments, and managing flag configurations. These methods facilitate the execution and customization of yt-dlp processes. ```APIDOC Command.SetEnvVarInherit(enabled bool) *Command - Sets whether to inherit environment variables for the yt-dlp process. - Parameters: - enabled: A boolean indicating whether to inherit environment variables. - Returns: A pointer to the Command instance for chaining. Command.BuildCommand(ctx context.Context, args ...string) *exec.Cmd - Builds an os/exec.Cmd object for executing yt-dlp with the specified arguments. - Parameters: - ctx: The context for the command execution. - args: Variadic string arguments to pass to yt-dlp. - Returns: A pointer to an os/exec.Cmd object. Command.GetFlagConfig() *FlagConfig - Retrieves the current flag configuration associated with the command. - Returns: A pointer to the FlagConfig struct. Command.SetFlagConfig(flagConfig *FlagConfig) *Command - Sets a custom flag configuration for the command. - Parameters: - flagConfig: A pointer to the FlagConfig struct to apply. - Returns: A pointer to the Command instance for chaining. ```