This commit is contained in:
Luca 2020-10-20 12:32:57 +02:00
commit 8a89062387
38 changed files with 21422 additions and 59 deletions

View File

@ -12,7 +12,19 @@ jobs:
strategy:
matrix:
node-version: [12.x]
os: [ubuntu-latest, windows-latest, macos-latest]
runtime: [ linux-x64, linux-arm64, win-x64, osx-x64 ]
include:
- runtime: linux-x64
os: ubuntu-latest
- runtime: linux-arm64
os: ubuntu-latest
- runtime: osx-x64
os: macOS-latest
- runtime: win-x64
os: windows-latest
runs-on: ${{ matrix.os }}
@ -24,103 +36,124 @@ jobs:
node-version: ${{ matrix.node-version }}
- run: npm ci
- run: npm run lint
- name: Install libarchive-tools
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-x64')
run: sudo apt -y install libarchive-tools
- run: npm run build --if-present
- name: Build x64 with Node.js ${{ matrix.node-version}}
if: contains(matrix.runtime, 'x64')
run: npm run build --if-present
- name: Build ARM64 with Node.js ${{ matrix.node-version}}
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-arm64')
run: npm run build:arm --if-present
- name: Upload Linux .zip x64 Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-x64')
with:
name: freetube_0.9.0_linux_portable_x64
path: build/freetube-0.9.0.zip
- name: Upload Linux .zip ARM Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-arm64')
with:
name: freetube_0.9.0_linux_portable_arm64
path: build/freetube-0.9.0-arm64.zip
- name: Upload .deb x64 Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-x64')
with:
name: freetube_0.9.0_amd64.deb
path: build/freetube_0.9.0_amd64.deb
- name: Upload .deb ARM Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-arm64')
with:
name: freetube_0.9.0_arm64.deb
path: build/freetube_0.9.0_arm64.deb
- name: Upload AppImage x64 Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-x64')
with:
name: freetube_0.9.0_amd64.AppImage
path: build/FreeTube-0.9.0.AppImage
- name: Upload AppImage ARM Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-arm64')
with:
name: freetube_0.9.0_arm64.AppImage
path: build/FreeTube-0.9.0-arm64.AppImage
- name: Upload .rpm x64 Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-x64')
with:
name: freetube_0.9.0_amd64.rpm
path: build/freetube-0.9.0.x86_64.rpm
- name: Upload .rpm ARM Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-arm64')
with:
name: freetube_0.9.0_arm64.rpm
path: build/freetube-0.9.0.arm64.rpm
- name: Upload Alpine .apk x64 Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-x64')
with:
name: freetube_0.9.0_alpine_amd64.apk
path: build/freetube-0.9.0.apk
- name: Upload Alpine .apk ARM Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-arm64')
with:
name: freetube_0.9.0_alpine_arm64.apk
path: build/freetube-0.9.0-arm64.apk
- name: Upload Pacman .pacman x64 Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-x64')
with:
name: freetube_0.9.0_pacman_arm64.pacman
path: build/freetube-0.9.0.pacman
- name: Upload Web Build
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'ubuntu')
if: startsWith(matrix.os, 'ubuntu') && startsWith(matrix.runtime, 'linux-x64')
with:
name: freetube_0.9.0_static_web
path: dist/web
- name: Upload Windows .exe Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'windows')
with:
name: freetube-0.9.0-win-x64-portable
path: build/freetube-0.9.0-win.zip
- name: Upload Windows .zip Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'windows')
with:
name: freetube-0.9.0-setup-x64.exe
path: build/freetube Setup 0.9.0.exe
- name: Upload Windows Portable Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'windows')
with:
name: freetube-0.9.0-portable-x64.exe
path: build/freetube 0.9.0.exe
- name: Upload Mac .dmg Artifact
uses: actions/upload-artifact@v2
if: startsWith(matrix.os, 'macos')

20750
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -42,7 +42,7 @@
"youtube-chat": "^1.1.0",
"youtube-suggest": "^1.1.0",
"yt-channel-info": "^1.1.4",
"yt-comment-scraper": "^1.3.6",
"yt-comment-scraper": "^1.3.7",
"yt-dash-manifest-generator": "^1.1.0",
"yt-trending-scraper": "^1.0.3",
"yt-xml2vtt": "^1.1.2",

View File

@ -1,7 +1,11 @@
import Vue from 'vue'
import FtTooltip from '../ft-tooltip/ft-tooltip.vue'
export default Vue.extend({
name: 'FtInput',
components: {
'ft-tooltip': FtTooltip
},
props: {
placeholder: {
type: String,
@ -30,6 +34,10 @@ export default Vue.extend({
dataList: {
type: Array,
default: () => { return [] }
},
tooltip: {
type: String,
default: ''
}
},
data: function () {

View File

@ -11,6 +11,12 @@
:for="id"
>
{{ placeholder }}
<ft-tooltip
v-if="tooltip !== ''"
class="selectTooltip"
position="right"
:tooltip="tooltip"
/>
</label>
<input
:id="id"

View File

@ -93,6 +93,10 @@ export default Vue.extend({
return `https://www.youtube.com/watch?v=${this.id}`
},
youtubeShareUrl: function () {
return `https://youtu.be/${this.id}`
},
youtubeEmbedUrl: function () {
return `https://www.youtube-nocookie.com/embed/${this.id}`
},
@ -168,7 +172,7 @@ export default Vue.extend({
}
break
case 'copyYoutube':
navigator.clipboard.writeText(this.youtubeUrl)
navigator.clipboard.writeText(this.youtubeShareUrl)
this.showToast({
message: this.$t('Share.YouTube URL copied to clipboard')
})

View File

@ -68,6 +68,12 @@
color: var(--tertiary-text-color);
}
.selectTooltip {
position: absolute;
top: -20px;
right: 17px;
}
/* LABEL ======================================= */
.select-label {

View File

@ -1,7 +1,11 @@
import Vue from 'vue'
import FtTooltip from '../ft-tooltip/ft-tooltip.vue'
export default Vue.extend({
name: 'FtSelect',
components: {
'ft-tooltip': FtTooltip
},
props: {
placeholder: {
type: String,
@ -18,6 +22,10 @@ export default Vue.extend({
selectValues: {
type: Array,
required: true
},
tooltip: {
type: String,
default: ''
}
}
})

View File

@ -22,6 +22,11 @@
<label class="select-label">
{{ placeholder }}
</label>
<ft-tooltip
v-if="tooltip !== ''"
class="selectTooltip"
:tooltip="tooltip"
/>
</div>
</template>

View File

@ -50,6 +50,10 @@ export default Vue.extend({
return `https://www.youtube.com/watch?v=${this.id}`
},
youtubeShareURL() {
return `https://youtu.be/${this.id}`
},
youtubeEmbedURL() {
return `https://www.youtube-nocookie.com/embed/${this.id}`
}
@ -88,7 +92,7 @@ export default Vue.extend({
this.showToast({
message: this.$t('Share.YouTube URL copied to clipboard')
})
this.copy(this.getFinalUrl(this.youtubeURL))
this.copy(this.getFinalUrl(this.youtubeShareURL))
this.$refs.iconButton.focusOut()
},

View File

@ -1,7 +1,11 @@
import Vue from 'vue'
import FtTooltip from '../ft-tooltip/ft-tooltip.vue'
export default Vue.extend({
name: 'FtToggleSwitch',
components: {
'ft-tooltip': FtTooltip
},
props: {
label: {
type: String,
@ -18,6 +22,10 @@ export default Vue.extend({
disabled: {
type: Boolean,
default: false
},
tooltip: {
type: String,
default: ''
}
},
data: function () {

View File

@ -18,6 +18,11 @@
class="switch-label"
>
{{ label }}
<ft-tooltip
v-if="tooltip !== ''"
class="selectTooltip"
:tooltip="tooltip"
/>
</label>
</div>
</template>

View File

@ -0,0 +1,87 @@
.button {
background-color: transparent;
border-style: none;
color: var(--primary-text-color);
cursor: pointer;
font-size: 1rem;
padding: 0;
}
.button:focus + .text,
.button:hover + .text {
opacity: 1;
visibility: visible;
}
.button:focus + .text.bottom,
.button:hover + .text.bottom,
.button:focus + .text.top,
.button:hover + .text.top {
-webkit-transform: translate(-50%, 0);
transform: translate(-50%, 0);
}
.button:focus + .text.left,
.button:hover + .text.left,
.button:focus + .text.right,
.button:hover + .text.right {
-webkit-transform: translate(0, -50%);
transform: translate(0, -50%);
}
.text {
background-color: black;
border-radius: 2px;
color: #fff;
font-size: 1rem;
line-height: 120%;
margin: 0;
max-width: max-content;
min-width: 15em;
opacity: 0;
padding: 10px 8px;
pointer-events: none;
position: absolute;
text-align: center;
transition-duration: 275ms;
transition-property: opacity, transform, visibility;
visibility: hidden;
z-index: 4;
}
.text.bottom {
margin-top: 1em;
top: 100%;
left: 50%;
-webkit-transform: translate(-50%, -1em);
transform: translate(-50%, -1em);
}
.text.left {
margin-right:1em;
right: 100%;
top: 50%;
-webkit-transform: translate(1em, -50%);
transform: translate(1em, -50%);
}
.text.right {
left: 100%;
margin-left: 1em;
top: 50%;
-webkit-transform: translate(-1em, -50%);
transform: translate(-1em, -50%);
}
.text.top {
bottom: 100%;
left: 50%;
margin-bottom: 1em;
-webkit-transform: translate(-50%, 1em);
transform: translate(-50%, 1em);
}
.tooltip {
display: inline-block;
position: relative;
}

View File

@ -0,0 +1,24 @@
import Vue from 'vue'
import { uniqueId } from 'lodash'
export default Vue.extend({
name: 'FtTooltip',
props: {
position: {
type: String,
default: 'bottom',
validator: (value) => value === 'bottom' || value === 'left' || value === 'right' || value === 'top'
},
tooltip: {
type: String,
required: true
}
},
data() {
const id = uniqueId('ft-tooltip-')
return {
id
}
}
})

View File

@ -0,0 +1,22 @@
<template>
<div class="tooltip">
<button
:aria-labelledby="id"
class="button"
type="button"
>
<font-awesome-icon icon="question-circle" />
</button>
<p
:id="id"
class="text"
:class="position"
role="tooltip"
>
{{ tooltip }}
</p>
</div>
</template>
<script src="./ft-tooltip.js" />
<style scoped src="./ft-tooltip.css" />

View File

@ -651,6 +651,15 @@ export default Vue.extend({
this.updateInvidiousInstanceBounce(invidiousInstance)
},
handlePreferredApiBackend: function (backend) {
this.updateBackendPreference(backend)
console.log(backend)
if (backend === 'local') {
this.updateForceLocalBackendForLegacy(false)
}
},
updateLocale: function (locale) {
this.$i18n.locale = locale
this.currentLocale = locale
@ -668,7 +677,8 @@ export default Vue.extend({
'updateRegion',
'updateListType',
'updateThumbnailPreference',
'updateInvidiousInstance'
'updateInvidiousInstance',
'updateForceLocalBackendForLegacy'
])
}
})

View File

@ -19,6 +19,7 @@
:label="$t('Settings.General Settings.Fallback to Non-Preferred Backend on Failure')"
:default-value="backendFallback"
:compact="true"
:tooltip="$t('Tooltips.General Settings.Fallback to Non-Preferred Backend on Failure')"
@change="updateBackendFallback"
/>
</div>
@ -43,7 +44,8 @@
:value="backendPreference"
:select-names="backendNames"
:select-values="backendValues"
@change="updateBackendPreference"
:tooltip="$t('Tooltips.General Settings.Preferred API Backend')"
@change="handlePreferredApiBackend"
/>
<ft-select
v-if="false"
@ -73,6 +75,7 @@
:value="thumbnailPreference"
:select-names="thumbnailTypeNames"
:select-values="thumbnailTypeValues"
:tooltip="$t('Tooltips.General Settings.Thumbnail Preference')"
@change="updateThumbnailPreference"
/>
<ft-select
@ -90,6 +93,7 @@
:show-label="true"
:value="invidiousInstance"
:data-list="instanceValues"
:tooltip="$t('Tooltips.General Settings.Invidious Instance')"
@input="handleInvidiousInstanceInput"
/>
</ft-flex-box>

View File

@ -34,6 +34,10 @@ export default Vue.extend({
}
},
computed: {
backendPreference: function () {
return this.$store.getters.getBackendPreference
},
autoplayVideos: function () {
return this.$store.getters.getAutoplayVideos
},

View File

@ -19,13 +19,16 @@
<ft-toggle-switch
:label="$t('Settings.Player Settings.Force Local Backend for Legacy Formats')"
:compact="true"
:disabled="backendPreference === 'local'"
:default-value="forceLocalBackendForLegacy"
:tooltip="$t('Tooltips.Player Settings.Force Local Backend for Legacy Formats')"
@change="updateForceLocalBackendForLegacy"
/>
<ft-toggle-switch
:label="$t('Settings.Player Settings.Proxy Videos Through Invidious')"
:compact="true"
:default-value="proxyVideos"
:tooltip="$t('Tooltips.Player Settings.Proxy Videos Through Invidious')"
@change="updateProxyVideos"
/>
<ft-toggle-switch
@ -84,6 +87,7 @@
:value="defaultVideoFormat"
:select-names="formatNames"
:select-values="formatValues"
:tooltip="$t('Tooltips.Player Settings.Default Video Format')"
@change="updateDefaultVideoFormat"
/>
<ft-select

View File

@ -16,6 +16,7 @@
<ft-toggle-switch
:label="$t('Settings.Subscription Settings.Fetch Feeds from RSS')"
:default-value="useRssFeeds"
:tooltip="$t('Tooltips.Subscription Settings.Fetch Feeds from RSS')"
@change="updateUseRssFeeds"
/>
</ft-flex-box>

View File

@ -44,7 +44,7 @@
}
.commentText {
font-size: 12px;
font-size: 14px;
margin-top: -10px;
margin-left: 70px;
}
@ -61,6 +61,43 @@
margin-top: 0px;
}
.commentHeartBadge {
display: inline-block;
position: relative;
width: 25px;
height: 20px;
margin-left: 10px;
margin-bottom: -7px;
}
.commentHeartBadgeImg {
position: absolute;
left: 0;
width: 15px;
height: 15px;
border-radius: 50%;
-webkit-border-radius: 50%;
}
.commentHeartBadgeWhite {
position: absolute;
left: 9px;
bottom: 1px;
width: 11px;
height: 11px;
z-index: 1;
}
.commentHeartBadgeRed {
position: absolute;
color: var(--red-500);
left: 10px;
bottom: 2px;
width: 9px;
height: 9px;
z-index: 2;
}
.commentMoreReplies {
font-size: 11px;
margin-left: 5px;

View File

@ -20,6 +20,10 @@ export default Vue.extend({
id: {
type: String,
required: true
},
channelThumbnail: {
type: String,
required: true
}
},
data: function () {

View File

@ -65,6 +65,23 @@
icon="thumbs-up"
/>
{{ comment.likes }}
<span
v-if="comment.isHearted"
class="commentHeartBadge"
>
<img
:src="channelThumbnail"
class="commentHeartBadgeImg"
>
<font-awesome-icon
icon="heart"
class="commentHeartBadgeWhite"
/>
<font-awesome-icon
icon="heart"
class="commentHeartBadgeRed"
/>
</span>
<span
v-if="comment.numReplies > 0"
class="commentMoreReplies"

View File

@ -334,6 +334,22 @@ export default Vue.extend({
return object
})
let captionLinks = result.playerResponse.captions
if (typeof captionLinks !== 'undefined') {
captionLinks = captionLinks.playerCaptionsTracklistRenderer.captionTracks.map((caption) => {
const label = `${caption.name.simpleText} (${caption.languageCode}) - text/vtt`
const object = {
url: caption.baseUrl,
label: label
}
return object
})
this.downloadLinks = this.downloadLinks.concat(captionLinks)
}
} else {
// video might be region locked or something else. This leads to no formats being available
this.showToast({
@ -531,7 +547,15 @@ export default Vue.extend({
}
return object
}).reverse()
}).reverse().concat(result.captions.map((caption) => {
const label = `${caption.label} (${caption.languageCode}) - text/vtt`
const object = {
url: caption.url,
label: label
}
return object
}))
this.audioSourceList = result.adaptiveFormats.filter((format) => {
return format.type.includes('audio')

View File

@ -94,6 +94,7 @@
:id="videoId"
class="watchVideo"
:class="{ theatreWatchVideo: useTheatreMode }"
:channel-thumbnail="channelThumbnail"
@timestamp-event="changeTimestamp"
/>
</div>

View File

@ -72,6 +72,9 @@ Subscriptions:
اشتراكاتك فارغة حالياً. ابدأ بإضافة الاشتراكات لتراهم هنا.'
'Getting Subscriptions. Please wait.': 'جاري تحميل الاشتراكات. يرجى الانتظار.'
Refresh Subscriptions: 'تحديث الاشتراكات'
Load More Videos: حمّل المزيد من الفيديوهات
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: لدى
هذا الملف الشخصي عدد كبير من الاشتراكات. يتم فرض وضع RSS لتجنب تقييد الوصول للاشتراكات
Trending: 'المحتوى الرائج'
Most Popular: 'الأكثر شعبية'
Playlists: 'قوائم التشغيل'
@ -140,6 +143,9 @@ Settings:
Deep Orange: 'برتقالي داكن'
Secondary Color Theme: 'لون السِمة الثانوي'
#* Main Color Theme
UI Scale: مقياس واجهة المستخدم
Disable Smooth Scrolling: عطّل التمرير المتجانس
Expand Side Bar by Default: كبّر الشريط الجانبي بشكل افتراضي
Player Settings:
Player Settings: 'إعدادات المشغل'
Force Local Backend for Legacy Formats: 'فرض الواجهة الخلفية المحلية للتنسيقات
@ -259,6 +265,16 @@ Settings:
Data Settings: إعدادات البيانات
One or more subscriptions were unable to be imported: تعذر استيراد واحد أو أكثر
من الاشتراكات
Distraction Free Settings:
Hide Live Chat: اخفي الدردشة المباشرة
Hide Popular Videos: اخفي الفيديوهات الأكثر شعبية
Hide Trending Videos: اخفي الفيديوهات الرائجة
Hide Recommended Videos: اخفي الفيديوهات الموصّى بها
Hide Comment Likes: اخفي اعجابات التعليقات
Hide Channel Subscribers: اخفي اشتراكات القنوات
Hide Video Views: اخفي عدد مشاهدات الفيديوهات
The app needs to restart for changes to take effect. Restart and apply change?: البرنامج
يحتاج لإعادة التشغيل كي يسري مفعول التغييرات. هل تريد إعادة التشغيل و تطبيق التغييرات؟
About:
#On About page
About: 'حول'
@ -420,7 +436,7 @@ Video:
Year: 'سنة'
Years: 'سنوات'
Ago: 'منذ'
Upcoming: 'العرض الأول قريباً'
Upcoming: 'العرض الأول في'
Published on: 'نُشر في'
# $ is replaced with the number and % with the unit (days, hours, minutes...)
Publicationtemplate: 'قبل $ %'
@ -433,6 +449,14 @@ Video:
Loop Playlist: تكرار قائمة التشغيل
Starting soon, please refresh the page to check again: سيبدأ قريباً ، يرجى تحديث
الصفحة للتحقق مرة أخرى
Audio:
Best: الأفضل
High: عالٍ
Medium: متوسط
Low: منخفض
audio only: صوت فقط
video only: فيديو فقط
Download Video: نزّل الفيديو
Videos:
#& Sort By
Sort By:
@ -492,6 +516,10 @@ Comments:
There are no comments available for this video: 'لا يتوفر تعليقات لهذا الفيديو'
Load More Comments: 'تحميل المزيد من التعليقات'
There are no more comments for this video: لا يوجد المزيد من التعليقات لهذا الفيديو
No more comments available: لا يتوفر المزيد من التعليقات
Newest first: الأحدث أولاً
Top comments: أهم التعليقات
Sort by: الترتيب حسب
Up Next: 'التالي'
# Toast Messages
@ -520,3 +548,10 @@ A new blog is now available, $. Click to view more: مدوّنة جديدة مت
Download From Site: تنزيل من الموقع
Version $ is now available! Click for more details: الإصدار $ متاح الآن! انقر للحصول
على المزيد من التفاصيل
Tooltips:
General Settings:
Thumbnail Preference: كلّ الصّور المصغّرة في FreeTube سيتمّ استبدالها بإيطار من
الفيديو بدل من الصّورة المصغّرة الافتراضيّة
Preferred API Backend: اختر الواجهة الخلفية التي يستخدمها FreeTube لجلب البيانات.
الAPI المحلي هو مستخرج محلي. الAPI التابع لInvidious يتطلب التواصل مع خادم شبكة
Invidious

View File

@ -34,7 +34,7 @@ Version $ is now available! Click for more details: 'Вече е налична
за повече детайли'
Download From Site: 'Сваляне от сайта'
A new blog is now available, $. Click to view more: 'Налична е нова публикация в блога,
$. Щракнете за я видите'
$. Щракнете за да я видите'
# Search Bar
Search / Go to URL: 'Търсене / Отиване на адрес'
@ -125,7 +125,8 @@ Settings:
#! List countries
Theme Settings:
Theme Settings: 'Настройки на облик'
Match Top Bar with Main Color: 'Съвпадане на горната лента с основния цвят'
Match Top Bar with Main Color: 'Съвпадане на горната лента с основната цветова
тема'
Base Theme:
Base Theme: 'Основна тема'
Black: 'Черна'
@ -149,7 +150,7 @@ Settings:
Amber: 'Кехлибарено'
Orange: 'Оранжево'
Deep Orange: 'Наситено оранжево'
Secondary Color Theme: 'Втора цветова тема'
Secondary Color Theme: 'Вторична цветова тема'
#* Main Color Theme
UI Scale: Мащаб на интерфейса
Disable Smooth Scrolling: Изключване на плавното превъртане
@ -277,7 +278,7 @@ Settings:
Hide Comment Likes: Скриване оценките на коментарите
Hide Channel Subscribers: Скриване броя на абонатите на канали
Hide Video Likes And Dislikes: Скриване оценките на видеата
Hide Video Views: Скриване броя показвания на видеото
Hide Video Views: Скриване броя показвания на видеата
Distraction Free Settings: Настройки за неразсейване
The app needs to restart for changes to take effect. Restart and apply change?: Приложението
трябва да се рестартира за да се приложат промените. Рестартиране?
@ -364,7 +365,7 @@ Channel:
Removed subscription from $ other channel(s): 'Премахнат абонамент от $ друг(и)
канал(и)'
Added channel to your subscriptions: 'Добавен канал към вашите абонаменти'
Search Channel: 'Търсене в канал'
Search Channel: 'Търсене в канала'
Your search results have returned 0 results: 'Вашето търсене върна 0 резултата'
Sort By: 'Сортиране по'
Videos:

View File

@ -530,6 +530,20 @@ Comments:
No more comments available: No more comments available
Up Next: Up Next
#Tooltips
Tooltips:
General Settings:
Preferred API Backend: Choose the backend that FreeTube uses to obtain data. The local API is a built in extractor. The Invidious API requires an Invidious server to connect to
Fallback to Non-Preferred Backend on Failure: When your preferred API has a problem, FreeTube will automatically attempt to use your non-preferred API as a fallback method when enabled
Thumbnail Preference: All thumbnails throughout FreeTube will be replaced with a frame of the video instead of the default thumbnail
Invidious Instance: The Invidious instance that FreeTube will connect to for API calls. Clear the current instance to see a list of public instances to choose from
Player Settings:
Force Local Backend for Legacy Formats: Only works when the Invidious API is your default. When enabled, the local API will run and use the legacy formats returned by that instead of the ones returned by Invidious. Helps when the videos returned by Invidious don't play due to country restrictions
Proxy Videos Through Invidious: Will connect to Invidious to serve videos instead of making a direct connection to YouTube. Overrides API preference
Default Video Format: Set the formats used when a video plays. Dash formats can play higher qualities. Legacy formats are limited to a max of 720p but use less bandwidth. Audio formats are audio only streams
Subscription Settings:
Fetch Feeds from RSS: When enabled, FreeTube will use RSS instead of it's default method for grabbing your subscription feed. RSS is faster and prevents IP blocking, but doesn't provide certain information like video duration or live status
# Toast Messages
Local API Error (Click to copy): Local API Error (Click to copy)
Invidious API Error (Click to copy): Invidious API Error (Click to copy)

View File

@ -578,3 +578,34 @@ Version $ is now available! Click for more details: La version $ est maintenant
This video is unavailable because of missing formats. This can happen due to country unavailability.: Cette
vidéo est indisponible car elle n'est pas dans un format valide. Cela peut arriver
en raison de restrictions d'accès dans certains pays.
Tooltips:
Subscription Settings:
Fetch Feeds from RSS: Lorsqu'il est activé, FreeTube utilisera le RSS au lieu
de sa méthode par défaut pour récupérer votre flux d'abonnement. Le RSS est
plus rapide et empêche le blocage d'IP, mais ne fournit pas certaines informations
comme la durée de la vidéo ou le statut en direct
Player Settings:
Default Video Format: Définir les formats utilisés lors de la lecture d'une vidéo.
Les formats Dash peuvent être lus en qualité supérieure. Les formats Legacy
sont limités à un maximum de 720p mais utilisent moins de bande passante. Les
formats audio sont des flux audio uniquement
Proxy Videos Through Invidious: Se connectera à Invidious pour lire des vidéos
au lieu d'établir une connexion directe avec YouTube. Remplace les préférences
de l'API
Force Local Backend for Legacy Formats: Ne fonctionne que lorsque l'API Invidious
est activée par défaut. Lorsqu'elle est activée, l'API locale s'exécute et utilise
les formats Legacy renvoyés par celle-ci au lieu de ceux renvoyés par Invidious.
Utile lorsque les vidéos renvoyées par Invidious ne sont pas lues en raison
de restrictions pays
General Settings:
Invidious Instance: L'instance Invidious à laquelle FreeTube se connectera pour
les appels d'API. Effacez l'instance actuelle pour voir une liste d'instances
publiques parmi lesquelles choisir
Thumbnail Preference: Toutes les miniatures de FreeTube seront remplacées par
une image de la vidéo au lieu de la vignette par défaut
Fallback to Non-Preferred Backend on Failure: Lorsque votre API préférée a un
problème, FreeTube tentera automatiquement d'utiliser votre API non préférée
comme méthode de secours lorsqu'elle est activée
Preferred API Backend: Choisissez le backend que FreeTube utilise pour obtenir
les données. L'API locale est un extracteur intégré. L'API Invidious nécessite
un serveur Invidious pour se connecter à

View File

@ -539,3 +539,10 @@ Canceled next video autoplay: 'ניגון אוטומטי לסרטון הבא ב
Yes: 'כן'
No: 'לא'
Tooltips:
General Settings:
Fallback to Non-Preferred Backend on Failure: כאשר ל־API המועדף עליך יש בעיה,
FreeTube ינסה להשתמש ב־API בעדיפות הנמוכה יותר באופן אוטומטי כשיטת נסיגה כאשר
האפשרות פעילה
Preferred API Backend: נא לבחור את המנגנון בו ישתמש FreeTube כדי לקבל נתונים.
ה־API המקומי הוא מחלץ מובנה. ה־API של Invidious דורש התחברות לשרת Invidious

View File

@ -92,7 +92,7 @@ Settings:
Settings: 'Postavke'
General Settings:
General Settings: 'Opće postavke'
Fallback to Non-Preferred Backend on Failure: 'U slučaju neuspjeha koristi sekundarni
Fallback to Non-Preferred Backend on Failure: 'U slučaju problema koristi sekundarni
pozadinski sustav'
Enable Search Suggestions: 'Aktiviraj prijedloge pretraživanja'
Default Landing Page: 'Standardna odredišna stranica'
@ -264,8 +264,8 @@ Settings:
Select Import Type: Odaberi vrstu uvoza
Data Settings: Postavke podataka
How do I import my subscriptions?: Kako uvesti pretplate?
One or more subscriptions were unable to be imported: Nije moguće uvesti jednu
ili više pretplata
One or more subscriptions were unable to be imported: Neuspio uvoz jedne ili više
pretplata
Check for Legacy Subscriptions: Potraži stare pretplate
Distraction Free Settings:
Hide Trending Videos: Sakrij videozapise u trendu
@ -521,7 +521,7 @@ Comments:
Replies: 'Odgovori'
Reply: 'Odgovor'
There are no comments available for this video: 'Nema komentara za ovaj videozapis'
Load More Comments: 'Učitaj više komentara'
Load More Comments: 'Učitaj još komentara'
There are no more comments for this video: Nema daljnjih komentara za ovaj videozapis
No more comments available: Nema daljnjih komentara
Newest first: Najprije najnovije
@ -558,3 +558,31 @@ Version $ is now available! Click for more details: Dostupna je verzija $! Prit
This video is unavailable because of missing formats. This can happen due to country unavailability.: Ovaj
videozapis nije dostupan zbog nedostajućih formata. Uzrok tome može biti nedostupnost
zemlje.
Tooltips:
Player Settings:
Default Video Format: Postavi formate za reprodukciju videozapisa. Dash formati
mogu reproducirati višu kvalitetu slike. Stari formati su ograničeni na 720
p, ali su zato brži. Audio formati emitiraju samo audiosnimke
Proxy Videos Through Invidious: Za slanje videozapisa povezat će se s Invidiousom
umjesto izravnog povezivanja s YouTubeom. Zanemaruje postavke sučelja
Force Local Backend for Legacy Formats: Radi samo, kad postaviš Invidious kao
standardno sučelje. Kad je aktivirano, lokalno sučelje će pokretati i koristiti
stare formate umjesto onih koje dostavlja Invidious. Pomaže u slučajevima, kad
je reprodukcija videozapisa koje dostavlja Invidious u zemlji zabranjena/ograničena
General Settings:
Invidious Instance: Invidious primjerak na koji će se FreeTube povezati za pozive
sučelja. Isprazni trenutačni primjerak za prikaz popisa javnih primjeraka koje
možeš odabrati
Thumbnail Preference: U FreeTubeu će se sve minijature zamijeniti s jednim kadrom
videozapisa umjesto standardne minijature
Fallback to Non-Preferred Backend on Failure: Ako primarno odabrano sučelje ima
problema, FreeTube će automatski pokušati koristiti sekundarno sučelje kao zamjensku
metodu, ako je aktivirano
Preferred API Backend: Odaberi pozadinski sustav koji FreeTube koristi za dobivanje
podataka. Lokalno sučelje je ugrađeni sustav. Invidious sučelje zahtijeva Invidious
poslužitelja na koji će se povezati
Subscription Settings:
Fetch Feeds from RSS: Kad je aktivirano, FreeTube će koristiti RSS umjesto standardne
metode za dohvaćanje tvog feeda pretplate. RSS je brži i sprečava blokiranje
IP adresa, ali ne pruža određene podatke kao što su trajanje videozapisa ili
stanja „uživo”

View File

@ -75,6 +75,9 @@ Subscriptions:
'Getting Subscriptions. Please wait.': 'Caricamento Iscrizioni. Attendi.'
Refresh Subscriptions: Ricarica le Iscrizioni
'Getting Subscriptions. Please wait.': Scaricamento delle iscrizioni. Prego attendere.
Load More Videos: Carica più video
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Questo
profilo ha un grande numero di iscrizioni. Utilizzo RSS per evitare limitazioni
Trending: 'Tendenze'
Most Popular: 'Popolari'
Playlists: 'Playlist'
@ -143,6 +146,9 @@ Settings:
Deep Orange: 'Arancione scuro'
Secondary Color Theme: 'Tema Colori Secondario'
#* Main Color Theme
UI Scale: Dimensioni Interfaccia
Disable Smooth Scrolling: Disabilita Scorrimento Fluido
Expand Side Bar by Default: Espandi Automaticamente la Barra Laterale
Player Settings:
Player Settings: 'Impostazioni Riproduttore Video'
Force Local Backend for Legacy Formats: 'Forza back-end locale per formati legacy'
@ -265,6 +271,20 @@ Settings:
Select Export Type: Seleziona Tipo di Esportazione
Select Import Type: Seleziona Tipo di importazione
Data Settings: Impostazioni Dati
Check for Legacy Subscriptions: Cerca Iscrizioni in formato Legacy
Distraction Free Settings:
Hide Popular Videos: Nascondi Video Popolari
Hide Trending Videos: Nascondi Video in Tendenze
Hide Recommended Videos: Nascondi Video Suggeriti
Hide Comment Likes: Nascondi i Mi Piace dei Commenti
Hide Channel Subscribers: Nascondi il Numero di Iscritti
Hide Video Views: Nascondi Visualizzazioni Video
Distraction Free Settings: Impostazioni modalità "Senza Distrazioni"
Hide Live Chat: Nascondi la chat live
Hide Video Likes And Dislikes: Nascondi Mi piace e Non mi piace
The app needs to restart for changes to take effect. Restart and apply change?: L'applicazione
deve essere riavviata per applicare i cambiamenti. Riavviare e applicare i cambiamenti
ora?
About:
#On About page
About: 'Informazioni'
@ -386,7 +406,7 @@ Video:
Year: 'Anno'
Years: 'Anni'
Ago: 'Fa'
Upcoming: 'Première a breve'
Upcoming: 'Première il'
Minutes: Minuti
Minute: Minuto
Published on: 'Pubblicato il'
@ -401,6 +421,14 @@ Video:
Autoplay: Riproduzione Automatica
Starting soon, please refresh the page to check again: La riproduzione partirà a
breve, refreshare la pagina per ricontrollare
Audio:
Best: Migliore
High: Alto
Medium: Medio
Low: Basso
audio only: solo audio
video only: solo video
Download Video: Scarica Video
Videos:
#& Sort By
Sort By:
@ -460,7 +488,7 @@ Comments:
View: 'Guarda'
Hide: 'Nascondi'
Replies: 'Risposte'
Reply: 'Rispondi'
Reply: 'Risposta'
There are no comments available for this video: 'Non ci sono commenti disponibili
per questo video'
Load More Comments: 'Carica più commenti'
@ -541,3 +569,31 @@ Profile:
This video is unavailable because of missing formats. This can happen due to country unavailability.: Questo
video non è disponibile a causa di alcuni formati mancanti. Questo può succedere
in caso di mancata disponibilità del paese.
Tooltips:
Player Settings:
Force Local Backend for Legacy Formats: Funziona solo quando Invidious è l'API
predefinita. Quando abilitato mostra i formati legacy recuperati dall'API Locale
al posto di quelli di Invidious. Consigliato quando i video di Invidious non
vengono riprodotti a causa di restrizioni geografiche
Default Video Format: Imposta i formati usati quando un video viene riprodotto.
I formati dash possono riprodurre qualità maggiori. I formati legacy sono limitati
ad un massimo di 720p ma usano meno banda. I formati audio risproducono solo
l'audio (non l'avrei mai detto XD)
Proxy Videos Through Invidious: Mi connetterò a Invidious per mostrare i video
invece di connettermi direttamente a YouTube. Sostituisco le preferenze API
Subscription Settings:
Fetch Feeds from RSS: Quando abilitato, FreeTube userà gli RSS invece del metodo
standard per leggere la tua lista istrizioni. Gli RSS sono più veloci e impediscono
il blocco dell'IP ma non mostrano informazioni come la durata video o lo stato
delle live
General Settings:
Invidious Instance: L'istanza Invidious che FreeTube usa per le chiamate API.
Pulisci l'istanza attuale per vedere una lista di istanze pubbliche da cui scegliere
Thumbnail Preference: Tutte le copertine attraverso FreeTube verranno sostituite
da un frame del video al posto della copertina originale
Fallback to Non-Preferred Backend on Failure: Quanto le tue API preferite hanno
un problema, FreeTube userà automaticamente le API secondarie come ripiego quando
abilitate
Preferred API Backend: Scegli il back-end che FreeTube utilizza per ottenere i
dati. L' API locale è l'estrattore dell'app. Le API Invidious richiedono un
server Invidious dove connettersi

View File

@ -1,7 +1,7 @@
FreeTube: 'FreeTube'
# Currently on Subscriptions, Playlists, and History
'This part of the app is not ready yet. Come back later when progress has been made.': >-
アプリのこの部分は未完成です。完成後にまた開いてください。
アプリのこの部分は未完成です。完成後に操作してください。
# Webkit Menu Bar
File: 'ファイル'
@ -16,11 +16,11 @@ Delete: '削除'
Select all: 'すべて選択'
Reload: '再読み込み'
Force Reload: '強制的に再読み込み'
Toggle Developer Tools: '開発者ツールの切替'
Toggle Developer Tools: '開発者ツールに変更'
Actual size: '実際のサイズ'
Zoom in: '拡大'
Zoom out: '縮小'
Toggle fullscreen: '全画面の切替'
Toggle fullscreen: '全画面に変更'
Window: 'ウィンドウ'
Minimize: '最小化'
Close: '閉じる'
@ -59,8 +59,8 @@ Search Filters:
Long (> 20 minutes): '長編20 分以上)'
# On Search Page
Search Results: '検索結果'
Fetching results. Please wait: '結果取得中。お待ちください'
Fetch more results: '結果の追加取得'
Fetching results. Please wait: '結果取得中。お待ちください'
Fetch more results: 'もっと見る'
# Sidebar
Subscriptions:
# On Subscriptions Page
@ -69,10 +69,10 @@ Subscriptions:
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'まだチャンネル登録がありません。登録するとここに表示されます。'
'Getting Subscriptions. Please wait.': '登録を取得中。お待ちください...'
Refresh Subscriptions: 登録から更新
Getting Subscriptions. Please wait.: 登録から取得中...お待ちください。
Getting Subscriptions. Please wait.: youtube から登録情報の取得中。しばらくお待ちください。
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: このプロファイルはチャンネル登録が多くなっています。接続制限の回避のため強制的な
RSS にします
Load More Videos: さらに動画を読み込む
Load More Videos: もっと見る
Trending: '急上昇'
Most Popular: '最も人気'
Playlists: '再生リスト'
@ -88,12 +88,12 @@ Settings:
Settings: '設定'
General Settings:
General Settings: '一般設定'
Fallback to Non-Preferred Backend on Failure: '失敗時に非優先の代替バックエンドに接続'
Fallback to Non-Preferred Backend on Failure: '問題の発生時には選択していない方法に切り替えて接続'
Enable Search Suggestions: '検索候補の有効化'
Default Landing Page: '起動時の表示'
Locale Preference: '言語設定'
Preferred API Backend:
Preferred API Backend: '優先する API バックエンド'
Preferred API Backend: '取得方法の選択'
Local API: '内部 API'
Invidious API: 'Invidious API'
Video View Type:
@ -145,9 +145,9 @@ Settings:
Disable Smooth Scrolling: 滑らかなスクロールの無効化
Player Settings:
Player Settings: 'プレイヤーの設定'
Force Local Backend for Legacy Formats: '旧形式は内部バックエンドを強制的に使用'
Force Local Backend for Legacy Formats: '旧形式は内部 API の強制使用'
Remember History: '履歴を記憶'
Play Next Video: '次の動画再生'
Play Next Video: '次の動画の自動再生'
Turn on Subtitles by Default: '最初から字幕を有効化'
Autoplay Videos: '動画の自動再生'
Proxy Videos Through Invidious: 'Invidious 経由で動画にプロキシを使用'
@ -184,7 +184,7 @@ Settings:
Import Subscriptions: '登録のインポート'
Export Subscriptions: '登録のエクスポート'
How do I import my subscriptions?: 'どうやってインポートするのですか?'
Fetch Feeds from RSS: RSS からフィードを取得
Fetch Feeds from RSS: RSS から概要の取得
Advanced Settings:
Advanced Settings: '高度な設定'
Enable Debug Mode (Prints data to the console): 'デバッグモードの有効化 (コンソールにデータを出力)'
@ -282,7 +282,7 @@ About:
Check out our Firefox extension!: 'Firefox 拡張機能をご覧ください!'
'If you enjoy using FreeTube, consider donating via Liberapay or through our Bitcoin address.': 'FreeTube
気に入っていただけていれば、ぜひ Liberapay かビットコインで自由な寄付をお願いします。'
お楽しみの方は、Liberapay か Bitcoin アドレスを通じて寄付をお願いします。'
#~ 'BTC: 1Lih7Ho5gnxb1CwPD4o59ss78pwo2T91eS'
@ -440,7 +440,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
@ -449,7 +449,7 @@ Comments:
Replies: '返信'
Reply: '返信'
There are no comments available for this video: 'この動画へのコメントはありません'
Load More Comments: 'さらにコメントを読み込む'
Load More Comments: 'もっと見る'
There are no more comments for this video: この動画へのコメントはまだありません
Top comments: 評価順
Newest first: 新しい順
@ -516,3 +516,20 @@ A new blog is now available, $. Click to view more: '新着のブログ記事が
Download From Site: サイトからダウンロード
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 制限を回避しますが、動画の公開期間や詳細情報などは提供されていません
Player Settings:
Default Video Format: 動画を再生するファイル形式を設定します。DASH 形式の方が品質が高くなります。旧形式では最大 720p に制限されますが、使用する帯域幅は狭くなります。音声形式とは音声のみの配信です
Force Local Backend for Legacy Formats: Invidious API の選択時にのみ機能します。有効にすると、Invidious
サーバーから取得したファイル形式の代わりに、内部 API で取得した旧形式を使用します。Invidious サーバーから取得した情報が、再生が許可されていない国の場合に便利です
Proxy Videos Through Invidious: YouTube に直接接続する代わりに、Invidious に接続して動画を取得します。API
設定の書き換え
General Settings:
Invidious Instance: FreeTube が Invidious サーバーの API に接続するための Invidious インスタンス。選択する公開インスタンスの一覧を表示するために、現在のインスタンスを破棄する
Preferred API Backend: FreeTube が youtube からデータを取得する方法を選択します。内部 API は搭載している取得プログラムです。Invidious
API は、Invidious サーバーに接続して取得します
Thumbnail Preference: FreeTube のすべてのサムネイルを、元のサムネイルの代わりに動画の 1 コマに置き換える
Fallback to Non-Preferred Backend on Failure: 選択した API に問題があれば、FreeTube は自動的に選択していない
API に切り替えて実行します

View File

@ -270,14 +270,14 @@ Settings:
Data Settings: Ustawienia danych
One or more subscriptions were unable to be imported: Nie można było zaimportować
conajmniej jednej subskrypcji
Check for Legacy Subscriptions: Sprawdź subskrypcje po starej wersji
Check for Legacy Subscriptions: Sprawdź subskrypcje ze starej wersji
Distraction Free Settings:
Distraction Free Settings: Ustawienia skupienia uwagi
Hide Live Chat: Schowaj czat na żywo
Hide Popular Videos: Schowaj filmy „Popularne”
Hide Trending Videos: Schowaj filmy „Na czasie”
Hide Recommended Videos: Schowaj polecane filmy
Hide Comment Likes: Schowaj łapki w górę komentarzy
Hide Comment Likes: Schowaj polubienia komentarzy
Hide Channel Subscribers: Schowaj subskrybentów kanału
Hide Video Likes And Dislikes: Schowaj łapki w górę i w dół
Hide Video Views: Schowaj obejrzenia filmu

View File

@ -566,3 +566,33 @@ Version $ is now available! Click for more details: Версия $ уже до
This video is unavailable because of missing formats. This can happen due to country unavailability.: Это
видео недоступно из-за отсутствия форматов. Это может произойти из-за недоступности
страны.
Tooltips:
General Settings:
Thumbnail Preference: Все эскизы во FreeTube будут заменены кадром видео вместо
эскиза по умолчанию
Invidious Instance: Экземпляр Invidious, к которому FreeTube будет подключаться
для вызовов API. Очистите текущий экземпляр, чтобы увидеть список общедоступных
экземпляров на выбор
Fallback to Non-Preferred Backend on Failure: Когда у вашего предпочтительного
API есть проблема, FreeTube автоматически попытается использовать ваш нежелательный
API в качестве резервного метода, если он включен
Preferred API Backend: Выберите серверную часть, которую FreeTube использует для
получения данных. Локальный API - это встроенный экстрактор. Invidious API требует,
чтобы сервер Invidious подключался к
Subscription Settings:
Fetch Feeds from RSS: Если этот параметр включен, FreeTube будет использовать
RSS вместо метода по умолчанию для получения вашего канала подписки. RSS работает
быстрее и предотвращает блокировку IP, но не предоставляет определенную информацию,
такую как продолжительность видео или статус в реальном времени
Player Settings:
Default Video Format: Установите форматы, используемые при воспроизведении видео.
Формат dash может воспроизводить более высокое качество. Устаревшие форматы
ограничены максимумом 720p, но используют меньшую полосу пропускания. Аудио
форматы - это только аудио потоки
Proxy Videos Through Invidious: Будет подключаться к Invidious для показа видео
вместо прямого подключения к YouTube. Переопределяет предпочтение API
Force Local Backend for Legacy Formats: Работает, только если по умолчанию используется
Invidious API. Если этот параметр включен, локальный API будет работать и использовать
устаревшие форматы, возвращаемые им, вместо форматов, возвращаемых Invidious.
Помогает, когда видео, возвращенные Invidious, не воспроизводятся из-за ограничений
страны

View File

@ -83,6 +83,7 @@ Subscriptions:
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Ta
profil ima veliko količino naročnin.·· ·· Da bi se izognili omejitvi hitrosti,
bo uporabljen RSS
Load More Videos: Naloži več videoposnetkov
Trending: 'Priljubljeno'
Most Popular: 'Najbolj popularno'
Playlists: 'Seznami predvajanja'
@ -152,6 +153,9 @@ Settings:
Deep Orange: 'Temno oranžna'
Secondary Color Theme: 'Sekundarna barvna tema'
#* Main Color Theme
UI Scale: Merilo uporabniškega vmesnika
Disable Smooth Scrolling: Izklopi gladko drsenje
Expand Side Bar by Default: Prevzeto razširi stransko vrstico
Player Settings:
Player Settings: 'Nastavitve predvajalnika'
Force Local Backend for Legacy Formats: 'Vedno uporabi lokalni zaledni sistem
@ -239,6 +243,7 @@ Settings:
Unable to write file: 'Datoteke ni možno prebrati'
Unknown data key: 'Neznan podatkovni ključ'
How do I import my subscriptions?: 'Kako lahko uvozim moje naročnine?'
Check for Legacy Subscriptions: Poišči zapuščinske naročnine
Advanced Settings:
Advanced Settings: 'Napredne nastavitve'
Enable Debug Mode (Prints data to the console): 'Vklopi razhroščevalni način (podatke
@ -265,6 +270,19 @@ Settings:
#& Yes
#& No
Distraction Free Settings:
Hide Live Chat: Skrij klepet v živo
Hide Popular Videos: Skrij popularne videoposnetke
Hide Trending Videos: Skrij trendne videoposnetke
Hide Recommended Videos: Skrij priporočene videoposnetke
Hide Comment Likes: Skrij všečke komentarjev
Hide Video Likes And Dislikes: Skrij všečke in nevšečke videoposnetkov
Hide Channel Subscribers: Skrij število naročnikov
Hide Video Views: Skrij število ogledov
Distraction Free Settings: Brezmotenjske nastavitve
The app needs to restart for changes to take effect. Restart and apply change?: Program
se mora ponovno zagnati, preden bodo spremembe uveljavljene. Ga želite ponovno
zagnati zdaj?
About:
#On About page
About: 'O programu'
@ -447,6 +465,9 @@ Video:
High: Visoka
Medium: Srednja
Low: Nizka
audio only: Samo avdio
video only: Samo video
Download Video: Prenesi videoposnetek
Videos:
#& Sort By
Sort By:
@ -512,6 +533,7 @@ Comments:
Newest first: Najnovejši komentarji
Top comments: Najbolje ocenjeni komentarji
Sort by: Razvrstitev
No more comments available: Ni več komentarjev
Up Next: 'Naslednje na sporedu'
# Toast Messages

View File

@ -98,13 +98,13 @@ Settings:
General Settings: 'Genel Ayarlar'
Check for Updates: 'Güncellemeleri Denetle'
Check for Latest Blog Posts: 'En Yeni Blog Gönderilerini Denetle'
Fallback to Non-Preferred Backend on Failure: 'Hata Zamanında Tercih Edilmeyen
Backend''e Geç'
Fallback to Non-Preferred Backend on Failure: 'Hata Durumunda Tercih Edilmeyen
Arka Uca Geç'
Enable Search Suggestions: 'Arama Önerilerini Etkinleştir'
Default Landing Page: 'Varsayılan Açılış Ekranı'
Locale Preference: 'Tercih Edilen Yerel Ayar'
Preferred API Backend:
Preferred API Backend: 'Tercih Edilen API Backend'
Preferred API Backend: 'Tercih Edilen API Arka Ucu'
Local API: 'Yerel API'
Invidious API: 'Invidious API'
Video View Type:
@ -154,7 +154,7 @@ Settings:
Disable Smooth Scrolling: Düzgün Kaydırmayı Devre Dışı Bırak
Player Settings:
Player Settings: 'Oynatıcı Ayarları'
Force Local Backend for Legacy Formats: 'Legacy Biçimler için Yerel Backend Kullanmaya
Force Local Backend for Legacy Formats: 'Eski Biçimler için Yerel Arka Ucu Kullanmaya
Zorla'
Play Next Video: 'Sonraki Videoyu Oynat'
Turn on Subtitles by Default: 'Altyazıyı Varsayılan Olarak Aç'
@ -167,7 +167,7 @@ Settings:
Default Video Format:
Default Video Format: 'Varsayılan Video Biçimi'
Dash Formats: 'Dash Biçimi'
Legacy Formats: 'Legacy Biçimi'
Legacy Formats: 'Eski Biçimler'
Audio Formats: 'Ses Biçimi'
Default Quality:
Default Quality: 'Varsayılan Kalite'
@ -199,7 +199,7 @@ Settings:
Subscription Settings:
Subscription Settings: 'Abonelik Ayarları'
Hide Videos on Watch: 'İzlenmiş Videoları Gizle'
Fetch Feeds from RSS: 'Akışı RSS''den Getir'
Fetch Feeds from RSS: 'Akışları RSS''den Getir'
Manage Subscriptions: 'Abonelikleri Yönet'
Data Settings:
Data Settings: 'Veri Ayarları'
@ -488,7 +488,7 @@ Toggle Theatre Mode: 'Tiyatro Modunu Aç/Kapat'
Change Format:
Change Video Formats: 'Video Biçimini Değiştir'
Use Dash Formats: 'Dash Biçimi Kullan'
Use Legacy Formats: 'Legacy Biçimi Kullan'
Use Legacy Formats: 'Eski Biçimleri Kullan'
Use Audio Formats: 'Ses Biçimi Kullan'
Dash formats are not available for this video: 'Dash biçimi bu video için kullanılabilir
değil'
@ -553,3 +553,33 @@ No: 'Hayır'
This video is unavailable because of missing formats. This can happen due to country unavailability.: Eksik
biçimler nedeniyle bu video kullanılamıyor. Bu durum, ülke kullanılamazlığı nedeniyle
gerçekleşebilir.
Tooltips:
Subscription Settings:
Fetch Feeds from RSS: Etkinleştirildiğinde, FreeTube abonelik akışınızı almak
için öntanımlı yöntem yerine RSS'yi kullanır. RSS daha hızlıdır ve IP engellemesinin
önüne geçer, ancak video süresi veya canlı yayın durumu gibi belirli bilgileri
sağlamaz
Player Settings:
Default Video Format: Bir video oynatılırken kullanılan biçimleri ayarlayın. Dash
biçimleri daha yüksek kalitelerde oynatabilir. Eski biçimler en fazla 720p ile
sınırlıdır ancak daha az bant genişliği kullanır. Ses biçimleri yalnızca ses
akışlarıdır
Proxy Videos Through Invidious: Videoları sunmak için YouTube ile doğrudan bağlantı
kurmak yerine Invidious'a bağlanılacak. API tercihini geçersiz kılar
Force Local Backend for Legacy Formats: Yalnızca Invidious API'si öntanımlı seçeneğiniz
olduğunda çalışır. Etkinleştirildiğinde, yerel API çalışacak ve Invidious tarafından
döndürülen biçimler yerine onun döndürdüğü eski biçimler kullanılacaktır. Invidious
tarafından döndürülen videolar ülke kısıtlamaları nedeniyle oynatılmadığında
yardımcı olur
General Settings:
Invidious Instance: FreeTube'un API çağrıları için bağlanacağı Invidious sunucusu.
Aralarından seçim yapabileceğiniz herkese açık sunucuların bir listesini görmek
için geçerli sunucuyu temizleyin
Thumbnail Preference: FreeTube'daki tüm küçük resimler, öntanımlı küçük resim
yerine videonun bir karesiyle değiştirilecektir
Fallback to Non-Preferred Backend on Failure: Etkinleştirildiğinde, tercih ettiğiniz
API'de bir sorun olduğunda FreeTube otomatik olarak tercih edilmeyen API'nizi
yedek yöntem olarak kullanmaya çalışır
Preferred API Backend: FreeTube'un veri almak için kullandığı arka ucu seçin.
Yerel API yerleşik bir çıkarıcıdır. Invidious API'si, bağlanmak için bir Invidious
sunucusu gerektirir

View File

@ -512,3 +512,19 @@ A new blog is now available, $. Click to view more: 已有新的部落格文章
Download From Site: 從網站下載
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 而非預設的方式來取得您的訂閱 feed。RSS 較快而且可避免 IP
封鎖,但不提供某些訊息,如影片長度與即時狀態
Player Settings:
Default Video Format: 設定要用於影片播放的格式。Dash 格式有較高的品質。舊版格式會限制在 720p 但頻寬需求較低。音訊格式為僅有音訊的串流
Proxy Videos Through Invidious: 將會連線到 Invidious 而非直接連線到 YouTube 來提供影片。覆寫 API 偏好設定
Force Local Backend for Legacy Formats: 僅當 Invidious API 是您的預設 API 時才有效。啟用後,本地的
API 將會執行並使用由其回傳的的舊格式,而非 Invidious 回傳的格式。對因為國家地區限制而無法播放 Invidious 回傳的影片時很有用
General Settings:
Invidious Instance: FreeTube 連線到的 Invidious 站台將會提供 API 呼叫。清除目前的站台以檢視可供選擇的公開站台清單
Thumbnail Preference: FreeTube 中所有的畫面都會被替換為影片畫面而非預設的縮圖
Fallback to Non-Preferred Backend on Failure: 當您偏好的 API 有問題的時候FreeTube 將會自動嘗試使用您非偏好的
API 作為汰退方案
Preferred API Backend: 選擇 FreeTube 要用於取得資料的後端。本地的 API 是內建的擷取器。Invidious API 需要
Invidious 伺服器才能連線