Replace Boost.Process youtube-dl call with yt-dlp popen#1
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| // -f bestaudio/best: selects the best available audio-only stream, or | ||
| // alternatively the best audio+video stream | ||
| std::string escaped_url = url; | ||
| escapeSingleQuotes(escaped_url); | ||
| std::string command = ydl_path + " -j --flat-playlist -f bestaudio/best --playlist-end 100 '" + escaped_url + "' 2>/dev/null"; |
There was a problem hiding this comment.
Flat playlist output leaves MPD without playable URLs
The new yt-dlp invocation forces --flat-playlist (lines 2824-2828), which only emits minimal entries (IDs or webpage URLs) instead of the resolved audio URLs that the previous -j -f bestaudio/best call returned. The downstream add_song logic still feeds those url/webpage_url values directly into Mpd.AddSong, so when users import a playlist the queued items are now just IDs/web pages and will be rejected or unplayable unless MPD is separately configured with a ytdl input plugin. This is a regression from the prior behavior where the action queued actual stream URLs and worked on default MPD setups.
Useful? React with 👍 / 👎.
Summary
Testing
Codex Task