8 Commits

Author SHA1 Message Date
d3f32f5956 Update golang to 1.23.1 from 1.22.6
Release notes https://golang.org/doc/devel/release.html
2024-09-06 16:02:07 +00:00
a623bde37b Merge pull request #195 from gamersindo1223/master
Added Download Audio Only
2024-08-18 12:19:19 +02:00
90467bcf8a Merge pull request #202 from ar2rworld/AddCookiesOption
Adding Cookies to Options
2024-08-17 19:07:30 +02:00
d47fecba92 Adding Cookies to Options 2024-08-16 22:55:25 -07:00
65804d5c0f Moved to DownloadOptions 2024-08-12 12:02:26 +00:00
95037e2caf Merge branch 'wader:master' into master 2024-08-12 18:36:45 +07:00
346cfb47a0 Update goutubedl.go 2024-08-12 18:15:44 +07:00
3abe5ae66a Added Download Audio Only 2024-07-11 16:13:41 +00:00
2 changed files with 24 additions and 8 deletions

View File

@ -1,6 +1,6 @@
# bump: golang /GOLANG_VERSION=([\d.]+)/ docker:golang|^1
# bump: golang link "Release notes" https://golang.org/doc/devel/release.html
ARG GOLANG_VERSION=1.22.6
ARG GOLANG_VERSION=1.23.1
# bump: yt-dlp /YT_DLP=([\d.-]+)/ https://github.com/yt-dlp/yt-dlp.git|/^\d/|sort
# bump: yt-dlp link "Release notes" https://github.com/yt-dlp/yt-dlp/releases/tag/$LATEST
ARG YT_DLP=2024.08.06

View File

@ -217,15 +217,17 @@ var TypeFromString = map[string]Type{
// Options for New()
type Options struct {
Type Type
PlaylistStart uint // --playlist-start
PlaylistEnd uint // --playlist-end
Downloader string // --downloader
DownloadThumbnail bool
DownloadSubtitles bool
DownloadSections string // --download-sections
Type Type
PlaylistStart uint // --playlist-start
PlaylistEnd uint // --playlist-end
Downloader string // --downloader
DownloadThumbnail bool
DownloadSubtitles bool
DownloadSections string // --download-sections
ProxyUrl string // --proxy URL http://host:port or socks5://host:port
UseIPV4 bool // -4 Make all connections via IPv4
Cookies string // --cookies FILE
CookiesFromBrowser string // --cookies-from-browser BROWSER[:FOLDER]
DebugLog Printer
StderrFn func(cmd *exec.Cmd) io.Writer // if not nil, function to get Writer for stderr
@ -330,6 +332,10 @@ func infoFromURL(
cmd.Args = append(cmd.Args, "--downloader", options.Downloader)
}
if options.Cookies != "" {
cmd.Args = append(cmd.Args, "--cookies", options.Cookies)
}
if options.CookiesFromBrowser != "" {
cmd.Args = append(cmd.Args, "--cookies-from-browser", options.CookiesFromBrowser)
}
@ -522,6 +528,8 @@ func (result Result) Download(ctx context.Context, filter string) (*DownloadResu
}
type DownloadOptions struct {
AudioFormats string // --audio-formats Download audio using formats (best, aac, alac, flac, m4a, mp3, opus, vorbis, wav)
DownloadAudioOnly bool // -x Download audio only from video
// Download format matched by filter (usually a format id or quality designator).
// If filter is empty, then youtube-dl will use its default format selector.
Filter string
@ -623,6 +631,14 @@ func (result Result) DownloadWithOptions(
cmd.Args = append(cmd.Args, "--playlist-items", fmt.Sprint(options.PlaylistIndex))
}
if options.DownloadAudioOnly {
cmd.Args = append(cmd.Args, "-x")
}
if options.AudioFormats != "" {
cmd.Args = append(cmd.Args, "--audio-format", options.AudioFormats)
}
if result.Options.ProxyUrl != "" {
cmd.Args = append(cmd.Args, "--proxy", result.Options.ProxyUrl)
}