diff --git a/FAQ.md b/FAQ.md index 42b56e70..48812cda 100644 --- a/FAQ.md +++ b/FAQ.md @@ -317,22 +317,13 @@ Then simply create a new preset, and in the `Command options for yt-dlp` field s ```bash --extractor-args "youtubepot-bgutilhttp:base_url=http://bgutil_provider:4416" ---extractor-args "youtube:player-client=default,tv,mweb;formats=incomplete" ``` -you and also enable the fallback by using the follow extractor args - -```bash ---extractor-args "youtubepot-bgutilhttp:base_url=http://bgutil_provider:4416;disable_innertube=1" ---extractor-args "youtube:player-client=default,tv,mweb;formats=incomplete" -``` - -Use this alternative extractor args in case the extractor fails to get the pot tokens from the bgutil provider server. For more information please visit [bgutil-ytdlp-pot-provider](https://github.com/Brainicism/bgutil-ytdlp-pot-provider) project. # Troubleshooting and submitting issues -Before asking a question or submitting an issue for YTPTube, please remember that YTPTube is only a thin wrapper for +Before asking a question or submitting an issue for YTPTube, please remember that YTPTube is only a wrapper for [yt-dlp](https://github.com/yt-dlp/yt-dlp). Any issues you might be experiencing with authentication to video websites, postprocessing, permissions, other `yt-dlp options` configurations which seem not to work, or anything else that concerns the workings of the underlying yt-dlp library, need not be opened on the YTPTube project. @@ -343,7 +334,8 @@ and once that is working, importing the options that worked for you into a new ` ## Via HTTP If you have enabled the web terminal via `YTP_CONSOLE_ENABLED` environment variable, simply go to `Other > Terminal` use - the yt-dlp command, the interface is jailed to the `yt-dlp` binary you can't access anything else. + the yt-dlp command, the interface is jailed to the `yt-dlp` binary you can't access anything else. Or from download form + by clicking `advanced options` button than the yellow terminal icon `Run directly in console`. ## Via CLI @@ -503,7 +495,7 @@ as we only test for GPU encoding once on first video stream. # Allowing internal URLs requests -By default, YTPTube prevents requests to internal resources, for security reasons. However, if you want to allow requests to internal URLs, you can set the `YTP_ALLOW_INTERNAL_URLS` environment variable to `true`. This will allow requests to internal URLs. +By default, YTPTube prevents requests to internal resources. However, if you want to allow requests to internal URLs, you can set the `YTP_ALLOW_INTERNAL_URLS` environment variable to `true`. This will allow requests to internal URLs. We do not recommend enabling this option unless you know what you are doing, as it can expose your internal network to potential security risks. This should only be used if it's truly needed. @@ -557,7 +549,6 @@ services: After making the changes, restart your container. This should resolve the "No space left on device" error during download. - # How to prevent loading screen during YouTube premieres? Depending on how you look at it, YTPTube live download implementation is rather great and fast. However, during YouTube @@ -566,7 +557,6 @@ playing. By default we wait for 5min + the duration of the video before starting the loading screen. However, you can override the behavior by setting the following environment variable: ```env -YTP_PREVENT_LIVE_PREMIERE=true YTP_LIVE_PREMIERE_BUFFER=10 ``` diff --git a/app/library/config.py b/app/library/config.py index 3074e410..b153bcf7 100644 --- a/app/library/config.py +++ b/app/library/config.py @@ -201,7 +201,7 @@ class Config(metaclass=Singleton): is_native: bool = False "Is the application running in natively." - prevent_live_premiere: bool = False + prevent_live_premiere: bool = True """Prevent downloading of the initial premiere live broadcast.""" live_premiere_buffer: int = 5 diff --git a/ui/app/components/History.vue b/ui/app/components/History.vue index 4b258a02..f6262bcb 100644 --- a/ui/app/components/History.vue +++ b/ui/app/components/History.vue @@ -499,10 +499,11 @@ import { useStorage, useIntersectionObserver } from '@vueuse/core' import type { StoreItem } from '~/types/store' import { useConfirm } from '~/composables/useConfirm' import { deepIncludes, getPath, getImage } from '~/utils' +import type { item_request } from '~/types/item' const emitter = defineEmits<{ (e: 'getInfo', url: string, preset: string, cli: string): void - (e: 'add_new', item: Partial): void + (e: 'add_new', item: item_request): void (e: 'getItemInfo', id: string): void (e: 'clear_search'): void }>() @@ -850,7 +851,7 @@ const removeItem = async (item: StoreItem) => { } const retryItem = async (item: StoreItem, re_add: boolean = false, remove_file: boolean = false) => { - const item_req: Partial = { + const item_req: item_request = { url: item.url, preset: item.preset, folder: item.folder, diff --git a/ui/app/components/Queue.vue b/ui/app/components/Queue.vue index 74f3c5f8..57db52c9 100644 --- a/ui/app/components/Queue.vue +++ b/ui/app/components/Queue.vue @@ -289,7 +289,7 @@ Pause -
+