ytdlp

package module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 22, 2026 License: MIT Imports: 4 Imported by: 0

README

ytdlp-go-client

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Arg

type Arg interface {
	// contains filtered or unexported methods
}

type Args

type Args struct {
	// contains filtered or unexported fields
}

func NewArgs

func NewArgs(args ...string) *Args

func (*Args) Add

func (c *Args) Add(arg Arg)

func (*Args) Args

func (c *Args) Args() []string

func (*Args) String

func (c *Args) String() string

type Audio

type Audio string

Audio represents supported audio formats for --audio-format.

const (
	AudioAAC    Audio = "aac"
	AudioALAC   Audio = "alac"
	AudioFLAC   Audio = "flac"
	AudioM4A    Audio = "m4a"
	AudioMP3    Audio = "mp3"
	AudioOPUS   Audio = "opus"
	AudioVORBIS Audio = "vorbis"
	AudioWAV    Audio = "wav"
)

func (Audio) String

func (f Audio) String() string

type BiParameter

type BiParameter struct {
	// contains filtered or unexported fields
}

BiParameter represents a two-value option such as --print-to-file.

func PrintToFile

func PrintToFile(when When, template, file string) BiParameter

func PrintToFileTemplate

func PrintToFileTemplate(template, file string) BiParameter

type Flag

type Flag string
const (
	FLAG_HELP                   Flag = "-h"
	FLAG_VERSION                Flag = "--version"
	FLAG_UPDATE                 Flag = "-U"
	FLAG_NO_UPDATE              Flag = "--no-update"
	FLAG_IGNORE_ERRORS          Flag = "-i"
	FLAG_NO_ABORT_ON_ERROR      Flag = "--no-abort-on-error"
	FLAG_ABORT_ON_ERROR         Flag = "--abort-on-error"
	FLAG_DUMP_USER_AGENT        Flag = "--dump-user-agent"
	FLAG_LIST_EXTRACTORS        Flag = "--list-extractors"
	FLAG_EXTRACTOR_DESCRIPTIONS Flag = "--extractor-descriptions"
	FLAG_IGNORE_CONFIG          Flag = "--ignore-config"
	FLAG_NO_CONFIG_LOCATIONS    Flag = "--no-config-locations"
	FLAG_NO_PLUGIN_DIRS         Flag = "--no-plugin-dirs"
	FLAG_FLAT_PLAYLIST          Flag = "--flat-playlist"
	FLAG_NO_FLAT_PLAYLIST       Flag = "--no-flat-playlist"
	FLAG_LIVE_FROM_START        Flag = "--live-from-start"
	FLAG_NO_LIVE_FROM_START     Flag = "--no-live-from-start"
	FLAG_NO_WAIT_FOR_VIDEO      Flag = "--no-wait-for-video"
	FLAG_MARK_WATCHED           Flag = "--mark-watched"
	FLAG_NO_MARK_WATCHED        Flag = "--no-mark-watched"

	FLAG_LIST_IMPERSONATE_TARGETS Flag = "--list-impersonate-targets"
	FLAG_FORCE_IPV4               Flag = "-4"
	FLAG_FORCE_IPV6               Flag = "-6"
	FLAG_ENABLE_FILE_URLS         Flag = "--enable-file-urls"

	FLAG_NO_MATCH_FILTERS       Flag = "--no-match-filters"
	FLAG_NO_BREAK_MATCH_FILTERS Flag = "--no-break-match-filters"
	FLAG_NO_PLAYLIST            Flag = "--no-playlist"
	FLAG_YES_PLAYLIST           Flag = "--yes-playlist"
	FLAG_NO_DOWNLOAD_ARCHIVE    Flag = "--no-download-archive"
	FLAG_BREAK_ON_EXISTING      Flag = "--break-on-existing"
	FLAG_NO_BREAK_ON_EXISTING   Flag = "--no-break-on-existing"
	FLAG_BREAK_PER_INPUT        Flag = "--break-per-input"
	FLAG_NO_BREAK_PER_INPUT     Flag = "--no-break-per-input"

	FLAG_SKIP_UNAVAILABLE_FRAGMENTS     Flag = "--skip-unavailable-fragments"
	FLAG_ABORT_ON_UNAVAILABLE_FRAGMENTS Flag = "--abort-on-unavailable-fragments"
	FLAG_KEEP_FRAGMENTS                 Flag = "--keep-fragments"
	FLAG_NO_KEEP_FRAGMENTS              Flag = "--no-keep-fragments"
	FLAG_RESIZE_BUFFER                  Flag = "--resize-buffer"
	FLAG_NO_RESIZE_BUFFER               Flag = "--no-resize-buffer"
	FLAG_PLAYLIST_RANDOM                Flag = "--playlist-random"
	FLAG_LAZY_PLAYLIST                  Flag = "--lazy-playlist"
	FLAG_NO_LAZY_PLAYLIST               Flag = "--no-lazy-playlist"
	FLAG_XATTR_SET_FILESIZE             Flag = "--xattr-set-filesize"
	FLAG_HLS_USE_MPEGTS                 Flag = "--hls-use-mpegts"
	FLAG_NO_HLS_USE_MPEGTS              Flag = "--no-hls-use-mpegts"
	FLAG_NO_BATCH_FILE                  Flag = "--no-batch-file"
	FLAG_RESTRICT_FILENAMES             Flag = "--restrict-filenames"
	FLAG_NO_RESTRICT_FILENAMES          Flag = "--no-restrict-filenames"
	FLAG_WINDOWS_FILENAMES              Flag = "--windows-filenames"
	FLAG_NO_WINDOWS_FILENAMES           Flag = "--no-windows-filenames"
	FLAG_NO_OVERWRITES                  Flag = "-w"
	FLAG_FORCE_OVERWRITES               Flag = "--force-overwrites"
	FLAG_NO_FORCE_OVERWRITES            Flag = "--no-force-overwrites"
	FLAG_CONTINUE                       Flag = "-c"
	FLAG_NO_CONTINUE                    Flag = "--no-continue"
	FLAG_PART                           Flag = "--part"
	FLAG_NO_PART                        Flag = "--no-part"
	FLAG_MTIME                          Flag = "--mtime"
	FLAG_NO_MTIME                       Flag = "--no-mtime"
	FLAG_WRITE_DESCRIPTION              Flag = "--write-description"
	FLAG_NO_WRITE_DESCRIPTION           Flag = "--no-write-description"
	FLAG_WRITE_INFO_JSON                Flag = "--write-info-json"
	FLAG_NO_WRITE_INFO_JSON             Flag = "--no-write-info-json"
	FLAG_WRITE_PLAYLIST_METAFILES       Flag = "--write-playlist-metafiles"
	FLAG_NO_WRITE_PLAYLIST_METAFILES    Flag = "--no-write-playlist-metafiles"
	FLAG_CLEAN_INFO_JSON                Flag = "--clean-info-json"
	FLAG_NO_CLEAN_INFO_JSON             Flag = "--no-clean-info-json"
	FLAG_WRITE_COMMENTS                 Flag = "--write-comments"
	FLAG_NO_WRITE_COMMENTS              Flag = "--no-write-comments"
	FLAG_NO_COOKIES                     Flag = "--no-cookies"
	FLAG_NO_COOKIES_FROM_BROWSER        Flag = "--no-cookies-from-browser"
	FLAG_NO_CACHE_DIR                   Flag = "--no-cache-dir"
	FLAG_RM_CACHE_DIR                   Flag = "--rm-cache-dir"

	FLAG_WRITE_THUMBNAIL      Flag = "--write-thumbnail"
	FLAG_NO_WRITE_THUMBNAIL   Flag = "--no-write-thumbnail"
	FLAG_WRITE_ALL_THUMBNAILS Flag = "--write-all-thumbnails"
	FLAG_LIST_THUMBNAILS      Flag = "--list-thumbnails"

	FLAG_WRITE_LINK         Flag = "--write-link"
	FLAG_WRITE_URL_LINK     Flag = "--write-url-link"
	FLAG_WRITE_WEBLOC_LINK  Flag = "--write-webloc-link"
	FLAG_WRITE_DESKTOP_LINK Flag = "--write-desktop-link"

	FLAG_QUIET                      Flag = "-q"
	FLAG_NO_QUIET                   Flag = "--no-quiet"
	FLAG_NO_WARNINGS                Flag = "--no-warnings"
	FLAG_SIMULATE                   Flag = "-s"
	FLAG_NO_SIMULATE                Flag = "--no-simulate"
	FLAG_IGNORE_NO_FORMATS_ERROR    Flag = "--ignore-no-formats-error"
	FLAG_NO_IGNORE_NO_FORMATS_ERROR Flag = "--no-ignore-no-formats-error"
	FLAG_SKIP_DOWNLOAD              Flag = "--skip-download"
	FLAG_DUMP_JSON                  Flag = "-j"
	FLAG_DUMP_SINGLE_JSON           Flag = "-J"
	FLAG_FORCE_WRITE_ARCHIVE        Flag = "--force-write-archive"
	FLAG_NEWLINE                    Flag = "--newline"
	FLAG_NO_PROGRESS                Flag = "--no-progress"
	FLAG_PROGRESS                   Flag = "--progress"
	FLAG_CONSOLE_TITLE              Flag = "--console-title"
	FLAG_VERBOSE                    Flag = "-v"
	FLAG_DUMP_PAGES                 Flag = "--dump-pages"
	FLAG_WRITE_PAGES                Flag = "--write-pages"
	FLAG_PRINT_TRAFFIC              Flag = "--print-traffic"

	FLAG_LEGACY_SERVER_CONNECT Flag = "--legacy-server-connect"
	FLAG_NO_CHECK_CERTIFICATES Flag = "--no-check-certificates"
	FLAG_PREFER_INSECURE       Flag = "--prefer-insecure"
	FLAG_BIDI_WORKAROUND       Flag = "--bidi-workaround"

	FLAG_FORMAT_SORT_FORCE      Flag = "--format-sort-force"
	FLAG_NO_FORMAT_SORT_FORCE   Flag = "--no-format-sort-force"
	FLAG_VIDEO_MULTISTREAMS     Flag = "--video-multistreams"
	FLAG_NO_VIDEO_MULTISTREAMS  Flag = "--no-video-multistreams"
	FLAG_AUDIO_MULTISTREAMS     Flag = "--audio-multistreams"
	FLAG_NO_AUDIO_MULTISTREAMS  Flag = "--no-audio-multistreams"
	FLAG_PREFER_FREE_FORMATS    Flag = "--prefer-free-formats"
	FLAG_NO_PREFER_FREE_FORMATS Flag = "--no-prefer-free-formats"
	FLAG_CHECK_FORMATS          Flag = "--check-formats"
	FLAG_CHECK_ALL_FORMATS      Flag = "--check-all-formats"
	FLAG_NO_CHECK_FORMATS       Flag = "--no-check-formats"
	FLAG_LIST_FORMATS           Flag = "-F"

	FLAG_WRITE_SUBS         Flag = "--write-subs"
	FLAG_NO_WRITE_SUBS      Flag = "--no-write-subs"
	FLAG_WRITE_AUTO_SUBS    Flag = "--write-auto-subs"
	FLAG_NO_WRITE_AUTO_SUBS Flag = "--no-write-auto-subs"
	FLAG_LIST_SUBS          Flag = "--list-subs"

	FLAG_NETRC       Flag = "-n"
	FLAG_AP_LIST_MSO Flag = "--ap-list-mso"

	FLAG_EXTRACT_AUDIO              Flag = "-x"
	FLAG_KEEP_VIDEO                 Flag = "-k"
	FLAG_NO_KEEP_VIDEO              Flag = "--no-keep-video"
	FLAG_POST_OVERWRITES            Flag = "--post-overwrites"
	FLAG_NO_POST_OVERWRITES         Flag = "--no-post-overwrites"
	FLAG_EMBED_SUBS                 Flag = "--embed-subs"
	FLAG_NO_EMBED_SUBS              Flag = "--no-embed-subs"
	FLAG_EMBED_THUMBNAIL            Flag = "--embed-thumbnail"
	FLAG_NO_EMBED_THUMBNAIL         Flag = "--no-embed-thumbnail"
	FLAG_EMBED_METADATA             Flag = "--embed-metadata"
	FLAG_NO_EMBED_METADATA          Flag = "--no-embed-metadata"
	FLAG_EMBED_CHAPTERS             Flag = "--embed-chapters"
	FLAG_NO_EMBED_CHAPTERS          Flag = "--no-embed-chapters"
	FLAG_EMBED_INFO_JSON            Flag = "--embed-info-json"
	FLAG_NO_EMBED_INFO_JSON         Flag = "--no-embed-info-json"
	FLAG_XATTRS                     Flag = "--xattrs"
	FLAG_NO_EXEC                    Flag = "--no-exec"
	FLAG_SPLIT_CHAPTERS             Flag = "--split-chapters"
	FLAG_NO_SPLIT_CHAPTERS          Flag = "--no-split-chapters"
	FLAG_NO_REMOVE_CHAPTERS         Flag = "--no-remove-chapters"
	FLAG_FORCE_KEYFRAMES_AT_CUTS    Flag = "--force-keyframes-at-cuts"
	FLAG_NO_FORCE_KEYFRAMES_AT_CUTS Flag = "--no-force-keyframes-at-cuts"

	FLAG_NO_SPONSORBLOCK Flag = "--no-sponsorblock"

	FLAG_ALLOW_DYNAMIC_MPD           Flag = "--allow-dynamic-mpd"
	FLAG_IGNORE_DYNAMIC_MPD          Flag = "--ignore-dynamic-mpd"
	FLAG_HLS_SPLIT_DISCONTINUITY     Flag = "--hls-split-discontinuity"
	FLAG_NO_HLS_SPLIT_DISCONTINUITY  Flag = "--no-hls-split-discontinuity"
	FLAG_UPDATE_TO                   Flag = "--update-to"
	FLAG_USE_EXTRACTORS              Flag = "--use-extractors"
	FLAG_DEFAULT_SEARCH              Flag = "--default-search"
	FLAG_CONFIG_LOCATIONS            Flag = "--config-locations"
	FLAG_PLUGIN_DIRS                 Flag = "--plugin-dirs"
	FLAG_WAIT_FOR_VIDEO              Flag = "--wait-for-video"
	FLAG_COLOR                       Flag = "--color"
	FLAG_COMPAT_OPTIONS              Flag = "--compat-options"
	FLAG_PROXY                       Flag = "--proxy"
	FLAG_SOCKET_TIMEOUT              Flag = "--socket-timeout"
	FLAG_SOURCE_ADDRESS              Flag = "--source-address"
	FLAG_IMPERSONATE                 Flag = "--impersonate"
	FLAG_GEO_VERIFICATION_PROXY      Flag = "--geo-verification-proxy"
	FLAG_XFF                         Flag = "--xff"
	FLAG_PLAYLIST_ITEMS              Flag = "-I"
	FLAG_MIN_FILESIZE                Flag = "--min-filesize"
	FLAG_MAX_FILESIZE                Flag = "--max-filesize"
	FLAG_DATE                        Flag = "--date"
	FLAG_DATEBEFORE                  Flag = "--datebefore"
	FLAG_DATEAFTER                   Flag = "--dateafter"
	FLAG_MATCH_FILTERS               Flag = "--match-filters"
	FLAG_BREAK_MATCH_FILTERS         Flag = "--break-match-filters"
	FLAG_AGE_LIMIT                   Flag = "--age-limit"
	FLAG_DOWNLOAD_ARCHIVE            Flag = "--download-archive"
	FLAG_MAX_DOWNLOADS               Flag = "--max-downloads"
	FLAG_SKIP_PLAYLIST_AFTER_ERRORS  Flag = "--skip-playlist-after-errors"
	FLAG_CONCURRENT_FRAGMENTS        Flag = "-N"
	FLAG_LIMIT_RATE                  Flag = "-r"
	FLAG_THROTTLED_RATE              Flag = "--throttled-rate"
	FLAG_RETRIES                     Flag = "-R"
	FLAG_FILE_ACCESS_RETRIES         Flag = "--file-access-retries"
	FLAG_FRAGMENT_RETRIES            Flag = "--fragment-retries"
	FLAG_RETRY_SLEEP                 Flag = "--retry-sleep"
	FLAG_BUFFER_SIZE                 Flag = "--buffer-size"
	FLAG_HTTP_CHUNK_SIZE             Flag = "--http-chunk-size"
	FLAG_DOWNLOAD_SECTIONS           Flag = "--download-sections"
	FLAG_DOWNLOADER                  Flag = "--downloader"
	FLAG_DOWNLOADER_ARGS             Flag = "--downloader-args"
	FLAG_BATCH_FILE                  Flag = "-a"
	FLAG_PATHS                       Flag = "-P"
	FLAG_OUTPUT                      Flag = "-o"
	FLAG_OUTPUT_NA_PLACEHOLDER       Flag = "--output-na-placeholder"
	FLAG_TRIM_FILENAMES              Flag = "--trim-filenames"
	FLAG_LOAD_INFO_JSON              Flag = "--load-info-json"
	FLAG_COOKIES                     Flag = "--cookies"
	FLAG_COOKIES_FROM_BROWSER        Flag = "--cookies-from-browser"
	FLAG_CACHE_DIR                   Flag = "--cache-dir"
	FLAG_PRINT                       Flag = "-O"
	FLAG_PRINT_TO_FILE               Flag = "--print-to-file"
	FLAG_PROGRESS_TEMPLATE           Flag = "--progress-template"
	FLAG_PROGRESS_DELTA              Flag = "--progress-delta"
	FLAG_ENCODING                    Flag = "--encoding"
	FLAG_ADD_HEADERS                 Flag = "--add-headers"
	FLAG_SLEEP_REQUESTS              Flag = "--sleep-requests"
	FLAG_SLEEP_INTERVAL              Flag = "--sleep-interval"
	FLAG_MAX_SLEEP_INTERVAL          Flag = "--max-sleep-interval"
	FLAG_SLEEP_SUBTITLES             Flag = "--sleep-subtitles"
	FLAG_FORMAT                      Flag = "-f"
	FLAG_FORMAT_SORT                 Flag = "-S"
	FLAG_MERGE_OUTPUT_FORMAT         Flag = "--merge-output-format"
	FLAG_SUB_FORMAT                  Flag = "--sub-format"
	FLAG_SUB_LANGS                   Flag = "--sub-langs"
	FLAG_USERNAME                    Flag = "-u"
	FLAG_PASSWORD                    Flag = "-p"
	FLAG_TWO_FACTOR                  Flag = "-2"
	FLAG_NETRC_LOCATION              Flag = "--netrc-location"
	FLAG_NETRC_CMD                   Flag = "--netrc-cmd"
	FLAG_VIDEO_PASSWORD              Flag = "--video-password"
	FLAG_AP_MSO                      Flag = "--ap-mso"
	FLAG_AP_USERNAME                 Flag = "--ap-username"
	FLAG_AP_PASSWORD                 Flag = "--ap-password"
	FLAG_CLIENT_CERTIFICATE          Flag = "--client-certificate"
	FLAG_CLIENT_CERTIFICATE_KEY      Flag = "--client-certificate-key"
	FLAG_CLIENT_CERTIFICATE_PASSWORD Flag = "--client-certificate-password"
	FLAG_AUDIO_FORMAT                Flag = "--audio-format"
	FLAG_AUDIO_QUALITY               Flag = "--audio-quality"
	FLAG_REMUX_VIDEO                 Flag = "--remux-video"
	FLAG_RECODE_VIDEO                Flag = "--recode-video"
	FLAG_POSTPROCESSOR_ARGS          Flag = "--postprocessor-args"
	FLAG_PARSE_METADATA              Flag = "--parse-metadata"
	FLAG_REPLACE_IN_METADATA         Flag = "--replace-in-metadata"
	FLAG_CONCAT_PLAYLIST             Flag = "--concat-playlist"
	FLAG_FIXUP                       Flag = "--fixup"
	FLAG_FFMPEG_LOCATION             Flag = "--ffmpeg-location"
	FLAG_EXEC                        Flag = "--exec"
	FLAG_CONVERT_SUBS                Flag = "--convert-subs"
	FLAG_CONVERT_THUMBNAILS          Flag = "--convert-thumbnails"
	FLAG_REMOVE_CHAPTERS             Flag = "--remove-chapters"
	FLAG_USE_POSTPROCESSOR           Flag = "--use-postprocessor"
	FLAG_SPONSORBLOCK_MARK           Flag = "--sponsorblock-mark"
	FLAG_SPONSORBLOCK_REMOVE         Flag = "--sponsorblock-remove"
	FLAG_SPONSORBLOCK_CHAPTER_TITLE  Flag = "--sponsorblock-chapter-title"
	FLAG_SPONSORBLOCK_API            Flag = "--sponsorblock-api"
	FLAG_EXTRACTOR_RETRIES           Flag = "--extractor-retries"
	FLAG_EXTRACTOR_ARGS              Flag = "--extractor-args"
	FLAG_PRESET_ALIAS                Flag = "-t"
)

func (Flag) String

func (f Flag) String() string

type Listener

type Listener interface {
	OnStdout(line string)
	OnStderr(line string)
	OnExit(code int)
}

type Parameter

type Parameter struct {
	// contains filtered or unexported fields
}

Parameter represents a single yt-dlp CLI option with an optional value.

func AddHeaders

func AddHeaders(header, value string) Parameter

func AgeLimit

func AgeLimit(years int) Parameter

func ApMso

func ApMso(mso string) Parameter

func ApPassword

func ApPassword(password string) Parameter

func ApUsername

func ApUsername(username string) Parameter

func AudioFormat

func AudioFormat(format Audio) Parameter

Post-Processing Options

func AudioQuality

func AudioQuality(quality string) Parameter

func BatchFile

func BatchFile(file string) Parameter

func BreakMatchFilters

func BreakMatchFilters(filter string) Parameter

func BufferSize

func BufferSize(size string) Parameter

func CacheDir

func CacheDir(directory string) Parameter

func ClientCertificate

func ClientCertificate(certFile string) Parameter

func ClientCertificateKey

func ClientCertificateKey(keyFile string) Parameter

func ClientCertificatePassword

func ClientCertificatePassword(password string) Parameter

func Color

func Color(stream, policy string) Parameter

func ColorPolicy

func ColorPolicy(policy string) Parameter

func CompatOptions

func CompatOptions(opts string) Parameter

func ConcatPlaylist

func ConcatPlaylist(policy string) Parameter

func ConcurrentFragments

func ConcurrentFragments(fragments int) Parameter

Download Options

func ConfigLocations

func ConfigLocations(path string) Parameter

func ConvertSubs

func ConvertSubs(format string) Parameter

func ConvertThumbnails

func ConvertThumbnails(format string) Parameter

func Cookies

func Cookies(file string) Parameter

func CookiesFromBrowser

func CookiesFromBrowser(browser string) Parameter

func Date

func Date(date string) Parameter

func DateAfter

func DateAfter(date string) Parameter

func DateBefore

func DateBefore(date string) Parameter

func DefaultSearch

func DefaultSearch(prefix string) Parameter

func DownloadArchive

func DownloadArchive(file string) Parameter

func DownloadSections

func DownloadSections(regex string) Parameter

func Downloader

func Downloader(proto, name string) Parameter

func DownloaderArgs

func DownloaderArgs(name, args string) Parameter

func DownloaderName

func DownloaderName(name string) Parameter

func Encoding

func Encoding(encoding string) Parameter

Workarounds

func Exec

func Exec(when When, cmd string) Parameter

func ExecCommand

func ExecCommand(cmd string) Parameter

func ExtractorArgs

func ExtractorArgs(ieKey, args string) Parameter

func ExtractorRetries

func ExtractorRetries(retries string) Parameter

Extractor Options

func FakeForward

func FakeForward(header string) Parameter

func FfmpegLocation

func FfmpegLocation(path string) Parameter

func FileAccessRetries

func FileAccessRetries(retries int) Parameter

func Fixup

func Fixup(policy string) Parameter

func Format

func Format(format string) Parameter

Video Format Options

func FormatSort

func FormatSort(sortOrder string) Parameter

func FragmentRetries

func FragmentRetries(retries int) Parameter

func GeoVerificationProxy

func GeoVerificationProxy(url string) Parameter

Geo-restriction

func HttpChunkSize

func HttpChunkSize(size string) Parameter

func Impersonate

func Impersonate(client, os string) Parameter

func ImpersonateClient

func ImpersonateClient(client string) Parameter

func LimitRate

func LimitRate(rate string) Parameter

func LoadInfoJson

func LoadInfoJson(file string) Parameter

func MatchFilters

func MatchFilters(filter string) Parameter

func MaxDownloads

func MaxDownloads(number int) Parameter

func MaxFilesize

func MaxFilesize(filesize string) Parameter

func MergeOutputFormat

func MergeOutputFormat(format string) Parameter

func MinFilesize

func MinFilesize(filesize string) Parameter

func NetrcCmd

func NetrcCmd(cmd string) Parameter

func NetrcLocation

func NetrcLocation(path string) Parameter

func Output

func Output(types, template string) Parameter

func OutputNaPlaceholder

func OutputNaPlaceholder(text string) Parameter

func OutputTemplate

func OutputTemplate(template string) Parameter

func ParseMetadata

func ParseMetadata(when When, from, to string) Parameter

func ParseMetadataPair

func ParseMetadataPair(from, to string) Parameter

func Password

func Password(password string) Parameter

func Paths

func Paths(types, path string) Parameter

func PathsSingle

func PathsSingle(path string) Parameter

func PlaylistItems

func PlaylistItems(items string) Parameter

Video Selection

func PlaylistItemsRange

func PlaylistItemsRange(start, end int) Parameter

func PluginDirs

func PluginDirs(path string) Parameter

func PostprocessorArgs

func PostprocessorArgs(name, args string) Parameter

func PresetAlias

func PresetAlias(preset Preset) Parameter

Preset Aliases

func Print

func Print(when When, template string) Parameter

Verbosity and Simulation Options

func PrintTemplate

func PrintTemplate(template string) Parameter

func ProgressDelta

func ProgressDelta(seconds float32) Parameter

func ProgressTemplate

func ProgressTemplate(types, template string) Parameter

func ProgressTemplateValue

func ProgressTemplateValue(template string) Parameter

func Proxy

func Proxy(url string) Parameter

Network

func RecodeVideo

func RecodeVideo(format Video) Parameter

func RemoveChapters

func RemoveChapters(regex string) Parameter

func RemuxVideo

func RemuxVideo(format Video) Parameter

func ReplaceInMetadata

func ReplaceInMetadata(when When, fields, regex, replace string) Parameter

func ReplaceInMetadataValues

func ReplaceInMetadataValues(fields, regex, replace string) Parameter

func Retries

func Retries(retries int) Parameter

func RetrySleep

func RetrySleep(typeValue, expression string) Parameter

func RetrySleepExpression

func RetrySleepExpression(expression string) Parameter

func SkipPlaylistAfterErrors

func SkipPlaylistAfterErrors(errors int) Parameter

func SleepInterval

func SleepInterval(seconds float32) Parameter

func SleepMaxInterval

func SleepMaxInterval(seconds float32) Parameter

func SleepRequests

func SleepRequests(seconds float32) Parameter

func SleepSubtitles

func SleepSubtitles(seconds float32) Parameter

func SocketTimeout

func SocketTimeout(seconds int) Parameter

func SourceAddress

func SourceAddress(ip string) Parameter

func SponsorblockApi

func SponsorblockApi(url string) Parameter

func SponsorblockChapterTitle

func SponsorblockChapterTitle(template string) Parameter

func SponsorblockMark

func SponsorblockMark(cats string) Parameter

SponsorBlock Options

func SponsorblockRemove

func SponsorblockRemove(cats string) Parameter

func SubFormat

func SubFormat(format string) Parameter

Subtitle Options

func SubLangs

func SubLangs(langs string) Parameter

func ThrottledRate

func ThrottledRate(rate string) Parameter

func TrimFilenames

func TrimFilenames(length int) Parameter

func TwoFactor

func TwoFactor(code string) Parameter

func UpdateTo

func UpdateTo(channel, tag string) Parameter

General

func UseExtractors

func UseExtractors(names string) Parameter

func UsePostprocessor

func UsePostprocessor(name, args string) Parameter

func UsePostprocessorName

func UsePostprocessorName(name string) Parameter

func Username

func Username(username string) Parameter

Authentication Options

func VideoPassword

func VideoPassword(password string) Parameter

func WaitForVideo

func WaitForVideo(min int) Parameter

func WaitForVideoRange

func WaitForVideoRange(min, max int) Parameter

type Preset

type Preset string

Preset represents preset aliases.

const (
	PresetMP3   Preset = "mp3"
	PresetAAC   Preset = "aac"
	PresetMP4   Preset = "mp4"
	PresetMKV   Preset = "mkv"
	PresetSleep Preset = "sleep"
)

func (Preset) String

func (p Preset) String() string

type PrintListener

type PrintListener struct {
}

func (*PrintListener) OnExit

func (ü *PrintListener) OnExit(code int)

func (*PrintListener) OnStderr

func (p *PrintListener) OnStderr(line string)

func (*PrintListener) OnStdout

func (p *PrintListener) OnStdout(line string)

type Runner

type Runner struct {
	ExecutablePath string
}

func NewRunner

func NewRunner(executablePath string) *Runner

func (*Runner) Run

func (r *Runner) Run(listener Listener, arg ...string) error

type Video

type Video string

Video represents supported video formats for remux/recode options.

const (
	VideoAVI    Video = "avi"
	VideoFLV    Video = "flv"
	VideoGIF    Video = "gif"
	VideoMKV    Video = "mkv"
	VideoMOV    Video = "mov"
	VideoMP4    Video = "mp4"
	VideoWEBM   Video = "webm"
	VideoAAC    Video = "aac"
	VideoAIFF   Video = "aiff"
	VideoALAC   Video = "alac"
	VideoFLAC   Video = "flac"
	VideoM4A    Video = "m4a"
	VideoMKA    Video = "mka"
	VideoMP3    Video = "mp3"
	VideoOGG    Video = "ogg"
	VideoOPUS   Video = "opus"
	VideoVORBIS Video = "vorbis"
	VideoWAV    Video = "wav"
)

func (Video) String

func (f Video) String() string

type When

type When string

When is used for options that accept a when/condition style value.

const (
	WhenAfterExtraction When = "pre_process"
	WhenAfterFilter     When = "after_filter"
	WhenAfterFormat     When = "video"
	WhenBeforeDownload  When = "before_dl"
	WhenAfterDownload   When = "post_process"
	WhenAfterMove       When = "after_move"
	WhenAfterVideo      When = "after_video"
	WhenAfterPlaylist   When = "playlist"
)

func (When) String

func (w When) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL