Merge branch 'development' into 946-version-flag
This commit is contained in:
commit
998c5c767c
|
@ -308,7 +308,7 @@ function runApp() {
|
|||
|
||||
ipcMain.on('setBounds', (_e, data) => {
|
||||
const value = {
|
||||
...mainWindow.getBounds(),
|
||||
...mainWindow.getNormalBounds(),
|
||||
maximized: mainWindow.isMaximized()
|
||||
}
|
||||
|
||||
|
|
|
@ -73,6 +73,7 @@ export default Vue.extend({
|
|||
useDash: false,
|
||||
useHls: false,
|
||||
selectedDefaultQuality: '',
|
||||
selectedQuality: '',
|
||||
maxFramerate: 0,
|
||||
activeSourceList: [],
|
||||
mouseTimeout: null,
|
||||
|
@ -198,7 +199,8 @@ export default Vue.extend({
|
|||
vhs: {
|
||||
limitRenditionByPlayerDimensions: false,
|
||||
smoothQualityChange: false,
|
||||
allowSeeksWithinUnsafeLiveWindow: true
|
||||
allowSeeksWithinUnsafeLiveWindow: true,
|
||||
handlePartialData: true
|
||||
}
|
||||
}
|
||||
})
|
||||
|
@ -214,14 +216,12 @@ export default Vue.extend({
|
|||
}
|
||||
|
||||
if (this.useDash) {
|
||||
this.dataSetup.plugins.httpSourceSelector = {
|
||||
default: 'auto'
|
||||
}
|
||||
// this.dataSetup.plugins.httpSourceSelector = {
|
||||
// default: 'auto'
|
||||
// }
|
||||
|
||||
this.player.httpSourceSelector()
|
||||
setTimeout(() => {
|
||||
this.determineDefaultQualityDash()
|
||||
}, 400)
|
||||
// this.player.httpSourceSelector()
|
||||
this.createDashQualitySelector(this.player.qualityLevels())
|
||||
}
|
||||
|
||||
if (this.autoplayVideos) {
|
||||
|
@ -417,7 +417,7 @@ export default Vue.extend({
|
|||
|
||||
determineDefaultQualityDash: function () {
|
||||
if (this.defaultQuality === 'auto') {
|
||||
return
|
||||
this.setDashQualityLevel('auto')
|
||||
}
|
||||
|
||||
this.player.qualityLevels().levels_.sort((a, b) => {
|
||||
|
@ -433,27 +433,62 @@ export default Vue.extend({
|
|||
}
|
||||
|
||||
if (this.defaultQuality === quality) {
|
||||
ql.enabled = true
|
||||
this.setDashQualityLevel(height)
|
||||
} else if (upperLevel !== null) {
|
||||
const upperHeight = upperLevel.height
|
||||
const upperWidth = upperLevel.width
|
||||
const upperQuality = upperWidth < upperHeight ? upperWidth : upperHeight
|
||||
|
||||
if (this.defaultQuality >= quality && this.defaultQuality < upperQuality) {
|
||||
ql.enabled = true
|
||||
} else {
|
||||
ql.enabled = false
|
||||
this.setDashQualityLevel(height)
|
||||
}
|
||||
} else if (index === 0 && quality > this.defaultQuality) {
|
||||
ql.enabled = true
|
||||
this.setDashQualityLevel(height)
|
||||
} else if (index === (arr.length - 1) && quality < this.defaultQuality) {
|
||||
ql.enabled = true
|
||||
} else {
|
||||
ql.enabled = false
|
||||
this.setDashQualityLevel(height)
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
setDashQualityLevel: function (qualityLevel) {
|
||||
if (this.selectedQuality === qualityLevel) {
|
||||
return
|
||||
}
|
||||
this.player.qualityLevels().levels_.sort((a, b) => {
|
||||
return a.height - b.height
|
||||
}).forEach((ql, index, arr) => {
|
||||
if (qualityLevel === 'auto' || ql.height === qualityLevel) {
|
||||
ql.enabled = true
|
||||
ql.enabled_(true)
|
||||
} else {
|
||||
ql.enabled = false
|
||||
ql.enabled_(false)
|
||||
}
|
||||
})
|
||||
|
||||
const selectedQuality = qualityLevel === 'auto' ? 'auto' : qualityLevel + 'p'
|
||||
|
||||
const qualityElement = document.getElementById('vjs-current-quality')
|
||||
qualityElement.innerText = selectedQuality
|
||||
this.selectedQuality = qualityLevel
|
||||
|
||||
const qualityItems = $('.quality-item').get()
|
||||
|
||||
$('.quality-item').removeClass('quality-selected')
|
||||
|
||||
qualityItems.forEach((item) => {
|
||||
const qualityText = $(item).find('.vjs-menu-item-text').get(0)
|
||||
if (qualityText.innerText === selectedQuality) {
|
||||
$(item).addClass('quality-selected')
|
||||
}
|
||||
})
|
||||
|
||||
// const currentTime = this.player.currentTime()
|
||||
|
||||
// this.player.currentTime(0)
|
||||
// this.player.currentTime(currentTime)
|
||||
},
|
||||
|
||||
enableDashFormat: function () {
|
||||
if (this.dashSrc === null) {
|
||||
console.log('No dash format available.')
|
||||
|
@ -629,6 +664,58 @@ export default Vue.extend({
|
|||
videojs.registerComponent('fullWindowButton', fullWindowButton)
|
||||
},
|
||||
|
||||
createDashQualitySelector: function (levels) {
|
||||
const v = this
|
||||
if (levels.levels_.length === 0) {
|
||||
setTimeout(() => {
|
||||
this.createDashQualitySelector(this.player.qualityLevels())
|
||||
}, 200)
|
||||
return
|
||||
}
|
||||
const VjsButton = videojs.getComponent('Button')
|
||||
const dashQualitySelector = videojs.extend(VjsButton, {
|
||||
constructor: function(player, options) {
|
||||
VjsButton.call(this, player, options)
|
||||
},
|
||||
handleClick: function(event) {
|
||||
const selectedQuality = event.target.innerText
|
||||
const quality = selectedQuality === 'auto' ? 'auto' : parseInt(selectedQuality.replace('p', ''))
|
||||
v.setDashQualityLevel(quality)
|
||||
// console.log(this.player().qualityLevels())
|
||||
},
|
||||
createControlTextEl: function (button) {
|
||||
const beginningHtml = `<div class="vjs-quality-level-value">
|
||||
<span id="vjs-current-quality">1080p</span>
|
||||
</div>
|
||||
<div class="vjs-quality-level-menu vjs-menu">
|
||||
<ul class="vjs-menu-content" role="menu">`
|
||||
const endingHtml = '</ul></div>'
|
||||
|
||||
let qualityHtml = `<li class="vjs-menu-item quality-item" role="menuitemradio" tabindex="-1" aria-checked="false aria-disabled="false">
|
||||
<span class="vjs-menu-item-text">Auto</span>
|
||||
<span class="vjs-control-text" aria-live="polite"></span>
|
||||
</li>`
|
||||
|
||||
levels.levels_.sort((a, b) => {
|
||||
return b.height - a.height
|
||||
}).forEach((quality) => {
|
||||
qualityHtml = qualityHtml + `<li class="vjs-menu-item quality-item" role="menuitemradio" tabindex="-1" aria-checked="false aria-disabled="false">
|
||||
<span class="vjs-menu-item-text">${quality.height}p</span>
|
||||
<span class="vjs-control-text" aria-live="polite"></span>
|
||||
</li>`
|
||||
})
|
||||
return $(button).html(
|
||||
$(beginningHtml + qualityHtml + endingHtml).attr(
|
||||
'title',
|
||||
'Select Quality'
|
||||
))
|
||||
}
|
||||
})
|
||||
videojs.registerComponent('dashQualitySelector', dashQualitySelector)
|
||||
this.player.controlBar.addChild('dashQualitySelector', {}, this.player.controlBar.children_.length - 1)
|
||||
this.determineDefaultQualityDash()
|
||||
},
|
||||
|
||||
toggleFullWindow: function() {
|
||||
if (!this.player.isFullscreen_) {
|
||||
if (this.player.isFullWindow) {
|
||||
|
|
|
@ -27,7 +27,7 @@ Vue.component('FontAwesomeIcon', FontAwesomeIcon)
|
|||
Vue.use(VueI18n)
|
||||
|
||||
// List of locales approved for use
|
||||
const activeLocales = ['en-US', 'en_GB', 'ar', 'bg', 'cs', 'da', 'de-DE', 'el', 'es', 'es-MX', 'fi', 'fr-FR', 'gl', 'he', 'hu', 'hr', 'id', 'it', 'ja', 'nl', 'pl', 'pt', 'pt-BR', 'pt-PT', 'ru', 'sk', 'sl', 'sv', 'tr', 'vi', 'zh-CN', 'zh-TW']
|
||||
const activeLocales = ['en-US', 'en_GB', 'ar', 'bg', 'cs', 'da', 'de-DE', 'el', 'es', 'es-MX', 'fi', 'fr-FR', 'gl', 'he', 'hu', 'hr', 'id', 'it', 'ja', 'nb_NO', 'nl', 'pl', 'pt', 'pt-BR', 'pt-PT', 'ru', 'sk', 'sl', 'sv', 'tr', 'uk', 'vi', 'zh-CN', 'zh-TW']
|
||||
const messages = {}
|
||||
/* eslint-disable-next-line */
|
||||
const fileLocation = isDev ? 'static/locales/' : `${__dirname}/static/locales/`
|
||||
|
|
|
@ -643,6 +643,46 @@ body.vjs-full-window {
|
|||
display: none;
|
||||
}
|
||||
|
||||
.vjs-quality-level-value {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.vjs-quality-level-value span {
|
||||
line-height: 40px;
|
||||
}
|
||||
|
||||
.vjs-quality-level-value:hover + .vjs-quality-level-menu {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.vjs-quality-level-menu {
|
||||
display: none;
|
||||
position: absolute;
|
||||
bottom: 30px;
|
||||
left: -8px;
|
||||
z-index: 5;
|
||||
background-color: #151b17;
|
||||
width: 50px;
|
||||
}
|
||||
|
||||
.vjs-quality-level-menu:hover {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.vjs-quality-level-menu .vjs-menu-item {
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.quality-selected {
|
||||
background-color: var(--primary-color);
|
||||
color: var(--text-with-main-color);
|
||||
}
|
||||
|
||||
.quality-selected:hover {
|
||||
background-color: var(--primary-color-hover) !important;
|
||||
}
|
||||
|
||||
.vjs-menu .vjs-menu-content {
|
||||
display: block;
|
||||
padding: 0;
|
||||
|
|
|
@ -30,10 +30,10 @@ Close: 'Затваряне'
|
|||
Back: 'Назад'
|
||||
Forward: 'Напред'
|
||||
|
||||
Version $ is now available! Click for more details: 'Версия $ е вече налична! Щракнете
|
||||
Version $ is now available! Click for more details: 'Версия $ е вече налична! Кликнете
|
||||
за повече детайли'
|
||||
Download From Site: 'Сваляне от сайта'
|
||||
A new blog is now available, $. Click to view more: 'Нова публикация в блога, $. Щракнете
|
||||
A new blog is now available, $. Click to view more: 'Нова публикация в блога, $. Кликнете
|
||||
за преглед'
|
||||
|
||||
# Search Bar
|
||||
|
@ -90,7 +90,7 @@ Playlists: 'Плейлисти'
|
|||
User Playlists:
|
||||
Your Playlists: 'Вашите плейлисти'
|
||||
Your saved videos are empty. Click on the save button on the corner of a video to have it listed here: Няма
|
||||
запазени видеоклипове. За запазване щракнете в ъгъла на видеоклипа
|
||||
запазени видеоклипове. За запазване кликнете в ъгъла на видеоклипа
|
||||
Playlist Message: Тази страница не отразява напълно работещи плейлисти. В него са
|
||||
изброени само видеоклипове, които сте запазили или избрали за любими. Когато работата
|
||||
приключи, всички видеоклипове, които в момента са тук, ще бъдат мигрирани в плейлист
|
||||
|
@ -305,7 +305,7 @@ Settings:
|
|||
Ip: Ip
|
||||
Your Info: Вашата информация
|
||||
Test Proxy: Тестване на прокси
|
||||
Clicking on Test Proxy will send a request to: Щракването върху "Тестване на прокси"
|
||||
Clicking on Test Proxy will send a request to: Кликването върху "Тестване на прокси"
|
||||
ще изпрати заявка до
|
||||
Proxy Port Number: Номер на прокси порта
|
||||
Proxy Host: Прокси хост
|
||||
|
@ -583,7 +583,7 @@ Share:
|
|||
Mini Player: 'Мини плейър'
|
||||
Comments:
|
||||
Comments: 'Коментари'
|
||||
Click to View Comments: 'Щракнете, за да видите коментарите'
|
||||
Click to View Comments: 'Кликнете, за да видите коментарите'
|
||||
Getting comment replies, please wait: 'Получаване на отговори на коментара, моля
|
||||
изчакайте'
|
||||
There are no more comments for this video: 'Към това видео няма повече коментари'
|
||||
|
@ -603,8 +603,8 @@ Comments:
|
|||
Up Next: 'Следващ'
|
||||
|
||||
# Toast Messages
|
||||
Local API Error (Click to copy): 'Грешка в локалния интерфейс (щракнете за копиране)'
|
||||
Invidious API Error (Click to copy): 'Грешка в Invidious интерфейса (щракнете за копиране)'
|
||||
Local API Error (Click to copy): 'Грешка в локалния интерфейс (кликни за копиране)'
|
||||
Invidious API Error (Click to copy): 'Грешка в Invidious интерфейса (кликнете за копиране)'
|
||||
Falling back to Invidious API: 'Връщане към Invidious интерфейса'
|
||||
Falling back to the local API: 'Връщане към локалния интерфейс'
|
||||
This video is unavailable because of missing formats. This can happen due to country unavailability.: 'Видеото
|
||||
|
@ -658,6 +658,6 @@ Tooltips:
|
|||
Локалният интерфейс има вградено извличане. Invidious интерфейсът изисква Invidious
|
||||
сървър, към който да се свърже.
|
||||
More: Още
|
||||
Playing Next Video Interval: Пускане на следващото видео веднага. Щракнете за отказ.
|
||||
| Пускане на следващото видео след {nextVideoInterval} секунда. Щракнете за отказl.
|
||||
| Пускане на следващото видео след {nextVideoInterval} секунди. Щракнете за отказ.
|
||||
Playing Next Video Interval: Пускане на следващото видео веднага. Кликнете за отказ.
|
||||
| Пускане на следващото видео след {nextVideoInterval} секунда. Кликнете за отказl.
|
||||
| Пускане на следващото видео след {nextVideoInterval} секунди. Кликнете за отказ.
|
||||
|
|
|
@ -192,7 +192,7 @@ Settings:
|
|||
1440p: '1440p'
|
||||
4k: '4k'
|
||||
8k: '8k'
|
||||
Playlist Next Video Interval: Interval dalšího seznamu videí
|
||||
Playlist Next Video Interval: Interval pro další video na playlistu
|
||||
Privacy Settings:
|
||||
Privacy Settings: 'Nastavení soukromí'
|
||||
Remember History: 'Zapamatovat historii'
|
||||
|
@ -653,7 +653,7 @@ Canceled next video autoplay: 'Automatické přehrávání dalšího videa bylo
|
|||
|
||||
Yes: 'Ano'
|
||||
No: 'Ne'
|
||||
Playing Next Video Interval: Přehrávání dalšího videa v žádném čase. Kliknutím zrušíte.
|
||||
Playing Next Video Interval: Přehrávání dalšího videa bez prodlevy Kliknutím zrušíte.
|
||||
| Přehrávání dalšího videa za {nextVideoInterval} s. Kliknutím zrušíte. | Přehrávání
|
||||
dalšího videa za {nextVideoInterval} s. Kliknutím zrušíte.
|
||||
More: Více
|
||||
|
|
|
@ -190,6 +190,7 @@ Settings:
|
|||
1440p: '1440p'
|
||||
4k: '4k'
|
||||
8k: '8k'
|
||||
Playlist Next Video Interval: Παύση μεταξύ Βίντεο στη λίστα αναπαραγωγής
|
||||
Privacy Settings:
|
||||
Privacy Settings: 'Ρυθμίσεις απορρήτου'
|
||||
Remember History: 'Διατήρηση ιστορικού'
|
||||
|
@ -290,6 +291,7 @@ Settings:
|
|||
Hide Channel Subscribers: Απόκρυψη συνδρομών καναλιού
|
||||
Hide Video Views: Απόκρυψη προβολών βίντεο
|
||||
Hide Active Subscriptions: Απόκρυψη ενεργών συνδρομών
|
||||
Hide Playlists: Απόκρυψη λιστών αναπαραγωγής
|
||||
The app needs to restart for changes to take effect. Restart and apply change?: Η
|
||||
εφαρμογή πρέπει να κάνει επανεκκίνηση για να εφαρμοστούν οι αλλαγές. Επανεκκίνηση
|
||||
και εφαρμογή αλλαγών;
|
||||
|
@ -411,6 +413,7 @@ Profile:
|
|||
βέβαιοι ότι θέλετε να διαγράψετε τα επιλεγμένα κανάλια; Αυτό δε θα διαγράψει
|
||||
το κανάλι από οποιοδήποτε άλλο προφίλ.'
|
||||
#On Channel Page
|
||||
Profile Filter: Φίλτρο προφίλ
|
||||
Channel:
|
||||
Subscriber: 'Συνδρομητής'
|
||||
Subscribers: 'Συνδρομητές'
|
||||
|
@ -462,7 +465,7 @@ Video:
|
|||
View: 'Προβολή'
|
||||
Views: 'Προβολές'
|
||||
Loop Playlist: 'Επανάληψη λίστας αναπαραγωγής'
|
||||
Shuffle Playlist: 'Τυχαία αναπαραγωγή'
|
||||
Shuffle Playlist: 'Τυχαία σειρά στη λίστα αναπαραγωγής'
|
||||
Reverse Playlist: 'Αντιστροφή της λίστας αναπαραγωγής'
|
||||
Play Next Video: 'Αναπαραγωγή επόμενου βίντεο'
|
||||
Play Previous Video: 'Αναπαραγωγή προηγούμενου βίντεο'
|
||||
|
@ -677,3 +680,8 @@ Tooltips:
|
|||
Invidious Instance: Το στιγμιότυπο Invidious στο οποίο το FreeTube θα συνδεθεί
|
||||
για κλήσεις διεπαφής. Καθαρίστε το παρόν στιγμιότυπο για να δείτε μια λίστα
|
||||
δημόσιων στιγμιότυπων προς επιλογή
|
||||
Playing Next Video Interval: Αναπαραγωγή επόμενου βίντεο άμεσα. Κάντε κλικ για ακύρωση.
|
||||
| Αναπαραγωγή επόμενου βίντεο σε {nextVideoInterval} δευτερόλεπτο. Κάντε κλικ για
|
||||
ακύρωση. | Αναπαραγωγή επόμενου βίντεο σε {nextVideoInterval} δευτερόλεπτα. Κάντε
|
||||
κλικ για ακύρωση.
|
||||
More: Περισσότερα
|
||||
|
|
|
@ -90,15 +90,24 @@ Most Popular: 'सबसे ज़्यादा देखा हुआ'
|
|||
Playlists: 'प्लेलिस्टे (playlists)'
|
||||
User Playlists:
|
||||
Your Playlists: 'आपके प्लेलिस्टे'
|
||||
Your saved videos are empty. Click on the save button on the corner of a video to have it listed here: आपके
|
||||
पास बचाए गए वीडियोए नहीं हैं। एक वीडियो के कोने पर सेव बटन पर क्लिक (click) करें,
|
||||
यहां लिस्ट पर वही आएगा
|
||||
Playlist Message: यह पृष्ठ पूरी तरह से काम करने वाली प्लेलिस्ट को प्रतिबिंबित नहीं
|
||||
करता है। यह केवल उन वीडियो को सूचीबद्ध करता है जिन्हें आपने सहेजा है या पसंदीदा
|
||||
है। जब काम समाप्त हो जाता है, तो वर्तमान में यहां सभी वीडियो 'पसंदीदा' प्लेलिस्ट
|
||||
में स्थानांतरित हो जाएंगे।
|
||||
History:
|
||||
# On History Page
|
||||
History: ''
|
||||
History: 'इतिहास'
|
||||
Watch History: ''
|
||||
Your history list is currently empty.: ''
|
||||
Settings:
|
||||
# On Settings Page
|
||||
Settings: ''
|
||||
The app needs to restart for changes to take effect. Restart and apply change?: ''
|
||||
Settings: 'स्थापना'
|
||||
The app needs to restart for changes to take effect. Restart and apply change?: 'ऐप
|
||||
को प्रभावी होने वाले परिवर्तनों के लिए पुनः आरंभ करने की आवश्यकता है। Restart
|
||||
और परिवर्तन लागू करें?'
|
||||
General Settings:
|
||||
General Settings: ''
|
||||
Check for Updates: ''
|
||||
|
@ -531,3 +540,4 @@ Canceled next video autoplay: ''
|
|||
|
||||
Yes: ''
|
||||
No: ''
|
||||
More: ज़्यादा
|
||||
|
|
|
@ -185,6 +185,7 @@ Settings:
|
|||
1440p: '1440 p'
|
||||
4k: '4 k'
|
||||
8k: '8 k'
|
||||
Playlist Next Video Interval: Interval sljedećeg videa zbirke
|
||||
Privacy Settings:
|
||||
Privacy Settings: 'Postavke privatnosti'
|
||||
Remember History: 'Zapamti povijest'
|
||||
|
@ -287,6 +288,7 @@ Settings:
|
|||
Hide Video Views: Sakrij broj gledanja videa
|
||||
Distraction Free Settings: Postavke za nesmetan rad
|
||||
Hide Active Subscriptions: Sakrij aktivne pretplate
|
||||
Hide Playlists: Sakrij zbirke
|
||||
The app needs to restart for changes to take effect. Restart and apply change?: Promjene
|
||||
će se primijeniti nakon ponovnog pokeretanja programa. Ponovo pokrenuti program?
|
||||
Proxy Settings:
|
||||
|
@ -410,6 +412,7 @@ Profile:
|
|||
$ selected: $ je odabran
|
||||
Other Channels: Ostali kanali
|
||||
Subscription List: Popis pretplata
|
||||
Profile Filter: Filtar profila
|
||||
Channel:
|
||||
Subscriber: 'Pretplatnik'
|
||||
Subscribers: 'Pretplatnici'
|
||||
|
@ -660,3 +663,7 @@ Tooltips:
|
|||
standardne metode za dohvaćanje podataka tvoje pretplate. RSS je brži i sprečava
|
||||
blokiranje IP adresa, ali ne pruža određene podatke kao što su trajanje videa
|
||||
ili stanja „uživo”
|
||||
Playing Next Video Interval: Trenutna reprodukcija sljedećeg videa. Pritisni za prekid.
|
||||
| Reprodukcija sljedećeg videa za {nextVideoInterval} sekunde. Pritisni za prekid.
|
||||
| Reprodukcija sljedećeg videa za {nextVideoInterval} sekundi. Pritisni za prekid.
|
||||
More: Još
|
||||
|
|
|
@ -126,6 +126,7 @@ Settings:
|
|||
(기본설정은 https://invidious.snopyta.org)'
|
||||
Region for Trending: '트렌드 국가'
|
||||
#! List countries
|
||||
View all Invidious instance information: Indivious 서버의 전체 목록 보기
|
||||
Theme Settings:
|
||||
Theme Settings: '테마 설정'
|
||||
Match Top Bar with Main Color: '상단바를 메인컬러와 동기화'
|
||||
|
@ -185,6 +186,7 @@ Settings:
|
|||
1440p: '1440p'
|
||||
4k: '4k'
|
||||
8k: '8k'
|
||||
Playlist Next Video Interval: 재생 목록 다음 비디오 간격
|
||||
Privacy Settings:
|
||||
Privacy Settings: '개인정보 설정'
|
||||
Remember History: '기록 저장하기'
|
||||
|
@ -213,36 +215,40 @@ Settings:
|
|||
Hide Trending Videos: '현재 트렌딩 영상 숨기기'
|
||||
Hide Popular Videos: '인기 영상 숨기기'
|
||||
Hide Live Chat: '실시간 댓글 숨기기'
|
||||
Hide Playlists: 재생 목록 숨기기
|
||||
Hide Active Subscriptions: 활성 구독 숨기기
|
||||
Data Settings:
|
||||
Data Settings: '데이터 설정'
|
||||
Select Import Type: '구독 및 재생 목록 가져오기 형식 고르기'
|
||||
Select Export Type: '구독 및 재생 목록 내보내기 형식 고르기'
|
||||
Select Import Type: '가져오기 유형 선택'
|
||||
Select Export Type: '내보내기 유형 선택'
|
||||
Import Subscriptions: '구독 목록 가져오기'
|
||||
Import FreeTube: '구독 목록 가져오기: 형식 Freetube'
|
||||
Import YouTube: '구독 목록 가져오기 형식: 유투브'
|
||||
Import NewPipe: '구독 목록 가져오기 형식: NewPipe'
|
||||
Check for Legacy Subscriptions: ''
|
||||
Import FreeTube: 'FreeTube 가져오기'
|
||||
Import YouTube: 'YouTube 가져오기'
|
||||
Import NewPipe: 'NewPipe 가져오기'
|
||||
Check for Legacy Subscriptions: '레거시 구독 확인'
|
||||
Export Subscriptions: '구독 목록 내보내기'
|
||||
Export FreeTube: '구독 목록 내보내기 형식: FreeTube'
|
||||
Export YouTube: '구독 목록 내보내기 형식: 유투브'
|
||||
Export NewPipe: '구독 목록 내보내기 형식: NewPipe'
|
||||
Export FreeTube: 'FreeTube 내보내기'
|
||||
Export YouTube: 'YouTube 내보내기'
|
||||
Export NewPipe: 'NewPipe 내보내기'
|
||||
Import History: '재생 기록 가져오기'
|
||||
Export History: '재생 기록 내보내기'
|
||||
Profile object has insufficient data, skipping item: ''
|
||||
All subscriptions and profiles have been successfully imported: ''
|
||||
All subscriptions have been successfully imported: ''
|
||||
One or more subscriptions were unable to be imported: ''
|
||||
Invalid subscriptions file: ''
|
||||
This might take a while, please wait: ''
|
||||
Invalid history file: ''
|
||||
Subscriptions have been successfully exported: ''
|
||||
History object has insufficient data, skipping item: ''
|
||||
All watched history has been successfully imported: ''
|
||||
All watched history has been successfully exported: ''
|
||||
Unable to read file: ''
|
||||
Unable to write file: ''
|
||||
Unknown data key: ''
|
||||
How do I import my subscriptions?: ''
|
||||
Profile object has insufficient data, skipping item: '프로필 개체에 데이터가 부족하여 항목을 건너뜁니다'
|
||||
All subscriptions and profiles have been successfully imported: '모든 구독 및 프로필을
|
||||
성공적으로 가져왔습니다'
|
||||
All subscriptions have been successfully imported: '모든 구독을 성공적으로 가져왔습니다'
|
||||
One or more subscriptions were unable to be imported: '하나 이상의 구독을 가져올 수 없습니다'
|
||||
Invalid subscriptions file: '잘못된 구독 파일입니다'
|
||||
This might take a while, please wait: '시간이 좀 걸릴 수 있습니다. 잠시 기다려 주십시오'
|
||||
Invalid history file: '잘못된 기록 파일입니다'
|
||||
Subscriptions have been successfully exported: '구독을 성공적으로 내보냈습니다'
|
||||
History object has insufficient data, skipping item: '기록 개체에 데이터가 부족하여 항목을 건너뜁니다'
|
||||
All watched history has been successfully imported: '시청한 모든 기록을 성공적으로 가져왔습니다'
|
||||
All watched history has been successfully exported: '시청한 모든 기록이 성공적으로 내보내졌습니다'
|
||||
Unable to read file: '파일을 읽을 수 없습니다'
|
||||
Unable to write file: '파일을 쓸 수 없습니다'
|
||||
Unknown data key: '알 수 없는 데이터 키입니다'
|
||||
How do I import my subscriptions?: '구독을 가져오려면 어떻게 해야 합니까?'
|
||||
Manage Subscriptions: 구독 관리
|
||||
Advanced Settings:
|
||||
Advanced Settings: ''
|
||||
Enable Debug Mode (Prints data to the console): ''
|
||||
|
@ -265,9 +271,24 @@ Settings:
|
|||
#& Yes
|
||||
#& No
|
||||
|
||||
Proxy Settings:
|
||||
Error getting network information. Is your proxy configured properly?: 네트워크 정보를
|
||||
가져오는 중 오류가 발생했습니다. 프록시가 올바르게 구성되어 있습니까?
|
||||
City: 도시
|
||||
Region: 지역
|
||||
Country: 국가
|
||||
Ip: Ip
|
||||
Your Info: 사용자 정보
|
||||
Test Proxy: 프록시 테스트
|
||||
Clicking on Test Proxy will send a request to: 프록시 테스트를 클릭하면 다음 주소로 요청이 전송됩니다
|
||||
Proxy Port Number: 프록시 포트 번호
|
||||
Proxy Host: 프록시 호스트
|
||||
Proxy Protocol: 프록시 프로토콜
|
||||
Enable Tor / Proxy: Tor / Proxy 사용
|
||||
Proxy Settings: 프록시 설정
|
||||
About:
|
||||
#On About page
|
||||
About: ''
|
||||
About: '정보'
|
||||
#& About
|
||||
'This software is FOSS and released under the GNU Affero General Public License v3.0.': ''
|
||||
|
||||
|
@ -287,51 +308,78 @@ About:
|
|||
|
||||
Latest FreeTube News: ''
|
||||
|
||||
Donate: 기부
|
||||
these people and projects: 이 사람들과 프로젝트
|
||||
FreeTube is made possible by: FreeTube는 가능합니다
|
||||
Credits: 제작
|
||||
Translate: 번역
|
||||
room rules: 방 규정
|
||||
Please read the: 읽어주세요
|
||||
Chat on Matrix: 매트릭스 채팅
|
||||
Mastodon: Mastodon
|
||||
Email: 이메일
|
||||
Blog: 블로그
|
||||
Website: 웹사이트
|
||||
Please check for duplicates before posting: 게시하기 전에 중복 항목을 확인하십시오
|
||||
GitHub issues: GitHub 이슈
|
||||
Report a problem: 문제 보고
|
||||
FAQ: FAQ
|
||||
FreeTube Wiki: FreeTube Wiki
|
||||
Help: 도움말
|
||||
GitHub releases: GitHub 릴리스
|
||||
Downloads / Changelog: 다운로드 / 변경 로그
|
||||
View License: 라이센스 보기
|
||||
Licensed under the AGPLv3: AGPLv3에 따라 라이센스가 부여됨
|
||||
Source code: 소스 코드
|
||||
Beta: 베타
|
||||
Profile:
|
||||
Profile Select: ''
|
||||
All Channels: ''
|
||||
Profile Manager: ''
|
||||
Create New Profile: ''
|
||||
Edit Profile: ''
|
||||
Color Picker: ''
|
||||
Custom Color: ''
|
||||
Profile Preview: ''
|
||||
Create Profile: ''
|
||||
Update Profile: ''
|
||||
Make Default Profile: ''
|
||||
Delete Profile: ''
|
||||
Are you sure you want to delete this profile?: ''
|
||||
All subscriptions will also be deleted.: ''
|
||||
Profile could not be found: ''
|
||||
Your profile name cannot be empty: ''
|
||||
Profile has been created: ''
|
||||
Profile has been updated: ''
|
||||
Your default profile has been set to $: ''
|
||||
Removed $ from your profiles: ''
|
||||
Your default profile has been changed to your primary profile: ''
|
||||
$ is now the active profile: ''
|
||||
Subscription List: ''
|
||||
Other Channels: ''
|
||||
$ selected: ''
|
||||
Select All: ''
|
||||
Select None: ''
|
||||
Delete Selected: ''
|
||||
Add Selected To Profile: ''
|
||||
No channel(s) have been selected: ''
|
||||
Profile Select: '프로필 선택'
|
||||
All Channels: '모든 채널'
|
||||
Profile Manager: '프로필 관리자'
|
||||
Create New Profile: '새 프로파일 작성'
|
||||
Edit Profile: '프로필 편집'
|
||||
Color Picker: '색상 선택기'
|
||||
Custom Color: '사용자 지정 색'
|
||||
Profile Preview: '프로필 미리보기'
|
||||
Create Profile: '프로필 작성'
|
||||
Update Profile: '프로필 업데이트'
|
||||
Make Default Profile: '기본 프로파일 만들기'
|
||||
Delete Profile: '프로필 삭제'
|
||||
Are you sure you want to delete this profile?: '이 프로필을 삭제하시겠습니까?'
|
||||
All subscriptions will also be deleted.: '모든 구독도 삭제됩니다.'
|
||||
Profile could not be found: '프로필을 찾을 수 없습니다'
|
||||
Your profile name cannot be empty: '프로필 이름은 비워 둘 수 없습니다'
|
||||
Profile has been created: '프로필이 생성되었습니다'
|
||||
Profile has been updated: '프로필이 업데이트되었습니다'
|
||||
Your default profile has been set to $: '기본 프로필이 $로 설정되었습니다'
|
||||
Removed $ from your profiles: '프로필에서 $가 제거되었습니다'
|
||||
Your default profile has been changed to your primary profile: '기본값 프로필이 기본 프로필로
|
||||
변경되었습니다'
|
||||
$ is now the active profile: '$가 현재 활성 프로필입니다'
|
||||
Subscription List: '구독 목록'
|
||||
Other Channels: '기타 채널'
|
||||
$ selected: '$선택되었습니다'
|
||||
Select All: '모두 선택'
|
||||
Select None: '선택 안 함'
|
||||
Delete Selected: '선택한 항목 삭제'
|
||||
Add Selected To Profile: '프로필에 선택한 항목 추가'
|
||||
No channel(s) have been selected: '선택된 채널이 없습니다'
|
||||
? This is your primary profile. Are you sure you want to delete the selected channels? The
|
||||
same channels will be deleted in any profile they are found in.
|
||||
: ''
|
||||
Are you sure you want to delete the selected channels? This will not delete the channel from any other profile.: ''
|
||||
: '이것은 귀하의 기본 프로필입니다. 선택한 채널을 삭제하시겠습니까? 동일한 채널이 발견되는 모든 프로필에서 삭제됩니다.'
|
||||
Are you sure you want to delete the selected channels? This will not delete the channel from any other profile.: '선택한
|
||||
채널을 삭제하시겠습니까? 다른 프로파일에서는 채널이 삭제되지 않습니다.'
|
||||
#On Channel Page
|
||||
Profile Filter: 프로필 필터
|
||||
Channel:
|
||||
Subscriber: ''
|
||||
Subscribers: ''
|
||||
Subscribe: ''
|
||||
Unsubscribe: ''
|
||||
Channel has been removed from your subscriptions: ''
|
||||
Removed subscription from $ other channel(s): ''
|
||||
Added channel to your subscriptions: ''
|
||||
Search Channel: ''
|
||||
Subscriber: '구독자'
|
||||
Subscribers: '구독자'
|
||||
Subscribe: '구독'
|
||||
Unsubscribe: '구독 취소'
|
||||
Channel has been removed from your subscriptions: '채널이 구독에서 제거되었습니다'
|
||||
Removed subscription from $ other channel(s): '$ 다른 채널에서 구독을 제거했습니다'
|
||||
Added channel to your subscriptions: '구독에 채널을 추가했습니다'
|
||||
Search Channel: '채널 검색'
|
||||
Your search results have returned 0 results: ''
|
||||
Sort By: ''
|
||||
Videos:
|
||||
|
@ -534,3 +582,4 @@ Canceled next video autoplay: ''
|
|||
|
||||
Yes: ''
|
||||
No: ''
|
||||
More: 더 보기
|
||||
|
|
|
@ -184,6 +184,7 @@ Settings:
|
|||
1440p: '1440p'
|
||||
4k: 'UHD'
|
||||
8k: '8k UHD'
|
||||
Playlist Next Video Interval: Intervall for avspilling av neste i spilleliste
|
||||
Privacy Settings:
|
||||
Privacy Settings: 'Personvernsinnstillinger'
|
||||
Remember History: 'Husk historikk'
|
||||
|
@ -300,6 +301,7 @@ Settings:
|
|||
Hide Popular Videos: Skjul populære videoer
|
||||
Hide Video Views: Skjul videovisninger
|
||||
Hide Live Chat: Gjem direktechat
|
||||
Hide Playlists: Skjul spillelister
|
||||
The app needs to restart for changes to take effect. Restart and apply change?: Start
|
||||
programmet på ny for å bruke de nye endringene?
|
||||
About:
|
||||
|
@ -607,6 +609,7 @@ Profile:
|
|||
Subscription List: Abonnementsliste
|
||||
Profile Preview: Profilforhåndsvisning
|
||||
Custom Color: Egendefinert farge
|
||||
Profile Filter: Profilfilter
|
||||
This video is unavailable because of missing formats. This can happen due to country unavailability.: Denne
|
||||
videoen er utilgjengelig grunnet manglende formater. Dette kan skyldes tilgangbegrensninger
|
||||
i ditt land.
|
||||
|
@ -645,3 +648,7 @@ The playlist has been reversed: Spillelisten har blitt snudd
|
|||
Download From Site: Last ned fra nettsiden
|
||||
Version $ is now available! Click for more details: Versjon $ er nå tilgjengelig.
|
||||
Klikk for flere detaljer.
|
||||
Playing Next Video Interval: Spiller neste video nå. Klikk for å avbryte. | Spiller
|
||||
neste video om {nextVideoInterval} sekund. Klikk for å avbryte. | Spiller neste
|
||||
video om {nextVideoInterval} sekunder. Klikk for å avbryte.
|
||||
More: Mer
|
||||
|
|
|
@ -186,6 +186,7 @@ Settings:
|
|||
1440p: '1440p'
|
||||
4k: '4k'
|
||||
8k: '8k'
|
||||
Playlist Next Video Interval: Задержка перед автовоспроизведением
|
||||
Subscription Settings:
|
||||
Subscription Settings: 'Настройки подписки'
|
||||
Hide Videos on Watch: 'Скрыть видео после просмотра'
|
||||
|
@ -290,6 +291,7 @@ Settings:
|
|||
Hide Video Likes And Dislikes: Скрыть лайки и дизлайки к видео
|
||||
Hide Video Views: Скрыть просмотры видео
|
||||
Hide Active Subscriptions: Скрыть активные подписки
|
||||
Hide Playlists: Скрыть плейлисты
|
||||
The app needs to restart for changes to take effect. Restart and apply change?: Чтобы
|
||||
изменения вступили в силу, необходимо перезапустить приложение. Перезапустить
|
||||
и применить изменения?
|
||||
|
@ -297,7 +299,7 @@ Settings:
|
|||
Error getting network information. Is your proxy configured properly?: Ошибка
|
||||
при получении информации о сети. Вы уверены, что прокси настроен правильно?
|
||||
Your Info: Ваша информация
|
||||
Clicking on Test Proxy will send a request to: Нажмите на rкнопку "Протестировать
|
||||
Clicking on Test Proxy will send a request to: Нажмите на кнопку "Протестировать
|
||||
соединение", чтобы отправить запрос на
|
||||
Test Proxy: Протестировать соединение
|
||||
Proxy Port Number: Порт прокси-сервера
|
||||
|
@ -570,8 +572,8 @@ Loop is now disabled: 'Цикл теперь отключён'
|
|||
Loop is now enabled: 'Цикл теперь включён'
|
||||
Shuffle is now disabled: 'Перемешивание теперь отключено'
|
||||
Shuffle is now enabled: 'Перемешивание теперь включено'
|
||||
Playing Next Video: 'Воспроизвести следующее видео'
|
||||
Playing Previous Video: 'Воспроизвести предыдущее видео'
|
||||
Playing Next Video: 'Воспроизведение следующего видео'
|
||||
Playing Previous Video: 'Воспроизведение предыдущего видео'
|
||||
Playing next video in 5 seconds. Click to cancel: 'Воспроизведение следующего видео
|
||||
через 5 секунд. Нажмите, чтобы отменить.'
|
||||
Canceled next video autoplay: 'Отменено автовоспроизведение следующего видео'
|
||||
|
@ -622,6 +624,7 @@ Profile:
|
|||
$ selected: $ выбрано
|
||||
Other Channels: Другие каналы
|
||||
Subscription List: Список подписок
|
||||
Profile Filter: Фильтры профилей
|
||||
The playlist has been reversed: Плейлист был перевёрнут
|
||||
A new blog is now available, $. Click to view more: Теперь доступен новый блог $.
|
||||
Нажмите, чтобы увидеть больше
|
||||
|
@ -648,10 +651,10 @@ Tooltips:
|
|||
из страны, которые вы хотите отображать. Не все отображаемые страны на самом
|
||||
деле поддерживаются YouTube
|
||||
Subscription Settings:
|
||||
Fetch Feeds from RSS: Если этот параметр включен, FreeTube будет использовать
|
||||
RSS вместо метода по умолчанию для получения вашего канала подписки. RSS работает
|
||||
быстрее и предотвращает блокировку IP, но не предоставляет определенную информацию,
|
||||
такую как продолжительность видео или статус в реальном времени
|
||||
Fetch Feeds from RSS: Если этот параметр включен, FreeTube будет получать вашу
|
||||
ленту подписок с помощью RSS, а не как обычно. RSS работает быстрее и предотвращает
|
||||
блокировку IP, но не предоставляет определенную информацию, такую как продолжительность
|
||||
видео или сведения о том, транслируется ли видео в реальном времени
|
||||
Player Settings:
|
||||
Default Video Format: Установите форматы, используемые при воспроизведении видео.
|
||||
Формат dash может воспроизводить более высокое качество. Устаревшие форматы
|
||||
|
@ -664,3 +667,8 @@ Tooltips:
|
|||
устаревшие форматы, возвращаемые им, вместо форматов, возвращаемых Invidious.
|
||||
Помогает, когда видео, возвращенные Invidious, не воспроизводятся из-за ограничений
|
||||
страны
|
||||
More: Больше
|
||||
Playing Next Video Interval: Воспроизведение следующего видео без задержки. Нажмите
|
||||
для отмены. | Воспроизведение следующего видео через {nextVideoInterval} сек. Нажмите
|
||||
для отмены. | Воспроизведение следующего видео через {nextVideoInterval} сек. Нажмите
|
||||
для отмены.
|
||||
|
|
|
@ -105,7 +105,7 @@ Settings:
|
|||
Preferred API Backend:
|
||||
Preferred API Backend: 'Preferované API Backend'
|
||||
Local API: 'Lokálne API'
|
||||
Invidious API: 'Invidious API'
|
||||
Invidious API: 'API služby Invidious'
|
||||
Video View Type:
|
||||
Video View Type: 'Typ zobrazenia videa'
|
||||
Grid: 'Mriežka'
|
||||
|
@ -184,6 +184,7 @@ Settings:
|
|||
1440p: '1440p'
|
||||
4k: '4k'
|
||||
8k: '8k'
|
||||
Playlist Next Video Interval: Čas spustenia nasledujúceho videa v zozname videí
|
||||
Subscription Settings:
|
||||
Subscription Settings: 'Nastavenia Odberov'
|
||||
Hide Videos on Watch: 'Skryť videá po zhliadnutí'
|
||||
|
@ -272,6 +273,7 @@ Settings:
|
|||
Hide Video Views: Skryť počet zhliadnutí
|
||||
Distraction Free Settings: Nastavenia nerušenia
|
||||
Hide Active Subscriptions: Skryť aktívne odbery
|
||||
Hide Playlists: Skryť zoznamy videí
|
||||
Privacy Settings:
|
||||
Are you sure you want to remove all subscriptions and profiles? This cannot be undone.: Naozaj
|
||||
chcete odstrániť všetky odbery a profily? Toto je nenávratná akcia.
|
||||
|
@ -356,7 +358,7 @@ About:
|
|||
room rules: pravidlá miestností
|
||||
Please read the: Prečítajte si
|
||||
Chat on Matrix: Napíšte nám na Matrix-e
|
||||
Mastodon: Mastodon
|
||||
Mastodon: Komunikačná platforma Mastodon
|
||||
Email: Elektronická pošta
|
||||
Blog: Blog
|
||||
Website: Webstránka
|
||||
|
@ -649,9 +651,14 @@ Profile:
|
|||
Profile Manager: Správca profilov
|
||||
All Channels: Všetky kanály
|
||||
Profile Select: Vyberte profil
|
||||
Profile Filter: Filter Profilov
|
||||
A new blog is now available, $. Click to view more: Nový príspevok na blogu je k dispozícií,
|
||||
$. Klikni pre viac informácií
|
||||
Download From Site: Stiahnuť zo stránky
|
||||
Version $ is now available! Click for more details: Je k dispozícií verzia $ ! Klikni
|
||||
pre viac informácií
|
||||
Locale Name: Slovenčina
|
||||
Playing Next Video Interval: Prehrávanie ďalšieho videa za chvíľu. Kliknutím zrušíte.
|
||||
| Prehráva sa ďalšie video o {nextVideoInterval} sekundu. Kliknutím zrušíte. | Prehráva
|
||||
sa ďalšie video o {nextVideoInterval} sekúnd. Kliknutím zrušíte.
|
||||
More: Viac
|
||||
|
|
|
@ -176,6 +176,7 @@ Settings:
|
|||
1440p: '1440p'
|
||||
4k: '4k'
|
||||
8k: '8k'
|
||||
Playlist Next Video Interval: 播放清單 下一個影片間隔時間
|
||||
Subscription Settings:
|
||||
Subscription Settings: '訂閱設定'
|
||||
Hide Videos on Watch: '觀看時隱藏影片'
|
||||
|
@ -265,6 +266,7 @@ Settings:
|
|||
Hide Recommended Videos: 隱藏推薦影片
|
||||
Hide Channel Subscribers: 隱藏頻道訂閱者
|
||||
Hide Active Subscriptions: 隱藏作用中的訂閱
|
||||
Hide Playlists: 隱藏播放清單
|
||||
The app needs to restart for changes to take effect. Restart and apply change?: 此變更需要重啟讓修改生效。重啟並且套用變更?
|
||||
Proxy Settings:
|
||||
Error getting network information. Is your proxy configured properly?: 取得網路資訊時發生錯誤。您的代理伺服器設定正確嗎?
|
||||
|
@ -328,7 +330,7 @@ About:
|
|||
room rules: 聊天室規則
|
||||
Please read the: 請閱讀
|
||||
Chat on Matrix: 在 Matrix 上聊天
|
||||
Mastodon: Mastodon
|
||||
Mastodon: Mastodon(長毛象/萬象)
|
||||
Please check for duplicates before posting: 提交前請檢查有無重複的問題
|
||||
GitHub issues: GitHub 問題追蹤器
|
||||
Report a problem: 回報問題
|
||||
|
@ -363,7 +365,7 @@ Channel:
|
|||
About:
|
||||
About: '關於'
|
||||
Channel Description: '頻道說明'
|
||||
Featured Channels: '列出頻道'
|
||||
Featured Channels: '推薦頻道'
|
||||
Added channel to your subscriptions: 已新增頻道至您的訂閱
|
||||
Removed subscription from $ other channel(s): 從$個其他頻道移除訂閱
|
||||
Channel has been removed from your subscriptions: 頻道已從您的訂閱中移除
|
||||
|
@ -420,7 +422,7 @@ Video:
|
|||
Minute: 分鐘
|
||||
Published on: '發布於'
|
||||
# $ is replaced with the number and % with the unit (days, hours, minutes...)
|
||||
Publicationtemplate: '$ %前'
|
||||
Publicationtemplate: '$ % 前'
|
||||
#& Videos
|
||||
Video has been removed from your history: 影片已從您的歷史紀錄中移除
|
||||
Video has been marked as watched: 影片標記為已觀看
|
||||
|
@ -445,7 +447,7 @@ Video:
|
|||
Open Channel in Invidious: 在Invidious開啟頻道
|
||||
Copy YouTube Channel Link: 複製YouTube頻道連結
|
||||
Open Channel in YouTube: 在YouTube開啟頻道
|
||||
Started streaming on: '開始直播時間:'
|
||||
Started streaming on: '開始直播時間'
|
||||
Streamed on: 直播於
|
||||
Video has been removed from your saved list: 影片已從您的播放清單移除
|
||||
Video has been saved: 影片已儲存
|
||||
|
@ -500,7 +502,7 @@ Mini Player: '迷你播放器'
|
|||
Comments:
|
||||
Comments: '留言'
|
||||
Click to View Comments: '點擊查看留言'
|
||||
Getting comment replies, please wait: '獲取留言中,請稍候...'
|
||||
Getting comment replies, please wait: '擷取留言中,請稍候...'
|
||||
Show Comments: '查看留言'
|
||||
Hide Comments: '隱藏留言'
|
||||
# Context: View 10 Replies, View 1 Reply
|
||||
|
@ -572,6 +574,7 @@ Profile:
|
|||
$ selected: $個選取的
|
||||
Other Channels: 其他頻道
|
||||
Subscription List: 訂閱清單
|
||||
Profile Filter: 設定檔篩選器
|
||||
The playlist has been reversed: 播放清單已反轉
|
||||
A new blog is now available, $. Click to view more: 已有新的部落格文章,$。點擊以檢視更多
|
||||
Download From Site: 從網站下載
|
||||
|
@ -579,7 +582,7 @@ Version $ is now available! Click for more details: 版本更新囉! 最新版
|
|||
This video is unavailable because of missing formats. This can happen due to country unavailability.: 沒有這個影片因為缺少格式。這個可能發生由於國家不可用。
|
||||
Tooltips:
|
||||
Subscription Settings:
|
||||
Fetch Feeds from RSS: 啟用後,FreeTube 將使用 RSS 而非預設方式來取得您的訂閱推送。RSS 更快而且可避免 IP 封鎖,但不提供某些訊息,如影片長度與即時狀態
|
||||
Fetch Feeds from RSS: 啟用後,FreeTube將使用RSS代替它的預設方法來抓取您的訂閱來源。RSS的速度較快,而且可以防止IP封鎖,但它可能不會提供某些資訊,例如影片長度或是直播狀態。
|
||||
Player Settings:
|
||||
Default Video Format: 設定要用於影片播放的格式。Dash格式有更高的品質。傳統格式會限制在 720p但頻寬需求更低。音訊格式為僅有音訊的串流
|
||||
Proxy Videos Through Invidious: 將連線到 Invidious而非直接連線到 YouTube 來提供影片。覆寫 API 偏好
|
||||
|
@ -593,3 +596,6 @@ Tooltips:
|
|||
Preferred API Backend: 選擇 FreeTube 要用於取得YouTube資料的伺服器。本地 API 是內建擷取器。Invidious
|
||||
API 需要 Invidious 伺服器才能連線。
|
||||
Region for Trending: 發燒影片區域可以讓您選擇想要顯示哪個國家的發燒影片。 注意:並非所有國家都被YouTube支援
|
||||
Playing Next Video Interval: 馬上播放下一個影片。點擊取消。| 播放下一個影片的時間為{nextVideoInterval}秒。點擊取消。|
|
||||
播放下一個影片的時間為{nextVideoInterval}秒。點擊取消。
|
||||
More: 更多
|
||||
|
|
Loading…
Reference in New Issue