mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-11-15 09:58:18 -07:00
Merge branch 'master' into prompt-to-skip
This commit is contained in:
commit
459d0d7d9a
8
.github/workflows/__codeql.yml
vendored
8
.github/workflows/__codeql.yml
vendored
@ -20,21 +20,21 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository ⬇️
|
||||
uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
ref: ${{ inputs.commit }}
|
||||
show-progress: false
|
||||
|
||||
- name: Initialize CodeQL 🛠️
|
||||
uses: github/codeql-action/init@f779452ac5af1c261dce0346a8f964149f49322b # v3.26.13
|
||||
uses: github/codeql-action/init@662472033e021d55d94146f66f6058822b0b39fd # v3.27.0
|
||||
with:
|
||||
queries: security-and-quality
|
||||
languages: ${{ matrix.language }}
|
||||
|
||||
- name: Autobuild 📦
|
||||
uses: github/codeql-action/autobuild@f779452ac5af1c261dce0346a8f964149f49322b # v3.26.13
|
||||
uses: github/codeql-action/autobuild@662472033e021d55d94146f66f6058822b0b39fd # v3.27.0
|
||||
|
||||
- name: Perform CodeQL Analysis 🧪
|
||||
uses: github/codeql-action/analyze@f779452ac5af1c261dce0346a8f964149f49322b # v3.26.13
|
||||
uses: github/codeql-action/analyze@662472033e021d55d94146f66f6058822b0b39fd # v3.27.0
|
||||
with:
|
||||
category: '/language:${{matrix.language}}'
|
||||
|
2
.github/workflows/__package.yml
vendored
2
.github/workflows/__package.yml
vendored
@ -14,7 +14,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Check out Git repository
|
||||
uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
ref: ${{ inputs.commit || github.sha }}
|
||||
|
||||
|
6
.github/workflows/__quality_checks.yml
vendored
6
.github/workflows/__quality_checks.yml
vendored
@ -14,13 +14,13 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
ref: ${{ inputs.commit }}
|
||||
show-progress: false
|
||||
|
||||
- name: Scan
|
||||
uses: actions/dependency-review-action@5a2ce3f5b92ee19cbb1541a4984c76d921601d7c # v4.3.4
|
||||
uses: actions/dependency-review-action@a6993e2c61fd5dc440b409aa1d6904921c5e1894 # v4.3.5
|
||||
with:
|
||||
## Workaround from https://github.com/actions/dependency-review-action/issues/456
|
||||
## TODO: Remove when necessary
|
||||
@ -42,7 +42,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout ⬇️
|
||||
uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
ref: ${{ inputs.commit }}
|
||||
show-progress: false
|
||||
|
2
.github/workflows/pull_request.yml
vendored
2
.github/workflows/pull_request.yml
vendored
@ -80,7 +80,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Check out Git repository
|
||||
uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
ref: ${{ github.event.pull_request.head.sha }}
|
||||
|
||||
|
2651
package-lock.json
generated
2651
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
24
package.json
24
package.json
@ -17,12 +17,12 @@
|
||||
"@types/lodash-es": "4.17.12",
|
||||
"@types/markdown-it": "14.1.2",
|
||||
"@types/react": "18.3.11",
|
||||
"@types/react-dom": "18.3.0",
|
||||
"@types/react-dom": "18.3.1",
|
||||
"@types/sortablejs": "1.15.8",
|
||||
"@typescript-eslint/eslint-plugin": "5.62.0",
|
||||
"@typescript-eslint/parser": "5.62.0",
|
||||
"@uupaa/dynamic-import-polyfill": "1.0.2",
|
||||
"@vitest/coverage-v8": "2.1.2",
|
||||
"@vitest/coverage-v8": "2.1.3",
|
||||
"autoprefixer": "10.4.20",
|
||||
"babel-loader": "9.2.1",
|
||||
"clean-webpack-plugin": "4.0.0",
|
||||
@ -47,9 +47,9 @@
|
||||
"mini-css-extract-plugin": "2.9.1",
|
||||
"postcss": "8.4.47",
|
||||
"postcss-loader": "8.1.1",
|
||||
"postcss-preset-env": "10.0.6",
|
||||
"postcss-preset-env": "10.0.7",
|
||||
"postcss-scss": "4.0.9",
|
||||
"sass": "1.79.4",
|
||||
"sass": "1.79.5",
|
||||
"sass-loader": "16.0.2",
|
||||
"source-map-loader": "5.0.0",
|
||||
"speed-measure-webpack-plugin": "1.5.0",
|
||||
@ -61,8 +61,8 @@
|
||||
"stylelint-scss": "5.3.2",
|
||||
"ts-loader": "9.5.1",
|
||||
"typescript": "5.6.3",
|
||||
"vitest": "2.1.2",
|
||||
"webpack": "5.94.0",
|
||||
"vitest": "2.1.3",
|
||||
"webpack": "5.95.0",
|
||||
"webpack-bundle-analyzer": "4.10.2",
|
||||
"webpack-cli": "5.1.4",
|
||||
"webpack-dev-server": "5.1.0",
|
||||
@ -79,13 +79,13 @@
|
||||
"@fontsource/noto-sans-sc": "5.1.0",
|
||||
"@fontsource/noto-sans-tc": "5.1.0",
|
||||
"@jellyfin/libass-wasm": "4.2.3",
|
||||
"@jellyfin/sdk": "0.0.0-unstable.202410190501",
|
||||
"@jellyfin/sdk": "0.0.0-unstable.202410230556",
|
||||
"@mui/icons-material": "5.16.7",
|
||||
"@mui/material": "5.16.7",
|
||||
"@mui/x-date-pickers": "7.18.0",
|
||||
"@mui/x-date-pickers": "7.20.0",
|
||||
"@react-hook/resize-observer": "2.0.2",
|
||||
"@tanstack/react-query": "5.56.2",
|
||||
"@tanstack/react-query-devtools": "5.56.2",
|
||||
"@tanstack/react-query": "5.59.13",
|
||||
"@tanstack/react-query-devtools": "5.59.13",
|
||||
"@types/react-lazy-load-image-component": "1.6.4",
|
||||
"abortcontroller-polyfill": "1.7.5",
|
||||
"blurhash": "2.0.5",
|
||||
@ -117,7 +117,7 @@
|
||||
"react-blurhash": "0.3.0",
|
||||
"react-dom": "18.3.1",
|
||||
"react-lazy-load-image-component": "1.6.2",
|
||||
"react-router-dom": "6.26.2",
|
||||
"react-router-dom": "6.27.0",
|
||||
"resize-observer-polyfill": "1.5.1",
|
||||
"screenfull": "6.0.2",
|
||||
"sortablejs": "1.15.3",
|
||||
@ -127,7 +127,7 @@
|
||||
"whatwg-fetch": "3.6.20"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"sass-embedded": "1.79.4"
|
||||
"sass-embedded": "1.79.5"
|
||||
},
|
||||
"browserslist": [
|
||||
"last 2 Firefox versions",
|
||||
|
@ -146,48 +146,6 @@ const UserParentalControl = () => {
|
||||
blockUnratedItems.dispatchEvent(new CustomEvent('create'));
|
||||
}, []);
|
||||
|
||||
const loadAllowedTags = useCallback((tags: string[]) => {
|
||||
const page = element.current;
|
||||
|
||||
if (!page) {
|
||||
console.error('[userparentalcontrol] Unexpected null page reference');
|
||||
return;
|
||||
}
|
||||
|
||||
setAllowedTags(tags);
|
||||
|
||||
const allowedTagsElem = page.querySelector('.allowedTags') as HTMLDivElement;
|
||||
|
||||
for (const btnDeleteTag of allowedTagsElem.querySelectorAll('.btnDeleteTag')) {
|
||||
btnDeleteTag.addEventListener('click', function () {
|
||||
const tag = btnDeleteTag.getAttribute('data-tag');
|
||||
const newTags = tags.filter(t => t !== tag);
|
||||
loadAllowedTags(newTags);
|
||||
});
|
||||
}
|
||||
}, []);
|
||||
|
||||
const loadBlockedTags = useCallback((tags: string[]) => {
|
||||
const page = element.current;
|
||||
|
||||
if (!page) {
|
||||
console.error('[userparentalcontrol] Unexpected null page reference');
|
||||
return;
|
||||
}
|
||||
|
||||
setBlockedTags(tags);
|
||||
|
||||
const blockedTagsElem = page.querySelector('.blockedTags') as HTMLDivElement;
|
||||
|
||||
for (const btnDeleteTag of blockedTagsElem.querySelectorAll('.btnDeleteTag')) {
|
||||
btnDeleteTag.addEventListener('click', function () {
|
||||
const tag = btnDeleteTag.getAttribute('data-tag');
|
||||
const newTags = tags.filter(t => t !== tag);
|
||||
loadBlockedTags(newTags);
|
||||
});
|
||||
}
|
||||
}, []);
|
||||
|
||||
const loadUser = useCallback((user: UserDto, allParentalRatings: ParentalRating[]) => {
|
||||
const page = element.current;
|
||||
|
||||
@ -200,8 +158,8 @@ const UserParentalControl = () => {
|
||||
void libraryMenu.then(menu => menu.setTitle(user.Name));
|
||||
loadUnratedItems(user);
|
||||
|
||||
loadAllowedTags(user.Policy?.AllowedTags || []);
|
||||
loadBlockedTags(user.Policy?.BlockedTags || []);
|
||||
setAllowedTags(user.Policy?.AllowedTags || []);
|
||||
setBlockedTags(user.Policy?.BlockedTags || []);
|
||||
populateRatings(allParentalRatings);
|
||||
|
||||
let ratingValue = '';
|
||||
@ -222,7 +180,7 @@ const UserParentalControl = () => {
|
||||
}
|
||||
setAccessSchedules(user.Policy?.AccessSchedules || []);
|
||||
loading.hide();
|
||||
}, [loadAllowedTags, loadBlockedTags, loadUnratedItems, populateRatings]);
|
||||
}, [libraryMenu, setAllowedTags, setBlockedTags, loadUnratedItems, populateRatings]);
|
||||
|
||||
const loadData = useCallback(() => {
|
||||
if (!userId) {
|
||||
@ -296,7 +254,7 @@ const UserParentalControl = () => {
|
||||
|
||||
if (tags.indexOf(value) == -1) {
|
||||
tags.push(value);
|
||||
loadAllowedTags(tags);
|
||||
setAllowedTags(tags);
|
||||
}
|
||||
}).catch(() => {
|
||||
// prompt closed
|
||||
@ -317,7 +275,7 @@ const UserParentalControl = () => {
|
||||
|
||||
if (tags.indexOf(value) == -1) {
|
||||
tags.push(value);
|
||||
loadBlockedTags(tags);
|
||||
setBlockedTags(tags);
|
||||
}
|
||||
}).catch(() => {
|
||||
// prompt closed
|
||||
@ -348,7 +306,8 @@ const UserParentalControl = () => {
|
||||
return false;
|
||||
};
|
||||
|
||||
(page.querySelector('#btnAddSchedule') as HTMLButtonElement).addEventListener('click', function () {
|
||||
// The following is still hacky and should migrate to pure react implementation for callbacks in the future
|
||||
const accessSchedulesPopupCallback = function () {
|
||||
showSchedulePopup({
|
||||
Id: 0,
|
||||
UserId: '',
|
||||
@ -356,37 +315,19 @@ const UserParentalControl = () => {
|
||||
StartHour: 0,
|
||||
EndHour: 0
|
||||
}, -1);
|
||||
});
|
||||
|
||||
(page.querySelector('#btnAddAllowedTag') as HTMLButtonElement).addEventListener('click', function () {
|
||||
showAllowedTagPopup();
|
||||
});
|
||||
|
||||
(page.querySelector('#btnAddBlockedTag') as HTMLButtonElement).addEventListener('click', function () {
|
||||
showBlockedTagPopup();
|
||||
});
|
||||
|
||||
};
|
||||
(page.querySelector('#btnAddSchedule') as HTMLButtonElement).addEventListener('click', accessSchedulesPopupCallback);
|
||||
(page.querySelector('#btnAddAllowedTag') as HTMLButtonElement).addEventListener('click', showAllowedTagPopup);
|
||||
(page.querySelector('#btnAddBlockedTag') as HTMLButtonElement).addEventListener('click', showBlockedTagPopup);
|
||||
(page.querySelector('.userParentalControlForm') as HTMLFormElement).addEventListener('submit', onSubmit);
|
||||
}, [loadAllowedTags, loadBlockedTags, loadData, userId]);
|
||||
|
||||
useEffect(() => {
|
||||
const page = element.current;
|
||||
|
||||
if (!page) {
|
||||
console.error('[userparentalcontrol] Unexpected null page reference');
|
||||
return;
|
||||
}
|
||||
|
||||
const accessScheduleList = page.querySelector('.accessScheduleList') as HTMLDivElement;
|
||||
|
||||
for (const btnDelete of accessScheduleList.querySelectorAll('.btnDelete')) {
|
||||
btnDelete.addEventListener('click', function () {
|
||||
const index = parseInt(btnDelete.getAttribute('data-index') ?? '0', 10);
|
||||
const newindex = accessSchedules.filter((_e, i) => i != index);
|
||||
setAccessSchedules(newindex);
|
||||
});
|
||||
}
|
||||
}, [accessSchedules]);
|
||||
return () => {
|
||||
(page.querySelector('#btnAddSchedule') as HTMLButtonElement).removeEventListener('click', accessSchedulesPopupCallback);
|
||||
(page.querySelector('#btnAddAllowedTag') as HTMLButtonElement).removeEventListener('click', showAllowedTagPopup);
|
||||
(page.querySelector('#btnAddBlockedTag') as HTMLButtonElement).removeEventListener('click', showBlockedTagPopup);
|
||||
(page.querySelector('.userParentalControlForm') as HTMLFormElement).removeEventListener('submit', onSubmit);
|
||||
};
|
||||
}, [setAllowedTags, setBlockedTags, loadData, userId]);
|
||||
|
||||
const optionMaxParentalRating = () => {
|
||||
let content = '';
|
||||
@ -397,6 +338,21 @@ const UserParentalControl = () => {
|
||||
return content;
|
||||
};
|
||||
|
||||
const removeAllowedTagsCallback = useCallback((tag: string) => {
|
||||
const newTags = allowedTags.filter(t => t !== tag);
|
||||
setAllowedTags(newTags);
|
||||
}, [allowedTags, setAllowedTags]);
|
||||
|
||||
const removeBlockedTagsTagsCallback = useCallback((tag: string) => {
|
||||
const newTags = blockedTags.filter(t => t !== tag);
|
||||
setBlockedTags(newTags);
|
||||
}, [blockedTags, setBlockedTags]);
|
||||
|
||||
const removeScheduleCallback = useCallback((index: number) => {
|
||||
const newSchedules = accessSchedules.filter((_e, i) => i != index);
|
||||
setAccessSchedules(newSchedules);
|
||||
}, [accessSchedules, setAccessSchedules]);
|
||||
|
||||
return (
|
||||
<Page
|
||||
id='userParentalControlPage'
|
||||
@ -461,6 +417,7 @@ const UserParentalControl = () => {
|
||||
key={tag}
|
||||
tag={tag}
|
||||
tagType='allowedTag'
|
||||
removeTagCallback={removeAllowedTagsCallback}
|
||||
/>;
|
||||
})}
|
||||
</div>
|
||||
@ -485,6 +442,7 @@ const UserParentalControl = () => {
|
||||
key={tag}
|
||||
tag={tag}
|
||||
tagType='blockedTag'
|
||||
removeTagCallback={removeBlockedTagsTagsCallback}
|
||||
/>;
|
||||
})}
|
||||
</div>
|
||||
@ -503,11 +461,12 @@ const UserParentalControl = () => {
|
||||
<div className='accessScheduleList paperList'>
|
||||
{accessSchedules.map((accessSchedule, index) => {
|
||||
return <AccessScheduleList
|
||||
key={accessSchedule.Id}
|
||||
key={`${accessSchedule.DayOfWeek}${accessSchedule.StartHour}${accessSchedule.EndHour}`}
|
||||
index={index}
|
||||
DayOfWeek={accessSchedule.DayOfWeek}
|
||||
StartHour={accessSchedule.StartHour}
|
||||
EndHour={accessSchedule.EndHour}
|
||||
removeScheduleCallback={removeScheduleCallback}
|
||||
/>;
|
||||
})}
|
||||
</div>
|
||||
|
@ -1,4 +1,4 @@
|
||||
import React, { FunctionComponent } from 'react';
|
||||
import React, { FunctionComponent, useCallback } from 'react';
|
||||
import datetime from '../../../scripts/datetime';
|
||||
import globalize from '../../../lib/globalize';
|
||||
import IconButtonElement from '../../../elements/IconButtonElement';
|
||||
@ -8,6 +8,7 @@ type AccessScheduleListProps = {
|
||||
DayOfWeek?: string;
|
||||
StartHour?: number ;
|
||||
EndHour?: number;
|
||||
removeScheduleCallback?: (index: number) => void;
|
||||
};
|
||||
|
||||
function getDisplayTime(hours = 0) {
|
||||
@ -21,7 +22,10 @@ function getDisplayTime(hours = 0) {
|
||||
return datetime.getDisplayTime(new Date(2000, 1, 1, hours, minutes, 0, 0));
|
||||
}
|
||||
|
||||
const AccessScheduleList: FunctionComponent<AccessScheduleListProps> = ({ index, DayOfWeek, StartHour, EndHour }: AccessScheduleListProps) => {
|
||||
const AccessScheduleList: FunctionComponent<AccessScheduleListProps> = ({ index, DayOfWeek, StartHour, EndHour, removeScheduleCallback }: AccessScheduleListProps) => {
|
||||
const onClick = useCallback(() => {
|
||||
index !== undefined && removeScheduleCallback !== undefined && removeScheduleCallback(index);
|
||||
}, [index, removeScheduleCallback]);
|
||||
return (
|
||||
<div
|
||||
className='liSchedule listItem'
|
||||
@ -43,6 +47,7 @@ const AccessScheduleList: FunctionComponent<AccessScheduleListProps> = ({ index,
|
||||
title='Delete'
|
||||
icon='delete'
|
||||
dataIndex={index}
|
||||
onClick={onClick}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
|
@ -1,12 +1,16 @@
|
||||
import React, { FunctionComponent } from 'react';
|
||||
import React, { FunctionComponent, useCallback } from 'react';
|
||||
import IconButtonElement from '../../../elements/IconButtonElement';
|
||||
|
||||
type IProps = {
|
||||
tag?: string,
|
||||
tagType?: string;
|
||||
removeTagCallback?: (tag: string) => void;
|
||||
};
|
||||
|
||||
const TagList: FunctionComponent<IProps> = ({ tag, tagType }: IProps) => {
|
||||
const TagList: FunctionComponent<IProps> = ({ tag, tagType, removeTagCallback }: IProps) => {
|
||||
const onClick = useCallback(() => {
|
||||
tag !== undefined && removeTagCallback !== undefined && removeTagCallback(tag);
|
||||
}, [tag, removeTagCallback]);
|
||||
return (
|
||||
<div className='paperList'>
|
||||
<div className='listItem'>
|
||||
@ -21,6 +25,7 @@ const TagList: FunctionComponent<IProps> = ({ tag, tagType }: IProps) => {
|
||||
title='Delete'
|
||||
icon='delete'
|
||||
dataTag={tag}
|
||||
onClick={onClick}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -222,7 +222,7 @@
|
||||
<div class="checkboxContainer checkboxContainer-withDescription advanced">
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" id="chkPreferNonstandardArtistsTag" />
|
||||
<span>${PreferNonStandardArtistsTag}</span>
|
||||
<span>${PreferNonstandardArtistsTag}</span>
|
||||
</label>
|
||||
<div class="fieldDescription checkboxFieldDescription">${PreferNonstandardArtistsTagHelp}</div>
|
||||
</div>
|
||||
|
@ -268,11 +268,10 @@
|
||||
<span>${Reset}</span>
|
||||
</button>
|
||||
<button is="emby-button" type="submit" class="raised button-submit block btnSave formDialogFooterItem">
|
||||
<span>${SaveChanges}</span>
|
||||
<span>${Save}</span>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
|
@ -2651,7 +2651,9 @@ export class PlaybackManager {
|
||||
}
|
||||
|
||||
if (mediaSource.DefaultSubtitleStreamIndex == null || mediaSource.DefaultSubtitleStreamIndex < 0) {
|
||||
mediaSource.DefaultSubtitleStreamIndex = mediaSource.DefaultSecondarySubtitleStreamIndex;
|
||||
if (mediaSource.DefaultSecondarySubtitleStreamIndex != null) {
|
||||
mediaSource.DefaultSubtitleStreamIndex = mediaSource.DefaultSecondarySubtitleStreamIndex;
|
||||
}
|
||||
mediaSource.DefaultSecondarySubtitleStreamIndex = -1;
|
||||
}
|
||||
|
||||
|
@ -898,13 +898,21 @@ export default function (view) {
|
||||
}
|
||||
}
|
||||
|
||||
function updatePlaylist() {
|
||||
const btnPreviousTrack = view.querySelector('.btnPreviousTrack');
|
||||
const btnNextTrack = view.querySelector('.btnNextTrack');
|
||||
btnPreviousTrack.classList.remove('hide');
|
||||
btnNextTrack.classList.remove('hide');
|
||||
btnNextTrack.disabled = false;
|
||||
btnPreviousTrack.disabled = false;
|
||||
async function updatePlaylist() {
|
||||
try {
|
||||
const playlist = await playbackManager.getPlaylist();
|
||||
|
||||
if (playlist && playlist.length > 1) {
|
||||
const btnPreviousTrack = view.querySelector('.btnPreviousTrack');
|
||||
const btnNextTrack = view.querySelector('.btnNextTrack');
|
||||
btnPreviousTrack.classList.remove('hide');
|
||||
btnNextTrack.classList.remove('hide');
|
||||
btnPreviousTrack.disabled = false;
|
||||
btnNextTrack.disabled = false;
|
||||
}
|
||||
} catch (err) {
|
||||
console.error('[VideoPlayer] failed to get playlist', err);
|
||||
}
|
||||
}
|
||||
|
||||
function updateTimeText(elem, ticks, divider) {
|
||||
|
@ -11,6 +11,7 @@ type IProps = {
|
||||
dataIndex?: string | number;
|
||||
dataTag?: string | number;
|
||||
dataProfileid?: string | number;
|
||||
onClick?: () => void;
|
||||
};
|
||||
|
||||
const createIconButtonElement = ({ is, id, className, title, icon, dataIndex, dataTag, dataProfileid }: IProps) => ({
|
||||
@ -28,19 +29,31 @@ const createIconButtonElement = ({ is, id, className, title, icon, dataIndex, da
|
||||
</button>`
|
||||
});
|
||||
|
||||
const IconButtonElement: FunctionComponent<IProps> = ({ is, id, className, title, icon, dataIndex, dataTag, dataProfileid }: IProps) => {
|
||||
const IconButtonElement: FunctionComponent<IProps> = ({ is, id, className, title, icon, dataIndex, dataTag, dataProfileid, onClick }: IProps) => {
|
||||
const button = createIconButtonElement({
|
||||
is: is,
|
||||
id: id ? `id="${id}"` : '',
|
||||
className: className,
|
||||
title: title ? `title="${globalize.translate(title)}"` : '',
|
||||
icon: icon,
|
||||
dataIndex: (dataIndex || dataIndex === 0) ? `data-index="${dataIndex}"` : '',
|
||||
dataTag: dataTag ? `data-tag="${dataTag}"` : '',
|
||||
dataProfileid: dataProfileid ? `data-profileid="${dataProfileid}"` : ''
|
||||
});
|
||||
|
||||
if (onClick !== undefined) {
|
||||
return (
|
||||
<button
|
||||
style={{ all: 'unset' }}
|
||||
dangerouslySetInnerHTML={button}
|
||||
onClick={onClick}
|
||||
/>
|
||||
);
|
||||
}
|
||||
|
||||
return (
|
||||
<div
|
||||
dangerouslySetInnerHTML={createIconButtonElement({
|
||||
is: is,
|
||||
id: id ? `id="${id}"` : '',
|
||||
className: className,
|
||||
title: title ? `title="${globalize.translate(title)}"` : '',
|
||||
icon: icon,
|
||||
dataIndex: (dataIndex || dataIndex === 0) ? `data-index="${dataIndex}"` : '',
|
||||
dataTag: dataTag ? `data-tag="${dataTag}"` : '',
|
||||
dataProfileid: dataProfileid ? `data-profileid="${dataProfileid}"` : ''
|
||||
})}
|
||||
dangerouslySetInnerHTML={button}
|
||||
/>
|
||||
);
|
||||
};
|
||||
|
@ -197,6 +197,10 @@ function canPlayAudioFormat(format) {
|
||||
}
|
||||
|
||||
function testCanPlayMkv(videoTestElement) {
|
||||
if (browser.vidaa) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (browser.tizen || browser.web0s) {
|
||||
return true;
|
||||
}
|
||||
@ -658,7 +662,7 @@ export default function (options) {
|
||||
|
||||
if (canPlayHevc(videoTestElement, options)) {
|
||||
mp4VideoCodecs.push('hevc');
|
||||
if (browser.tizen || browser.web0s) {
|
||||
if (browser.tizen || browser.web0s || browser.vidaa) {
|
||||
hlsInTsVideoCodecs.push('hevc');
|
||||
}
|
||||
}
|
||||
|
@ -205,7 +205,7 @@
|
||||
"Authorize": "Magtig",
|
||||
"AskAdminToCreateLibrary": "Vra 'n administrateur om 'n versameling te skep.",
|
||||
"Artist": "Kunstenaar",
|
||||
"AllowFfmpegThrottlingHelp": "Wanneer 'n transkodering of remux ver genoeg voor die huidige terugspeel posisie is, vertraag die proses sodat dit minder hulpbronne verbruik. Hierdie is meer gebruiklik wanneer daar nie gereeld gesoek word tydens die kyk van video nie. Skakel hierdie af as u terugspeel probleme ervaar.",
|
||||
"AllowFfmpegThrottlingHelp": "Wanneer 'n transkodeer of remux ver genoeg vorentoe kom vanaf die huidige afspeelposisie, hou die proses op sodat dit minder hulpbronne sal gebruik. Dit is die nuttigste wanneer jy kyk sonder om gereeld te soek. Skakel dit af as jy afspeelprobleme ervaar.",
|
||||
"AllowFfmpegThrottling": "Smoorklep Transkoderings",
|
||||
"Album": "Album",
|
||||
"HeaderAlbumArtists": "Album kunstenaars",
|
||||
@ -314,7 +314,7 @@
|
||||
"ButtonSelectDirectory": "Kies Lêergids",
|
||||
"ButtonChangeServer": "Verander Lêerbediener",
|
||||
"ButtonAddServer": "Voeg Lêerbediener",
|
||||
"BurnSubtitlesHelp": "Bepaal of die lêerbediener onderskrifte moet inbrand wanneer videos getranskodeer word. Om dit nie te doen nie sal uitvoering verbeter. Kies Brand Outomaties om beeld-gebasseerde formate (VOBSUB, PGS, SUB, IDX, ens.) en sekere ASS of SSA onderskrifte in te brand.",
|
||||
"BurnSubtitlesHelp": "Bepaal of die bediener ondertitelings moet brand. Om dit te vermy, sal prestasie aansienlik verbeter. Kies Auto om beeldgebaseerde formate (VobSub, PGS, SUB, IDX, ens.) en sekere ASS of SSA ondertitelings te brand.",
|
||||
"ShowYear": "Wys jaar",
|
||||
"ShowTitle": "Wys titel",
|
||||
"Raised": "Gelig",
|
||||
@ -491,7 +491,7 @@
|
||||
"HardwareAccelerationWarning": "Die aktivering van hardeware versnelling mag stabiliteit belemmer in sekere omgewings. Verseker dat u bedryfstelsel en video drywers ten volle op datum is. As u probleme ervaar in die terugspeel van video nadat hierdie geaktiveer is sal u die verstelling terug moet stel na Geen.",
|
||||
"HDPrograms": "HD programme",
|
||||
"EncoderPresetHelp": "Kies 'n vinniger waarde om optrede te verbeter, of 'n stadiger waarde om gehalte te verbeter.",
|
||||
"H264CrfHelp": "Die Konstante Tempo Faktor (KTF) is die standaard kwaliteit verstelling vir die x264 en x265enkodeerder. Jy kan die waardes stel tussen 0 en 51, waar laer waardes beter gehalte lewer (ten koste van hoër lêer-groottes). Sinvolle waardes is tussen 18 en 28. Die standaard vir x264 is 23 en vir x265 is 28, gebruik dit dus as 'n beginpunt.",
|
||||
"H264CrfHelp": "Die 'Constante Tempo Faktor' (CRF) is die standaard kwaliteit instelling vir die x264 en x265 sagteware kodeerders. Jy kan die waardes tussen 0 en 51 stel, waar laer waardes tot beter kwaliteit lei (ten koste van groter lêergroottes). Gesonde waardes is tussen 18 en 28. Die standaard vir x264 is 23, en vir x265 is 28, so jy kan dit as 'n beginpunt gebruik. Hardeware kodeerders gebruik nie hierdie instellings nie.",
|
||||
"GuideProviderSelectListings": "Kies Gids",
|
||||
"HeaderSelectMetadataPathHelp": "Soek of sleutel lêerpad in wat u vir metadata wil gebruik. Die gidslêer moet skryfbaar wees.",
|
||||
"HeaderSelectPath": "Kies Lêerpad",
|
||||
@ -545,9 +545,9 @@
|
||||
"EnableFasterAnimations": "Vinniger animasies",
|
||||
"EnableBlurHashHelp": "Beelde wat nog gelaai word, sal met 'n unieke plekhouer vertoon word.",
|
||||
"Depressed": "Ingedrukte",
|
||||
"Bwdif": "BWDIF",
|
||||
"Bwdif": "Bob Weaver DeInterlacing Filter (BWDIF)",
|
||||
"ButtonSyncPlay": "Sinkroniseer Speler",
|
||||
"AllowTonemappingHelp": "Die kartering van kleurtoon kan die dinamiese omvang van 'n video van HDR na SDR verander, terwyl die detail van die beeld en kleur behoue bly, wat baie belangrike inligting is om die oorspronklike toneel voor te stel. Werk tans slegs wanneer video's gekodeer word met ingeboude 10bit HDR10, HLG en DoVi-metadata. Die terugspeel benodig die ooreenkomstige OpenCL of CUDA looptyd.",
|
||||
"AllowTonemappingHelp": "Toon-kaart kan die dinamiese reeks van 'n video van HDR na SDR omskep terwyl beeldbesonderhede en kleure behou word, wat baie belangrike inligting is vir die voorstelling van die oorspronklike toneel. Werk tans slegs met 10bit HDR10, HLG en DoVi video's. Dit vereis die ooreenstemmende GPGPU-runtime.",
|
||||
"LabelFolder": "Vouer",
|
||||
"LabelFinish": "Voltooi",
|
||||
"LabelFileOrUrl": "Lêer of URL",
|
||||
@ -866,13 +866,74 @@
|
||||
"AllowAv1Encoding": "Laat enkodering in AV1-formaat",
|
||||
"LabelIsHearingImpaired": "Vir gehoorgestremdes (SDH)",
|
||||
"AllowSegmentDeletion": "Verwyder seksies",
|
||||
"AllowSegmentDeletionHelp": "Vee ou seksies uit nadat dit aan die kliënt gestuur is. Dit verhoed dat die hele getranskodeerde lêer op skyf gestoor moet word. Sal slegs werk met versnelling geaktiveer. Skakel dit af as jy terugspeelprobleme ondervind.",
|
||||
"AllowSegmentDeletionHelp": "Verwyder ou segmente nadat hulle deur die kliënt afgelaai is. Dit voorkom dat die hele oorkodeerde lêer op skyf gestoor hoef te word. Skakel dit af as jy afspeelprobleme ondervind.",
|
||||
"LabelThrottleDelaySeconds": "Smoorklep agter",
|
||||
"LabelThrottleDelaySecondsHelp": "Tyd in sekondes waarna die transkodeerder versmoor sal word. Moet groot genoeg wees vir die kliënt om 'n gesonde buffer te handhaaf. Werk slegs as versnelling geaktiveer is.",
|
||||
"LabelSegmentKeepSeconds": "Tyd om seksies te hou",
|
||||
"LabelSegmentKeepSecondsHelp": "Tyd in sekondes waarvoor seksies gehou moet word voordat hulle oorskryf word. Moet groter wees as \"Smoorklep agter\". Werk slegs as \"Verwyder seksies\" geaktiveer is.",
|
||||
"LabelSegmentKeepSecondsHelp": "Tyd in sekondes waarvoor segmente bewaar moet word nadat die kliënt dit afgelaai het. Slegs werk as segmentverwydering geaktiveer is.",
|
||||
"ForeignPartsOnly": "Slegs gedwonge/vreemde onderdele",
|
||||
"AiTranslated": "AI Vertaal",
|
||||
"MachineTranslated": "Masjien Vertaal",
|
||||
"HearingImpairedShort": "HI/SDH"
|
||||
"HearingImpairedShort": "HI/SDH",
|
||||
"AllowContentWithTagsHelp": "Vertoon slegs media met ten minste een van die gespesifiseerde etikette.",
|
||||
"Creator": "Skepper",
|
||||
"Editor": "Redigeerder",
|
||||
"AndOtherArtists": "{0} en {1} ander kunstenaars.",
|
||||
"BackdropScreensaver": "Agtergrond-skermbeskermer",
|
||||
"ChannelResolutionFullHD": "Volle HD",
|
||||
"Colorist": "Kleurist",
|
||||
"ChannelResolutionHD": "HD",
|
||||
"DateModified": "Datum gewysig",
|
||||
"DeleteEpisode": "Verwyder Episode",
|
||||
"ConfirmDeleteSeries": "Die verwydering van hierdie reeks sal ALLE {0} episodes uit beide die lêerstelsel en jou media biblioteek verwyder. Is jy seker jy wil voortgaan?",
|
||||
"DlnaMovedMessage": "Die DLNA-funksionaliteit het na 'n plugin verskuif.",
|
||||
"ConfirmDeleteLyrics": "Die verwydering van hierdie lirieke sal hulle uit beide die lêerstelsel en jou media biblioteek verwyder. Is jy seker jy wil voortgaan?",
|
||||
"Experimental": "Eksperimenteel",
|
||||
"CoverArtist": "Omslag kunstenaar",
|
||||
"EnableDts": "Aktiveer DTS (DCA)",
|
||||
"GoogleCastUnsupported": "Google Cast nie ondersteun nie",
|
||||
"EnableHi10pHelp": "Aktiveer om te voorkom dat H.264 10-bits video’s getranskodeer word. Deaktiveer hierdie opsie as die video blanke rame vertoon.",
|
||||
"EnableLibraryHelp": "Deaktiveer die biblioteek sal dit uit alle gebruikersbeskouings versteek.",
|
||||
"EnableTrueHdHelp": "Slegs aktiveer as jou toestel TrueHD ondersteun of aan 'n kompaktiewe audio ontvanger gekoppel is, anders kan dit tot speelprobleme lei.",
|
||||
"AirPlay": "AirPlay",
|
||||
"HeaderAudioAdvanced": "Audio Gevorderd",
|
||||
"HeaderDeleteSeries": "Verwyder Reeks",
|
||||
"DisableVbrAudioEncodingHelp": "Voorkom dat die bediener audio met VBR vir hierdie kliënt kodeer.",
|
||||
"EditLyrics": "Wysig lirieke",
|
||||
"HeaderAllRecordings": "Alle Opnames",
|
||||
"GoHome": "Gaan Huis toe",
|
||||
"EnableTrueHd": "Aktiveer TrueHD",
|
||||
"EnableHi10p": "Aktiveer H.264 Hoë 10 Profiel",
|
||||
"Alternate": "Alternatief",
|
||||
"AlternateDVD": "Alternatiewe DVD",
|
||||
"DeleteEntireSeries": "Verwyder {0} Episodes",
|
||||
"HeaderDummyChapter": "Hoofstuk Beelde",
|
||||
"HeaderEditPlaylist": "Wysig Speellys",
|
||||
"BlockContentWithTagsHelp": "Versteek media met ten minste een van die gespesifiseerde etikette.",
|
||||
"ChannelResolutionSD": "SD",
|
||||
"ChannelResolutionSDPAL": "SD (PAL)",
|
||||
"ChannelResolutionUHD4K": "UHD (4K)",
|
||||
"DeleteSeries": "Verwyder reeks",
|
||||
"EnableLibrary": "Aktiveer die biblioteek",
|
||||
"HeaderDeleteLyrics": "Verwyder Liedjies",
|
||||
"DeleteName": "Verwyder {0}",
|
||||
"AllowSubtitleManagement": "Laat hierdie gebruiker toe om onderskrifte te redigeer",
|
||||
"AlwaysBurnInSubtitleWhenTranscoding": "Brand altyd onderskrifte in tydens oorkodeer",
|
||||
"AlwaysBurnInSubtitleWhenTranscodingHelp": "Brand in alle ondertitelings wanneer oorkoderings geaktiveer word. Dit verseker ondertitelingssinchronisasie na oorkoderings ten koste van verminderde oorkoderingssnelheid.",
|
||||
"AllowTonemappingSoftwareHelp": "Toon-kaart kan die dinamiese reeks van 'n video van HDR na SDR omskep terwyl beeldbesonderhede en kleure behou word, wat baie belangrike inligting is vir die voorstelling van die oorspronklike toneel. Werk tans slegs met 10bit HDR10, HLG en DoVi video's.",
|
||||
"AlwaysRemuxFlacAudioFilesHelp": "As jy lêers het wat jou blaaier verwerp om af te speel of waar dit tydstempels onnauwkeurig bereken, skakel dit in as 'n omseilmiddel.",
|
||||
"AlwaysRemuxMp3AudioFilesHelp": "As jy lêers het wat jou blaaier tydstempels onnauwkeurig bereken, skakel dit in as 'n omseilmiddel.",
|
||||
"ButtonEditUser": "Bewerk gebruiker",
|
||||
"SelectAudioNormalizationHelp": "Sporewenkings - pas die volume van elke spoor aan sodat hulle met dieselfde hardheid afgespeel word. Albumnuans - pas die volume van alle spore in 'n album slegs aan, terwyl die album se dinamiese reeks behou word. Om tussen \"Af\" en ander opsies te skakel, vereis dat die huidige afspeelstop herbegin moet word.",
|
||||
"DeleteLyrics": "Verwyder lirieke",
|
||||
"EnableDtsHelp": "Slegs aktiveer as jou toestel DTS ondersteun of aan 'n kompaktiewe audio ontvanger gekoppel is, anders kan dit tot speelprobleme lei.",
|
||||
"EnableSmoothScroll": "Aktiveer gladde rol",
|
||||
"GridView": "Rasterweergave",
|
||||
"HeaderConfirmRepositoryInstallation": "Bevestig Installasie van die Plugin Repository",
|
||||
"AllowFmp4TranscodingContainerHelp": "Laat fMP4-transkodeerhouer vir hierdie tuner toe om HEVC- en HDR-inhoud in te skakel. Nie alle tuners is versoenbaar met hierdie houer nie. Skakel dit af as jy afspeelprobleme ervaar.",
|
||||
"AllowStreamSharingHelp": "Laat Jellyfin toe om die mpegts-stroom van die tuner te dupliseer en hierdie dupliseerde stroom aan sy kliënte te deel. Dit is nuttig wanneer die tuner 'n totale stroomtelingslimiet het, maar kan ook afspeelprobleme veroorsaak.",
|
||||
"Author": "Skrywer",
|
||||
"FallbackMaxStreamingBitrateHelp": "Die maksimum stroom bitrate word as 'n terugval gebruik wanneer ffprobe nie in staat is om die brondstroom bitrate te bepaal nie. Dit help om te voorkom dat kliënte 'n buitensporig hoë transkodering bitrate aanvra, wat die speler kan laat faal en die kodeerder kan oorlaai.",
|
||||
"ErrorDeletingLyrics": "Daar was 'n fout om die lirieke van die bediener te verwyder. Kontroleer asseblief dat Jellyfin skryftoegang tot die media-gids het en probeer weer.",
|
||||
"HeaderAddLyrics": "Voeg Lirieke Toe"
|
||||
}
|
||||
|
@ -702,7 +702,7 @@
|
||||
"BoxSet": "Комплект",
|
||||
"AuthProviderHelp": "Избор на доставчик на услуга за автентификация, която ще се използва за автентификация на потребителската парола.",
|
||||
"AllowedRemoteAddressesHelp": "Списък с IP адреси или IP/маска записи, разделени със запетая, които ще имат отдалечен достъп. Ако полето не е попълнено всички адреси ще имат отдалечен достъп.",
|
||||
"BurnSubtitlesHelp": "Определя дали сървърът трябва да записва субтитри във видеофайлове при прекодиране. Избягването на това значително ще подобри производителността. Изберете Auto, за да запишете формати, базирани на изображения (VOBSUB, PGS, SUB, IDX) и някои ASS или SSA субтитри.",
|
||||
"BurnSubtitlesHelp": "Определя дали сървърът трябва да записва субтитри във видеофайлове. Избягването на това значително ще подобри производителността. Изберете Auto, за да запишете формати, базирани на изображения (VOBSUB, PGS, SUB, IDX) и някои ASS или SSA субтитри.",
|
||||
"AllowFfmpegThrottlingHelp": "Когато прекодирането или запазването на видео стигне достатъчно далеч напред от текущата позиция за възпроизвеждане, поставете на пауза процеса, така ще се изразходват по-малко ресурси. Това е най-полезно, когато се гледа, без да се търси често из видеото. Изключете това, ако имате проблеми с възпроизвеждането.",
|
||||
"AllowOnTheFlySubtitleExtractionHelp": "Вградените субтитри могат да бъдат извлечени от видеофайловете и прехвърлени към клиентите като обикновен текст, за да се предотврати транскодирането на видеото. В някои системи това може да отнеме много време и да спре възпроизвеждането на видео по време на процеса на извличане. Деактивирайте това, за да има вградени субтитри, записани с видео кодиране, когато те не се поддържат от клиентското устройство.",
|
||||
"CinemaModeConfigurationHelp": "Режимът на кино носи театрално изживяване направо във вашата всекидневна с възможност за пускане на трейлъри и персонализирани интродукции преди основния филм.",
|
||||
@ -890,7 +890,7 @@
|
||||
"LabelAudioChannels": "Аудио канали",
|
||||
"LabelAudioBitrate": "Скорост на предаване на аудиото",
|
||||
"LabelAudioBitDepth": "Битова дълбочина на аудиото",
|
||||
"LabelAppNameExample": "Примерно: Sickbeard, Sonarr",
|
||||
"LabelAppNameExample": "Име, подходящо за четене, за идентификация на API ключ. Тази настройка няма да има ефект върху останалите.",
|
||||
"LabelAllowedRemoteAddressesMode": "Режим на филтъра за външни ИП адреси",
|
||||
"LabelAllowedRemoteAddresses": "Филтър за външни ИП адреси",
|
||||
"LabelAllowHWTranscoding": "Разреши хардуерно транскодиране",
|
||||
@ -1452,8 +1452,8 @@
|
||||
"LabelAlbumArtMaxResHelp": "Максимална резолюция на изображенията предоставена чрез \"upnp:albumArtURI\" полето.",
|
||||
"KnownProxiesHelp": "Списък от IP ареси или хост имена на известни прокси сървъри, разделени със запетая, използвани при свързване с Jellyfin сървър. Това е задължително за да се използва правилнен \"X-Forwarded-For\" хедър. Изисква рестартиране след прилагане.",
|
||||
"HomeVideosPhotos": "Домашни видеа и снимки",
|
||||
"DirectPlayHelp": "Премахване на изображение",
|
||||
"AllowTonemappingHelp": "Тоналното картографиране може да трансформира динамичния обхват на видеото от HDR към SDR, като същевременно запазва детайлите и цветовете на изображението, които са много важна информация за представяне на оригиналната сцена. В момента работи само с 10-битови HDR10,HLG и DoVi видеоклипове. Това изисква съответното време за изпълнение от OpenCL или CUDA.",
|
||||
"DirectPlayHelp": "Файлът е напълно съвместим с този клиент, затова го получава без никакви модификации.",
|
||||
"AllowTonemappingHelp": "Тоналното картографиране може да трансформира динамичния обхват на видеото от HDR към SDR, като същевременно запазва детайлите и цветовете на изображението, които са много важна информация за представяне на оригиналната сцена. В момента работи само с 10-битови HDR10,HLG и DoVi видеоклипове. Това изисква съответното време за изпълнение от GPGPU.",
|
||||
"LabelMaxAudiobookResumeHelp": "Приема се ,че файловете се възпроизведени до края , ако се спре след като оставащото време е по-малко от тази стойност.",
|
||||
"Experimental": "Експериментални",
|
||||
"IgnoreDtsHelp": "Изключването на опцията може да теши някои проблеми, напр. липсващ звук на канали с отделни звукови и видео потоци.",
|
||||
@ -1471,10 +1471,10 @@
|
||||
"LabelEnableAudioVbrHelp": "Динамичният битрейт предлага по-добро съотношение между качество и среден битрейт, но в някои редки случаи може да причини проблеми с буферирането и съвместимостта.",
|
||||
"LabelIconMaxResHelp": "Максимална резолюция на изображенията предоставена чрез \"upnp:icon\" полето.",
|
||||
"AllowSegmentDeletion": "Изтриване на сегменти",
|
||||
"AllowSegmentDeletionHelp": "Изтриване на сегментите след изпращане към клиента. Това предотвратява нуждата за съхраняване на целия транскодиран файл на диска. Работи само с включено подтискане. Изключете тази функция ако изпитате проблеми с възпоизвеждането.",
|
||||
"AllowSegmentDeletionHelp": "Изтриване на сегментите свалени от клиента. Това предотвратява нуждата за съхраняване на целия транскодиран файл на диска. Изключете тази функция ако изпитате проблеми с възпоизвеждането.",
|
||||
"LabelThrottleDelaySecondsHelp": "Време в секунди след което транскодера ще бъде подтиснат. Трябва да е достатъчно голям за клиента да поддържа здрав буфер. Работи само ако подтискането е включено.",
|
||||
"LabelSegmentKeepSeconds": "Време в което да се запазят сегменти",
|
||||
"LabelSegmentKeepSecondsHelp": "Време в секунди за което сегментите трябва да се пазят след презаписване. Трябва да е повече от \"Подтискане след\". Работи само ако 'Изтриване на сегменти' е включено.",
|
||||
"LabelSegmentKeepSecondsHelp": "Време в секунди за което сегментите трябва да се пазят след като са свалени от клиента. Работи само ако 'Изтриване на сегменти' е включено.",
|
||||
"EnableAudioNormalizationHelp": "Нормализацията на звука ще усили сигналът за да поддържа средните честоти на желано ниво (-18dB).",
|
||||
"EnableAudioNormalization": "Нормализация на звука",
|
||||
"Unknown": "Неизвестен",
|
||||
@ -1502,5 +1502,31 @@
|
||||
"LabelSelectAudioNormalization": "Аудио нормализация",
|
||||
"LabelBuildVersion": "Софтуерна версия",
|
||||
"LabelEnableLUFSScanHelp": "Нормализаране на силата на звука на всички аудио файлове. Това ще увеличи времети за сканиране на библиотеката и ще използва допъкнителни ресурси.",
|
||||
"HeaderGuestCast": "Гостуващи актьори"
|
||||
"HeaderGuestCast": "Гостуващи актьори",
|
||||
"AlwaysBurnInSubtitleWhenTranscodingHelp": "Залепвай всички субтитри при транскодиране. Това гарантира синхронността им, но намаля скоростта на транскодиране.",
|
||||
"AlwaysRemuxFlacAudioFilesHelp": "Ако, някои от файловете които пускате, не тръгва в браузера или времената се разминават, използвай тази функция.",
|
||||
"AlwaysRemuxMp3AudioFilesHelp": "Ако в твоят браузер времената се разминават, използвай тази функция.",
|
||||
"ConfirmDeleteSeries": "Изтриването на този сериал ще изтрие ВСИЧКИ {0} епизод, от файловата система и медийната библиотека. Сигурен ли си, че искаш да продължиш?",
|
||||
"ConfirmDeleteLyrics": "Изтриването на тези текстове ще ги премахне от файловата система и медийната библиотека. Сигурен ли си, че искаш да продължиш?",
|
||||
"DateModified": "Дата на промяна",
|
||||
"DeleteLyrics": "Изтрий текстовете",
|
||||
"AllowContentWithTagsHelp": "Показвай медия с поне един от тези тагове.",
|
||||
"AllowSubtitleManagement": "Позволи на потребителя да редактира субтитри",
|
||||
"BlockContentWithTagsHelp": "Скрий медии с поне един от тези тагове.",
|
||||
"Author": "Автор",
|
||||
"Creator": "Създател",
|
||||
"EnableTrueHd": "Активирай TrueHD",
|
||||
"DeleteEntireSeries": "Изтрий {0} епизода",
|
||||
"DlnaMovedMessage": "Функцията DLNA е преместана в отделен плъгин.",
|
||||
"Editor": "Редактор",
|
||||
"EditLyrics": "Промени текстове",
|
||||
"EnableLibrary": "Активирай библиотеката",
|
||||
"EnableLibraryHelp": "Изключването на библиотеката ще я скрие за всички потребители.",
|
||||
"ChannelResolutionSDPAL": "SD (PAL)",
|
||||
"AlwaysBurnInSubtitleWhenTranscoding": "Винаги залепвай субтитрите при транскодиране",
|
||||
"DeleteSeries": "Изтрий сериала",
|
||||
"DeleteEpisode": "Изтрий епизода",
|
||||
"DeleteName": "Изтрий {0}",
|
||||
"EnableDts": "Включи DTS (DCA)",
|
||||
"EnableDtsHelp": "Включи само, ако устройството ви поддържа DTS или е свързано към аудио устройства с поддръжка на DTS. В противен случай възпроизвеждането, може да не работи правилно."
|
||||
}
|
||||
|
@ -1442,7 +1442,6 @@
|
||||
"Runtime": "Runtime",
|
||||
"Saturday": "Saturday",
|
||||
"Save": "Save",
|
||||
"SaveChanges": "Save changes",
|
||||
"SaveLyricsIntoMediaFolders": "Save lyrics into media folders",
|
||||
"SaveLyricsIntoMediaFoldersHelp": "Storing lyrics next to audio files will allow them to be more easily managed.",
|
||||
"SavePassword": "Save Password",
|
||||
|
@ -63,7 +63,7 @@
|
||||
"AllowOnTheFlySubtitleExtractionHelp": "Sisäiset tekstitykset voidaan lähettää päätelaitteille pelkkänä tekstinä transkoodauksen välttämiseksi. Joissakin järjestelmissä tämä voi kestää kauan ja aiheuttaa toiston pysähtymisen purun aikana. Poista asetus käytöstä polttaaksesi tekstitykset suoraan videoon, mikäli päätelaite ei tue tekstityksiä natiivisti.",
|
||||
"AllowRemoteAccess": "Salli etäyhteydet tähän palvelimeen",
|
||||
"AllowRemoteAccessHelp": "Jos merkki puuttuu, kaikki ulkopuoliset yhteydet estetään.",
|
||||
"AllowedRemoteAddressesHelp": "Pilkuilla eroteltu lista IP-osoitteista tai IP/verkonpeite merkinnöistä verkoille, joille sallitaan etäyhteys palvelimeen. Tyhjäksi jätetty lista tarkoittaa, että kaikki osoitteet sallitaan.",
|
||||
"AllowedRemoteAddressesHelp": "Pilkuilla eroteltu lista IP-osoitteista tai verkoista, joille sallitaan etäyhteys palvelimeen. Tyhjäksi jätettynä kaikki osoitteet sallitaan.",
|
||||
"AlwaysPlaySubtitles": "Toista aina",
|
||||
"AlwaysPlaySubtitlesHelp": "Oletuskieliasetusta vastaava tekstitys otetaan käyttöön ääniraidan kielestä huolimatta.",
|
||||
"AnyLanguage": "Mikä tahansa kieli",
|
||||
@ -166,7 +166,7 @@
|
||||
"Descending": "Laskeva",
|
||||
"Desktop": "Työpöytä",
|
||||
"DetectingDevices": "Tunnistetaan laitteita",
|
||||
"DeviceAccessHelp": "Tämä pätee ainoastaan laitteisiin, jotka voidaan tunnistaa uniikkina ja ei estä selainpääsyä. Uusien laitteiden suodattaminen estää niiden käyttämisen ennen hyväksyntää täältä.",
|
||||
"DeviceAccessHelp": "Tämä pätee ainoastaan uniikkina tunnistettaviin laitteisiin, jotka eivät estä selainpääsyä. Käyttäjien uusien laitteiden suodattaminen estää käytön ennen hyväksyntää täältä.",
|
||||
"DirectPlaying": "Toistetaan ilman muuntoa",
|
||||
"DirectStreamHelp1": "Suoratoistovideo on yhteensopiva laitteen kanssa, mutta sillä on yhteensopimaton äänimuoto (DTS, Dolby TrueHD jne.) tai äänikanavien määrä. Tämä video uudelleenpakataan häviöttömästi lennossa ennen laitteeseen lähetystä. Vain äänivirta koodataan uudelleen.",
|
||||
"DirectStreamHelp2": "Suoratoiston virrankulutus riippuu yleensä ääniprofiilista. Vain videon suoratoisto on häviötöntä.",
|
||||
@ -337,12 +337,12 @@
|
||||
"LabelAppName": "Sovelluksen nimi",
|
||||
"LabelAllowedRemoteAddressesMode": "Etä-IP-osoitesuodattimen tila",
|
||||
"LabelAllowedRemoteAddresses": "Etä-IP-osoitesuodatin",
|
||||
"LabelAllowHWTranscoding": "Salli rautatranskoodaus",
|
||||
"LabelAllowHWTranscoding": "Salli laitteistopohjainen transkoodaus",
|
||||
"LabelAlbumArtMaxWidth": "Albumitaiteen enimmäisleveys",
|
||||
"LabelAlbumArtMaxHeight": "Albumitaiteen enimmäiskorkeus",
|
||||
"LabelAbortedByServerShutdown": "(Keskeytetty palvelimen sammutuksen takia)",
|
||||
"Identify": "Tunnista",
|
||||
"Horizontal": "Horisontaalinen",
|
||||
"Horizontal": "Pystysuuntainen",
|
||||
"HideWatchedContentFromLatestMedia": "Piilota toistettu sisältö 'Viimeksi lisätty media' -osiosta",
|
||||
"HeaderUpcomingOnTV": "Tulossa televisiosta",
|
||||
"HeaderTypeImageFetchers": "Kuvien lataajat ({0})",
|
||||
@ -354,7 +354,7 @@
|
||||
"HeaderSpecialEpisodeInfo": "Erikoisjakson tiedot",
|
||||
"HeaderSortOrder": "Lajittelujärjestys",
|
||||
"HeaderSetupLibrary": "Aseta mediakirjastosi",
|
||||
"HeaderSeriesStatus": "Sarjan status",
|
||||
"HeaderSeriesStatus": "Sarjan tila",
|
||||
"HeaderSeriesOptions": "Sarjan asetukset",
|
||||
"HeaderSelectTranscodingPath": "Valitse transkoodauksen väliakaistiedostojen sijainti",
|
||||
"HeaderScenes": "Kohtaukset",
|
||||
@ -1041,7 +1041,7 @@
|
||||
"HeaderCancelSeries": "Peruuta sarja",
|
||||
"HeaderCancelRecording": "Peruuta tallennus",
|
||||
"HeaderBranding": "Brändäys",
|
||||
"HeaderBlockItemsWithNoRating": "Estä kaikki joissa ei ole luokitusta tai jonka luokitusta ei voida tunnistaa",
|
||||
"HeaderBlockItemsWithNoRating": "Estä luokittelemattomat, kohteet tai tunnistamattomalla luokituksella",
|
||||
"HeaderAppearsOn": "Osallistuu",
|
||||
"ApiKeysCaption": "Lista aktiivisista API-avaimista",
|
||||
"HeaderApiKeysHelp": "Ulkoiset sovellukset tarvitsevat API-avaimen voidakseen toimia palvelimen kanssa. Avaimet myönnetään joko kirjautumalla sisään normaalilla käyttäjätunnuksella tai myöntämällä sellainen sovellukselle manuaalisesti.",
|
||||
@ -1176,7 +1176,7 @@
|
||||
"HeaderSelectMetadataPathHelp": "Selaa tai syötä metatiedoille käytettävä tiedostosijainti. Kansioon on oltava kirjoitusoikeus.",
|
||||
"HeaderResponseProfileHelp": "Vasteprofiilit tarjoavat laitteeseen lähetettyjen tietojen mukauttamista tiettyjä medioita toistettaessa.",
|
||||
"HeaderKodiMetadataHelp": "Ota NFO-metatiedot käyttöön tai poista ne käytöstä muokkaamalla kirjastokohtaisia metatietojen tallennusasetuksia.",
|
||||
"HeaderEnabledFieldsHelp": "Lukitse kenttä ja estä tietojen muuttuminen poistamalla valinta kentästä.",
|
||||
"HeaderEnabledFieldsHelp": "Poista valinta estääksesi muutokset.",
|
||||
"HeaderDirectPlayProfileHelp": "Lisää muuntamattoman toiston profiileja osoittaaksesi, mitä muotoja laite voi toistaa suoraan.",
|
||||
"HeaderContainerProfileHelp": "Säiliöprofiilit ilmaisevat laitteen rajoitukset toistettaessa tiettyjä muotoja. Jos rajoitusta sovelletaan, media transkoodataan, vaikka sen muoto olisikin määritetty muuntamattomalle toistolle.",
|
||||
"EnableQuickConnect": "Salli Pikayhdistys tällä palvelimella",
|
||||
@ -1395,7 +1395,7 @@
|
||||
"MessageCreateAccountAt": "Luo tili kohteeseen {0}",
|
||||
"MessageChangeRecordingPath": "Tallennuskansion muutos ei siirrä olemassa olevia tallenteita vanhasta sijainnista uuteen. Jos haluat siirtää ne, on se tehtävä itse.",
|
||||
"MessageAddRepository": "Jos tahdot lisätä tietovaraston, paina otsikon vieressä olevaa painiketta ja täytä tarvittavat tiedot.",
|
||||
"MediaIsBeingConverted": "Mediaa muunnetaan toistavan laitteen kanssa yhteensopivaan muotoon.",
|
||||
"MediaIsBeingConverted": "Mediaa muunnetaan yhteensopivaan muotoon.",
|
||||
"MediaInfoVideoRange": "Videoalue",
|
||||
"MediaInfoColorTransfer": "Värinsiirto",
|
||||
"MediaInfoColorSpace": "Väriavaruus",
|
||||
@ -1757,9 +1757,9 @@
|
||||
"AllowSegmentDeletionHelp": "Poista vanhat osiot kun ne on lähetetty päätteelle. Tämän ansiosta transkoodattua tiedostoa ei tarvitse säilyttää kokonaan. Toimii vain rajoituksen ollessa käytössä. Poista käytöstä, jos kohtaat toisto-ongelmia.",
|
||||
"AllowSegmentDeletion": "Poista osiot",
|
||||
"LabelThrottleDelaySeconds": "Rajoita kun on kulunut",
|
||||
"LabelThrottleDelaySecondsHelp": "Aika sekunneissa, jonka kuluttua transkooderi rajoitetaan. Tämän on oltava riittävän suuri, jotta päätelaite kykenee ylläpitämään reilua puskuria. Toimii vain rajoituksen ollessa käytössä.",
|
||||
"LabelThrottleDelaySecondsHelp": "Aika sekunneissa, jonka jälkeen transkoodausta rajoitetaan. Tämän on oltava riittävän suuri, jotta päätelaite kykenee ylläpitämään reilua puskuria. Toimii vain rajoituksen ollessa käytössä.",
|
||||
"LabelSegmentKeepSeconds": "Osioiden säilytysaika",
|
||||
"LabelSegmentKeepSecondsHelp": "Aika sekunteina, jonka osiot säilytetään ennen päällekirjoitusta. Oltava \"Rahoita kun on kulunut\" -aikaa suurempi. Toimii vain osioiden poiston ollessa käytössä.",
|
||||
"LabelSegmentKeepSecondsHelp": "Aika sekunteina, jonka jälkeen osiot päällekirjoitetaan. Oltava \"Rajoita kun on kulunut\" -aikaa suurempi. Toimii vain osioiden poiston ollessa käytössä.",
|
||||
"LabelBackdropScreensaverInterval": "Taustanäytönsäästäjän ajoitus",
|
||||
"LabelBackdropScreensaverIntervalHelp": "Aika sekuntteina, jonka kuluttua kuva vaihtuu taustanäytönsäästäjää käytettäessä.",
|
||||
"AllowAv1Encoding": "Salli enkoodaus AV1-muodossa",
|
||||
@ -1802,7 +1802,7 @@
|
||||
"DeleteEpisode": "Poista jakso",
|
||||
"DeleteName": "Poista {0}",
|
||||
"PlaybackError.ASS_RENDER_ERROR": "ASS/SSA tekstityksien esittäjässä ilmeni virhe.",
|
||||
"EnableSmoothScroll": "Käytä sujuvaa vieritystä",
|
||||
"EnableSmoothScroll": "Käytä pehmeää vieritystä",
|
||||
"Lyric": "Sanoitus",
|
||||
"LimitSupportedVideoResolution": "Rajoita videon tuettua enimmäistarkkuutta",
|
||||
"EncodingFormatHelp": "Valitse enkoodaus, johon Jellyfinin tulisi transkoodata. Jellyfin käyttää softaenkoodausta kun laitteistokiihdytys ei ole saatavilla valitulle formaatille. H264 enkoodaus on aina käytettävissä.",
|
||||
@ -1893,10 +1893,10 @@
|
||||
"SelectPreferredTranscodeVideoCodecHelp": "Valitse ensisijainen videokoodekki johon transkoodataan. Jos ensisijainen koodekki ei ole tuettu, serveri käyttää seuraavakasi parasta koodekkia.",
|
||||
"LabelTrickplayKeyFrameOnlyExtractionHelp": "Poimi avainkehykset huomattavasti nopeammalla käsittelyajalla mutta epätarkemmalla ajoituksella. Jos valittu rautakiihdytysdekooderi ei tue tätä valintaa, käytetään ohjelmistokiihdytystä sen sijaan.",
|
||||
"ErrorDeletingLyrics": "Tapahtui virhe poistettaessa laulun sanoja palvelimelta. Tarkista, että Jellyfin:illä on kirjoitusoikeus mediakansioon, ja yritä uudestaan.",
|
||||
"EditLyrics": "Muokkaa laulun sanoja",
|
||||
"HeaderAddLyrics": "Lisää laulun sanat",
|
||||
"EditLyrics": "Muokkaa sanoituksia",
|
||||
"HeaderAddLyrics": "Lisää sanoitukset",
|
||||
"HeaderPreviewLyrics": "Esikatsele kappaleen sanoja",
|
||||
"HeaderUploadLyrics": "Lataa kappaleen sanat",
|
||||
"HeaderUploadLyrics": "Lähetä sanoitukset",
|
||||
"LabelDuration": "Kesto",
|
||||
"LabelDropLyricsHere": "Raahaa sanat tänne, tai klikkaa selataksesi.",
|
||||
"LabelInstalled": "Asennettu",
|
||||
@ -1927,5 +1927,16 @@
|
||||
"LabelTrickplayAccelEncodingHelp": "Tällä hetkellä ainoastaan käytettävissä QSV, VAAPI ja VideoToolbox, tällä valinnalla ei ole vaikutusta muihin rautakiihdytysmetodeihin.",
|
||||
"HeaderVideoAdvanced": "Edistynyt video",
|
||||
"PlaylistPublicDescription": "Salli tämän soittolistan katsominen jokaiselle kirjautuneelle käyttäjälle.",
|
||||
"DateModified": "Muokkauspäivämäärä"
|
||||
"DateModified": "Muokkauspäivämäärä",
|
||||
"AlwaysBurnInSubtitleWhenTranscoding": "Polta tekstit aina muunnettaessa",
|
||||
"DisableVbrAudioEncodingHelp": "Estää palvelinta pakkaamasta ääntä muuttuvalla bittinopeudella (VBR) tälle asiakasohjelmalle.",
|
||||
"HeaderNewPlaylist": "Uusi soittolista",
|
||||
"PlaylistError.UpdateFailed": "Virhe soittolistaa päivitettäessä",
|
||||
"HeaderEditPlaylist": "Soittolistan muokkaus",
|
||||
"MediaSegmentAction.Skip": "Ohita",
|
||||
"MediaSegmentType.Commercial": "Mainos",
|
||||
"MediaSegmentType.Intro": "Intro",
|
||||
"MediaSegmentType.Outro": "Lopputekstit",
|
||||
"MediaSegmentType.Preview": "Esikatselu",
|
||||
"MediaSegmentType.Recap": "Kertaus"
|
||||
}
|
||||
|
@ -1419,5 +1419,16 @@
|
||||
"LabelSyncPlaySettingsSkipToSync": "אפשר דלג-לסנכרון",
|
||||
"LabelSyncPlaySettingsSpeedToSyncHelp": "טכניקת תיקון סנכרון שמאיצה את הניגון. תיקון סנכרון חייב להיות מאופשר.",
|
||||
"LabelSyncPlaySettingsSkipToSyncHelp": "טכניקת תיקון סנכרון שמדלגת למקום המשוער. תיקון סנכרון חייב להיות מאופשר.",
|
||||
"LabelTonemappingAlgorithm": "בחירת אלגוריתם מיפוי הגוונים"
|
||||
"LabelTonemappingAlgorithm": "בחירת אלגוריתם מיפוי הגוונים",
|
||||
"LabelTonemappingDesatHelp": "החסרת רוויה לאורות שעוברים רמת בהירות זו. ככל שהפרמטר גבוה יותר, כך יותר צבעים יישמקו. הגדרה זו עוזרת במניעת צבעים חזקים באופן לא טהעי ואורות גבוהים מדי ע\"י החלקתם ללבן במקום. התמונה תיראה טבעית יותר, במחיר של איבוד מידע על צבעים מחוץ לטווח. הערכים המומלצים וברירת המחדל הם 0 ו-0.5.",
|
||||
"LabelTonemappingDesat": "מיפוי גוונים חוסר רוויה",
|
||||
"LabelTonemappingPeakHelp": "ערך זה ידרוס את שיא הסיגנל. שימושי כאשר המידע המוטמע על השיא אינו אמין או במיפוי גוונים מטווח נמוך לגבוה. הערכים המומלצים והדיפולטיים הם 100 ו-0.",
|
||||
"LabelTonemappingPeak": "מיפוי גוונים - שיא",
|
||||
"LabelTonemappingRange": "טווח מיפוי גוונים",
|
||||
"LabelTonemappingThreshold": "סף מיפוי גוונים",
|
||||
"LabelTranscodePath": "נתיב המרת קידוד",
|
||||
"LabelTranscodes": "ממיר קידוד",
|
||||
"LabelTonemappingThresholdHelp": "אלגוריתם מיפוי הגוונים מכוון לכל סצינה. מוגדר סף לזיהוי האם הסצינה השתנתה או לא. אם הפרש הבהירות הממוצעת של הפריים הנוכחי מממוצע נע עובר סף מסוים, נחשב מחדש ממוצע סצינה ובהירות שיא. הערכים המומלצים והדיפולטיים אצ 0.8 ו-0.2.",
|
||||
"LabelTranscodingProgress": "התקדמות המרת קידוד",
|
||||
"LabelTranscodingFramerate": "קצב הפריימים של המרת קידוד"
|
||||
}
|
||||
|
@ -946,7 +946,7 @@
|
||||
"ColorTransfer": "Krāsu pārsūtīšana",
|
||||
"ClientSettings": "Klientu iestatījumi",
|
||||
"ButtonTogglePlaylist": "Atskaņošanas saraksts",
|
||||
"BurnSubtitlesHelp": "Nosaka, vai serverim ir jāiededzina subtitri video transkodēšanas laikā. Izvairīšanās no tā ievērojami uzlabos veiktspēju. Izvēlietiess Auto lai iededzinātu uz attēliem bāzētus formātus (VOBSUB, PGS, SUB, IDX u.c.) un noteiktus ASS vai SSA subtitrus.",
|
||||
"BurnSubtitlesHelp": "Nosaka, vai serverim ir jāiededzina subtitri video transkodēšanas laikā. Izvairīšanās no tā ievērojami uzlabos veiktspēju. Izvēlieties Auto, lai iededzinātu uz attēliem bāzētus formātus (VOBSUB, PGS, SUB, IDX u.c.) un noteiktus ASS vai SSA subtitrus.",
|
||||
"Artist": "Izpildītājs",
|
||||
"AllowOnTheFlySubtitleExtractionHelp": "Iegultie subtitri var tikt izvilkti no video un nogādāti klientiem kā parasts teksts, lai nevajadzētu veikt lieku video transkodēšanu. Uz dažām sistēmām tas var aizņemt ilgu laiku un likt video atskaņošanai uzkārties izvilkšanas procesa laikā. Atspējo šo, lai iegultos subtitrus iededzinātu video transkodēšanas veidā, kad tos noklusēti neatbalsta klienta ierīce.",
|
||||
"AlbumArtist": "Albuma izpildītājs",
|
||||
@ -1235,7 +1235,7 @@
|
||||
"Casual": "Ikdienišķs",
|
||||
"Arranger": "Aranžetājs",
|
||||
"AgeValue": "({0} gadu vecs)",
|
||||
"LabelPublishedServerUriHelp": "Pārrakstīt URI, ko izmanto Jellyfin, vadoties pēc tīkla interfeisa vai klienta IP adreses.",
|
||||
"LabelPublishedServerUriHelp": "Pārrakstīt URI, ko izmanto Jellyfin, vadoties pēc tīkla interfeisa vai klienta IP adreses. Piemēram: internal=http://jellyfin.example.com, external=https://jellyfin.example.com vai all=https://jellyfin.example.com",
|
||||
"LabelPublishedServerUri": "Publicētā servera URI",
|
||||
"LabelProtocolInfoHelp": "Vērtība, kas tiks izmantota, atbildot uz GetProtocolInfo pieprasījumiem no ierīces.",
|
||||
"LabelPostProcessorArguments": "Pēcapstrādes komandrindas argumenti",
|
||||
@ -1642,7 +1642,7 @@
|
||||
"ResumeAt": "Atsākt no {0}",
|
||||
"SearchForMissingMetadata": "Trūkstošo metadatu meklēšana",
|
||||
"Unreleased": "Pagaidām nav publicēts",
|
||||
"Series": "Sērijas",
|
||||
"Series": "Seriāli",
|
||||
"TonemappingAlgorithmHelp": "Toņu kartēšana var tikt precīzi pielāgota. Ja šīs opcijas jums nav pazīstamas, saglabājiet noklusējuma iestatījumus. Ieteicamā vērtība ir \"BT.2390\".",
|
||||
"EnableIntelLowPowerH264HwEncoder": "Iespējot Intel zema enerģijas patēriņa H.264 aparatūras kodētāju",
|
||||
"EnableIntelLowPowerHevcHwEncoder": "Iespējot Intel zema enerģijas patēriņa HEVC aparatūras kodētāju",
|
||||
@ -1733,15 +1733,15 @@
|
||||
"AllowContentWithTagsHelp": "Rādīt multimediju tikai ar viss maz vienu norādītu birku.",
|
||||
"BlockContentWithTagsHelp": "Paslēpt multimediju ar viss maz vienu no norādītajām birkām.",
|
||||
"ChannelResolutionHD": "HD",
|
||||
"DeleteSeries": "Dzēst sēriju",
|
||||
"DeleteSeries": "Dzēst seriālu",
|
||||
"DeleteEpisode": "Dzēst epizodi",
|
||||
"LabelAllowContentWithTags": "Atļaut vienumus ar birkām",
|
||||
"LabelAlbumGain": "Albuma pastiprinājums",
|
||||
"LabelServerVersion": "Servera versija",
|
||||
"ConfirmDeleteSeries": "Dzēšot šo sēriju, tiks izdzēstas VISAS {0} sērijas gan no failu sistēmas, gan no multivides bibliotēkas. Vai tiešām vēlaties turpināt?",
|
||||
"ConfirmDeleteSeries": "Dzēšot šo seriālu, tiks izdzēstas VISAS {0} sērijas gan no failu sistēmas, gan no multivides bibliotēkas. Vai tiešām vēlaties turpināt?",
|
||||
"DeleteEntireSeries": "Dzēst {0} sērijas",
|
||||
"DlnaMovedMessage": "DLNA funkcionalitāte ir pārvietota uz spraudni.",
|
||||
"HeaderDeleteSeries": "Dzēst sēriju",
|
||||
"HeaderDeleteSeries": "Dzēst seriālu",
|
||||
"EnableLibrary": "Iespējot bibliotēku",
|
||||
"EnableLibraryHelp": "Atspējojot bibliotēku, tā tiks paslēpta no visiem lietotājiem.",
|
||||
"AllowSubtitleManagement": "Atļaut šim lietotājam rediģēt subtitrus",
|
||||
|
@ -140,7 +140,7 @@
|
||||
"Display": "Weergave",
|
||||
"DisplayInMyMedia": "Op het startscherm weergeven",
|
||||
"DisplayInOtherHomeScreenSections": "In secties van het startscherm weergeven, zoals 'Onlangs toegevoegde media' en 'Verderkijken'",
|
||||
"DisplayMissingEpisodesWithinSeasons": "Toon ontbrekende afleveringen binnen een seizoen",
|
||||
"DisplayMissingEpisodesWithinSeasons": "Ontbrekende afleveringen weergeven binnen seizoen",
|
||||
"DisplayMissingEpisodesWithinSeasonsHelp": "Dit moet ook worden ingeschakeld voor tv-bibliotheken in de serverconfiguratie.",
|
||||
"DisplayModeHelp": "Selecteer het schermtype waar Jellyfin op draait.",
|
||||
"DoNotRecord": "Niet opnemen",
|
||||
@ -787,7 +787,7 @@
|
||||
"NewEpisodesOnly": "Alleen nieuwe afleveringen",
|
||||
"News": "Nieuws",
|
||||
"Next": "Volgende",
|
||||
"NextUp": "Volgende",
|
||||
"NextUp": "Als volgende",
|
||||
"No": "Nee",
|
||||
"NoNewDevicesFound": "Er zijn geen nieuwe apparaten gevonden. Sluit deze melding en voer handmatig de apparaatgegevens in om een nieuwe tuner toe te voegen.",
|
||||
"MessageNoNextUpItems": "Niets gevonden. Begin met kijken!",
|
||||
@ -988,7 +988,7 @@
|
||||
"ShowTitle": "Titel weergeven",
|
||||
"ShowYear": "Jaar weergeven",
|
||||
"Shows": "Series",
|
||||
"Shuffle": "Willekeurig",
|
||||
"Shuffle": "Willekeurige volgorde",
|
||||
"SimultaneousConnectionLimitHelp": "Het maximum aantal toegestane gelijktijdige streams. Geef 0 in voor geen limiet.",
|
||||
"SkipEpisodesAlreadyInMyLibrary": "Geen afleveringen opnemen die al in mijn bibliotheek staan",
|
||||
"SkipEpisodesAlreadyInMyLibraryHelp": "Afleveringen zullen worden vergeleken met behulp van seizoens- en afleveringsnummers, indien beschikbaar.",
|
||||
@ -1544,7 +1544,7 @@
|
||||
"LabelSyncPlaySettingsSkipToSyncHelp": "Methode voor synchronisatiecorrectie die bestaat uit het spoelen naar de geschatte positie. Synchronisatiecorrectie moet ingeschakeld zijn.",
|
||||
"MessageSent": "Bericht verzonden.",
|
||||
"Mixer": "Mixer",
|
||||
"UseEpisodeImagesInNextUpHelp": "Secties 'Volgende' en 'Verderkijken' zullen afleveringsafbeeldingen gebruiken als miniaturen in plaats van de primaire miniatuur van de serie.",
|
||||
"UseEpisodeImagesInNextUpHelp": "Secties 'Als volgende' en 'Verderkijken' zullen afleveringsafbeeldingen gebruiken als miniaturen in plaats van de primaire miniatuur van de serie.",
|
||||
"SetUsingLastTracks": "Ondertitel/Audio-sporen instellen met vorig item",
|
||||
"SetUsingLastTracksHelp": "Probeer de ondertiteling/het audiospoor in te stellen op de video die het meest overeenkomt met de laatste video.",
|
||||
"TextSent": "Tekst verzonden.",
|
||||
@ -1556,11 +1556,11 @@
|
||||
"VideoProfileNotSupported": "Het profiel van de beeldcodec wordt niet ondersteund",
|
||||
"Lyricist": "Tekstschrijver",
|
||||
"NextChapter": "Volgend hoofdstuk",
|
||||
"LabelMaxDaysForNextUp": "Maximaal aantal dagen in 'Volgende'",
|
||||
"LabelMaxDaysForNextUpHelp": "Stel het maximaal aantal dagen in dat een serie in de 'Volgende'-lijst staat zonder het te kijken.",
|
||||
"LabelMaxDaysForNextUp": "Maximaal aantal dagen in 'Als volgende'",
|
||||
"LabelMaxDaysForNextUpHelp": "Stel het maximaal aantal dagen in dat een serie in de 'Als volgende'-lijst staat zonder deze te kijken.",
|
||||
"PreviousChapter": "Vorig hoofdstuk",
|
||||
"Remixer": "Remixer",
|
||||
"UseEpisodeImagesInNextUp": "Afleveringsafbeeldingen gebruiken in de secties 'Volgende' en 'Verderkijken'",
|
||||
"UseEpisodeImagesInNextUp": "Afleveringsafbeeldingen gebruiken in de secties 'Als volgende' en 'Verderkijken'",
|
||||
"EnableGamepadHelp": "Luister naar invoer van alle aangesloten controllers (vereist weergavemodus 'Tv').",
|
||||
"VideoCodecNotSupported": "De beeldcodec wordt niet ondersteund",
|
||||
"AudioBitrateNotSupported": "De bitsnelheid van het geluid wordt niet ondersteund",
|
||||
@ -1625,11 +1625,11 @@
|
||||
"ButtonBackspace": "Backspace",
|
||||
"StoryArc": "Verhaallijn",
|
||||
"ItemDetails": "Itemdetails",
|
||||
"EnableRewatchingNextUp": "Opnieuw kijken inschakelen in Volgende",
|
||||
"EnableRewatchingNextUp": "Opnieuw kijken inschakelen in 'Als volgende'",
|
||||
"Bold": "Vetgedrukt",
|
||||
"LabelTextWeight": "Tekstdikte",
|
||||
"HomeVideosPhotos": "Homevideo's en foto's",
|
||||
"EnableRewatchingNextUpHelp": "Laat reeds gekeken afleveringen zien in sectie 'Volgende'.",
|
||||
"EnableRewatchingNextUpHelp": "Laat reeds gekeken afleveringen zien in sectie 'Als volgende'.",
|
||||
"ContainerBitrateExceedsLimit": "De bitsnelheid van de video overschrijdt de limiet",
|
||||
"LabelMaxVideoResolution": "Maximaal toegestane beeldtranscoderingsresolutie",
|
||||
"UnknownAudioStreamInfo": "De geluidsstreaminformatie is onbekend",
|
||||
@ -1975,7 +1975,7 @@
|
||||
"LabelQsvDeviceHelp": "Op een systeem met meerdere GPU's is dit het apparaat dat gebruikt moet worden voor Intel QSV. Op Linux is dit de render-node, bijvoorbeeld /dev/dri/renderD128. Op Windows is dit de apparaatindex startend bij 0. Laat dit leeg tenzij je weet wat je doet.",
|
||||
"HeaderEditPlaylist": "Afspeellijst bewerken",
|
||||
"HeaderNewPlaylist": "Nieuwe afspeellijst",
|
||||
"LabelMediaSegmentsType": "{0} segmenten",
|
||||
"LabelMediaSegmentsType": "{0}segmenten",
|
||||
"MediaSegmentAction.None": "Geen",
|
||||
"MediaSegmentAction.Skip": "Overslaan",
|
||||
"MediaSegmentType.Commercial": "Reclame",
|
||||
|
@ -6,7 +6,7 @@
|
||||
"All": "Todos",
|
||||
"Audio": "Áudio",
|
||||
"Backdrops": "Imagens de Fundo",
|
||||
"MessageBrowsePluginCatalog": "Procure extensões disponíveis no nosso catálogo.",
|
||||
"MessageBrowsePluginCatalog": "Explora as extensões disponíveis no nosso catálogo.",
|
||||
"ButtonAddMediaLibrary": "Adicionar Biblioteca de Multimédia",
|
||||
"ButtonAddScheduledTaskTrigger": "Adicionar tarefa agendada",
|
||||
"ButtonAddServer": "Adicionar servidor",
|
||||
@ -39,7 +39,7 @@
|
||||
"ButtonSend": "Enviar",
|
||||
"ButtonShutdown": "Encerrar",
|
||||
"ButtonSignIn": "Iniciar Sessão",
|
||||
"ButtonSignOut": "Sair",
|
||||
"ButtonSignOut": "Terminar sessão",
|
||||
"ButtonStart": "Iniciar",
|
||||
"ButtonStop": "Parar",
|
||||
"ButtonSubmit": "Enviar",
|
||||
@ -637,9 +637,9 @@
|
||||
"BirthPlaceValue": "Local de nascimento: {0}",
|
||||
"Blacklist": "Lista de exclusão",
|
||||
"Books": "Livros",
|
||||
"BurnSubtitlesHelp": "Escolha se o servidor deve integrar as legendas enquanto converte vídeos. Evitar a integração de legendas melhora o desempenho do servidor. Selecione Auto para que legendas baseadas em imagem (VobSub, PGS, SUB/IDX) e certos formatos ASS/SSA sejam integrados.",
|
||||
"BurnSubtitlesHelp": "Escolha se o servidor deve integrar as legendas. Evitar a integração de legendas melhora o desempenho do servidor. Selecione Auto para que legendas baseadas em imagem (VobSub, PGS, SUB/IDX) e certos formatos ASS/SSA sejam integrados.",
|
||||
"Channels": "Canais",
|
||||
"Collections": "Colecções",
|
||||
"Collections": "Coleções",
|
||||
"Favorites": "Favoritos",
|
||||
"Folders": "Pastas",
|
||||
"Genres": "Géneros",
|
||||
@ -823,15 +823,15 @@
|
||||
"ScanForNewAndUpdatedFiles": "Procurar ficheiros novos ou atualizados",
|
||||
"SaveSubtitlesIntoMediaFoldersHelp": "Guardar ficheiros de legendas junto aos ficheiros vídeo facilita a gestão.",
|
||||
"SaveSubtitlesIntoMediaFolders": "Guardar legendas em pastas multimédia",
|
||||
"Runtime": "Duração",
|
||||
"Runtime": "Tempo de execução",
|
||||
"ResumeAt": "Retomar a partir de {0}",
|
||||
"ReplaceAllMetadata": "Substituir todos os metadados",
|
||||
"RepeatOne": "Repetir este",
|
||||
"RepeatMode": "Modo de Repetição",
|
||||
"ServerRestartNeededAfterPluginInstall": "O Jellyfin terá que reiniciar após instalar uma extensão.",
|
||||
"MessageNoPluginConfiguration": "Esta extensão não tem definições que possa alterar.",
|
||||
"MessagePluginInstallDisclaimer": "AVISO: A instalação de um plugin de terceiros acarreta riscos. Ele pode conter código instável ou malicioso e pode ser alterado a qualquer momento. Instala apenas plugins de autores em quem confias e tem em atenção os potenciais efeitos que podem ter, incluindo consultas de serviços externos, análises mais longas da biblioteca ou processamento adicional em segundo plano.",
|
||||
"MessagePluginConfigurationRequiresLocalAccess": "Para configurar esta extensão, inicie sessão localmente no servidor.",
|
||||
"ServerRestartNeededAfterPluginInstall": "O Jellyfin terá que reiniciar após instalar a extensão.",
|
||||
"MessageNoPluginConfiguration": "Esta extensão não tem definições que possas alterar.",
|
||||
"MessagePluginInstallDisclaimer": "AVISO: A instalação de uma extensão de terceiros acarreta riscos. Ela pode conter código instável ou malicioso e pode ser alterado a qualquer momento. Instala apenas extensões de autores em quem confias e tem em atenção os potenciais efeitos que podem ter, incluindo consultas de serviços externos, análises mais longas da biblioteca ou processamento adicional em segundo plano.",
|
||||
"MessagePluginConfigurationRequiresLocalAccess": "Para configurar esta extensão, inicia sessão localmente no servidor.",
|
||||
"HeaderPluginInstallation": "Instalação de extensão",
|
||||
"MessagePluginInstalled": "A extensão foi instalada com sucesso. O servidor terá que reiniciar para aplicar as alterações.",
|
||||
"PleaseRestartServerName": "Por favor, reinicie o Jellyfin no {0}.",
|
||||
@ -1312,7 +1312,7 @@
|
||||
"EveryXMinutes": "A cada {0} minutos",
|
||||
"OnWakeFromSleep": "Ao acordar da suspensão",
|
||||
"DailyAt": "Diariamente às {0}",
|
||||
"LastSeen": "Última visita a {0}",
|
||||
"LastSeen": "Última atividade a {0}",
|
||||
"PersonRole": "como {0}",
|
||||
"ListPaging": "{0}-{1} de {2}",
|
||||
"WriteAccessRequired": "O Jellyfin necessita de acesso de escrita a esta pasta. Garanta acesso de escrita e tente novamente.",
|
||||
@ -1442,7 +1442,7 @@
|
||||
"LabelTonemappingDesat": "Dessaturação do Tone mapping",
|
||||
"LabelSSDPTracingFilterHelp": "Endereço IP opcional, no qual será filtrado o tráfego SSDP registado.",
|
||||
"LabelSSDPTracingFilter": "Filtro SSDP",
|
||||
"LabelPublishedServerUriHelp": "Substituir o URI utilizado pelo Jellyfin, com base no interface, ou no endereço IP do cliente.",
|
||||
"LabelPublishedServerUriHelp": "Substituir o URI utilizado pelo Jellyfin, com base na interface, ou no endereço IP do cliente. Por exemplo: internal=http://jellyfin.example.com, external=https://jellyfin.example.com, ou all=https://jellyfin.example.com",
|
||||
"LabelPublishedServerUri": "URIs do servidor publicados",
|
||||
"LabelIsForced": "Forçado",
|
||||
"LabelHDHomerunPortRangeHelp": "Restringir o intervalo das portas UDP de HD Homerun a este valor. (O padrão é 1024 - 65535).",
|
||||
@ -1741,7 +1741,7 @@
|
||||
"LogLevel.Critical": "Crítico",
|
||||
"LogLevel.None": "Nenhum",
|
||||
"LogLevel.Warning": "Aviso",
|
||||
"HeaderConfirmRepositoryInstallation": "Confirmar a Instalação do Repositório de Plugins",
|
||||
"HeaderConfirmRepositoryInstallation": "Confirmar a instalação do repositório de extensões",
|
||||
"AllowSegmentDeletion": "Eliminar segmentos",
|
||||
"AllowSegmentDeletionHelp": "Elimina segmentos antigos depois de terem sido descarregados pelo cliente. Isto evita ter de armazenar todo o ficheiro transcodificado no disco. Desativa esta opção se tiveres problemas de reprodução.",
|
||||
"LabelThrottleDelaySeconds": "Estrangular depois",
|
||||
@ -1766,14 +1766,14 @@
|
||||
"LabelBackdropScreensaverIntervalHelp": "O tempo em segundos entre a mudança de diferentes imagens de fundo na proteção de ecrã.",
|
||||
"LabelBackdropScreensaverInterval": "Intervalo do fundo do protetor de ecrã",
|
||||
"HeaderAllRecordings": "Todas as Gravações",
|
||||
"SelectAudioNormalizationHelp": "Ganho de faixa - ajusta o volume de cada faixa para que sejam reproduzidas com o mesmo volume. Ganho do álbum - ajusta o volume de todas as faixas apenas de um álbum, mantendo a faixa dinâmica do álbum.",
|
||||
"SelectAudioNormalizationHelp": "Ganho de faixa - ajusta o volume de cada faixa para que sejam reproduzidas com o mesmo volume. Ganho do álbum - ajusta o volume de todas as faixas apenas de um álbum, mantendo a faixa dinâmica do álbum. Alternar entre \"Desativado\" e outras opções requer o reinício da reprodução atual.",
|
||||
"LogoScreensaver": "Logotipo de proteção de ecrã",
|
||||
"TonemappingModeHelp": "Selecione o modo de mapeamento de tons. Se você tiver destaques estourados, tente mudar para o modo RGB.",
|
||||
"MachineTranslated": "Traduzido Automaticamente",
|
||||
"ForeignPartsOnly": "Apenas partes forçadas/externas",
|
||||
"PreferEmbeddedExtrasTitlesOverFileNamesHelp": "Os extras geralmente têm o mesmo nome incorporado do parente, marque isto para usar títulos incorporados de qualquer maneira.",
|
||||
"SaveRecordingImagesHelp": "Guardar imagens do fornecedor de listas EPG juntamente com os ficheiros multimédia.",
|
||||
"MessageRepositoryInstallDisclaimer": "AVISO: Instalar um repositório de plugins de terceiros traz riscos. Ele pode conter código instável ou malicioso e pode mudar a qualquer momento. Instale apenas repositórios de autores em quem você confia.",
|
||||
"MessageRepositoryInstallDisclaimer": "AVISO: A instalação de uma extensão de terceiros acarreta riscos. Ela pode conter código instável ou malicioso e pode ser alterado a qualquer momento. Instala apenas extensões de autores em quem confias.",
|
||||
"SaveRecordingNFO": "Guardar metadados EPG da gravação no NFO",
|
||||
"SaveRecordingNFOHelp": "Guardar metadados do fornecedor de listagens EPG juntamente com os ficheiros multimédia.",
|
||||
"SaveRecordingImages": "Guardar imagens da gravação EPG",
|
||||
@ -1841,7 +1841,7 @@
|
||||
"LabelTrickplayThreads": "Threads FFmpeg",
|
||||
"LimitSupportedVideoResolution": "Limitar a resolução máxima de vídeo suportada",
|
||||
"DeleteEntireSeries": "Eliminar {0} episódios",
|
||||
"DlnaMovedMessage": "A funcionalidade DLNA foi transferida para um plug-in.",
|
||||
"DlnaMovedMessage": "A funcionalidade DLNA foi transferida para uma extensão.",
|
||||
"EnableSmoothScroll": "Ativar deslocação suave",
|
||||
"LabelAllowContentWithTags": "Permitir items com etiquetas",
|
||||
"PlaybackError.NETWORK_ERROR": "A reprodução falhou devido a um erro de rede.",
|
||||
@ -1895,5 +1895,90 @@
|
||||
"Translator": "Tradutor",
|
||||
"LabelSelectPreferredTranscodeVideoCodec": "Codec de vídeo transcodificado preferido",
|
||||
"SelectPreferredTranscodeVideoCodecHelp": "Seleciona o codec de vídeo preferido para transcodificar. Se o codec preferido não for suportado, o servidor utilizará o próximo melhor codec disponível.",
|
||||
"LabelScreensaverTimeHelp": "A quantidade de tempo, em segundos, de inatividade necessária para iniciar a proteção de ecrã."
|
||||
"LabelScreensaverTimeHelp": "A quantidade de tempo, em segundos, de inatividade necessária para iniciar a proteção de ecrã.",
|
||||
"AlwaysRemuxMp3AudioFilesHelp": "Se tem ficheiros para os quais o seu navegador calcula mal as marcas de tempo, habilite isto como alternativa.",
|
||||
"FallbackMaxStreamingBitrateHelp": "A taxa de bits máxima de streaming é usada como alternativa quando o ffprobe é incapaz de determinar a taxa de bits da fonte. Isto ajuda a prevenir que clientes peçam taxas de bit excessivas ao transcodificar, que pode causar falha no reprodutor e sobrecarregar o codificador.",
|
||||
"LabelQsvDeviceHelp": "Especificar o dispositivo para Intel QSV num sistema multi-GPU. Em Linux, este é o nodo de render, e.g. /dev/dri/renderD128. Em Windows, este é o índice do dispositivo, começando do 0. Deixar em branco a não ser que saiba o que está a fazer.",
|
||||
"DateModified": "Data de modificação",
|
||||
"DisableVbrAudioEncodingHelp": "Impedir que o servidor codifique o áudio com VBR para este cliente.",
|
||||
"EnableHi10pHelp": "Habilite para evitar transcodificar vídeos H.264 de 10 bit. Desabilite esta opção se o vídeo exibir quadros vazios.",
|
||||
"HeaderAudioAdvanced": "Áudio avançado",
|
||||
"LabelRepository": "Repositório",
|
||||
"LabelSaveTrickplayLocally": "Guardar imagens trickplay junto à média",
|
||||
"LabelLyricDownloaders": "Transferidores de letra",
|
||||
"LabelEnablePlugin": "Ativar extensão",
|
||||
"EditLyrics": "Editar letra",
|
||||
"HeaderAddLyrics": "Adicionar letra",
|
||||
"HeaderPreviewLyrics": "Pré-visualizar letra",
|
||||
"HeaderUploadLyrics": "Fazer upload da letra",
|
||||
"LabelDuration": "Duração",
|
||||
"LabelIsSynced": "Está sincronizado",
|
||||
"LabelDropLyricsHere": "Arrasta e larga a letra aqui, ou clica para explorar.",
|
||||
"LabelAudioTagSettings": "Definições de etiquetas de áudio",
|
||||
"LabelCustomTagDelimiters": "Delimitador de Etiqueta personalizado",
|
||||
"LabelCustomTagDelimitersHelp": "Caracteres considerados como delimitadores para separar etiquetas.",
|
||||
"LabelDelimiterWhitelist": "Lista de delimitadores permitidos",
|
||||
"LabelDelimiterWhitelistHelp": "Itens a ser excluídos da separação de etiquetas. Um item por linha.",
|
||||
"LabelScreensaverTime": "Tempo de protetor de ecrã",
|
||||
"AllowFmp4TranscodingContainerHelp": "Permitir o contentor de transcodificação fMP4 para este sintonizador para habilitar conteúdos HEVC e HDR. Nem todos os sintonizadores são compatíveis com este contentor. Desabilite isto se tiver problemas de reprodução.",
|
||||
"AllowStreamSharingHelp": "Permitir que o Jellyfin duplique a transmissão mpegts do sintonizador e partilhe esta transmissão duplicada aos seus clientes. Isto é útil quando o sintonizador tem um limite de contagens de transmissões totais mas pode também causar problemas de reprodução.",
|
||||
"HeaderEditPlaylist": "Editar lista de reprodução",
|
||||
"HeaderNewPlaylist": "Nova lista de reprodução",
|
||||
"LabelAllowFmp4TranscodingContainer": "Permitir contentor de transcodificação do fMP4",
|
||||
"LabelAlwaysRemuxFlacAudioFiles": "Fazer sempre remux de ficheiros de áudio FLAC",
|
||||
"LabelAlwaysRemuxMp3AudioFiles": "Fazer sempre remux de ficheiros de áudio MP3",
|
||||
"LabelAllowStreamSharing": "Permitir partilha de transmissão",
|
||||
"LabelDisableVbrAudioEncoding": "Desativar a codificação de áudio VBR",
|
||||
"LabelFallbackMaxStreamingBitrate": "Taxa de bits máxima por omissão (Mbps)",
|
||||
"LabelInstalled": "Instalado",
|
||||
"LabelMediaSegmentsType": "{0} Segmentos",
|
||||
"LabelNoChangelog": "Nenhum registo de alterações foi disponibilizado para esta versão.",
|
||||
"LabelNotInstalled": "Não instalado",
|
||||
"AndOtherArtists": "{0} e {1} outros artistas.",
|
||||
"AlwaysRemuxFlacAudioFilesHelp": "Se tem ficheiros que o seu navegador recusa-se a reproduzir ou onde calcula incorretamente marcas de tempo, habilite isto como alternativa.",
|
||||
"AllowTonemappingSoftwareHelp": "Mapear os tons pode transformar a gama dinâmica de um vídeo de HDR a SDR mantendo os detalhes e cores da imagens, que são informação muito importante para representar a cena original. De momento funciona apenas com vídeos HDR10 de 10 bits, HLG e DoVi.",
|
||||
"LabelQsvDevice": "Dispositivo QSV",
|
||||
"LabelSaveTrickplayLocallyHelp": "Guardar imagens de trickplay nas pastas de média colocar-las-a junto à sua média para migração e acesso fáceis.",
|
||||
"AlwaysBurnInSubtitleWhenTranscoding": "Embeber sempre legendas durante a transcodificação",
|
||||
"AlwaysBurnInSubtitleWhenTranscodingHelp": "Embeber todas as legendas quando a transcodificação for provocada. Isto garante a sincronização das legendas após transcodificar, ao custo da velocidade de transcodificação diminuída.",
|
||||
"EnableHi10p": "Habilitar o perfil H.264 High 10",
|
||||
"HeaderMediaSegmentActions": "Ações de segmentos de média",
|
||||
"HeaderNextItem": "Seguinte {0}",
|
||||
"HeaderNextItemPlayingInValue": "Seguinte {0} Reproduzindo em {1}",
|
||||
"VideoCodecTagNotSupported": "Etiqueta de codec de vídeo não é compatível",
|
||||
"PreviewLyrics": "Pré-visualizar letra",
|
||||
"MoveToBottom": "Mover para o fundo",
|
||||
"MessageCancelSeriesTimerError": "Um erro ocorreu ao cancelar o temporizador da série",
|
||||
"MoveToTop": "Mover para o início",
|
||||
"PluginLoadRepoError": "Um erro ocorreu ao obter os detalhes da extensão a partir do repositório.",
|
||||
"RenderPgsSubtitleHelp": "Determinar se o cliente deve renderizar legendas PGS em vez de usar legendas embebidas. Isto pode evitar transcodificação do lado do servidor em ao custo do desempenho do lado do cliente.",
|
||||
"UseCustomTagDelimiters": "Usar delimitador de etiqueta personalizado",
|
||||
"UseCustomTagDelimitersHelp": "Dividir etiquetas de artistas/género com caracteres personalizados.",
|
||||
"LabelTrickplayKeyFrameOnlyExtraction": "Só gerar imagens a partir de quadros-chave",
|
||||
"PluginEnableError": "Um erro ocorreu ao habilitar a extensão.",
|
||||
"PluginLoadConfigError": "Um erro ocorreu ao obter as páginas de configuração da extensão.",
|
||||
"PluginDisableError": "Um erro ocorreu ao desabilitar a extensão.",
|
||||
"NoLyricsSearchResultsFound": "Letra não encontrada.",
|
||||
"PreferNonstandardArtistsTag": "Preferir a etiqueta ARTISTS se disponível",
|
||||
"PreferNonstandardArtistsTagHelp": "Usar a etiqueta não standard ARTISTS em vez da etiqueta ARTIST quando disponível.",
|
||||
"MessageSplitVersionsError": "Um erro ocorreu ao dividir versões",
|
||||
"SearchForLyrics": "Procurar letra",
|
||||
"RenderPgsSubtitle": "Renderização de legendas experimental PGS",
|
||||
"LyricDownloadersHelp": "Habilite e classifique os seus transferidores de legendas por ordem de prioridade.",
|
||||
"MediaSegmentAction.None": "Nenhum",
|
||||
"MediaSegmentAction.Skip": "Saltar",
|
||||
"MediaSegmentType.Commercial": "Publicidade",
|
||||
"MediaSegmentType.Intro": "Genérico",
|
||||
"MediaSegmentType.Outro": "Créditos",
|
||||
"MediaSegmentType.Preview": "Pré-visualização",
|
||||
"MediaSegmentType.Recap": "Recapitulação",
|
||||
"PlaylistError.UpdateFailed": "Erro ao atualizar lista de reprodução",
|
||||
"LabelTrickplayKeyFrameOnlyExtractionHelp": "Extrair quadros-chave só para processamento significativamente mais rápido com temporização menos precisa. Se o descodificador de hardware configurado não apoiar este modo, usará o descodificador de software.",
|
||||
"PluginUninstallError": "Um erro ocorreu ao desinstalar a extensão.",
|
||||
"LibraryInvalidItemIdError": "A biblioteca está num estado inválido e não pode ser editada. Possivelmente está a encontrar um bug: o caminho na base de dados não é o caminho correto no sistema de ficheiros.",
|
||||
"MediaInfoRotation": "Rotação",
|
||||
"MessageCancelTimerError": "Um erro ocorreu ao cancelar o temporizador",
|
||||
"PasswordMissingSaveError": "Nova palavra-passe não pode ser em branco.",
|
||||
"ReplaceTrickplayImages": "Substituir imagens de trickplay existentes",
|
||||
"Reset": "Redefinir"
|
||||
}
|
||||
|
@ -23,7 +23,7 @@
|
||||
"UserAgentHelp": "Forneça um 'User-Agent' HTTP personalizado.",
|
||||
"Unplayed": "Por reproduzir",
|
||||
"Unmute": "Activar som",
|
||||
"HeaderUninstallPlugin": "Desinstalar Extensão",
|
||||
"HeaderUninstallPlugin": "Desinstalar extensão",
|
||||
"UninstallPluginConfirmation": "Tem a certeza que deseja desinstalar {0}?",
|
||||
"Uniform": "Uniforme",
|
||||
"Tuesday": "Terça",
|
||||
@ -87,7 +87,7 @@
|
||||
"SaveSubtitlesIntoMediaFolders": "Guardar legendas em pastas multimédia",
|
||||
"Save": "Guardar",
|
||||
"Saturday": "Sábado",
|
||||
"Runtime": "Duração",
|
||||
"Runtime": "Tempo de execução",
|
||||
"Rewind": "Retroceder",
|
||||
"ResumeAt": "Retomar a partir de {0}",
|
||||
"ReplaceExistingImages": "Substituir imagens existentes",
|
||||
@ -576,7 +576,7 @@
|
||||
"OptionAllUsers": "Todos os utilizadores",
|
||||
"OptionAdminUsers": "Administradores",
|
||||
"OneChannel": "Um canal",
|
||||
"MessageNoPluginConfiguration": "Esta extensão não é configurável.",
|
||||
"MessageNoPluginConfiguration": "Esta extensão não tem definições que possas alterar.",
|
||||
"MessageNoNextUpItems": "Nenhum encontrado. Comece a ver os seus programas!",
|
||||
"News": "Notícias",
|
||||
"NewCollectionNameExample": "Exemplo: Colecção Guerra das Estrelas",
|
||||
@ -590,8 +590,8 @@
|
||||
"MessageUnableToConnectToServer": "Não foi possível estabelecer ligação ao servidor. Por favor, certifique-se que o servidor está a correr e tente de novo.",
|
||||
"MessageTheFollowingLocationWillBeRemovedFromLibrary": "As seguintes pastas multimédia serão removidas da Biblioteca",
|
||||
"MessageReenableUser": "Veja abaixo como reactivar",
|
||||
"MessagePluginInstallDisclaimer": "AVISO: A instalação de um plugin de terceiros acarreta riscos. Ele pode conter código instável ou malicioso e pode ser alterado a qualquer momento. Instala apenas plugins de autores em quem confias e tem em atenção os potenciais efeitos que podem ter, incluindo consultas de serviços externos, análises mais longas da biblioteca ou processamento adicional em segundo plano.",
|
||||
"MessagePluginConfigurationRequiresLocalAccess": "Para configurar esta extensão, inicie sessão localmente no servidor.",
|
||||
"MessagePluginInstallDisclaimer": "AVISO: A instalação de uma extensão de terceiros acarreta riscos. Ela pode conter código instável ou malicioso e pode ser alterado a qualquer momento. Instala apenas extensões de autores em quem confias e tem em atenção os potenciais efeitos que podem ter, incluindo consultas de serviços externos, análises mais longas da biblioteca ou processamento adicional em segundo plano.",
|
||||
"MessagePluginConfigurationRequiresLocalAccess": "Para configurar esta extensão, inicia sessão localmente no servidor.",
|
||||
"MessagePleaseEnsureInternetMetadata": "Certifique-se de que a transferência de metadados da Internet está ativada.",
|
||||
"MessagePasswordResetForUsers": "Os seguintes utilizadores tiveram as suas palavras-passe redefinidas. Podem agora iniciar sessão com os códigos PIN que foram utilizados para efetuar a redefinição.",
|
||||
"MessageNothingHere": "Nada aqui.",
|
||||
@ -789,7 +789,7 @@
|
||||
"DeleteImageConfirmation": "Tens a certeza de que pretendes eliminar esta imagem?",
|
||||
"DeleteImage": "Eliminar imagem",
|
||||
"DeleteDeviceConfirmation": "Tem a certeza que deseja remover este dispositivo? Reaparecerá na próxima vez que o utilizador inicie sessão a partir dele.",
|
||||
"Delete": "Remover",
|
||||
"Delete": "Eliminar",
|
||||
"DefaultSubtitlesHelp": "As legendas são carregadas com base nas definições predefinidas e forçadas para os metadados incorporados. As preferências de idioma são consideradas quando existem múltiplas opções disponíveis.",
|
||||
"ErrorDefault": "Ocorreu um erro ao processar o pedido. Por favor, tente novamente mais tarde.",
|
||||
"Default": "Predefinição",
|
||||
@ -830,7 +830,7 @@
|
||||
"ButtonSubmit": "Enviar",
|
||||
"ButtonStop": "Parar",
|
||||
"ButtonStart": "Iniciar",
|
||||
"ButtonSignOut": "Sair",
|
||||
"ButtonSignOut": "Terminar sessão",
|
||||
"ButtonSignIn": "Iniciar Sessão",
|
||||
"ButtonShutdown": "Encerrar",
|
||||
"ButtonSend": "Enviar",
|
||||
@ -902,7 +902,7 @@
|
||||
"ButtonAddMediaLibrary": "Adicionar Biblioteca de Multimédia",
|
||||
"ButtonAddImage": "Adicionar Imagem",
|
||||
"BurnSubtitlesHelp": "Determina se o servidor deve integrar as legendas durante a conversão de vídeo, dependendo do formato da legenda. Evitar a integração de legendas melhora o desempenho do servidor. Selecione Automático para que legendas baseadas em imagem (VOBSUB, PGS, SUB/IDX) e certos formatos ASS/SSA sejam integrados.",
|
||||
"MessageBrowsePluginCatalog": "Explore as extensões disponíveis no nosso catálogo.",
|
||||
"MessageBrowsePluginCatalog": "Explora as extensões disponíveis no nosso catálogo.",
|
||||
"Browse": "Explorar",
|
||||
"BoxRear": "Caixa (verso)",
|
||||
"Box": "Caixa",
|
||||
@ -914,7 +914,7 @@
|
||||
"BirthDateValue": "Nascimento: {0}",
|
||||
"Banner": "Insígnia",
|
||||
"Backdrops": "Imagens de Fundo",
|
||||
"Backdrop": "Imagem de Fundo",
|
||||
"Backdrop": "Imagem de fundo",
|
||||
"AuthProviderHelp": "Seleciona um mecanismo de autenticação a ser utilizado para validar as credenciais deste utilizador.",
|
||||
"Audio": "Áudio",
|
||||
"AspectRatio": "Proporção da tela",
|
||||
@ -966,7 +966,7 @@
|
||||
"HeaderConnectToServer": "Ligar ao Servidor",
|
||||
"HeaderConfirmRevokeApiKey": "Revogar Chave da API",
|
||||
"HeaderConfirmProfileDeletion": "Confirmar Remoção do Perfil",
|
||||
"HeaderConfirmPluginInstallation": "Confirmar Instalação de Extensão",
|
||||
"HeaderConfirmPluginInstallation": "Confirmar instalação da extensão",
|
||||
"HeaderConfigureRemoteAccess": "Configurar Acesso Remoto",
|
||||
"HeaderCodecProfileHelp": "Os perfis do Codec indicam as limitações de um dispositivo ao reproduzir codecs específicos. Se uma limitação ocorrer, o ficheiro multimédia será transcodificado, mesmo se o codec estiver configurado para reprodução direta.",
|
||||
"HeaderCodecProfile": "Perfil do Codec",
|
||||
@ -1253,7 +1253,7 @@
|
||||
"LabelRepositoryNameHelp": "Um nome personalizado para distinguir este repositório de qualquer outro adicionado ao seu servidor.",
|
||||
"LabelRepositoryName": "Nome do Repositório",
|
||||
"LabelQuickConnectCode": "Código de Ligação Rápida",
|
||||
"LabelPublishedServerUriHelp": "Substitua o URI usado pelo Jellyfin, com base na interface, ou endereço IP do cliente.",
|
||||
"LabelPublishedServerUriHelp": "Substituir o URI utilizado pelo Jellyfin, com base na interface, ou no endereço IP do cliente. Por exemplo: internal=http://jellyfin.example.com, external=https://jellyfin.example.com, ou all=https://jellyfin.example.com",
|
||||
"LabelPublishedServerUri": "URIs de Servidor Publicado",
|
||||
"LabelOpenclDeviceHelp": "Este é o dispositivo OpenCL usado para mapeamento de tom. O lado esquerdo do ponto é o número da plataforma e o lado direito é o número do dispositivo na plataforma. O valor padrão é 0.0. O arquivo do aplicativo ffmpeg contendo o método de aceleração de hardware OpenCL é necessário.",
|
||||
"LabelOpenclDevice": "Dispositivo OpenCL",
|
||||
@ -1314,9 +1314,9 @@
|
||||
"EnablePlugin": "Ativar",
|
||||
"DirectPlayHelp": "O arquivo de origem é totalmente compatível com este cliente e a sessão está recebendo o arquivo sem modificações.",
|
||||
"MessageSent": "Mensagem enviada.",
|
||||
"MessagePluginInstallError": "Ocorreu um erro ao instalar a extensão.",
|
||||
"MessagePluginInstallError": "Ocorreu um erro durante a instalação da extensão.",
|
||||
"MessageNoRepositories": "Sem repositórios.",
|
||||
"MessageGetInstalledPluginsError": "Ocorreu um erro ao obter a lista das extensões instaladas.",
|
||||
"MessageGetInstalledPluginsError": "Ocorreu um erro ao tentar obter a lista de extensões atualmente instaladas.",
|
||||
"MediaInfoColorPrimaries": "Cores primárias",
|
||||
"LastSeen": "Visto pela ultima vez em {0}",
|
||||
"LabelUserMaxActiveSessions": "Número máximo de sessões em simultâneo",
|
||||
@ -1424,7 +1424,7 @@
|
||||
"LabelParallelImageEncodingLimitHelp": "Número máxima de imagens codificadas que são permitidas rodar em paralelo. Ajustar este valor para 0 irá selecionar um limite baseado no número de núcleos do seu sistema.",
|
||||
"GoHome": "Ir ao início",
|
||||
"GridView": "Visão em grade",
|
||||
"HeaderConfirmRepositoryInstallation": "Confirme a instalação do repositório de plugin",
|
||||
"HeaderConfirmRepositoryInstallation": "Confirmar a instalação do repositório de extensões",
|
||||
"AllowSegmentDeletion": "Eliminar segmentos",
|
||||
"AllowSegmentDeletionHelp": "Elimina segmentos antigos depois de terem sido descarregados pelo cliente. Isto evita ter de armazenar todo o ficheiro transcodificado no disco. Desativa esta opção se tiveres problemas de reprodução.",
|
||||
"LabelSegmentKeepSeconds": "Tempo em segundos para manter os segmentos",
|
||||
@ -1601,7 +1601,7 @@
|
||||
"LogLevel.Trace": "Vestígio",
|
||||
"LogLevel.Debug": "Depurar",
|
||||
"LogLevel.Information": "Informação",
|
||||
"MessageRepositoryInstallDisclaimer": "AVISO: Instalar um repositório de plugins de terceiros traz riscos. Ele pode conter código instável ou malicioso e pode mudar a qualquer momento. Instale apenas repositórios de autores em que você confia.",
|
||||
"MessageRepositoryInstallDisclaimer": "AVISO: A instalação de uma extensão de terceiros acarreta riscos. Ela pode conter código instável ou malicioso e pode ser alterado a qualquer momento. Instala apenas extensões de autores em quem confias.",
|
||||
"OptionAllowContentDownload": "Permitir transferências de multimédia",
|
||||
"StoryArc": "Arco da história",
|
||||
"TabNetworking": "Rede",
|
||||
@ -1845,7 +1845,7 @@
|
||||
"EnableSmoothScroll": "Ativar deslocação suave",
|
||||
"LimitSupportedVideoResolution": "Limitar a resolução máxima de vídeo suportada",
|
||||
"PlaybackError.SERVER_ERROR": "A reprodução falhou devido a um erro do servidor.",
|
||||
"DlnaMovedMessage": "A funcionalidade DLNA foi transferida para um plug-in.",
|
||||
"DlnaMovedMessage": "A funcionalidade DLNA foi transferida para uma extensão.",
|
||||
"DeleteEntireSeries": "Eliminar {0} episódios",
|
||||
"DeleteEpisode": "Eliminar episódio",
|
||||
"HeaderDeleteSeries": "Eliminar séries",
|
||||
@ -1897,5 +1897,10 @@
|
||||
"EditLyrics": "Editar letra",
|
||||
"HeaderAddLyrics": "Adicionar letra",
|
||||
"HeaderPreviewLyrics": "Pré-visualizar letra",
|
||||
"LabelScreensaverTimeHelp": "A quantidade de tempo, em segundos, de inatividade necessária para iniciar a proteção de ecrã."
|
||||
"LabelScreensaverTimeHelp": "A quantidade de tempo, em segundos, de inatividade necessária para iniciar a proteção de ecrã.",
|
||||
"LabelDuration": "Duração",
|
||||
"LabelDisableVbrAudioEncoding": "Desativar a codificação de áudio VBR",
|
||||
"LabelEnablePlugin": "Ativar extensão",
|
||||
"LabelDelimiterWhitelistHelp": "Itens a ser excluídos da separação de etiquetas. Um item por linha.",
|
||||
"LabelDropLyricsHere": "Arrasta e larga a letra aqui, ou clica para explorar."
|
||||
}
|
||||
|
@ -1940,5 +1940,35 @@
|
||||
"LabelAlwaysRemuxMp3AudioFiles": "Remux:a alltid MP3-ljudfiler",
|
||||
"LabelAlwaysRemuxFlacAudioFiles": "Remux:a alltid FLAC-ljudfiler",
|
||||
"AllowFmp4TranscodingContainerHelp": "Tillåt fMP4-omkodande container för denna tuner för att stödja HEVC- och HDR-kodat innehåll. Inte alla tuners är kompatibla med denna sortens container. Avaktivera detta valet ifall du upplever problem med uppspelning.",
|
||||
"AllowStreamSharingHelp": "Tillåt Jellyfin att duplicera MPEG-transportströmmen från tunern, och att dela den duplicerade strömmen till sina klienter. Detta är användbart när tunern har en maxgräns för antalet strömmar, men kan samtidigt orsaka problem med uppspelning."
|
||||
"AllowStreamSharingHelp": "Tillåt Jellyfin att duplicera MPEG-transportströmmen från tunern, och att dela den duplicerade strömmen till sina klienter. Detta är användbart när tunern har en maxgräns för antalet strömmar, men kan samtidigt orsaka problem med uppspelning.",
|
||||
"LabelScreensaverTimeHelp": "Antal sekunder av inaktivitet som krävs för att starta skärmsläckaren.",
|
||||
"MediaSegmentAction.None": "Ingen",
|
||||
"MediaSegmentType.Commercial": "Reklam",
|
||||
"MediaSegmentType.Intro": "Intro",
|
||||
"MessageCancelTimerError": "Ett fel uppstod när timern avbröts",
|
||||
"MessageSplitVersionsError": "Ett fel uppstod när versionerna delades",
|
||||
"PreferNonstandardArtistsTag": "Föredra ARTISTS-taggen om den är tillgänglig",
|
||||
"MediaSegmentAction.Skip": "Hoppa över",
|
||||
"MediaSegmentType.Outro": "Outro",
|
||||
"MediaSegmentType.Preview": "Förhandsgranskning",
|
||||
"AlwaysBurnInSubtitleWhenTranscoding": "Bränn alltid in undertexter vid omkodning",
|
||||
"AlwaysBurnInSubtitleWhenTranscodingHelp": "Bränn in alla undertexter när omkodning triggas. Detta säkerställer synkronisering av undertexter efter omkodning, men på bekostnad av minskad omkodningshastighet.",
|
||||
"PreferNonstandardArtistsTagHelp": "Använd den icke-standardiserade ARTISTS-taggen istället för ARTIST-taggen när den är tillgänglig.",
|
||||
"DateModified": "Ändrad den",
|
||||
"LabelAllowStreamSharing": "Tillåt stream-delning",
|
||||
"LabelCustomTagDelimiters": "Anpassad taggavgränsare",
|
||||
"LabelFallbackMaxStreamingBitrate": "Maximal strömningsbitrate för fallback (Mbps)",
|
||||
"MessageCancelSeriesTimerError": "Ett fel uppstod när serietimern avbröts",
|
||||
"LabelLyricDownloaders": "Sångtext-nerladdare",
|
||||
"LyricDownloadersHelp": "Aktivera och rangordna dina föredragna undertextnedladdare i prioritetsordning.",
|
||||
"RenderPgsSubtitleHelp": "Avgör om klienten ska rendera PGS-undertexter istället för att använda inbrända undertexter. Detta kan undvika serverbaserad omkodning i utbyte mot klientens renderingsprestanda.",
|
||||
"LabelCustomTagDelimitersHelp": "Tecken som ska behandlas som avgränsare för att separera taggar.",
|
||||
"LabelScreensaverTime": "Skärmsläckar-tid",
|
||||
"LabelQsvDevice": "QSV-enhet",
|
||||
"LabelQsvDeviceHelp": "Ange enheten för Intel QSV ifall systemet har flera GPU-er. På Linux är detta rendernodens namn, t.ex. /dev/dri/renderD128. På Windows är detta enhetsindexet som börjar från 0. Lämna fältet tomt om du är osäker.",
|
||||
"HeaderEditPlaylist": "Redigera spellista",
|
||||
"HeaderNewPlaylist": "Ny spellista",
|
||||
"LabelAudioTagSettings": "Ljudtag-inställningar",
|
||||
"MediaSegmentType.Recap": "Sammanfattning",
|
||||
"PlaylistError.UpdateFailed": "Fel vid uppdaterande av spellista"
|
||||
}
|
||||
|
@ -195,7 +195,7 @@
|
||||
"ButtonAddScheduledTaskTrigger": "Додати тригер",
|
||||
"ButtonAddMediaLibrary": "Додати медіатеку",
|
||||
"ButtonAddImage": "Додати зображення",
|
||||
"BurnSubtitlesHelp": "Визначає, чи повинен сервер додавати субтитри під час перекодування відео. Уникнення цього значно покращить продуктивність. Оберіть «Авто» для записування форматів на основі зображень (VobSub, PGS, SUB, IDX, ...) та певні субтитри ASS або SSA.",
|
||||
"BurnSubtitlesHelp": "Визначає, чи повинен сервер додавати субтитри. Уникнення цього значно покращить продуктивність. Оберіть «Авто» для записування форматів на основі зображень (VobSub, PGS, SUB, IDX, ...) та певні субтитри ASS або SSA.",
|
||||
"MessageBrowsePluginCatalog": "Перегляньте каталог плагінів, щоб ознайомитися з доступними плагінами.",
|
||||
"Browse": "Огляд",
|
||||
"BoxRear": "Коробка (задня частина)",
|
||||
@ -1063,7 +1063,7 @@
|
||||
"LabelRecord": "Запис",
|
||||
"LabelReasonForTranscoding": "Причина перекодування",
|
||||
"LabelQuickConnectCode": "Код Quick Connect",
|
||||
"LabelPublishedServerUriHelp": "Перевизначте URI, який використовує Jellyfin, на основі інтерфейсу або IP-адреси клієнта.",
|
||||
"LabelPublishedServerUriHelp": "Перевизначте URI, який використовує Jellyfin, на основі інтерфейсу або IP-адреси клієнта. Наприклад: внутрішній=http://jellyfin.example.com, зовнішній=https://jellyfin.example.com або всі=https://jellyfin.example.com",
|
||||
"LabelPublishedServerUri": "Опубліковані URI сервера",
|
||||
"LabelPublicHttpPort": "Номер загальнодоступного HTTP порту",
|
||||
"LabelProtocolInfoHelp": "Значення, яке буде використовуватися під час відповіді на запити GetProtocolInfo від пристрою.",
|
||||
@ -1866,8 +1866,8 @@
|
||||
"Lyrics": "Текст пісні",
|
||||
"ViewLyrics": "Переглянути текст пісні",
|
||||
"SavePassword": "Зберегти пароль",
|
||||
"PlaylistError.AddFailed": "Помилка додавання до списку відтворення",
|
||||
"PlaylistError.CreateFailed": "Помилка створення списку відтворення",
|
||||
"PlaylistError.AddFailed": "Помилка додавання до плейлиста",
|
||||
"PlaylistError.CreateFailed": "Помилка створення плейлиста",
|
||||
"SaveLyricsIntoMediaFoldersHelp": "Зберігання текстів пісень поруч з аудіофайлами дозволить легше ними керувати.",
|
||||
"Author": "Автор",
|
||||
"Colorist": "Колорист",
|
||||
@ -1882,7 +1882,7 @@
|
||||
"EnableTrueHd": "Увімкнути TrueHD",
|
||||
"EnableTrueHdHelp": "Увімкніть, якщо ваш пристрій підтримує TrueHD або підключений до сумісного аудіо приймача, інакше це може призвести до збоїв у відтворенні.",
|
||||
"PlaylistPublic": "Дозволити публічний доступ",
|
||||
"PlaylistPublicDescription": "Дозвольте переглядати цей список відтворення будь-якому зареєстрованому користувачеві.",
|
||||
"PlaylistPublicDescription": "Дозволити переглядати цього плейлиста будь-якому зареєстрованому користувачеві.",
|
||||
"HeaderLyricDownloads": "Завантаження текстів пісень",
|
||||
"SaveLyricsIntoMediaFolders": "Зберігати тексти пісень в теках з медіафайлами",
|
||||
"LibraryScanFanoutConcurrencyHelp": "Максимальна кількість паралельних завдань під час сканування медіатеки. Якщо встановити значення 0, буде обрано обмеження на основі кількості ядер у вашій системі. ПОПЕРЕДЖЕННЯ: Занадто високе значення цього параметра може спричинити проблеми з мережевими файловими системами; якщо ви зіткнулися з такими проблемами, зменшіть це значення.",
|
||||
@ -1964,5 +1964,22 @@
|
||||
"DateModified": "Дату змінено",
|
||||
"MessageCancelSeriesTimerError": "Виникла помилка під час скасування таймера серіалу",
|
||||
"MessageCancelTimerError": "Виникла помилка під час скасування таймера",
|
||||
"MessageSplitVersionsError": "Виникла помилка під час розділення версій"
|
||||
"MessageSplitVersionsError": "Виникла помилка під час розділення версій",
|
||||
"LabelMediaSegmentsType": "{0} Сегментів",
|
||||
"MediaSegmentAction.Skip": "Пропустити",
|
||||
"AlwaysBurnInSubtitleWhenTranscoding": "Завжди додавати субтитри під час перекодування",
|
||||
"AlwaysBurnInSubtitleWhenTranscodingHelp": "Додає всі субтитри під час перекодування. Це забезпечує синхронізацію субтитрів після перекодування ціною зменшення швидкості перекодування.",
|
||||
"MediaSegmentType.Outro": "Завершення",
|
||||
"MediaSegmentAction.None": "Нічого",
|
||||
"MediaSegmentType.Commercial": "Реклама",
|
||||
"MediaSegmentType.Preview": "Попередній перегляд",
|
||||
"MediaSegmentType.Recap": "Підсумок",
|
||||
"HeaderEditPlaylist": "Редагувати плейлист",
|
||||
"HeaderNewPlaylist": "Новий плейлист",
|
||||
"MediaSegmentType.Intro": "Вступ",
|
||||
"PlaylistError.UpdateFailed": "Помилка оновлення плейлиста",
|
||||
"LabelScreensaverTime": "Час заставки",
|
||||
"LabelScreensaverTimeHelp": "Час бездіяльності у секундах, необхідний для запуску заставки.",
|
||||
"LabelQsvDevice": "QSV-пристрій",
|
||||
"LabelQsvDeviceHelp": "Вкажіть пристрій для Intel QSV у багатопроцесорній системі. У Linux це вузол рендеру, наприклад, /dev/dri/renderD128. У Windows це індекс пристрою, починаючи з 0. Залиште поле порожнім, якщо ви не знаєте, що робите."
|
||||
}
|
||||
|
@ -183,6 +183,7 @@
|
||||
}
|
||||
|
||||
@media all and (max-width: 30em) {
|
||||
.btnUserRating,
|
||||
.osdMediaInfo,
|
||||
.osdPoster {
|
||||
display: none !important;
|
||||
|
Loading…
Reference in New Issue
Block a user