Merged
Conversation
- Fix audio quality mapping: "best" now correctly maps to highest quality instead of hardcoded 192kbps, using new AUDIO_QUALITY_MAP - Add --video-codec option (h264/h265/vp9/av1/auto) with format filter fallback chains via VIDEO_CODEC_PREFERENCE - Wire --enhance-audio flag to EnhancedAudioProcessor with full preset and per-flag support (noise reduction, stereo widening, etc.) - Fix _needs_audio_processing to detect all individual enhancement flags - Throttle progress output to max 1 update/second with ETA display - Expand interactive mode with smart input parsing: supports URL+format, URL+resolution, format-first syntax (e.g. "flac URL", "URL 1080") - Use COMPREHENSIVE_BESTAUDIO_FORMAT for better audio source selection - Support named resolutions (4k, 2k, hd, sd) in format selection Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Critical bug fixes: - Fix NameError crash: add missing `import tempfile` in config.py - Fix RuntimeError crash: replace all asyncio.run() in SessionManager with _run_async_save() that detects running event loops safely - Fix AttributeError: config.py test_functionality() now properly calls async initialize_config_async() with asyncio.run() - Remove duplicate exception class definitions in manager.py (DownloadError, NetworkError, ResourceError defined twice), consolidate into single hierarchy - Fix dead code in session.py (logging after continue), fix malformed line Download core improvements: - Replace console.print() flood with Rich Progress bar in _download_single_url - Add merge_output_format='mp4' for proper video+audio container merging - Add FFmpeg location, retry config, and fragment settings to ydl_opts - Show title and format info before download starts - Handle audio file extension changes after FFmpegExtractAudio post-processing - User-friendly error messages for common yt-dlp failures (403, unavailable, etc.) - Better download result reporting with file sizes Audio pipeline fixes: - Lossless formats (FLAC/WAV) now force quality=0 for best source - Add FFmpegMetadata and EmbedThumbnail post-processors for audio downloads - All individual enhancement flags (noise_reduction, stereo_widening, etc.) now properly trigger enhance_audio umbrella and process_audio pipeline Video upscaling fixes: - VideoUpscaler now always initialized (was gated behind config flag, so --upscale CLI flag never worked) - Real-ESRGAN frame extraction now uses source fps instead of hardcoded 30 - Fix NameError in finally block when frames_dir/upscaled_dir not yet created - Add quality preset mapping (CRF/preset) to FFmpeg upscaler - Log stderr on failure for better debugging Interactive mode UX: - Welcome panel with quick-reference commands on entering interactive mode - Rich Table-based help display instead of raw prints - Support 'upscale', '2x'/'4x', 'enhance', 'denoise' keywords in smart parser - Preserve URL case sensitivity (don't lowercase URLs) - Handle EOFError gracefully, add 'snatch>' prompt - Show upscale/enhance/denoise info in download summary Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.