# YouToDownLoad (Bash)

Bash-скрипт, который принимает ссылку на YouTube, скачивает аудио и сохраняет результат в `mp3`.

## Зависимости

Скрипт использует `yt-dlp` и `ffmpeg`:

- `yt-dlp` — скачивание и извлечение аудио
- `ffmpeg` — конвертация в `mp3` (через механизмы `yt-dlp`)

На macOS можно так:

```bash
brew install yt-dlp ffmpeg
```

## Запуск

```bash
bash ./yt-audio-downloader.sh "https://www.youtube.com/watch?v=VIDEO_ID"
```

## Опции

- `-o, --out DIR` — папка для сохранения (по умолчанию `downloads`)
- `-q, --quality N` — качество mp3 (по умолчанию `0` — лучшее)
- `-f, --format F` — формат (по умолчанию `mp3`)
- `--playlist` — скачивать плейлист (по умолчанию выключено)
- `--no-metadata` — без метаданных
- `--no-thumbnail` — без обложки (если включена, сохраняется как `.jpg` и вшивается в mp3)

## SwiftUI GUI (macOS)

В проект добавлено приложение `YouToDownLoadApp` на SwiftUI c glass-style интерфейсом.

Также добавлен полноценный Xcode-проект `YouToDownLoadGUI.xcodeproj` с App target.
Bundle Identifier уже задан: `com.ataryanik.YouToDownLoad`.

### Открыть в Xcode

1. Открой `YouToDownLoadGUI.xcodeproj` в Xcode.
2. Выбери схему `YouToDownLoadGUI`.
3. Нажми Run (`Cmd + R`).

Если нужно поменять ID: Target `YouToDownLoadGUI` -> `Signing & Capabilities` -> `Bundle Identifier`.

### Что умеет GUI

- вставка YouTube URL
- настройка папки вывода, качества и формата
- переключатели playlist / metadata / thumbnail
- запуск/остановка загрузки
- live-лог процесса в окне приложения

GUI использует встроенный скрипт `yt-audio-downloader.sh` и системные `yt-dlp`/`ffmpeg`.

