[B]1.4.56 MOD[/B]
- Fixes YouTube subscriptions HLS multi-audio: the resident helper no longer overrides streams with Portuguese/English dubs
- Subscription videos now automatically switch to Kodi's audio stream explicitly labelled "original" (for example Spanish - original), once the HLS tracks are available
- Leaves the user's manual audio choice untouched after the one-time original-track selection

[B]1.4.55 MOD[/B]
- Trending, Live, Trailers, Random music and Shorts now bypass the local listing cache and request fresh YouTube data every time their menu is opened
- Random music now selects a new query rotation and shuffle on every opening
- Videos opened from the authenticated YouTube subscriptions feed always select the creator's original audio, regardless of the content/UI language
- Removes the invisible default focus target that caused a harmless Kodi 21 Android log warning in the QR panel

[B]1.4.54 MOD[/B]
- Replaces the text search with YouTube's actual public Shorts reel source
- Uses real vertical Shorts frames and resolves the title of every reel item, so results no longer include videos explaining how to use Shorts

[B]1.4.53 MOD[/B]
- Adds a dedicated Shorts menu with a modern YouTube-inspired icon in the main navigation
- Lists recent short-form clips and filters known videos longer than three minutes, live streams and duplicate IDs

[B]1.4.52 MOD[/B]
- YouTube QR activation codes now use a deliberate NewPipe MOD lifetime of 60 seconds instead of the longer provider lifetime

[B]1.4.51 MOD[/B]
- Replaces the Android-incompatible programmatic QR dialog with a dedicated Kodi XML window
- The XML window fixes layer order at the skin level: add-on fanart is the background and the QR, code and expiry are fixed visibly above it

[B]1.4.50 MOD[/B]
- Fixes Kodi 21 Android WindowDialog layer order: the fanart is now behind, not over, the QR, activation code and expiry controls

[B]1.4.49 MOD[/B]
- YouTube activation now uses the add-on fanart as its full-screen background, with only the centred QR, code and live expiry visible in a fixed vertical layout
- Removes unfocused dialog buttons; OK creates a replacement code and Back closes the panel

[B]1.4.48 MOD[/B]
- Reduces the YouTube activation QR and creates the activation code and expiry label visibly below it when the panel first opens
- Direct playback now defaults to Full HD 1080p; 360p, 480p, 720p, 1440p and 4K remain selectable

[B]1.4.47 MOD[/B]
- Random Music now uses a rotating set of official videos, new songs and live sessions instead of the Music Trending source
- Removes duplicate video IDs and matching song titles from the visible discovery list
- Native Kodi Random Music queues now use each available track once per session, without recycling the same songs

[B]1.4.46 MOD[/B]
- Replaces the changing QR directory preview with one compact, fixed YouTube activation panel
- The activation code and its real YouTube expiry countdown now stay directly below the smaller QR at all times
- Removes the confusing separate 60-second automatic-confirmation row; authorization polling and subscription synchronization remain automatic

[B]1.4.45 MOD[/B]
- New trailer installations default to English original and Ultra HD 2160p / 4K; 720p, 1080p, 1440p and 4K remain selectable independently
- Direct and trailer playback now preserve the chosen resolution ceiling through the resolver and InputStream Adaptive, including 1440p and 4K
- Modern YouTube-inspired account icons, a larger high-contrast QR card and a visible 60-second initial authorization wait
- Browser approval is checked automatically every few seconds; subscription import starts immediately after authorization with no manual confirmation step

[B]1.4.44 MOD[/B]
- Stops writing temporary file:// HLS manifests: Kodi 22 InputStream Adaptive rejects those local paths with CURLOpen failed / unable to download manifest
- HLS-only videos, music and standard NewPipe trailers now retain YouTube's remote manifest and its required headers

[B]1.4.43 MOD[/B]
- Cinebox trailers now use the stable NewPipe 1.4.34 mobile request and stream-selection path, while normal NewPipe videos retain the 1.4.41 high-quality HLS improvements
- Avoids the newer HLS quality rewrite only for Cinebox trailer playback, which could close Kodi 22 Android playback at the MediaCodec renderer
- Retains the 1.4.42 native HLS fallback for Kodi builds where InputStream Adaptive is missing or disabled

[B]1.4.41 MOD[/B]
- Limited HLS playback now retains the original audio group in a temporary master playlist, restoring audio while keeping the selected video resolution

[B]1.4.40 MOD[/B]
- Fixes the selected HLS variant URL passed to Kodi after applying the configured maximum resolution

[B]1.4.39 MOD[/B]
- HLS master playlists are now fixed to the configured maximum (for example 1080p) before Kodi opens them; Android Kodi had ignored the add-on limit and started a 2160p rendition
- Avoids the excessive HLS startup caused by the unintended 4K stream while preserving high-quality playback

[B]1.4.38 MOD[/B]
- When the iOS resolver exposes a direct 720p/1080p MP4 and an HLS alternative, direct playback now wins; this avoids the 20+ second HLS demuxer startup observed on Android Kodi
- Adds a concise format summary to the Kodi log (container and height only) to distinguish direct-HD availability from an unavoidable HLS fallback

[B]1.4.37 MOD[/B]
- Random music now resolves with the same iOS client sequence that already delivers 1080p trailers on this Kodi device; Android compatibility is only a final fallback
- High-resolution music no longer depends on InputStream Adaptive or the experimental DASH path, preserving the proven direct-stream playback model

[B]1.4.36 MOD[/B]
- 720p and 1080p now use the bundled MPEG-DASH adaptive path, combining YouTube's separate high-quality video and audio tracks through InputStream Adaptive
- Starts a private loopback DASH service with Kodi, required to serve the generated manifest and signed media segments during playback
- Detects a missing or disabled InputStream Adaptive add-on and explains the required Kodi setting while safely retaining the 360p/480p fallback
- Video cards now use YouTube's native 1280x720 max-resolution image as fanart while retaining the reliable 16:9 compact thumbnail

[B]1.4.35 MOD[/B]
- The configured 720p/1080p maximum now takes priority over Fast start: the resolver requests YouTube's HLS ladder and sends the matching limit to InputStream Adaptive
- Random music no longer silently caps playback at 480p; it uses the same direct-playback resolution setting as normal videos
- Existing direct-stream cache entries are invalidated after the quality-policy change

[B]1.4.34 MOD[/B]
- Fix Kodi 21 (Omega) startup crash: vendored libraries pinned to Python 3.8 (requests 2.32.3, urllib3 1.26.20, charset_normalizer 3.3.2, idna 3.7, certifi 2023.7.22, qrcode 7.4.2, pypng 0.0.21)
- Pagination fix: an invalid content country code (for example a language code in Content country custom) made YouTube answer with the first page only, so the country is now validated against ISO 3166-1 alpha-2
- Licenses consolidated in LICENSES/ (GPL-2.0-only and GPL-3.0 texts added; third-party texts kept outside pip metadata)
- Changelog moved from addon.xml <news> to changelog.txt
[B]1.4.34 MOD[/B]
- Direct playback now prioritizes the creator's original audio track instead of inheriting the linked account/UI language
- Portuguese dubbed or auto-dubbed audio is selected only when NewPipe Content language is explicitly set to Portuguese (Brazil) / pt-BR
- Audio-stream cache is separated by this preference, so switching the setting immediately requests the correct track
[B]1.4.33 MOD — TEST[/B]
- Disconnect now removes the linked YouTube account token, library snapshots and account-imported subscriptions
- Manually added subscriptions remain after disconnecting
[B]1.4.32 MOD[/B]
- Trailer results are always sorted by upload date, with the most recent releases first
- The same newest-first order also applies to Trailer searches
[B]1.4.31 MOD — TEST[/B]
- Random music now prefers Android's stable combined MP4 stream (up to 480p)
- Stop no longer depends on a pseudo-live HLS segment when that MP4 stream is available
- This stability profile is isolated to Random music; normal video, trailer and live playback are unchanged
- Kodi 21 HLS properties are applied before InputStream Adaptive starts
[B]1.4.30 MOD — TEST[/B]
- HLS playback now applies the selected NewPipe quality directly to InputStream Adaptive
- Prevents Android 1440p screens from selecting the unstable 1080p HLS ladder when NewPipe is set to 720p
- HLS stream cache is shortened so a failed signed manifest is refreshed quickly
[B]1.4.29 MOD — TEST[/B]
- Replaces one-by-one PlayMedia transitions with one native Kodi playlist for the entire Random music session
- Keeps playback inside the active playlist between tracks; no search, file browser or search-type menu should open during advance
- The playlist starts only after the selected plugin card exits, preventing duplicated Android streams
[B]1.4.28 MOD — TEST[/B]
- Recognizes the YouTube artist/track “Artist - Track (Video)” format as music
- Artist searches with two recognised music videos now arm Random music for every non-trailer result on that page
[B]1.4.27 MOD — TEST[/B]
- Fixes Random music detection for YouTube titles containing invisible non-breaking spaces, including “Official Video” labels
- These cards now correctly arm AutoPlay instead of returning to search when the video ends
[B]1.4.26 MOD — TEST[/B]
- Restores normal playable music cards; no folder/search keyboard is opened after a music video ends
- Replaces the embedded playlist launch with a delayed Kodi player transition, avoiding overlapping Android HLS decoders
- Stop immediately cancels the pending Random music transition
[B]1.4.25 MOD — TEST[/B]
- Previous stability test build; superseded by the direct card transition above
[B]1.4.24 MOD — TEST[/B]
- Adds Kodi's native "Up next" mini window, showing the next random music title and artwork around 15 seconds before the current song finishes
- The mini window is isolated to the Random music queue and never appears for normal videos, trailers or live streams
[B]1.4.23 MOD — TEST[/B]
- Recognizes clear music-video titles in normal YouTube search, channel and playlist results and starts the native Kodi shuffle queue from the selected music card
- Keeps trailers, live streams and ordinary video cards on standard direct playback
[B]1.4.22 MOD — TEST[/B]
- Replaces the experimental playback-end callback with a native Kodi shuffled playlist of 50 music videos
- The selected Random music card is always first; Kodi advances to the next queued card on completion or stream failure
- Uses a dedicated random_music_play route so Android Kodi cannot lose the mode flag on playable cards
- Normal videos, trailers, live streams, films and series remain outside the music playlist
[B]1.4.21 MOD — TEST[/B]
- Adds a dedicated Random music folder: choose a music video there and a different random music video starts when it ends
- Random continuation is local-only, can be disabled in Settings and never affects regular videos, trailers, live streams, films or series
[B]1.4.20 MOD[/B]
- Adds a selectable interface language; menus and messages can follow content language or use a fixed language
- Adds complete NewPipe MOD language packs for Portuguese (PT/BR), English, Spanish, French, German, Italian, Dutch, Romanian, Turkish, Japanese and Korean
- New installations start with English interface/content defaults; existing settings are preserved
[B]1.4.19 MOD[/B]
- Localizes Browse and Live category queries for every configured content language, including Romanian
[B]1.4.18 MOD[/B]
- Replaces 4:3 hqdefault thumbnails with YouTube's native 16:9 mqdefault thumbnails for full landscape cards
[B]1.4.17 MOD[/B]
- Declares video cards as landscape instead of posters, filling Arctic Fuse horizontal cards without black side bars
[B]1.4.16 MOD[/B]
- Uses video fanart to crop-fill wide cards in skins that otherwise show black side bars
[B]1.4.15 MOD[/B]
- Replaces the incompatible Android progress dialog with an immediate native synchronization notification
[B]1.4.14 MOD[/B]
- Shows an immediate progress window while YouTube subscriptions are synchronizing
[B]1.4.13 MOD[/B]
- After YouTube authorization, closes the QR submenu and opens My YouTube with the explicit Sync subscriptions action
[B]1.4.12 MOD[/B]
- Confirms self-contained ZIP installation: no Kodi repository, prior kit or external script.module add-on is needed
[B]1.4.11 MOD[/B]
- Uses NewPipe MOD identity throughout the account-link implementation and documentation
- Adds a framed, high-contrast QR activation card and a clear three-step login submenu
[B]1.4.10 MOD[/B]
- Cleans inactive Android-component references from metadata and documentation
[B]1.4.9 MOD[/B]
- Original creator/upstream: Twilight0
- MOD: @TrainAgain2
[B]1.4.8[/B]
- Displays subscribed-channel profile photos instead of Kodi's generic folder icon
- Normalizes the protocol-relative YouTube profile URLs and caches transparent circular avatar PNGs locally when the optional Kodi PIL module is available
- Uses the original HTTPS profile photo as a safe fallback; a failed avatar never blocks a sync or channel folder
[B]1.4.7[/B]
- Corrects Subscribed channels for the current YouTube TV / NewPipe MOD response: extracts each channel's UC ID from the authenticated subscription-tab parameters
- Keeps the original channel avatar and title; selecting a channel opens its public videos through the existing NewPipe channel view
[B]1.4.6[/B]
- Selects the linked YouTube/brand account through the YouTube TV account endpoint and sends its required X-Goog-Pageid identity
- Matches NewPipe MOD's TVHTML5 Cobalt client context, including browser identity and TV surface flags
- Reads current TVHTML5 tileRenderer subscription cards in addition to legacy video cards
- Reports an actionable error instead of claiming a successful empty anonymous subscription import
[B]1.4.5[/B]
- Adds the My YouTube hub modeled on the official Kodi YouTube account folders: My subscriptions, subscribed channels, Watch Later, saved playlists and history
- Saves an authenticated YouTube TV library snapshot only after an explicit sync; opening account folders makes no network call
- Keeps device linking in the background service but removes automatic post-login synchronization, avoiding Kodi freezes after QR approval
[B]1.4.4[/B]
- Corrects the NewPipe MOD TV channel-tab parser (endpoint.browseEndpoint)
- Sends the required YouTube TV visitorData and X-Goog-Visitor-Id headers when importing subscriptions
- Keeps the Subscriptions screen responsive; synchronization runs only from its explicit action
[B]1.4.3[/B]
- Refreshes the authenticated channel list automatically when opening Subscriptions or Subscribed channels
- Shows the imported channel cards below the NewPipe MOD-style navigation menu
[B]1.4.2[/B]
- Adds a NewPipe MOD-style subscriptions hub: subscribed channels, subscription feed, sync and disconnect
- Imports channel tabs returned by the authenticated YouTube TV subscriptions screen
[B]1.4.1[/B]
- Uses the authenticated YouTube TV subscription feed instead of the unavailable YouTube Data API v3 project
- Keeps a successful TV account link even when a later subscription import needs to be retried
- Shows a Sync YouTube subscriptions action for an account that is already linked
[B]1.4.0[/B]
- Replaces the generic Google device code with NewPipe MOD's YouTube TV V2 flow
- Generates a genuine YouTube TV QR at youtube.com/qr/activate/&lt;code&gt; and manual code at yt.be/activate
- Obtains the current public YouTube TV client dynamically; no Google Cloud project, Client ID or secret is configured in Settings
- Removes the legacy generic OAuth state that could show an unrelated app identity
[B]1.3.5[/B]
- Uses Google's unmodified device verification URL in the QR code
- Removes the YouTube-TV QR route that could show another application's identity
[B]1.3.4[/B]
- Uses only the OAuth client configured by the user; no fallback to a legacy client
[B]1.3.3[/B]
- Uses a fresh image filename per device code, preventing Kodi QR thumbnail cache errors
- Opens a new-code submenu from Settings
[B]1.3.2[/B]
- Rebuilds a pending QR with the current YouTube activation link
[B]1.3.1[/B]
- QR opens the YouTube activation page with the device code pre-filled
[B]1.3.0[/B]
- Keeps the QR authorization pending while Google returns HTTP 428
[B]1.2.9[/B]
- Requires the Google TV client secret before generating an activation code
[B]1.2.8[/B]
- Automatically recovers a stale Android/Kodi OAuth client setting
[B]1.2.7[/B]
- Supports public Google TV OAuth clients with Client ID only
[B]1.2.6[/B]
- Own Google OAuth client and official limited-input device authorization
- Read-only YouTube subscription synchronization
[B]1.2.5[/B]
- Treat the YouTube TV HTTP 428 response as authorization pending instead of deleting the QR code
- Open Connect YouTube account as a real Kodi folder submenu
[B]1.2.4[/B]
- Open YouTube login as a NewPipe submenu with QR, manual code, status check and cancel actions
- Use Kodi's native picture viewer for the QR so it is always fully visible
[B]1.2.3[/B]
- Use Kodi WindowDialog's fixed 1280x720 coordinate canvas for a centered QR dialog
[B]1.2.2[/B]
- Correct QR login dialog sizing for Android high-resolution panels
[B]1.2.1[/B]
- Fix Android service startup for the automatic YouTube subscription sync
- Display the short-lived YouTube activation QR code directly inside NewPipe's Kodi dialog
[B]1.2.0[/B]
- Bundle Tulip, URL dispatcher, Scrapetube, Unicache, requests, Kodi Six and the YouTube resolver inside the add-on
- No external script.module add-on is required during ZIP installation
- Use the bundled standard-library transport instead of ResolveURL / PluginsGR add-ons
[B]1.1.1[/B]
- Replace the Client ID setup with the direct NewPipe MOD-compatible TV login: Login, code and yt.be/activate
- Show the generated QR activation link with the one-time TV code; sync starts automatically after browser approval
- Do not embed credentials in the package
[B]1.1.0[/B]
[B]1.0.14[/B]
- Add Trailers as a search type, using the selected trailer language/version and quality profile
- Add a visible, confirmed Delete all watch history button and a separate Remove from watch history action per item
[B]1.0.13[/B]
- Add an independent Trailer quality setting: 720p, 1080p, 1440p or 2160p/4K
- Trailer selections request the chosen resolution without changing normal-video playback quality
[B]1.0.12[/B]
- Add a Trailers folder with a configurable language/version: Portuguese dubbed, Portuguese subtitled, English original, Spanish or Romanian
- Trailer queries use their chosen language terms and do not add a country suffix
[B]1.0.11[/B]
- Choose default Trending and Live categories in settings; opening those folders no longer displays a category dialog
- Add Romania (RO) and Romanian (ro) to the country and language selectors
[B]1.0.10[/B]
- Separate Portuguese (Portugal, pt-PT) from Portuguese (Brazil, pt-BR); legacy generic pt follows the selected country
[B]1.0.9[/B]
- Remove the pending-playback notification and its 35-second click lock
- Qualify Portuguese/African Portuguese built-in categories with the selected country (e.g. "Música Portugal") so local results do not default to Brazil
[B]1.0.8[/B]
- Open direct YouTube HLS manifests through inputstream.adaptive instead of waiting for Kodi's ordinary file demuxer; no localhost proxy is used
- Present content country and language as clear pickers, with optional custom ISO/YouTube codes for any unlisted country or language
- Correct the direct-quality labels so numeric values are not interpreted as Kodi language-string ids
[B]1.0.7[/B]
- Limit each direct-playback attempt to one iOS client group; do not probe anonymous-blocked TV clients after it
- Cache valid direct stream URLs locally for fast replays, and prevent concurrent demuxer starts while a video is opening
- Add Fast start (on by default), preferring a 360/480p combined stream when available; it can be disabled in settings
- Fetch every search, Trending and Live page once instead of twice; channel context-menu enrichment no longer delays browsing
[B]1.0.6[/B]
- Prioritize the complete iOS and Android native clients before TV/test clients, avoiding unstable direct streams and anonymous TV sign-in errors
- Add a concise `[NewPipe] stream direto` log line with the selected format (no media URL is logged)
[B]1.0.5[/B]
- Use the native PluginsGR resolver in progressive mode: one direct audio/video stream, without DASH, MPD or localhost proxy
- Do not use plugin.video.youtube or bundled yt-dlp
- Keep the direct playback quality limit (720p by default) and preferred audio-track selection
[B]1.0.4[/B]
- Replaced the prior playback implementation; superseded by 1.0.5
[B]1.0.3[/B]
- Replace global English Trending/Live keywords with Brazilian Portuguese category queries and relevance ordering
- Convert saved version 1.0.2 category links (Music, Movies, etc.) to the localized equivalents automatically
[B]1.0.2[/B]
- Add explicit NewPipe-style YouTube content country (gl) and content language (hl) for all browsing requests
- Default content localization is Brazil (BR) and Portuguese (pt); both values can be changed in the add-on settings
- Include the configured hl/gl values in continuation requests and cache keys
[B]1.0.1[/B]
- Use direct YouTube thumbnails for video cards instead of the add-on fanart fallback
- Add page navigation to video, channel and playlist listings; the default is 25 results per page
- Preserve route state for channel tabs and subsequent result pages
[B]1.0.0[/B]
- Initial release: search, channels (videos/shorts/live/playlists), playlists, local subscriptions with feed, local watch/search history, audio-only mode
