metube/ui
Helmut 681aad24cd feat(ui): show actually-downloaded quality next to user's choice
When the user picks 'Best' (or any non-exact preset), the completed-list
quality cell shows only what they requested — but yt-dlp may have
resolved it to anything from 360p to 4K60. Same when they pick a
specific resolution that wasn't available and yt-dlp had to downgrade.

This commit:
- Backend (app/ytdl.py): captures yt-dlp's resolved width / height / fps
  / vcodec / abr in the MoveFiles postprocessor hook and persists them
  on DownloadInfo. __setstate__ backfills None for pre-patch persisted
  entries so old completed downloads keep loading.
- Interface (ui/src/app/interfaces/download.ts): four new optional
  fields on Download.
- UI (ui/src/app/app.ts:formatQualityLabel): when actual differs from
  requested, render 'Best · 1080p60' / '1080p · 720p' style. High frame
  rates (50+) get appended ('1080p60'); standard rates stay implicit.
  Audio shows 'Best · 320 kbps'. Identical actual === requested stays
  collapsed to avoid noise.

Backward compatible: old persisted downloads render unchanged since
their new fields stay None and formatActualQuality() returns null.
2026-06-13 22:04:00 +02:00
..
src feat(ui): show actually-downloaded quality next to user's choice 2026-06-13 22:04:00 +02:00
.editorconfig upgrade dependencies (migrate to Angular 10) 2021-02-02 21:09:28 +02:00
angular.json code review fixes 2026-03-15 20:53:13 +02:00
eslint.config.js feat(frontend): modernize Angular app 2025-12-15 01:56:47 +01:00
ngsw-config.json exclude index.html from service worker 2024-12-08 18:24:40 +06:00
package.json upgrade dependencies 2026-06-12 12:45:38 +03:00
pnpm-lock.yaml upgrade dependencies 2026-06-12 12:45:38 +03:00
pnpm-workspace.yaml fix pnpm build 2026-04-12 23:07:22 +03:00
tsconfig.app.json feat(frontend): modernize Angular app 2025-12-15 01:56:47 +01:00
tsconfig.json feat(frontend): modernize Angular app 2025-12-15 01:56:47 +01:00
tsconfig.spec.json feat(frontend): modernize Angular app 2025-12-15 01:56:47 +01:00