Compare commits

...
Author SHA1 Message Date
advplyr 752e918d26 iOS version bump 0.9.73 & update dependencies 2024-03-03 16:28:55 -06:00
advplyr ad08cc69f4 Version bump 0.9.73-beta 2024-03-03 14:15:32 -06:00
advplyr da3882fd5e Fix:Playlist tab not shown after adding first playlist #1092 2024-03-03 13:29:58 -06:00
advplyr c04c7a55d9 Fix:iOS progress bar overflowing edge of screen 2024-03-03 12:52:17 -06:00
advplyr 3318846b43 Add:Remove from playlist option in more menu for items on playlist page #987 2024-03-02 15:25:18 -06:00
advplyrandGitHub e0860feeb9 Merge pull request #1109 from megamegax/hu
feat(i18n): add Hungarian localization
2024-03-01 15:39:15 -06:00
Hunyady Mihály c0253a69b9 feat(i18n): replace NoItemsFound translation to a more general one 2024-03-01 22:09:33 +01:00
Hunyady Mihály 9242c7e6e0 feat(i18n): small grammar adjustments 2024-03-01 22:04:09 +01:00
Hunyady Mihály 0bfc579ae4 feat(i18n): adjust translation 2024-03-01 21:39:06 +01:00
megamegax 5fad06756b feat(i18n): add Hungarian localization 2024-03-01 20:03:21 +01:00
advplyrandGitHub 5be6afa6c1 Merge pull request #1106 from pmangro/0.9.72.a-PT-BR
[PT-BR] Translated LabelAllowSeekingOnMediaControls
2024-02-27 15:58:36 -06:00
pmangroandGitHub 5ba3b8be7a [PT-BR] Translated LabelAllowSeekingOnMediaControls 2024-02-27 14:39:21 -03:00
advplyr 0eb62f541d Fix:Local media item page long titles overflowing screen pushing play & more menu button offscreen #1103 2024-02-25 15:35:23 -06:00
advplyrandGitHub 6baff881c7 Merge pull request #1094 from fidoriel/disable-widget-ios-scrubing
Disable ios/android scrubbing in MPRemoteCommandCenter/MediaBrowserServiceCompat
2024-02-25 15:29:52 -06:00
fidoriel 8c23c1e795 german translation for LabelAllowSeekingOnMediaControls 2024-02-25 22:25:17 +01:00
advplyr 9706c66a27 iOS Update Realm schema version for new setting, update remote transport controls on device settings updated 2024-02-25 15:04:54 -06:00
advplyr f4f7252537 Update wording for enable seeking on media controls settings, remove restart required help text, map translations 2024-02-25 14:44:40 -06:00
advplyr 430d200151 Update android disable media control seek setting to update in realtime 2024-02-25 14:11:28 -06:00
advplyr 7be82d03f3 Merge branch 'master' into disable-widget-ios-scrubing 2024-02-25 12:51:58 -06:00
advplyr 15aaef742d Fix:Ignore swiping for audio player when modal is open #1099 2024-02-24 15:00:29 -06:00
advplyrandGitHub e443ba09da Merge pull request #1095 from pmangro/0.9.72.a-PT-BR
Added PT-BR Strings
2024-02-24 14:49:35 -06:00
luca 8235d1f1f7 reorder setting and add info label 2024-02-22 20:27:33 +01:00
pmangroandGitHub 9a39dcceee Update i18n.js to add pt-br 2024-02-21 08:55:45 -03:00
pmangroandGitHub a707b7fc86 Typos corrected 2024-02-21 08:53:34 -03:00
fidoriel b6fea85ef4 fix compile android 2024-02-21 10:16:47 +01:00
advplyr 7e3b3f55ae Fix:Android auto not loading server items #1081 2024-02-20 17:05:07 -06:00
fidoriel d2d3bbe8a1 fix default false 2024-02-20 22:08:47 +01:00
fidoriel 41a65c0f9d add setting for widget scrubbing 2024-02-20 21:58:31 +01:00
pmangroandGitHub 165ddd58a6 Update pt-br.json - initial file 2024-02-20 17:29:03 -03:00
pmangroandGitHub 09dc04c0de Created pt-br.json 2024-02-20 15:40:29 -03:00
advplyrandGitHub 57d5dbc0d0 Merge pull request #1082 from arcao/patch-1
Translate cs.json
2024-02-14 18:42:25 -06:00
Martin SloupandGitHub 11af75e127 Translate cs.json
Translate untranslated texts to Czech and fix already translated texts.
2024-02-14 02:10:33 +01:00
advplyr f8d82a3020 iOS version bump 0.9.72 2024-02-11 08:54:54 -06:00
43 changed files with 959 additions and 215 deletions
+2 -2
View File
@@ -33,8 +33,8 @@ android {
applicationId "com.audiobookshelf.app" applicationId "com.audiobookshelf.app"
minSdkVersion rootProject.ext.minSdkVersion minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 103 versionCode 104
versionName "0.9.72-beta" versionName "0.9.73-beta"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
manifestPlaceholders = [ manifestPlaceholders = [
"appAuthRedirectScheme": "com.audiobookshelf.app" "appAuthRedirectScheme": "com.audiobookshelf.app"
@@ -103,6 +103,9 @@ class MainActivity : BridgeActivity() {
} }
} }
fun isPlayerNotificationServiceInitialized():Boolean {
return ::foregroundService.isInitialized
}
fun stopMyService() { fun stopMyService() {
if (mBounded) { if (mBounded) {
@@ -107,6 +107,7 @@ data class PlayItemRequestPayload(
data class DeviceSettings( data class DeviceSettings(
var disableAutoRewind:Boolean, var disableAutoRewind:Boolean,
var enableAltView:Boolean, var enableAltView:Boolean,
var allowSeekingOnMediaControls:Boolean,
var jumpBackwardsTime:Int, var jumpBackwardsTime:Int,
var jumpForwardTime:Int, var jumpForwardTime:Int,
var enableMp3IndexSeeking:Boolean, var enableMp3IndexSeeking:Boolean,
@@ -130,6 +131,7 @@ data class DeviceSettings(
return DeviceSettings( return DeviceSettings(
disableAutoRewind = false, disableAutoRewind = false,
enableAltView = true, enableAltView = true,
allowSeekingOnMediaControls = false,
jumpBackwardsTime = 10, jumpBackwardsTime = 10,
jumpForwardTime = 10, jumpForwardTime = 10,
enableMp3IndexSeeking = false, enableMp3IndexSeeking = false,
@@ -247,14 +247,16 @@ class MediaManager(private var apiHandler: ApiHandler, var ctx: Context) {
} }
private fun checkSetValidServerConnectionConfig(cb: (Boolean) -> Unit) = runBlocking { private fun checkSetValidServerConnectionConfig(cb: (Boolean) -> Unit) = runBlocking {
Log.d(tag, "checkSetValidServerConnectionConfig | $serverConfigIdUsed") Log.d(tag, "checkSetValidServerConnectionConfig | serverConfigIdUsed=$serverConfigIdUsed | lastServerConnectionConfigId=${DeviceManager.deviceData.lastServerConnectionConfigId}")
coroutineScope { coroutineScope {
if (!DeviceManager.checkConnectivity(ctx)) { if (!DeviceManager.checkConnectivity(ctx)) {
serverUserMediaProgress = mutableListOf() serverUserMediaProgress = mutableListOf()
Log.d(tag, "checkSetValidServerConnectionConfig: No connectivity")
cb(false) cb(false)
} else if (DeviceManager.serverConnectionConfigId == "") { // If in offline mode server connection config is unset } else if (DeviceManager.deviceData.lastServerConnectionConfigId.isNullOrBlank()) { // If in offline mode last server connection config is unset
serverUserMediaProgress = mutableListOf() serverUserMediaProgress = mutableListOf()
Log.d(tag, "checkSetValidServerConnectionConfig: No last server connection config")
cb(false) cb(false)
} else { } else {
var hasValidConn = false var hasValidConn = false
@@ -334,6 +336,7 @@ class MediaManager(private var apiHandler: ApiHandler, var ctx: Context) {
checkSetValidServerConnectionConfig { isConnected -> checkSetValidServerConnectionConfig { isConnected ->
if (isConnected) { if (isConnected) {
serverConfigIdUsed = DeviceManager.serverConnectionConfigId serverConfigIdUsed = DeviceManager.serverConnectionConfigId
Log.d(tag, "loadAndroidAutoItems: Connected to server config id=$serverConfigIdUsed")
loadLibraries { libraries -> loadLibraries { libraries ->
if (libraries.isEmpty()) { if (libraries.isEmpty()) {
@@ -360,6 +363,7 @@ class MediaManager(private var apiHandler: ApiHandler, var ctx: Context) {
} }
} }
} else { // Not connected to server } else { // Not connected to server
Log.d(tag, "loadAndroidAutoItems: Not connected to server")
cb() cb()
} }
} }
@@ -329,15 +329,7 @@ class PlayerNotificationService : MediaBrowserServiceCompat() {
} }
} }
mediaSessionConnector.setEnabledPlaybackActions( setMediaSessionConnectorPlaybackActions()
PlaybackStateCompat.ACTION_PLAY_PAUSE
or PlaybackStateCompat.ACTION_PLAY
or PlaybackStateCompat.ACTION_PAUSE
or PlaybackStateCompat.ACTION_SEEK_TO
or PlaybackStateCompat.ACTION_FAST_FORWARD
or PlaybackStateCompat.ACTION_REWIND
or PlaybackStateCompat.ACTION_STOP
)
mediaSessionConnector.setQueueNavigator(queueNavigator) mediaSessionConnector.setQueueNavigator(queueNavigator)
mediaSessionConnector.setPlaybackPreparer(MediaSessionPlaybackPreparer(this)) mediaSessionConnector.setPlaybackPreparer(MediaSessionPlaybackPreparer(this))
@@ -512,6 +504,20 @@ class PlayerNotificationService : MediaBrowserServiceCompat() {
mediaSessionConnector.setCustomActionProviders(*customActionProviders.toTypedArray()) mediaSessionConnector.setCustomActionProviders(*customActionProviders.toTypedArray())
} }
fun setMediaSessionConnectorPlaybackActions() {
var playbackActions = PlaybackStateCompat.ACTION_PLAY_PAUSE or
PlaybackStateCompat.ACTION_PLAY or
PlaybackStateCompat.ACTION_PAUSE or
PlaybackStateCompat.ACTION_FAST_FORWARD or
PlaybackStateCompat.ACTION_REWIND or
PlaybackStateCompat.ACTION_STOP
if (deviceSettings.allowSeekingOnMediaControls) {
playbackActions = playbackActions or PlaybackStateCompat.ACTION_SEEK_TO
}
mediaSessionConnector.setEnabledPlaybackActions(playbackActions)
}
fun handlePlayerPlaybackError(errorMessage:String) { fun handlePlayerPlaybackError(errorMessage:String) {
// On error and was attempting to direct play - fallback to transcode // On error and was attempting to direct play - fallback to transcode
currentPlaybackSession?.let { playbackSession -> currentPlaybackSession?.let { playbackSession ->
@@ -1,5 +1,7 @@
package com.audiobookshelf.app.plugins package com.audiobookshelf.app.plugins
import android.os.Handler
import android.os.Looper
import android.util.Log import android.util.Log
import com.audiobookshelf.app.MainActivity import com.audiobookshelf.app.MainActivity
import com.audiobookshelf.app.data.* import com.audiobookshelf.app.data.*
@@ -493,9 +495,16 @@ class AbsDatabase : Plugin() {
fun updateDeviceSettings(call:PluginCall) { // Returns device data fun updateDeviceSettings(call:PluginCall) { // Returns device data
Log.d(tag, "updateDeviceSettings ${call.data}") Log.d(tag, "updateDeviceSettings ${call.data}")
val newDeviceSettings = jacksonMapper.readValue<DeviceSettings>(call.data.toString()) val newDeviceSettings = jacksonMapper.readValue<DeviceSettings>(call.data.toString())
GlobalScope.launch(Dispatchers.IO) {
Handler(Looper.getMainLooper()).post {
DeviceManager.deviceData.deviceSettings = newDeviceSettings DeviceManager.deviceData.deviceSettings = newDeviceSettings
DeviceManager.dbManager.saveDeviceData(DeviceManager.deviceData) DeviceManager.dbManager.saveDeviceData(DeviceManager.deviceData)
// Updates playback actions for media notification (handles media control seek locking setting)
if (mainActivity.isPlayerNotificationServiceInitialized()) {
mainActivity.foregroundService.setMediaSessionConnectorPlaybackActions()
}
call.resolve(JSObject(jacksonMapper.writeValueAsString(DeviceManager.deviceData))) call.resolve(JSObject(jacksonMapper.writeValueAsString(DeviceManager.deviceData)))
} }
} }
+28 -10
View File
@@ -163,7 +163,8 @@ export default {
showMoreMenuDialog: false, showMoreMenuDialog: false,
coverRgb: 'rgb(55, 56, 56)', coverRgb: 'rgb(55, 56, 56)',
coverBgIsLight: false, coverBgIsLight: false,
titleMarquee: null titleMarquee: null,
isRefreshingUI: false
} }
}, },
watch: { watch: {
@@ -652,7 +653,7 @@ export default {
this.closePlayback() this.closePlayback()
}, },
touchstart(e) { touchstart(e) {
if (!e.changedTouches) return if (!e.changedTouches || this.$store.state.globals.isModalOpen) return
const touchPosY = e.changedTouches[0].pageY const touchPosY = e.changedTouches[0].pageY
// when minimized only listen to touchstart on the player // when minimized only listen to touchstart on the player
if (!this.showFullscreen && touchPosY < window.innerHeight - 120) return if (!this.showFullscreen && touchPosY < window.innerHeight - 120) return
@@ -880,15 +881,32 @@ export default {
this.onProgressSyncSuccess = AbsAudioPlayer.addListener('onProgressSyncSuccess', this.showProgressSyncSuccess) this.onProgressSyncSuccess = AbsAudioPlayer.addListener('onProgressSyncSuccess', this.showProgressSyncSuccess)
this.onPlaybackSpeedChangedListener = AbsAudioPlayer.addListener('onPlaybackSpeedChanged', this.onPlaybackSpeedChanged) this.onPlaybackSpeedChangedListener = AbsAudioPlayer.addListener('onPlaybackSpeedChanged', this.onPlaybackSpeedChanged)
}, },
screenOrientationChange() { async screenOrientationChange() {
setTimeout(() => { if (this.isRefreshingUI) return
this.updateScreenSize() this.isRefreshingUI = true
if (this.$refs.track) { const windowWidth = window.innerWidth
this.trackWidth = this.$refs.track.clientWidth this.refreshUI()
this.updateTrack()
this.updateReadyTrack() // Window width does not always change right away. Wait up to 250ms for a change.
// iPhone 10 on iOS 16 took between 100 - 200ms to update when going from portrait to landscape
// but landscape to portrait was immediate
for (let i = 0; i < 5; i++) {
await new Promise((resolve) => setTimeout(resolve, 50))
if (window.innerWidth !== windowWidth) {
this.refreshUI()
break
} }
}, 50) }
this.isRefreshingUI = false
},
refreshUI() {
this.updateScreenSize()
if (this.$refs.track) {
this.trackWidth = this.$refs.track.clientWidth
this.updateTrack()
this.updateReadyTrack()
}
}, },
updateScreenSize() { updateScreenSize() {
setTimeout(() => { setTimeout(() => {
+1 -1
View File
@@ -79,7 +79,7 @@ export default {
return this.page return this.page
}, },
hasFilter() { hasFilter() {
if (this.page === 'series' || this.page === 'collections') return false if (this.page === 'series' || this.page === 'collections' || this.page === 'playlists') return false
return this.filterBy !== 'all' return this.filterBy !== 'all'
}, },
orderBy() { orderBy() {
+38
View File
@@ -26,6 +26,10 @@ export default {
type: Object, type: Object,
default: () => null default: () => null
}, },
playlist: {
type: Object,
default: () => null
},
hideRssFeedOption: Boolean hideRssFeedOption: Boolean
}, },
data() { data() {
@@ -92,6 +96,15 @@ export default {
} }
} }
// If on playlist page show remove from playlist option
if (this.playlist) {
items.push({
text: this.$strings.LabelRemoveFromPlaylist,
value: 'removeFromPlaylist',
icon: 'playlist_remove'
})
}
if (this.showRSSFeedOption) { if (this.showRSSFeedOption) {
items.push({ items.push({
text: this.rssFeed ? this.$strings.HeaderRSSFeed : this.$strings.HeaderOpenRSSFeed, text: this.rssFeed ? this.$strings.HeaderRSSFeed : this.$strings.HeaderOpenRSSFeed,
@@ -255,6 +268,8 @@ export default {
} else if (action === 'playlist') { } else if (action === 'playlist') {
this.$store.commit('globals/setSelectedPlaylistItems', [{ libraryItem: this.libraryItem, episode: this.episode }]) this.$store.commit('globals/setSelectedPlaylistItems', [{ libraryItem: this.libraryItem, episode: this.episode }])
this.$store.commit('globals/setShowPlaylistsAddCreateModal', true) this.$store.commit('globals/setShowPlaylistsAddCreateModal', true)
} else if (action === 'removeFromPlaylist') {
this.removeFromPlaylistClick()
} else if (action === 'markFinished') { } else if (action === 'markFinished') {
if (this.episode) this.toggleEpisodeFinished() if (this.episode) this.toggleEpisodeFinished()
else this.toggleFinished() else this.toggleFinished()
@@ -456,6 +471,29 @@ export default {
.finally(() => { .finally(() => {
this.$emit('update:processing', false) this.$emit('update:processing', false)
}) })
},
removeFromPlaylistClick() {
if (!this.playlist) {
this.$toast.error('Invalid: No Playlist')
return
}
this.$emit('update:processing', true)
let url = `/api/playlists/${this.playlist.id}/item/${this.serverLibraryItemId}`
if (this.serverEpisodeId) url += `/${this.serverEpisodeId}`
this.$axios
.$delete(url)
.then(() => {
this.$toast.success('Item removed from playlist')
})
.catch((error) => {
const errorMsg = error.response?.data || 'Unknown error'
console.error('Failed to remove item from playlist', error)
this.$toast.error('Failed to remove from playlist: ' + errorMsg)
})
.finally(() => {
this.$emit('update:processing', false)
})
} }
}, },
mounted() {} mounted() {}
+4 -4
View File
@@ -728,12 +728,12 @@
ASSETCATALOG_COMPILER_APPICON_NAME = Icons; ASSETCATALOG_COMPILER_APPICON_NAME = Icons;
CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_MODULES = YES;
CODE_SIGN_STYLE = Automatic; CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 28; CURRENT_PROJECT_VERSION = 30;
DEVELOPMENT_TEAM = 7UFJ7D8V6A; DEVELOPMENT_TEAM = 7UFJ7D8V6A;
INFOPLIST_FILE = App/Info.plist; INFOPLIST_FILE = App/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 14.0; IPHONEOS_DEPLOYMENT_TARGET = 14.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
MARKETING_VERSION = 0.9.71; MARKETING_VERSION = 0.9.73;
OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\""; OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\"";
PRODUCT_BUNDLE_IDENTIFIER = com.audiobookshelf.app.dev; PRODUCT_BUNDLE_IDENTIFIER = com.audiobookshelf.app.dev;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
@@ -752,12 +752,12 @@
ASSETCATALOG_COMPILER_APPICON_NAME = Icons; ASSETCATALOG_COMPILER_APPICON_NAME = Icons;
CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_MODULES = YES;
CODE_SIGN_STYLE = Automatic; CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 28; CURRENT_PROJECT_VERSION = 30;
DEVELOPMENT_TEAM = 7UFJ7D8V6A; DEVELOPMENT_TEAM = 7UFJ7D8V6A;
INFOPLIST_FILE = App/Info.plist; INFOPLIST_FILE = App/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 14.0; IPHONEOS_DEPLOYMENT_TARGET = 14.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
MARKETING_VERSION = 0.9.71; MARKETING_VERSION = 0.9.73;
PRODUCT_BUNDLE_IDENTIFIER = com.audiobookshelf.app; PRODUCT_BUNDLE_IDENTIFIER = com.audiobookshelf.app;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_ACTIVE_COMPILATION_CONDITIONS = ""; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "";
+1 -1
View File
@@ -14,7 +14,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
// Override point for customization after application launch. // Override point for customization after application launch.
let configuration = Realm.Configuration( let configuration = Realm.Configuration(
schemaVersion: 16, schemaVersion: 17,
migrationBlock: { [weak self] migration, oldSchemaVersion in migrationBlock: { [weak self] migration, oldSchemaVersion in
if (oldSchemaVersion < 1) { if (oldSchemaVersion < 1) {
self?.logger.log("Realm schema version was \(oldSchemaVersion)") self?.logger.log("Realm schema version was \(oldSchemaVersion)")
+5 -1
View File
@@ -238,6 +238,7 @@ public class AbsDatabase: CAPPlugin {
@objc func updateDeviceSettings(_ call: CAPPluginCall) { @objc func updateDeviceSettings(_ call: CAPPluginCall) {
let disableAutoRewind = call.getBool("disableAutoRewind") ?? false let disableAutoRewind = call.getBool("disableAutoRewind") ?? false
let enableAltView = call.getBool("enableAltView") ?? false let enableAltView = call.getBool("enableAltView") ?? false
let allowSeekingOnMediaControls = call.getBool("allowSeekingOnMediaControls") ?? false
let jumpBackwardsTime = call.getInt("jumpBackwardsTime") ?? 10 let jumpBackwardsTime = call.getInt("jumpBackwardsTime") ?? 10
let jumpForwardTime = call.getInt("jumpForwardTime") ?? 10 let jumpForwardTime = call.getInt("jumpForwardTime") ?? 10
let lockOrientation = call.getString("lockOrientation") ?? "NONE" let lockOrientation = call.getString("lockOrientation") ?? "NONE"
@@ -246,6 +247,7 @@ public class AbsDatabase: CAPPlugin {
let settings = DeviceSettings() let settings = DeviceSettings()
settings.disableAutoRewind = disableAutoRewind settings.disableAutoRewind = disableAutoRewind
settings.enableAltView = enableAltView settings.enableAltView = enableAltView
settings.allowSeekingOnMediaControls = allowSeekingOnMediaControls
settings.jumpBackwardsTime = jumpBackwardsTime settings.jumpBackwardsTime = jumpBackwardsTime
settings.jumpForwardTime = jumpForwardTime settings.jumpForwardTime = jumpForwardTime
settings.lockOrientation = lockOrientation settings.lockOrientation = lockOrientation
@@ -254,7 +256,9 @@ public class AbsDatabase: CAPPlugin {
Database.shared.setDeviceSettings(deviceSettings: settings) Database.shared.setDeviceSettings(deviceSettings: settings)
// call.resolve([ "value": [] ]) // Updates the media notification controls (for allowSeekingOnMediaControls setting)
PlayerHandler.updateRemoteTransportControls()
getDeviceData(call) getDeviceData(call)
} }
+9 -9
View File
@@ -1,5 +1,5 @@
PODS: PODS:
- Alamofire (5.6.4) - Alamofire (5.8.1)
- ByteowlsCapacitorFilesharer (5.0.0): - ByteowlsCapacitorFilesharer (5.0.0):
- Capacitor - Capacitor
- Capacitor (5.4.0): - Capacitor (5.4.0):
@@ -23,11 +23,11 @@ PODS:
- Capacitor - Capacitor
- CordovaPlugins (5.4.0): - CordovaPlugins (5.4.0):
- CapacitorCordova - CapacitorCordova
- Realm (10.36.0): - Realm (10.47.0):
- Realm/Headers (= 10.36.0) - Realm/Headers (= 10.47.0)
- Realm/Headers (10.36.0) - Realm/Headers (10.47.0)
- RealmSwift (10.36.0): - RealmSwift (10.47.0):
- Realm (= 10.36.0) - Realm (= 10.47.0)
DEPENDENCIES: DEPENDENCIES:
- Alamofire (~> 5.5) - Alamofire (~> 5.5)
@@ -78,7 +78,7 @@ EXTERNAL SOURCES:
:path: "../capacitor-cordova-ios-plugins" :path: "../capacitor-cordova-ios-plugins"
SPEC CHECKSUMS: SPEC CHECKSUMS:
Alamofire: 4e95d97098eacb88856099c4fc79b526a299e48c Alamofire: 3ca42e259043ee0dc5c0cdd76c4bc568b8e42af7
ByteowlsCapacitorFilesharer: f6a773825632d65d5404a34764c4a3fd857bb176 ByteowlsCapacitorFilesharer: f6a773825632d65d5404a34764c4a3fd857bb176
Capacitor: a5cd803e02b471591c81165f400ace01f40b11d3 Capacitor: a5cd803e02b471591c81165f400ace01f40b11d3
CapacitorApp: 024e1b1bea5f883d79f6330d309bc441c88ad04a CapacitorApp: 024e1b1bea5f883d79f6330d309bc441c88ad04a
@@ -91,8 +91,8 @@ SPEC CHECKSUMS:
CapacitorPreferences: f03954bcb0ff09c792909e46bff88e3183c16b10 CapacitorPreferences: f03954bcb0ff09c792909e46bff88e3183c16b10
CapacitorStatusBar: 565c0a1ebd79bb40d797606a8992b4a105885309 CapacitorStatusBar: 565c0a1ebd79bb40d797606a8992b4a105885309
CordovaPlugins: a5db67e5ac1061b9869a0efd754f2c2f776aeccc CordovaPlugins: a5db67e5ac1061b9869a0efd754f2c2f776aeccc
Realm: 3fd136cb4c83a927482a7f1612496d37beed3cf5 Realm: e43fb540ae947497e3ea8a662443256920602060
RealmSwift: 513d4dcbf5bfc4d573454088b592685fc48dd716 RealmSwift: 8b06ed06b5d16749ae0c4d91c0cba414a9e28189
PODFILE CHECKSUM: 02e6ffe2f51a453ce222ee9af0e55e9448d8514c PODFILE CHECKSUM: 02e6ffe2f51a453ce222ee9af0e55e9448d8514c
@@ -11,6 +11,7 @@ import RealmSwift
class DeviceSettings: Object { class DeviceSettings: Object {
@Persisted var disableAutoRewind: Bool = false @Persisted var disableAutoRewind: Bool = false
@Persisted var enableAltView: Bool = true @Persisted var enableAltView: Bool = true
@Persisted var allowSeekingOnMediaControls: Bool = false
@Persisted var jumpBackwardsTime: Int = 10 @Persisted var jumpBackwardsTime: Int = 10
@Persisted var jumpForwardTime: Int = 10 @Persisted var jumpForwardTime: Int = 10
@Persisted var lockOrientation: String = "NONE" @Persisted var lockOrientation: String = "NONE"
@@ -26,6 +27,7 @@ func deviceSettingsToJSON(settings: DeviceSettings) -> Dictionary<String, Any> {
return [ return [
"disableAutoRewind": settings.disableAutoRewind, "disableAutoRewind": settings.disableAutoRewind,
"enableAltView": settings.enableAltView, "enableAltView": settings.enableAltView,
"allowSeekingOnMediaControls": settings.allowSeekingOnMediaControls,
"jumpBackwardsTime": settings.jumpBackwardsTime, "jumpBackwardsTime": settings.jumpBackwardsTime,
"jumpForwardTime": settings.jumpForwardTime, "jumpForwardTime": settings.jumpForwardTime,
"lockOrientation": settings.lockOrientation, "lockOrientation": settings.lockOrientation,
+2 -2
View File
@@ -588,7 +588,7 @@ class AudioPlayer: NSObject {
} }
// MARK: - Now playing // MARK: - Now playing
private func setupRemoteTransportControls() { func setupRemoteTransportControls() {
DispatchQueue.runOnMainQueue { DispatchQueue.runOnMainQueue {
UIApplication.shared.beginReceivingRemoteControlEvents() UIApplication.shared.beginReceivingRemoteControlEvents()
} }
@@ -672,7 +672,7 @@ class AudioPlayer: NSObject {
return .success return .success
} }
commandCenter.changePlaybackPositionCommand.isEnabled = true commandCenter.changePlaybackPositionCommand.isEnabled = deviceSettings.allowSeekingOnMediaControls
commandCenter.changePlaybackPositionCommand.addTarget { [weak self] event in commandCenter.changePlaybackPositionCommand.addTarget { [weak self] event in
guard let event = event as? MPChangePlaybackPositionCommandEvent else { guard let event = event as? MPChangePlaybackPositionCommandEvent else {
return .noSuchContent return .noSuchContent
@@ -135,6 +135,10 @@ class PlayerHandler {
) )
} }
public static func updateRemoteTransportControls() {
self.player?.setupRemoteTransportControls()
}
// MARK: - Helper logic // MARK: - Helper logic
private static func cleanupOldSessions(currentSessionId: String?) { private static func cleanupOldSessions(currentSessionId: String?) {
+1 -2
View File
@@ -212,8 +212,7 @@ export default {
} }
}, },
userUpdated(user) { userUpdated(user) {
// console.log('[default] userUpdated:', JSON.stringify(user)) if (this.user?.id == user.id) {
if (this.user && this.user.id == user.id) {
this.$store.commit('user/setUser', user) this.$store.commit('user/setUser', user)
} }
}, },
+2 -2
View File
@@ -1,12 +1,12 @@
{ {
"name": "audiobookshelf-app", "name": "audiobookshelf-app",
"version": "0.9.72-beta", "version": "0.9.73-beta",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "audiobookshelf-app", "name": "audiobookshelf-app",
"version": "0.9.72-beta", "version": "0.9.73-beta",
"dependencies": { "dependencies": {
"@byteowls/capacitor-filesharer": "^5.0.0", "@byteowls/capacitor-filesharer": "^5.0.0",
"@capacitor/android": "^5.0.0", "@capacitor/android": "^5.0.0",
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "audiobookshelf-app", "name": "audiobookshelf-app",
"version": "0.9.72-beta", "version": "0.9.73-beta",
"author": "advplyr", "author": "advplyr",
"scripts": { "scripts": {
"dev": "nuxt --hostname 0.0.0.0 --port 1337", "dev": "nuxt --hostname 0.0.0.0 --port 1337",
+1 -1
View File
@@ -2,7 +2,7 @@
<div class="w-full h-full py-6 px-2"> <div class="w-full h-full py-6 px-2">
<div v-if="localLibraryItem" class="w-full h-full"> <div v-if="localLibraryItem" class="w-full h-full">
<div class="px-2 flex items-center mb-2"> <div class="px-2 flex items-center mb-2">
<p class="text-base font-semibold">{{ mediaMetadata.title }}</p> <p class="text-base font-semibold truncate">{{ mediaMetadata.title }}</p>
<div class="flex-grow" /> <div class="flex-grow" />
<button v-if="audioTracks.length && !isPodcast" class="shadow-sm text-success flex items-center justify-center rounded-full mx-2" @click.stop="play"> <button v-if="audioTracks.length && !isPodcast" class="shadow-sm text-success flex items-center justify-center rounded-full mx-2" @click.stop="play">
+18 -2
View File
@@ -24,7 +24,7 @@
</div> </div>
</div> </div>
<modals-item-more-menu-modal v-model="showMoreMenu" :library-item="selectedLibraryItem" :episode="selectedEpisode" hide-rss-feed-option :processing.sync="processing" /> <modals-item-more-menu-modal v-model="showMoreMenu" :library-item="selectedLibraryItem" :episode="selectedEpisode" :playlist="playlist" hide-rss-feed-option :processing.sync="processing" />
<div v-show="processing" class="fixed top-0 left-0 w-screen h-screen flex items-center justify-center bg-black/50 z-50"> <div v-show="processing" class="fixed top-0 left-0 w-screen h-screen flex items-center justify-center bg-black/50 z-50">
<ui-loading-indicator /> <ui-loading-indicator />
</div> </div>
@@ -140,8 +140,24 @@ export default {
this.$eventBus.$emit('play-item', { libraryItemId: nextItem.libraryItemId, episodeId: nextItem.episodeId }) this.$eventBus.$emit('play-item', { libraryItemId: nextItem.libraryItemId, episodeId: nextItem.episodeId })
} }
} }
},
playlistUpdated(playlist) {
if (this.playlist.id !== playlist.id) return
this.playlist = playlist
},
playlistRemoved(playlist) {
if (this.playlist.id === playlist.id) {
this.$router.replace('/bookshelf/playlists')
}
} }
}, },
mounted() {} mounted() {
this.$socket.$on('playlist_updated', this.playlistUpdated)
this.$socket.$on('playlist_removed', this.playlistRemoved)
},
beforeDestroy() {
this.$socket.$off('playlist_updated', this.playlistUpdated)
this.$socket.$off('playlist_removed', this.playlistRemoved)
}
} }
</script> </script>
+12
View File
@@ -61,6 +61,12 @@
<p class="pl-4">{{ $strings.LabelEnableMp3IndexSeeking }}</p> <p class="pl-4">{{ $strings.LabelEnableMp3IndexSeeking }}</p>
<span class="material-icons-outlined ml-2" @click.stop="showConfirmMp3IndexSeeking">info</span> <span class="material-icons-outlined ml-2" @click.stop="showConfirmMp3IndexSeeking">info</span>
</div> </div>
<div class="flex items-center py-3">
<div class="w-10 flex justify-center" @click="toggleAllowSeekingOnMediaControls">
<ui-toggle-switch v-model="settings.allowSeekingOnMediaControls" @input="saveSettings" />
</div>
<p class="pl-4">{{ $strings.LabelAllowSeekingOnMediaControls }}</p>
</div>
<!-- Sleep timer settings --> <!-- Sleep timer settings -->
<template v-if="!isiOS"> <template v-if="!isiOS">
@@ -154,6 +160,7 @@ export default {
settings: { settings: {
disableAutoRewind: false, disableAutoRewind: false,
enableAltView: true, enableAltView: true,
allowSeekingOnMediaControls: false,
jumpForwardTime: 10, jumpForwardTime: 10,
jumpBackwardsTime: 10, jumpBackwardsTime: 10,
enableMp3IndexSeeking: false, enableMp3IndexSeeking: false,
@@ -429,6 +436,10 @@ export default {
this.settings.enableAltView = !this.settings.enableAltView this.settings.enableAltView = !this.settings.enableAltView
this.saveSettings() this.saveSettings()
}, },
toggleAllowSeekingOnMediaControls() {
this.settings.allowSeekingOnMediaControls = !this.settings.allowSeekingOnMediaControls
this.saveSettings()
},
getCurrentOrientation() { getCurrentOrientation() {
const orientation = window.screen?.orientation || {} const orientation = window.screen?.orientation || {}
const type = orientation.type || '' const type = orientation.type || ''
@@ -471,6 +482,7 @@ export default {
const deviceSettings = this.deviceData.deviceSettings || {} const deviceSettings = this.deviceData.deviceSettings || {}
this.settings.disableAutoRewind = !!deviceSettings.disableAutoRewind this.settings.disableAutoRewind = !!deviceSettings.disableAutoRewind
this.settings.enableAltView = !!deviceSettings.enableAltView this.settings.enableAltView = !!deviceSettings.enableAltView
this.settings.allowSeekingOnMediaControls = !!deviceSettings.allowSeekingOnMediaControls
this.settings.jumpForwardTime = deviceSettings.jumpForwardTime || 10 this.settings.jumpForwardTime = deviceSettings.jumpForwardTime || 10
this.settings.jumpBackwardsTime = deviceSettings.jumpBackwardsTime || 10 this.settings.jumpBackwardsTime = deviceSettings.jumpBackwardsTime || 10
this.settings.enableMp3IndexSeeking = !!deviceSettings.enableMp3IndexSeeking this.settings.enableMp3IndexSeeking = !!deviceSettings.enableMp3IndexSeeking
+2
View File
@@ -14,9 +14,11 @@ const languageCodeMap = {
'hr': { label: 'Hrvatski', dateFnsLocale: 'hr' }, 'hr': { label: 'Hrvatski', dateFnsLocale: 'hr' },
'it': { label: 'Italiano', dateFnsLocale: 'it' }, 'it': { label: 'Italiano', dateFnsLocale: 'it' },
'lt': { label: 'Lietuvių', dateFnsLocale: 'lt' }, 'lt': { label: 'Lietuvių', dateFnsLocale: 'lt' },
'hu': { label: 'Magyar', dateFnsLocale: 'hu' },
'nl': { label: 'Nederlands', dateFnsLocale: 'nl' }, 'nl': { label: 'Nederlands', dateFnsLocale: 'nl' },
'no': { label: 'Norsk', dateFnsLocale: 'no' }, 'no': { label: 'Norsk', dateFnsLocale: 'no' },
'pl': { label: 'Polski', dateFnsLocale: 'pl' }, 'pl': { label: 'Polski', dateFnsLocale: 'pl' },
'pt-br': { label: 'Português (Brasil)', dateFnsLocale: 'ptBR' },
'ru': { label: 'Русский', dateFnsLocale: 'ru' }, 'ru': { label: 'Русский', dateFnsLocale: 'ru' },
'sv': { label: 'Svenska', dateFnsLocale: 'sv' }, 'sv': { label: 'Svenska', dateFnsLocale: 'sv' },
'zh-cn': { label: '简体中文 (Simplified Chinese)', dateFnsLocale: 'zhCN' }, 'zh-cn': { label: '简体中文 (Simplified Chinese)', dateFnsLocale: 'zhCN' },
+8 -5
View File
@@ -48,11 +48,7 @@ class ServerSocket extends EventEmitter {
this.socket.on('init', this.onInit.bind(this)) this.socket.on('init', this.onInit.bind(this))
this.socket.on('user_updated', this.onUserUpdated.bind(this)) this.socket.on('user_updated', this.onUserUpdated.bind(this))
this.socket.on('user_item_progress_updated', this.onUserItemProgressUpdated.bind(this)) this.socket.on('user_item_progress_updated', this.onUserItemProgressUpdated.bind(this))
this.socket.on('playlist_added', this.onPlaylistAdded.bind(this))
// Good for testing socket requests
// this.socket.onAny((evt, args) => {
// console.log(`[SOCKET] onAny: ${this.socket.id}: ${evt} ${JSON.stringify(args)}`)
// })
} }
removeListeners() { removeListeners() {
@@ -93,6 +89,13 @@ class ServerSocket extends EventEmitter {
this.$store.commit('user/updateUserMediaProgress', payload.data) this.$store.commit('user/updateUserMediaProgress', payload.data)
this.emit('user_media_progress_updated', payload) this.emit('user_media_progress_updated', payload)
} }
onPlaylistAdded() {
// Currently numUserPlaylists is only used for showing the playlist tab or not. Precise number is not necessary
if (!this.$store.state.libraries.numUserPlaylists) {
this.$store.commit('libraries/setNumUserPlaylists', 1)
}
}
} }
export default ({ app, store }, inject) => { export default ({ app, store }, inject) => {
+160 -158
View File
@@ -1,52 +1,52 @@
{ {
"ButtonAdd": "Přidat", "ButtonAdd": "Přidat",
"ButtonAddNewServer": "Add New Server", "ButtonAddNewServer": "Přidat nový server",
"ButtonAuthors": "Autoři", "ButtonAuthors": "Autoři",
"ButtonBack": "Back", "ButtonBack": "Zpět",
"ButtonCancel": "Zrušit", "ButtonCancel": "Zrušit",
"ButtonCancelTimer": "Cancel Timer", "ButtonCancelTimer": "Zrušit časovač",
"ButtonClearFilter": "Vymazat filtr", "ButtonClearFilter": "Vymazat filtr",
"ButtonCloseFeed": "Zavřít kanál", "ButtonCloseFeed": "Zavřít kanál",
"ButtonCollections": "Kolekce", "ButtonCollections": "Kolekce",
"ButtonConnect": "Connect", "ButtonConnect": "Připojit",
"ButtonConnectToServer": "Connect to Server", "ButtonConnectToServer": "Připojit k serveru",
"ButtonCreate": "Vytvořit", "ButtonCreate": "Vytvořit",
"ButtonCreateBookmark": "Create Bookmark", "ButtonCreateBookmark": "Vytvořit záložku",
"ButtonCreateNewPlaylist": "Create New Playlist", "ButtonCreateNewPlaylist": "Vytvořit nový seznam skladeb",
"ButtonDelete": "Smazat", "ButtonDelete": "Smazat",
"ButtonDeleteLocalEpisode": "Delete local episode", "ButtonDeleteLocalEpisode": "Smazat místní epizodu",
"ButtonDeleteLocalFile": "Delete local file", "ButtonDeleteLocalFile": "Smazat místní soubor",
"ButtonDeleteLocalItem": "Delete local item", "ButtonDeleteLocalItem": "Smazat místní položku",
"ButtonDisableAutoTimer": "Disable Auto Timer", "ButtonDisableAutoTimer": "Zakázat automatický časovač",
"ButtonDisconnect": "Disconnect", "ButtonDisconnect": "Odpojit",
"ButtonHistory": "History", "ButtonHistory": "Historie",
"ButtonHome": "Domů", "ButtonHome": "Domů",
"ButtonIssues": "Problémy", "ButtonIssues": "Problémy",
"ButtonLatest": "Nejnovější", "ButtonLatest": "Nejnovější",
"ButtonLibrary": "Knihovna", "ButtonLibrary": "Knihovna",
"ButtonLocalMedia": "Local Media", "ButtonLocalMedia": "Místní média",
"ButtonManageLocalFiles": "Manage Local Files", "ButtonManageLocalFiles": "Spravovat místní soubory",
"ButtonNewFolder": "New Folder", "ButtonNewFolder": "Nová složka",
"ButtonNextEpisode": "Next Episode", "ButtonNextEpisode": "Další epizoda",
"ButtonOpenFeed": "Otevřít kanál", "ButtonOpenFeed": "Otevřít kanál",
"ButtonOverride": "Override", "ButtonOverride": "Přepsat",
"ButtonPause": "Pause", "ButtonPause": "Pozastavit",
"ButtonPlay": "Přehrát", "ButtonPlay": "Přehrát",
"ButtonPlaying": "Hraje", "ButtonPlaying": "Přehrává se",
"ButtonPlaylists": "Seznamy skladeb", "ButtonPlaylists": "Seznamy skladeb",
"ButtonRead": "Číst", "ButtonRead": "Číst",
"ButtonRemove": "Odstranit", "ButtonRemove": "Odstranit",
"ButtonRemoveFromServer": "Remove from Server", "ButtonRemoveFromServer": "Odstranit ze serveru",
"ButtonSave": "Uložit", "ButtonSave": "Uložit",
"ButtonSaveOrder": "Save Order", "ButtonSaveOrder": "Uložit pořadí",
"ButtonSearch": "Hledat", "ButtonSearch": "Hledat",
"ButtonSendEbookToDevice": "Send Ebook to Device", "ButtonSendEbookToDevice": "Odeslat e-knihu na zařízení",
"ButtonSeries": "Série", "ButtonSeries": "Série",
"ButtonSetTimer": "Set Timer", "ButtonSetTimer": "Nastavit časovač",
"ButtonStream": "Stream", "ButtonStream": "Streamovat",
"ButtonSubmit": "Odeslat", "ButtonSubmit": "Odeslat",
"ButtonSwitchServerUser": "Switch Server/User", "ButtonSwitchServerUser": "Přepnout server/uživatele",
"ButtonUserStats": "User Stats", "ButtonUserStats": "Statistiky uživatele",
"ButtonYes": "Ano", "ButtonYes": "Ano",
"HeaderAccount": "Účet", "HeaderAccount": "Účet",
"HeaderAdvanced": "Pokročilé", "HeaderAdvanced": "Pokročilé",
@@ -54,132 +54,133 @@
"HeaderChapters": "Kapitoly", "HeaderChapters": "Kapitoly",
"HeaderCollection": "Kolekce", "HeaderCollection": "Kolekce",
"HeaderCollectionItems": "Položky kolekce", "HeaderCollectionItems": "Položky kolekce",
"HeaderConnectionStatus": "Connection Status", "HeaderConnectionStatus": "Stav připojení",
"HeaderDetails": "Podrobnosti", "HeaderDetails": "Podrobnosti",
"HeaderDownloads": "Downloads", "HeaderDownloads": "Stahování",
"HeaderEbookFiles": "Soubory elektronických knih", "HeaderEbookFiles": "Soubory e-knih",
"HeaderEpisodes": "Epizody", "HeaderEpisodes": "Epizody",
"HeaderEreaderSettings": "Nastavení čtečky elektronických knih", "HeaderEreaderSettings": "Nastavení čtečky e-knih",
"HeaderLatestEpisodes": "Poslední epizody", "HeaderLatestEpisodes": "Nejnovější epizody",
"HeaderLibraries": "Knihovny", "HeaderLibraries": "Knihovny",
"HeaderLocalFolders": "Local Folders", "HeaderLocalFolders": "Místní složky",
"HeaderLocalLibraryItems": "Local Library Items", "HeaderLocalLibraryItems": "Místní položky knihovny",
"HeaderNewPlaylist": "New Playlist", "HeaderNewPlaylist": "Nový seznam skladeb",
"HeaderOpenRSSFeed": "Otevřít RSS kanál", "HeaderOpenRSSFeed": "Otevřít RSS kanál",
"HeaderPlaybackSettings": "Playback Settings", "HeaderPlaybackSettings": "Nastavení přehrávání",
"HeaderPlaylist": "Seznam skladeb", "HeaderPlaylist": "Seznam skladeb",
"HeaderPlaylistItems": "Položky seznamu přehrávání", "HeaderPlaylistItems": "Položky seznamu přehrávání",
"HeaderRSSFeed": "RSS Feed", "HeaderRSSFeed": "RSS kanál",
"HeaderRSSFeedGeneral": "Podrobnosti o RSS", "HeaderRSSFeedGeneral": "Detaily RSS",
"HeaderRSSFeedIsOpen": "Informační kanál RSS je otevřený", "HeaderRSSFeedIsOpen": "Kanál RSS je otevřen",
"HeaderSelectDownloadLocation": "Select Download Location", "HeaderSelectDownloadLocation": "Vyberte umístění pro stažení",
"HeaderSettings": "Nastavení", "HeaderSettings": "Nastavení",
"HeaderSleepTimer": "Časovač vypnutí", "HeaderSleepTimer": "Časovač spánku",
"HeaderSleepTimerSettings": "Sleep Timer Settings", "HeaderSleepTimerSettings": "Nastavení časovače spánku",
"HeaderStatsMinutesListeningChart": "Počet minut poslechu (posledních 7 dní)", "HeaderStatsMinutesListeningChart": "Minuty poslechu (posledních 7 dní)",
"HeaderStatsRecentSessions": "Poslední relace", "HeaderStatsRecentSessions": "Poslední sezení",
"HeaderTableOfContents": "Obsah", "HeaderTableOfContents": "Obsah",
"HeaderUserInterfaceSettings": "User Interface Settings", "HeaderUserInterfaceSettings": "Nastavení uživatelského rozhraní",
"HeaderYourStats": "Vaše statistiky", "HeaderYourStats": "Vaše statistiky",
"LabelAdded": "Přidáno", "LabelAdded": "Přidáno",
"LabelAddedAt": "Přidáno v", "LabelAddedAt": "Přidáno v",
"LabelAddToPlaylist": "Přidat do seznamu přehrávání", "LabelAddToPlaylist": "Přidat do seznamu skladeb",
"LabelAll": "Vše", "LabelAll": "Vše",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Autor", "LabelAuthor": "Autor",
"LabelAuthorFirstLast": "Autor (jméno a příjmení)", "LabelAuthorFirstLast": "Autor (jméno a příjmení)",
"LabelAuthorLastFirst": "Autor (příjmení a jméno)", "LabelAuthorLastFirst": "Autor (příjmení a jméno)",
"LabelAuthors": "Autoři", "LabelAuthors": "Autoři",
"LabelAutoDownloadEpisodes": "Automaticky stahovat epizody", "LabelAutoDownloadEpisodes": "Automaticky stahovat epizody",
"LabelAutoRewindTime": "Auto rewind time", "LabelAutoRewindTime": "Přetočit zpět o",
"LabelAutoSleepTimer": "Auto sleep timer", "LabelAutoSleepTimer": "Automatický časovač spánku",
"LabelAutoSleepTimerAutoRewind": "Auto sleep timer auto rewind", "LabelAutoSleepTimerAutoRewind": "Přetočit zpět po uspání",
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.", "LabelAutoSleepTimerAutoRewindHelp": "Když dojde k uspání automatickým časovačem spánku, pozice přehrávání je posunuta zpět o vybraný čas.",
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.", "LabelAutoSleepTimerHelp": "hem přehrávání média v časovém rozmezí \"Od\" a \"Do\" se automaticky spustí časovač spánku.",
"LabelBooks": "Knihy", "LabelBooks": "Knihy",
"LabelChapters": "Kapitoly", "LabelChapters": "Kapitoly",
"LabelChapterTrack": "Chapter Track", "LabelChapterTrack": "Stopa kapitoly",
"LabelClosePlayer": "Zavřít přehrávač", "LabelClosePlayer": "Zavřít přehrávač",
"LabelCollapseSeries": "Sbalit sérii", "LabelCollapseSeries": "Sbalit sérii",
"LabelComplete": "Dokončeno", "LabelComplete": "Dokončeno",
"LabelContinueBooks": "Continue Books", "LabelContinueBooks": "Pokračovat v knihách",
"LabelContinueEpisodes": "Continue Episodes", "LabelContinueEpisodes": "Pokračovat v epizodách",
"LabelContinueListening": "Continue Listening", "LabelContinueListening": "Pokračovat v poslechu",
"LabelContinueReading": "Continue Reading", "LabelContinueReading": "Pokračovat ve čtení",
"LabelContinueSeries": "Continue Series", "LabelContinueSeries": "Pokračovat v sériích",
"LabelCustomTime": "Custom time", "LabelCustomTime": "Vlastní čas",
"LabelDescription": "Popis", "LabelDescription": "Popis",
"LabelDisableAudioFadeOut": "Disable audio fade out", "LabelDisableAudioFadeOut": "Vypnout postupné snižování zvuku",
"LabelDisableAudioFadeOutHelp": "Audio volume will start decreasing when there is less than 1 minute remaining on the sleep timer. Enable this setting to not fade out.", "LabelDisableAudioFadeOutHelp": "Hlasitost zvuku začne klesat, pokud zbývá méně než 1 minuta do vypršení časovače spánku. Tuto možnost povolte, pokud nechcete postupné snižování hlasitosti.",
"LabelDisableAutoRewind": "Disable auto rewind", "LabelDisableAutoRewind": "Zakázat automatické přetočení",
"LabelDisableShakeToReset": "Disable shake to reset", "LabelDisableShakeToReset": "Zakázat resetování otřesem",
"LabelDisableShakeToResetHelp": "Shaking your device while the timer is running OR within 2 minutes of the timer expiring will reset the sleep timer. Enable this setting to disable shake to reset.", "LabelDisableShakeToResetHelp": "Když je časovač spánku spuštěn nebo zbýva 2 minuty do jeho vypršení, zatřesení zařízením se resetuje časovač spánku. Povolte toto nastavení, pokud chcete resetování otřesem zakázat.",
"LabelDisableVibrateOnReset": "Disable vibrate on reset", "LabelDisableVibrateOnReset": "Zakázat vibraci při resetování",
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.", "LabelDisableVibrateOnResetHelp": "Když je časovač spánku resetován, zařízení zavibruje. Tuto možnost povolte, pokud nechcete, aby zařízení vibrace provádělo při resetování časovače spánku.",
"LabelDiscover": "Discover", "LabelDiscover": "Objevit",
"LabelDownload": "Stáhnout", "LabelDownload": "Stáhnout",
"LabelDownloaded": "Downloaded", "LabelDownloaded": "Staženo",
"LabelDuration": "Doba trvání", "LabelDuration": "Trvání",
"LabelEbook": "Elektronická kniha", "LabelEbook": "E-kniha",
"LabelEbooks": "Ebooks", "LabelEbooks": "E-knihy",
"LabelEnable": "Povolit", "LabelEnable": "Povolit",
"LabelEnableMp3IndexSeeking": "Enable mp3 index seeking", "LabelEnableMp3IndexSeeking": "Povolit indexové vyhledávání mp3",
"LabelEnableMp3IndexSeekingHelp": "This setting should only be enabled if you have mp3 files that are not seeking correctly. Inaccurate seeking is most likely due to Variable birate (VBR) MP3 files. This setting will force index seeking, in which a time-to-byte mapping is built as the file is read. In some cases with large MP3 files there will be a delay when seeking towards the end of the file.", "LabelEnableMp3IndexSeekingHelp": "Toto nastavení by mělo být povoleno pouze v případě, že soubory MP3 nejsou správně vyhledávány. Nepřesné vyhledávání je s největší pravděpodobností způsobeno soubory MP3 s proměnlivým datovým tokem (VBR). Toto nastavení vynutí indexové vyhledávání, při kterém se při čtení souboru vytváří mapování času na bajty. V některých případech u velkých souborů MP3 dochází ke zpoždění při vyhledávání ke konci souboru.",
"LabelEnd": "Konec", "LabelEnd": "Konec",
"LabelEndOfChapter": "End of Chapter", "LabelEndOfChapter": "Konec kapitoly",
"LabelEndTime": "End time", "LabelEndTime": "Do",
"LabelEpisode": "Epizoda", "LabelEpisode": "Epizoda",
"LabelFeedURL": "URL zdroje", "LabelFeedURL": "URL kanálu",
"LabelFile": "Soubor", "LabelFile": "Soubor",
"LabelFileBirthtime": "Čas vzniku souboru", "LabelFileBirthtime": "Čas vytvoření souboru",
"LabelFileModified": "Soubor změněn", "LabelFileModified": "Soubor upraven",
"LabelFilename": "Název souboru", "LabelFilename": "Název souboru",
"LabelFinished": "Dokončeno", "LabelFinished": "Dokončeno",
"LabelFolder": "Složka", "LabelFolder": "Složka",
"LabelFontScale": "Měřítko písma", "LabelFontScale": "Měřítko písma",
"LabelGenre": "Žánr", "LabelGenre": "Žánr",
"LabelGenres": "Žánry", "LabelGenres": "Žánry",
"LabelHapticFeedback": "Haptic feedback", "LabelHapticFeedback": "Haptická odezva",
"LabelHasEbook": "Has ebook", "LabelHasEbook": "Má e-knihu",
"LabelHasSupplementaryEbook": "Has supplementary ebook", "LabelHasSupplementaryEbook": "Má doplňkovou e-knihu",
"LabelHeavy": "Heavy", "LabelHeavy": "Těžké",
"LabelHigh": "High", "LabelHigh": "Vysoké",
"LabelHost": "Hostitel", "LabelHost": "Hostitel",
"LabelIncomplete": "Neúplné", "LabelIncomplete": "Neúplné",
"LabelInProgress": "Probíhá", "LabelInProgress": "Probíhá",
"LabelInternalAppStorage": "Internal App Storage", "LabelInternalAppStorage": "Interní úložiště aplikace",
"LabelJumpBackwardsTime": "Jump backwards time", "LabelJumpBackwardsTime": "Délka skoku zpět v čase",
"LabelJumpForwardsTime": "Jump forwards time", "LabelJumpForwardsTime": "Délka skoku vpřed v čase",
"LabelLanguage": "Jazyk", "LabelLanguage": "Jazyk",
"LabelLayout": "Layout", "LabelLayout": "Rozvržení",
"LabelLayoutAuto": "Auto", "LabelLayoutAuto": "Automatické",
"LabelLayoutSinglePage": "Single page", "LabelLayoutSinglePage": "Jedna stránka",
"LabelLight": "Light", "LabelLight": "Světlé",
"LabelLineSpacing": "Řádkování", "LabelLineSpacing": "Řádkování",
"LabelListenAgain": "Listen Again", "LabelListenAgain": "Poslechnout znovu",
"LabelLocalBooks": "Local Books", "LabelLocalBooks": "Místní knihy",
"LabelLocalPodcasts": "Local Podcasts", "LabelLocalPodcasts": "Místní podcasty",
"LabelLockOrientation": "Lock orientation", "LabelLockOrientation": "Zamknout orientaci",
"LabelLockPlayer": "Lock Player", "LabelLockPlayer": "Zamknout přehrávač",
"LabelLow": "Low", "LabelLow": "Nízké",
"LabelMediaType": "Typ média", "LabelMediaType": "Typ média",
"LabelMedium": "Medium", "LabelMedium": "Střední",
"LabelMore": "Více", "LabelMore": "Více",
"LabelMoreInfo": "Více informací", "LabelMoreInfo": "Více informací",
"LabelName": "Jméno", "LabelName": "Jméno",
"LabelNarrator": "Interpret", "LabelNarrator": "Vypravěč",
"LabelNarrators": "Interpreti", "LabelNarrators": "Vypravěči",
"LabelNewestAuthors": "Newest Authors", "LabelNewestAuthors": "Nejnovější autoři",
"LabelNewestEpisodes": "Newest Episodes", "LabelNewestEpisodes": "Nejnovější epizody",
"LabelNo": "No", "LabelNo": "Ne",
"LabelNotFinished": "Nedokončeno", "LabelNotFinished": "Nedokončeno",
"LabelNotStarted": "Nezahájeno", "LabelNotStarted": "Nezahájeno",
"LabelOff": "Off", "LabelOff": "Vypnout",
"LabelPassword": "Heslo", "LabelPassword": "Heslo",
"LabelPath": "Cesta", "LabelPath": "Cesta",
"LabelPlaybackDirect": "Direct", "LabelPlaybackDirect": "Přímé",
"LabelPlaybackLocal": "Local", "LabelPlaybackLocal": "Místní",
"LabelPlaybackSpeed": "Playback Speed", "LabelPlaybackSpeed": "Rychlost přehrávání",
"LabelPlaybackTranscode": "Transcode", "LabelPlaybackTranscode": "Překódovává se",
"LabelPodcast": "Podcast", "LabelPodcast": "Podcast",
"LabelPodcasts": "Podcasty", "LabelPodcasts": "Podcasty",
"LabelPreventIndexing": "Zabránit indexování vašeho kanálu v adresářích podcastů iTunes a Google", "LabelPreventIndexing": "Zabránit indexování vašeho kanálu v adresářích podcastů iTunes a Google",
@@ -187,96 +188,97 @@
"LabelPubDate": "Datum vydání", "LabelPubDate": "Datum vydání",
"LabelPublishYear": "Rok vydání", "LabelPublishYear": "Rok vydání",
"LabelRead": "Číst", "LabelRead": "Číst",
"LabelReadAgain": "Read Again", "LabelReadAgain": "Číst znovu",
"LabelRecentlyAdded": "Recently Added", "LabelRecentlyAdded": "Nedávno přidáno",
"LabelRecentSeries": "Recent Series", "LabelRecentSeries": "Nedávné série",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Vlastní e-mail vlastníka", "LabelRSSFeedCustomOwnerEmail": "Vlastní e-mail vlastníka",
"LabelRSSFeedCustomOwnerName": "Vlastní jméno vlastníka", "LabelRSSFeedCustomOwnerName": "Vlastní jméno vlastníka",
"LabelRSSFeedPreventIndexing": "Zabránit indexování", "LabelRSSFeedPreventIndexing": "Zabránit indexování",
"LabelRSSFeedSlug": "RSS kanál Slug", "LabelRSSFeedSlug": "Klíčové slovo kanálu RSS",
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed", "LabelScaleElapsedTimeBySpeed": "Škálovat uplynulý čas podle rychlosti",
"LabelSeason": "Sezóna", "LabelSeason": "Sezóna",
"LabelSelectADevice": "Select a device", "LabelSelectADevice": "Vyberte zařízení",
"LabelSeries": "Série", "LabelSeries": "Série",
"LabelServerAddress": "Server address", "LabelServerAddress": "Adresa serveru",
"LabelSetEbookAsPrimary": "Nastavit jako primární", "LabelSetEbookAsPrimary": "Nastavit jako primární",
"LabelSetEbookAsSupplementary": "Nastavit jako doplňkové", "LabelSetEbookAsSupplementary": "Nastavit jako doplňkový",
"LabelShakeSensitivity": "Shake sensitivity", "LabelShakeSensitivity": "Citlivost na otřes",
"LabelShowAll": "Zobrazit vše", "LabelShowAll": "Zobrazit vše",
"LabelSize": "Velikost", "LabelSize": "Velikost",
"LabelSleepTimer": "Časovač vypnutí", "LabelSleepTimer": "Spánek po",
"LabelStart": "Spustit", "LabelStart": "Začít",
"LabelStartTime": "Čas Spuštění", "LabelStartTime": "Od",
"LabelStatsBestDay": "Nejlepší den", "LabelStatsBestDay": "Nejlepší den",
"LabelStatsDailyAverage": "Denní průměr", "LabelStatsDailyAverage": "Denní průměr",
"LabelStatsDays": "Dny", "LabelStatsDays": "Dny",
"LabelStatsDaysListened": "Dny poslechu", "LabelStatsDaysListened": "Dny poslechu",
"LabelStatsInARow": "v řadě", "LabelStatsInARow": "v řadě",
"LabelStatsItemsFinished": "Dokončené Položky", "LabelStatsItemsFinished": "Dokončené položky",
"LabelStatsMinutes": "minut", "LabelStatsMinutes": "minut",
"LabelStatsMinutesListening": "Minuty poslechu", "LabelStatsMinutesListening": "Minuty poslechu",
"LabelStatsWeekListening": "Týdenní poslech", "LabelStatsWeekListening": "Za týden",
"LabelTag": "Značka", "LabelTag": "Štítek",
"LabelTags": "Značky", "LabelTags": "Štítky",
"LabelTheme": "Téma", "LabelTheme": "Téma",
"LabelThemeDark": "Tmavé", "LabelThemeDark": "Tmavé",
"LabelThemeLight": "Světlé", "LabelThemeLight": "Světlé",
"LabelTimeRemaining": "{0} zbývá", "LabelTimeRemaining": "{0} zbývá",
"LabelTitle": "Název", "LabelTitle": "Název",
"LabelTotalTrack": "Total Track", "LabelTotalTrack": "Celková stopa",
"LabelTracks": "Stopy", "LabelTracks": "Stopy",
"LabelType": "Typ", "LabelType": "Typ",
"LabelUnlockPlayer": "Unlock Player", "LabelUnlockPlayer": "Odemknout přehrávač",
"LabelUseBookshelfView": "Use bookshelf view", "LabelUseBookshelfView": "Použít vzhled knihovny",
"LabelUser": "Uživatel", "LabelUser": "Uživatel",
"LabelUsername": "Uživatelské jméno", "LabelUsername": "Uživatelské jméno",
"LabelVeryHigh": "Very High", "LabelVeryHigh": "Velmi vysoké",
"LabelVeryLow": "Very Low", "LabelVeryLow": "Velmi nízké",
"LabelYourBookmarks": "Vaše záložky", "LabelYourBookmarks": "Vaše záložky",
"LabelYourProgress": "Váš pokrok", "LabelYourProgress": "Váš pokrok",
"MessageAndroid10Downloads": "Android 10 and below will use internal app storage for downloads.", "MessageAndroid10Downloads": "Android 10 a starší budou používat interní úložiště aplikace pro stahování.",
"MessageAttemptingServerConnection": "Attempting server connection...", "MessageAttemptingServerConnection": "Pokouším se o připojit k serveru...",
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server not connected", "MessageAudiobookshelfServerNotConnected": "Server Audiobookshelf není připojen",
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> This app is designed to work with an Audiobookshelf server that you or someone you know is hosting. This app does not provide any content.", "MessageAudiobookshelfServerRequired": "<strong>Důležité!</strong> Tato aplikace je navržena, aby pracovala se serverem Audiobookshelf, který hostuje buď vy, nebo někdo, koho znáte. Tato aplikace neposkytuje žádný obsah.",
"MessageBookshelfEmpty": "Bookshelf empty", "MessageBookshelfEmpty": "Knihovna je prázdná",
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.", "MessageConfirmDeleteLocalEpisode": "Odebrat místní epizodu „{0}“ ze zařízení? Soubor na serveru zůstane nezměněný.",
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.", "MessageConfirmDeleteLocalFiles": "Odebrat místní soubory této položky ze zařízení? Soubory na serveru a váš pokrok nebudou ovlivněny.",
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?", "MessageConfirmDiscardProgress": "Opravdu chcete zahodit svůj pokrok?",
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?", "MessageConfirmMarkAsFinished": "Opravdu chcete tuto položku označit jako dokončenou?",
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?", "MessageConfirmRemoveBookmark": "Opravdu chcete odebrat záložku?",
"MessageDiscardProgress": "Discard Progress", "MessageDiscardProgress": "Zahodit pokrok",
"MessageDownloadCompleteProcessing": "Download complete. Processing...", "MessageDownloadCompleteProcessing": "Stahování dokončeno. Zpracovává se...",
"MessageDownloading": "Downloading...", "MessageDownloading": "Stahuje se...",
"MessageDownloadingEpisode": "Stahuji epizodu", "MessageDownloadingEpisode": "Stahuji epizodu",
"MessageEpisodesQueuedForDownload": "{0} epizody zařazené do fronty ke stažení", "MessageEpisodesQueuedForDownload": "{0} epizod ve frontě ke stažení",
"MessageFeedURLWillBe": "URL zdroje bude {0}", "MessageFeedURLWillBe": "URL zdroje bude {0}",
"MessageFetching": "Stahování...", "MessageFetching": "Získává se...",
"MessageFollowTheProjectOnGithub": "Follow the project on Github", "MessageFollowTheProjectOnGithub": "Sledujte projekt na GitHubu",
"MessageItemDownloadCompleteFailedToCreate": "Item download complete but failed to create library item", "MessageItemDownloadCompleteFailedToCreate": "Stahování položky bylo dokončeno, ale nepodařilo se vytvořit položku v knihovně",
"MessageLoading": "Načítá se...", "MessageLoading": "Načítá se...",
"MessageLoadingServerData": "Loading server data...", "MessageLoadingServerData": "Načítání dat ze serveru...",
"MessageMarkAsFinished": "Označit jako dokončené", "MessageMarkAsFinished": "Označit jako dokončené",
"MessageMediaLinkedToADifferentServer": "Media is linked to an Audiobookshelf server on a different address ({0}). Progress will be synced when connected to this server address.", "MessageMediaLinkedToADifferentServer": "Média jsou propojena se serverem Audiobookshelf na jiné adrese ({0}). Pokrok bude synchronizován, když budete připojeni k této adrese serveru.",
"MessageMediaLinkedToADifferentUser": "Media is linked to this server but was downloaded by a different user. Progress will only be synced to the user that downloaded it.", "MessageMediaLinkedToADifferentUser": "Média jsou propojena se serverem, ale byla stažena jiným uživatelem. Pokrok bude synchronizován pouze s uživatelem, který je stáhl.",
"MessageMediaLinkedToServer": "Linked to server {0}", "MessageMediaLinkedToServer": "Propojeno se serverem {0}",
"MessageMediaLinkedToThisServer": "Downloaded media is linked to this server", "MessageMediaLinkedToThisServer": "Stažená média jsou propojena s tímto serverem",
"MessageMediaNotLinkedToServer": "Media is not linked to an Audiobookshelf server. No progress will be synced.", "MessageMediaNotLinkedToServer": "Média nejsou propojena se serverem Audiobookshelf. Pokrok nebude synchronizován.",
"MessageNoBookmarks": "Žádné záložky", "MessageNoBookmarks": "Žádné záložky",
"MessageNoChapters": "Žádné kapitoly", "MessageNoChapters": "Žádné kapitoly",
"MessageNoItems": "Žádné položky", "MessageNoItems": "Žádné položky",
"MessageNoItemsFound": "Nebyly nalezeny žádné položky", "MessageNoItemsFound": "Nebyly nalezeny žádné položky",
"MessageNoListeningSessions": "Žádné poslechové relace", "MessageNoListeningSessions": "Žádné poslechové relace",
"MessageNoMediaFolders": "No Media Folders", "MessageNoMediaFolders": "Žádné složky médií",
"MessageNoNetworkConnection": "No network connection", "MessageNoNetworkConnection": "Žádné připojení k síti",
"MessageNoPodcastsFound": "Nebyly nalezeny žádné podcasty", "MessageNoPodcastsFound": "Nebyly nalezeny žádné podcasty",
"MessageNoUpdatesWereNecessary": "Nebyly nutné žádné aktualizace", "MessageNoUpdatesWereNecessary": "Nebyly nutné žádné aktualizace",
"MessageNoUserPlaylists": "Nemáte žádné seznamy skladeb", "MessageNoUserPlaylists": "Nemáte žádné seznamy skladeb",
"MessageReportBugsAndContribute": "Hlásit chyby, žádat o funkce a přispívat", "MessageReportBugsAndContribute": "Nahlašte chyby, vyžádejte si funkce a přispěte na",
"MessageSocketConnectedOverMeteredCellular": "Socket connected over metered cellular", "MessageSocketConnectedOverMeteredCellular": "Socket připojen přes měřenou mobilní síť",
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered wifi", "MessageSocketConnectedOverMeteredWifi": "Socket připojen přes měřenou wifi",
"MessageSocketConnectedOverUnmeteredCellular": "Socket connected over unmetered cellular", "MessageSocketConnectedOverUnmeteredCellular": "Socket připojen přes neměřenou mobilní síť",
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered wifi", "MessageSocketConnectedOverUnmeteredWifi": "Socket připojen přes neměřenou wifi",
"MessageSocketNotConnected": "Socket not connected", "MessageSocketNotConnected": "Socket není připojen",
"NoteRSSFeedPodcastAppsHttps": "Upozornění: Většina aplikací pro podcasty bude vyžadovat, aby adresa URL kanálu RSS používala protokol HTTPS", "NoteRSSFeedPodcastAppsHttps": "Upozornění: Většina aplikací pro podcasty bude vyžadovat, aby adresa URL kanálu RSS používala protokol HTTPS",
"NoteRSSFeedPodcastAppsPubDate": "Upozornění: 1 nebo více epizod nemá datum vydání. Některé podcastové aplikace to vyžadují.", "NoteRSSFeedPodcastAppsPubDate": "Upozornění: 1 nebo více epizod nemá datum vydání. Některé podcastové aplikace to vyžadují.",
"ToastBookmarkCreateFailed": "Vytvoření záložky se nezdařilo", "ToastBookmarkCreateFailed": "Vytvoření záložky se nezdařilo",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Tilføjet Kl.", "LabelAddedAt": "Tilføjet Kl.",
"LabelAddToPlaylist": "Tilføj til Afspilningsliste", "LabelAddToPlaylist": "Tilføj til Afspilningsliste",
"LabelAll": "Alle", "LabelAll": "Alle",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Forfatter", "LabelAuthor": "Forfatter",
"LabelAuthorFirstLast": "Forfatter (Fornavn Efternavn)", "LabelAuthorFirstLast": "Forfatter (Fornavn Efternavn)",
"LabelAuthorLastFirst": "Forfatter (Efternavn, Fornavn)", "LabelAuthorLastFirst": "Forfatter (Efternavn, Fornavn)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Read Again", "LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added", "LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series", "LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Brugerdefineret ejerens e-mail", "LabelRSSFeedCustomOwnerEmail": "Brugerdefineret ejerens e-mail",
"LabelRSSFeedCustomOwnerName": "Brugerdefineret ejerens navn", "LabelRSSFeedCustomOwnerName": "Brugerdefineret ejerens navn",
"LabelRSSFeedPreventIndexing": "Forhindrer indeksering", "LabelRSSFeedPreventIndexing": "Forhindrer indeksering",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Hinzugefügt am", "LabelAddedAt": "Hinzugefügt am",
"LabelAddToPlaylist": "Zur Wiedergabeliste hinzufügen", "LabelAddToPlaylist": "Zur Wiedergabeliste hinzufügen",
"LabelAll": "Alle", "LabelAll": "Alle",
"LabelAllowSeekingOnMediaControls": "Erlaube Vor- und Zurückspulen auf dem Medienkontrollelement bei den Benachrichtigungen",
"LabelAuthor": "Autor", "LabelAuthor": "Autor",
"LabelAuthorFirstLast": "Autor (Vorname Nachname)", "LabelAuthorFirstLast": "Autor (Vorname Nachname)",
"LabelAuthorLastFirst": "Autor (Nachname, Vorname)", "LabelAuthorLastFirst": "Autor (Nachname, Vorname)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Erneut lesen", "LabelReadAgain": "Erneut lesen",
"LabelRecentlyAdded": "Kürzlich hinzugefügt", "LabelRecentlyAdded": "Kürzlich hinzugefügt",
"LabelRecentSeries": "Aktuelle Serien", "LabelRecentSeries": "Aktuelle Serien",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Benutzerdefinierte Eigentümer-E-Mail", "LabelRSSFeedCustomOwnerEmail": "Benutzerdefinierte Eigentümer-E-Mail",
"LabelRSSFeedCustomOwnerName": "Benutzerdefinierter Name des Eigentümers", "LabelRSSFeedCustomOwnerName": "Benutzerdefinierter Name des Eigentümers",
"LabelRSSFeedPreventIndexing": "Indizierung verhindern", "LabelRSSFeedPreventIndexing": "Indizierung verhindern",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Added At", "LabelAddedAt": "Added At",
"LabelAddToPlaylist": "Add to Playlist", "LabelAddToPlaylist": "Add to Playlist",
"LabelAll": "All", "LabelAll": "All",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Author", "LabelAuthor": "Author",
"LabelAuthorFirstLast": "Author (First Last)", "LabelAuthorFirstLast": "Author (First Last)",
"LabelAuthorLastFirst": "Author (Last, First)", "LabelAuthorLastFirst": "Author (Last, First)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Read Again", "LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added", "LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series", "LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email", "LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
"LabelRSSFeedCustomOwnerName": "Custom owner Name", "LabelRSSFeedCustomOwnerName": "Custom owner Name",
"LabelRSSFeedPreventIndexing": "Prevent Indexing", "LabelRSSFeedPreventIndexing": "Prevent Indexing",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Añadido", "LabelAddedAt": "Añadido",
"LabelAddToPlaylist": "Añadido a la Lista de Reproducción", "LabelAddToPlaylist": "Añadido a la Lista de Reproducción",
"LabelAll": "Todos", "LabelAll": "Todos",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Autor", "LabelAuthor": "Autor",
"LabelAuthorFirstLast": "Autor (Nombre Apellido)", "LabelAuthorFirstLast": "Autor (Nombre Apellido)",
"LabelAuthorLastFirst": "Autor (Apellido, Nombre)", "LabelAuthorLastFirst": "Autor (Apellido, Nombre)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Read Again", "LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added", "LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series", "LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Email de dueño personalizado", "LabelRSSFeedCustomOwnerEmail": "Email de dueño personalizado",
"LabelRSSFeedCustomOwnerName": "Nombre de dueño personalizado", "LabelRSSFeedCustomOwnerName": "Nombre de dueño personalizado",
"LabelRSSFeedPreventIndexing": "Prevenir Indexado", "LabelRSSFeedPreventIndexing": "Prevenir Indexado",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Date dajout", "LabelAddedAt": "Date dajout",
"LabelAddToPlaylist": "Ajouter à la liste de lecture", "LabelAddToPlaylist": "Ajouter à la liste de lecture",
"LabelAll": "Tout", "LabelAll": "Tout",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Auteur", "LabelAuthor": "Auteur",
"LabelAuthorFirstLast": "Auteur (Prénom Nom)", "LabelAuthorFirstLast": "Auteur (Prénom Nom)",
"LabelAuthorLastFirst": "Auteur (Nom, Prénom)", "LabelAuthorLastFirst": "Auteur (Nom, Prénom)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Read Again", "LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added", "LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series", "LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Courriel du propriétaire personnalisé", "LabelRSSFeedCustomOwnerEmail": "Courriel du propriétaire personnalisé",
"LabelRSSFeedCustomOwnerName": "Nom propriétaire personnalisé", "LabelRSSFeedCustomOwnerName": "Nom propriétaire personnalisé",
"LabelRSSFeedPreventIndexing": "Empêcher lindexation", "LabelRSSFeedPreventIndexing": "Empêcher lindexation",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Added At", "LabelAddedAt": "Added At",
"LabelAddToPlaylist": "Add to Playlist", "LabelAddToPlaylist": "Add to Playlist",
"LabelAll": "All", "LabelAll": "All",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Author", "LabelAuthor": "Author",
"LabelAuthorFirstLast": "Author (First Last)", "LabelAuthorFirstLast": "Author (First Last)",
"LabelAuthorLastFirst": "Author (Last, First)", "LabelAuthorLastFirst": "Author (Last, First)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Read Again", "LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added", "LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series", "LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email", "LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
"LabelRSSFeedCustomOwnerName": "Custom owner Name", "LabelRSSFeedCustomOwnerName": "Custom owner Name",
"LabelRSSFeedPreventIndexing": "Prevent Indexing", "LabelRSSFeedPreventIndexing": "Prevent Indexing",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Added At", "LabelAddedAt": "Added At",
"LabelAddToPlaylist": "Add to Playlist", "LabelAddToPlaylist": "Add to Playlist",
"LabelAll": "All", "LabelAll": "All",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Author", "LabelAuthor": "Author",
"LabelAuthorFirstLast": "Author (First Last)", "LabelAuthorFirstLast": "Author (First Last)",
"LabelAuthorLastFirst": "Author (Last, First)", "LabelAuthorLastFirst": "Author (Last, First)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Read Again", "LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added", "LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series", "LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email", "LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
"LabelRSSFeedCustomOwnerName": "Custom owner Name", "LabelRSSFeedCustomOwnerName": "Custom owner Name",
"LabelRSSFeedPreventIndexing": "Prevent Indexing", "LabelRSSFeedPreventIndexing": "Prevent Indexing",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Added At", "LabelAddedAt": "Added At",
"LabelAddToPlaylist": "Add to Playlist", "LabelAddToPlaylist": "Add to Playlist",
"LabelAll": "All", "LabelAll": "All",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Autor", "LabelAuthor": "Autor",
"LabelAuthorFirstLast": "Author (First Last)", "LabelAuthorFirstLast": "Author (First Last)",
"LabelAuthorLastFirst": "Author (Last, First)", "LabelAuthorLastFirst": "Author (Last, First)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Read Again", "LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added", "LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series", "LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email", "LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
"LabelRSSFeedCustomOwnerName": "Custom owner Name", "LabelRSSFeedCustomOwnerName": "Custom owner Name",
"LabelRSSFeedPreventIndexing": "Prevent Indexing", "LabelRSSFeedPreventIndexing": "Prevent Indexing",
+294
View File
@@ -0,0 +1,294 @@
{
"ButtonAdd": "Hozzáadás",
"ButtonAddNewServer": "Új szerver hozzáadása",
"ButtonAuthors": "Szerzők",
"ButtonBack": "Vissza",
"ButtonCancel": "Mégse",
"ButtonCancelTimer": "Időzítő megszakítása",
"ButtonClearFilter": "Szűrő törlése",
"ButtonCloseFeed": "Hírcsatorna bezárása",
"ButtonCollections": "Gyűjtemények",
"ButtonConnect": "Csatlakozás",
"ButtonConnectToServer": "Csatlakozás a szerverhez",
"ButtonCreate": "Létrehozás",
"ButtonCreateBookmark": "Könyvjelző létrehozása",
"ButtonCreateNewPlaylist": "Új lejátszási lista készítése",
"ButtonDelete": "Törlés",
"ButtonDeleteLocalEpisode": "Helyi epizód törlése",
"ButtonDeleteLocalFile": "Helyi fájl törlése",
"ButtonDeleteLocalItem": "Helyi elem törlése",
"ButtonDisableAutoTimer": "Automatikus időzítő letiltása",
"ButtonDisconnect": "Kapcsolat bontása",
"ButtonHistory": "Előzmények",
"ButtonHome": "Kezdőlap",
"ButtonIssues": "Problémák",
"ButtonLatest": "Legújabb",
"ButtonLibrary": "Könyvtár",
"ButtonLocalMedia": "Helyi média",
"ButtonManageLocalFiles": "Helyi fájlok kezelése",
"ButtonNewFolder": "Új mappa",
"ButtonNextEpisode": "Következő epizód",
"ButtonOpenFeed": "Hírcsatorna megnyitása",
"ButtonOverride": "Felülírás",
"ButtonPause": "Szünet",
"ButtonPlay": "Lejátszás",
"ButtonPlaying": "Lejátszás folyamatban",
"ButtonPlaylists": "Lejátszási listák",
"ButtonRead": "Olvasás",
"ButtonRemove": "Eltávolítás",
"ButtonRemoveFromServer": "Eltávolítás a szerverről",
"ButtonSave": "Mentés",
"ButtonSaveOrder": "Sorrend mentése",
"ButtonSearch": "Keresés",
"ButtonSendEbookToDevice": "E-könyv küldése eszközre",
"ButtonSeries": "Sorozatok",
"ButtonSetTimer": "Időzítő beállítása",
"ButtonStream": "Streamelés",
"ButtonSubmit": "Beküldés",
"ButtonSwitchServerUser": "Szerver/Felhasználó váltása",
"ButtonUserStats": "Felhasználói statisztikák",
"ButtonYes": "Igen",
"HeaderAccount": "Fiók",
"HeaderAdvanced": "Haladó",
"HeaderAudioTracks": "Audiósávok",
"HeaderChapters": "Fejezetek",
"HeaderCollection": "Gyűjtemény",
"HeaderCollectionItems": "Gyűjtemény elemek",
"HeaderConnectionStatus": "Kapcsolat állapota",
"HeaderDetails": "Részletek",
"HeaderDownloads": "Letöltések",
"HeaderEbookFiles": "E-könyv fájlok",
"HeaderEpisodes": "Epizódok",
"HeaderEreaderSettings": "E-olvasó beállításai",
"HeaderLatestEpisodes": "Legújabb epizódok",
"HeaderLibraries": "Könyvtárak",
"HeaderLocalFolders": "Helyi mappák",
"HeaderLocalLibraryItems": "Helyi könyvtári elemek",
"HeaderNewPlaylist": "Új lejátszási lista",
"HeaderOpenRSSFeed": "RSS hírcsatorna megnyitása",
"HeaderPlaybackSettings": "Lejátszási beállítások",
"HeaderPlaylist": "Lejátszási lista",
"HeaderPlaylistItems": "Lejátszási lista elemek",
"HeaderRSSFeed": "RSS Hírcsatorna",
"HeaderRSSFeedGeneral": "RSS részletek",
"HeaderRSSFeedIsOpen": "RSS hírcsatorna nyitva van",
"HeaderSelectDownloadLocation": "Letöltési hely kiválasztása",
"HeaderSettings": "Beállítások",
"HeaderSleepTimer": "Alvásidőzítő",
"HeaderSleepTimerSettings": "Alvásidőzítő beállításai",
"HeaderStatsMinutesListeningChart": "Hallgatási grafikon percekben (az elmúlt 7 napból)",
"HeaderStatsRecentSessions": "Legutóbbi munkamenetek",
"HeaderTableOfContents": "Tartalomjegyzék",
"HeaderUserInterfaceSettings": "Felhasználói felület beállításai",
"HeaderYourStats": "Saját statisztikák",
"LabelAdded": "Hozzáadva",
"LabelAddedAt": "Hozzáadva ekkor",
"LabelAddToPlaylist": "Hozzáadás a lejátszási listához",
"LabelAll": "Összes",
"LabelAllowSeekingOnMediaControls": "Pozíció keresés engedélyezése a média értesítési vezérlőkön",
"LabelAuthor": "Szerző",
"LabelAuthorFirstLast": "Szerző (Keresztnév Vezetéknév)",
"LabelAuthorLastFirst": "Szerző (Vezetéknév, Keresztnév)",
"LabelAuthors": "Szerző",
"LabelAutoDownloadEpisodes": "Epizódok automatikus letöltése",
"LabelAutoRewindTime": "Automatikus visszatekerési idő",
"LabelAutoSleepTimer": "Automatikus alvásidőzítő",
"LabelAutoSleepTimerAutoRewind": "Automatikus alvásidőzítő automatikus visszatekerése",
"LabelAutoSleepTimerAutoRewindHelp": "Amikor az automatikus alvásidőzítő befejeződik, az elem újrajátszásakor automatikusan visszatekeri a pozíciót.",
"LabelAutoSleepTimerHelp": "Amikor a megadott kezdési és befejezési idők között média lejátszása történik, egy alvásidőzítő automatikusan elindul.",
"LabelBooks": "Könyv",
"LabelChapters": "Fejezetek",
"LabelChapterTrack": "Fejezet sáv",
"LabelClosePlayer": "Lejátszó bezárása",
"LabelCollapseSeries": "Sorozatok összecsukása",
"LabelComplete": "Kész",
"LabelContinueBooks": "Könyvek folytatása",
"LabelContinueEpisodes": "Epizódok folytatása",
"LabelContinueListening": "Hallgatás folytatása",
"LabelContinueReading": "Olvasás folytatása",
"LabelContinueSeries": "Sorozat folytatása",
"LabelCustomTime": "Egyéni idő",
"LabelDescription": "Leírás",
"LabelDisableAudioFadeOut": "Hang fokozatos csendesítés letiltása",
"LabelDisableAudioFadeOutHelp": "Az audio hangerő csökkenése kezdődik, amikor kevesebb, mint 1 perc marad az alvásidőzítőből. Engedélyezze ezt a beállítást, hogy ne csendesedjen el fokozatosan a hang.",
"LabelDisableAutoRewind": "Automatikus visszatekerés letiltása",
"LabelDisableShakeToReset": "Rázás a visszaállításhoz letiltása",
"LabelDisableShakeToResetHelp": "Ha az időzítő futása alatt vagy az időzítő lejárta előtti 2 percben megrázza az eszközt, az alvásidőzítő visszaáll. Engedélyezze ezt a beállítást a rázásra történő visszaállítás letiltásához.",
"LabelDisableVibrateOnReset": "Rezgés kikapcsolása visszaállításkor",
"LabelDisableVibrateOnResetHelp": "Amikor az alvásidőzítő visszaállításra kerül, az eszköz rezegni fog. Engedélyezze ezt a beállítást, hogy ne rezegjen az alvásidőzítő visszaállításakor.",
"LabelDiscover": "Felfedezés",
"LabelDownload": "Letöltés",
"LabelDownloaded": "Letöltve",
"LabelDuration": "Időtartam",
"LabelEbook": "E-könyv",
"LabelEbooks": "E-könyvek",
"LabelEnable": "Engedélyezés",
"LabelEnableMp3IndexSeeking": "Mp3 indexkeresés engedélyezése",
"LabelEnableMp3IndexSeekingHelp": "Ezt a beállítást csak akkor kell engedélyezni, ha vannak mp3 fájljai, amelyek nem megfelelően keresnek. A pontatlan keresés leginkább a változó bitráta (VBR) mp3 fájlok miatt lehetséges. Ez a beállítás indexkeresést fog kényszeríteni, amely során egy idő-bájt leképezés jön létre, ahogy a fájlt olvassák. Nagy mp3 fájlok esetén előfordulhat késedelem a fájl végéhez való kereséskor.",
"LabelEnd": "Vége",
"LabelEndOfChapter": "Fejezet vége",
"LabelEndTime": "Befejezés ideje",
"LabelEpisode": "Epizód",
"LabelFeedURL": "Hírcsatorna URL",
"LabelFile": "Fájl",
"LabelFileBirthtime": "Fájl létrehozásának ideje",
"LabelFileModified": "Fájl módosítva",
"LabelFilename": "Fájlnév",
"LabelFinished": "Befejezve",
"LabelFolder": "Mappa",
"LabelFontScale": "Betűméret skála",
"LabelGenre": "Műfaj",
"LabelGenres": "Műfajok",
"LabelHapticFeedback": "Tapintás visszajelzés",
"LabelHasEbook": "Van e-könyv",
"LabelHasSupplementaryEbook": "Van kiegészítő e-könyv",
"LabelHeavy": "Nehéz",
"LabelHigh": "Magas",
"LabelHost": "Házigazda",
"LabelIncomplete": "Befejezetlen",
"LabelInProgress": "Folyamatban",
"LabelInternalAppStorage": "Belső alkalmazástároló",
"LabelJumpBackwardsTime": "Visszaugrás ideje",
"LabelJumpForwardsTime": "Előreugrás ideje",
"LabelLanguage": "Nyelv",
"LabelLayout": "Elrendezés",
"LabelLayoutAuto": "Automatikus",
"LabelLayoutSinglePage": "Egyoldalas",
"LabelLight": "Könnyű",
"LabelLineSpacing": "Sorköz",
"LabelListenAgain": "Újrahallgatás",
"LabelLocalBooks": "Helyi könyvek",
"LabelLocalPodcasts": "Helyi podcastok",
"LabelLockOrientation": "Tájolás zárolása",
"LabelLockPlayer": "Lejátszó zárolása",
"LabelLow": "Alacsony",
"LabelMediaType": "Média típus",
"LabelMedium": "Közepes",
"LabelMore": "Több",
"LabelMoreInfo": "Több információ",
"LabelName": "Név",
"LabelNarrator": "Előadó",
"LabelNarrators": "Előadók",
"LabelNewestAuthors": "Legújabb szerzők",
"LabelNewestEpisodes": "Legújabb epizódok",
"LabelNo": "Nem",
"LabelNotFinished": "Nem befejezett",
"LabelNotStarted": "Nem kezdődött el",
"LabelOff": "Ki",
"LabelPassword": "Jelszó",
"LabelPath": "Útvonal",
"LabelPlaybackDirect": "Közvetlen",
"LabelPlaybackLocal": "Helyi",
"LabelPlaybackSpeed": "Lejátszási sebesség",
"LabelPlaybackTranscode": "Átkódolás",
"LabelPodcast": "Podcast",
"LabelPodcasts": "Podcastok",
"LabelPreventIndexing": "Megakadályozza a hírcsatornájának indexelését az iTunes és a Google podcast könyvtárakban",
"LabelProgress": "Haladás",
"LabelPubDate": "Közzététel dátuma",
"LabelPublishYear": "Kiadás éve",
"LabelRead": "Olvasás",
"LabelReadAgain": "Újraolvasás",
"LabelRecentlyAdded": "Legutóbb hozzáadva",
"LabelRecentSeries": "Legutóbbi sorozatok",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Egyéni tulajdonos e-mail",
"LabelRSSFeedCustomOwnerName": "Egyéni tulajdonos neve",
"LabelRSSFeedPreventIndexing": "Indexelés megakadályozása",
"LabelRSSFeedSlug": "RSS hírcsatorna rövid cím",
"LabelScaleElapsedTimeBySpeed": "Eltelt idő skálázása sebesség szerint",
"LabelSeason": "Évad",
"LabelSelectADevice": "Eszköz kiválasztása",
"LabelSeries": "Sorozat",
"LabelServerAddress": "Szerver címe",
"LabelSetEbookAsPrimary": "Beállítás elsődlegesként",
"LabelSetEbookAsSupplementary": "Beállítás kiegészítőként",
"LabelShakeSensitivity": "Rázás érzékenység",
"LabelShowAll": "Összes megjelenítése",
"LabelSize": "Méret",
"LabelSleepTimer": "Alvásidőzítő",
"LabelStart": "Kezdés",
"LabelStartTime": "Kezdési idő",
"LabelStatsBestDay": "Legjobb nap",
"LabelStatsDailyAverage": "Napi átlag",
"LabelStatsDays": "Napok",
"LabelStatsDaysListened": "Hallgatott napok",
"LabelStatsInARow": "egymás után",
"LabelStatsItemsFinished": "Befejezett elemek",
"LabelStatsMinutes": "perc",
"LabelStatsMinutesListening": "Hallgatás percekben",
"LabelStatsWeekListening": "Heti hallgatás",
"LabelTag": "Címke",
"LabelTags": "Címkék",
"LabelTheme": "Téma",
"LabelThemeDark": "Sötét",
"LabelThemeLight": "Világos",
"LabelTimeRemaining": "{0} maradt",
"LabelTitle": "Cím",
"LabelTotalTrack": "Összes szám",
"LabelTracks": "Számok",
"LabelType": "Típus",
"LabelUnlockPlayer": "Lejátszó feloldása",
"LabelUseBookshelfView": "Polcnézet használata",
"LabelUser": "Felhasználó",
"LabelUsername": "Felhasználónév",
"LabelVeryHigh": "Nagyon magas",
"LabelVeryLow": "Nagyon alacsony",
"LabelYourBookmarks": "Könyvjelzőid",
"LabelYourProgress": "Haladásod",
"MessageAndroid10Downloads": "Az Android 10 és az alatti verziók belső alkalmazástárolót használnak a letöltésekhez.",
"MessageAttemptingServerConnection": "Szerverkapcsolat kísérlete...",
"MessageAudiobookshelfServerNotConnected": "Az Audiobookshelf szerver nem csatlakozik",
"MessageAudiobookshelfServerRequired": "<strong>Fontos!</strong> Ez az alkalmazás egy Audiobookshelf szervert igényel, amit Ön vagy valaki, akit ismer, üzemeltet. Ez az alkalmazás nem biztosít tartalmat.",
"MessageBookshelfEmpty": "A könyvespolc üres",
"MessageConfirmDeleteLocalEpisode": "\"{0}\" helyi epizód eltávolítása az eszközről? A szerveren lévő fájl nem érintett.",
"MessageConfirmDeleteLocalFiles": "Ezen elem helyi fájljainak eltávolítása az eszközről? A szerveren lévő fájlok és a haladás nem érintettek.",
"MessageConfirmDiscardProgress": "Biztosan alaphelyzetbe akarja állítani a haladást?",
"MessageConfirmMarkAsFinished": "Biztosan befejezettnek jelöli ezt az elemet?",
"MessageConfirmRemoveBookmark": "Biztosan eltávolítja a könyvjelzőt?",
"MessageDiscardProgress": "Haladás elvetése",
"MessageDownloadCompleteProcessing": "Letöltés kész. Feldolgozás...",
"MessageDownloading": "Letöltés...",
"MessageDownloadingEpisode": "Epizód letöltése",
"MessageEpisodesQueuedForDownload": "{0} epizód letöltésre vár",
"MessageFeedURLWillBe": "A hírcsatorna URL-je lesz: {0}",
"MessageFetching": "Lekérdezés...",
"MessageFollowTheProjectOnGithub": "Kövesse a projektet a Githubon",
"MessageItemDownloadCompleteFailedToCreate": "A könyv letöltése befejeződött, de nem sikerült létrehozni a könyvtári elemet",
"MessageLoading": "Betöltés...",
"MessageLoadingServerData": "Szerveradatok betöltése...",
"MessageMarkAsFinished": "Befejezettnek jelölés",
"MessageMediaLinkedToADifferentServer": "A média egy másik címen található Audiobookshelf szerverhez kapcsolódik ({0}). A haladás szinkronizálva lesz, amikor csatlakozik ehhez a szervercímhez.",
"MessageMediaLinkedToADifferentUser": "A média ehhez a szerverhez kapcsolódik, de egy másik felhasználó töltötte le. A haladás csak a letöltést végrehajtó felhasználóhoz lesz szinkronizálva.",
"MessageMediaLinkedToServer": "Szerverhez kapcsolt {0}",
"MessageMediaLinkedToThisServer": "A letöltött média ehhez a szerverhez kapcsolódik",
"MessageMediaNotLinkedToServer": "A média nem kapcsolódik egy Audiobookshelf szerverhez. Nem lesz szinkronizálva a haladás.",
"MessageNoBookmarks": "Nincsenek könyvjelzők",
"MessageNoChapters": "Nincsenek fejezetek",
"MessageNoItems": "Nincsenek elemek",
"MessageNoItemsFound": "Nincs találat",
"MessageNoListeningSessions": "Nincsenek hallgatási munkamenetek",
"MessageNoMediaFolders": "Nincsenek médiamappák",
"MessageNoNetworkConnection": "Nincs hálózati kapcsolat",
"MessageNoPodcastsFound": "Nem találhatók podcastok",
"MessageNoUpdatesWereNecessary": "Nem volt szükséges frissítés",
"MessageNoUserPlaylists": "Nincsenek lejátszási listái",
"MessageReportBugsAndContribute": "Hibák jelentése, funkciók kérése és hozzájárulás a",
"MessageSocketConnectedOverMeteredCellular": "Csatlakoztatva mért mobilhálózaton keresztül",
"MessageSocketConnectedOverMeteredWifi": "Csatlakoztatva mért Wi-Fi hálózaton keresztül",
"MessageSocketConnectedOverUnmeteredCellular": "Csatlakoztatva korlátlan mobilhálózaton keresztül",
"MessageSocketConnectedOverUnmeteredWifi": "Csatlakoztatva korlátlan Wi-Fi hálózaton keresztül",
"MessageSocketNotConnected": "A socket nincs csatlakoztatva",
"NoteRSSFeedPodcastAppsHttps": "Figyelmeztetés: A legtöbb podcast alkalmazás megköveteli, hogy az RSS hírcsatorna URL-je HTTPS-t használjon",
"NoteRSSFeedPodcastAppsPubDate": "Figyelmeztetés: Egy vagy több epizódnak nincs közzétételi dátuma. Néhány podcast alkalmazás ezt megköveteli.",
"ToastBookmarkCreateFailed": "A könyvjelző létrehozása sikertelen",
"ToastBookmarkRemoveFailed": "A könyvjelző eltávolítása sikertelen",
"ToastBookmarkUpdateFailed": "A könyvjelző frissítése sikertelen",
"ToastItemMarkedAsFinishedFailed": "Az elem befejezettnek jelölése sikertelen",
"ToastItemMarkedAsNotFinishedFailed": "Az elem befejezetlennek jelölése sikertelen",
"ToastPlaylistCreateFailed": "A lejátszási lista létrehozása sikertelen",
"ToastPodcastCreateFailed": "A podcast létrehozása sikertelen",
"ToastPodcastCreateSuccess": "A podcast sikeresen létrehozva",
"ToastRSSFeedCloseFailed": "Az RSS hírcsatorna bezárása sikertelen",
"ToastRSSFeedCloseSuccess": "Az RSS hírcsatorna sikeresen bezárva"
}
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Aggiunto il", "LabelAddedAt": "Aggiunto il",
"LabelAddToPlaylist": "aggiungi alla Playlist", "LabelAddToPlaylist": "aggiungi alla Playlist",
"LabelAll": "Tutti", "LabelAll": "Tutti",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Autore", "LabelAuthor": "Autore",
"LabelAuthorFirstLast": "Autore (Per Nome)", "LabelAuthorFirstLast": "Autore (Per Nome)",
"LabelAuthorLastFirst": "Autori (Per Cognome)", "LabelAuthorLastFirst": "Autori (Per Cognome)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Leggi Ancora", "LabelReadAgain": "Leggi Ancora",
"LabelRecentlyAdded": "Aggiunti Recentemente", "LabelRecentlyAdded": "Aggiunti Recentemente",
"LabelRecentSeries": "Serie Recenti", "LabelRecentSeries": "Serie Recenti",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Email del proprietario personalizzato", "LabelRSSFeedCustomOwnerEmail": "Email del proprietario personalizzato",
"LabelRSSFeedCustomOwnerName": "Nome del proprietario personalizzato", "LabelRSSFeedCustomOwnerName": "Nome del proprietario personalizzato",
"LabelRSSFeedPreventIndexing": "Impedisci l'indicizzazione", "LabelRSSFeedPreventIndexing": "Impedisci l'indicizzazione",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Pridėta {0}", "LabelAddedAt": "Pridėta {0}",
"LabelAddToPlaylist": "Pridėti į grojaraštį", "LabelAddToPlaylist": "Pridėti į grojaraštį",
"LabelAll": "Visi", "LabelAll": "Visi",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Autorius", "LabelAuthor": "Autorius",
"LabelAuthorFirstLast": "Autorius (Vardas Pavardė)", "LabelAuthorFirstLast": "Autorius (Vardas Pavardė)",
"LabelAuthorLastFirst": "Autorius (Pavardė, Vardas)", "LabelAuthorLastFirst": "Autorius (Pavardė, Vardas)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Read Again", "LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added", "LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series", "LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Pasirinktinis savininko el. paštas", "LabelRSSFeedCustomOwnerEmail": "Pasirinktinis savininko el. paštas",
"LabelRSSFeedCustomOwnerName": "Pasirinktinis savininko vardas", "LabelRSSFeedCustomOwnerName": "Pasirinktinis savininko vardas",
"LabelRSSFeedPreventIndexing": "Neleisti indeksuoti", "LabelRSSFeedPreventIndexing": "Neleisti indeksuoti",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Toegevoegd op", "LabelAddedAt": "Toegevoegd op",
"LabelAddToPlaylist": "Toevoegen aan afspeellijst", "LabelAddToPlaylist": "Toevoegen aan afspeellijst",
"LabelAll": "Alle", "LabelAll": "Alle",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Auteur", "LabelAuthor": "Auteur",
"LabelAuthorFirstLast": "Auteur (Voornaam Achternaam)", "LabelAuthorFirstLast": "Auteur (Voornaam Achternaam)",
"LabelAuthorLastFirst": "Auteur (Achternaam, Voornaam)", "LabelAuthorLastFirst": "Auteur (Achternaam, Voornaam)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Read Again", "LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added", "LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series", "LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Aangepast e-mailadres eigenaar", "LabelRSSFeedCustomOwnerEmail": "Aangepast e-mailadres eigenaar",
"LabelRSSFeedCustomOwnerName": "Aangepaste naam eigenaar", "LabelRSSFeedCustomOwnerName": "Aangepaste naam eigenaar",
"LabelRSSFeedPreventIndexing": "Voorkom indexering", "LabelRSSFeedPreventIndexing": "Voorkom indexering",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Dato lagt til ", "LabelAddedAt": "Dato lagt til ",
"LabelAddToPlaylist": "Legg til i spilleliste", "LabelAddToPlaylist": "Legg til i spilleliste",
"LabelAll": "Alle", "LabelAll": "Alle",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Forfatter", "LabelAuthor": "Forfatter",
"LabelAuthorFirstLast": "Forfatter (Fornavn Etternavn)", "LabelAuthorFirstLast": "Forfatter (Fornavn Etternavn)",
"LabelAuthorLastFirst": "Forfatter (Etternavn Fornavn)", "LabelAuthorLastFirst": "Forfatter (Etternavn Fornavn)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Read Again", "LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added", "LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series", "LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Tilpasset eier Epost", "LabelRSSFeedCustomOwnerEmail": "Tilpasset eier Epost",
"LabelRSSFeedCustomOwnerName": "Tilpasset eier Navn", "LabelRSSFeedCustomOwnerName": "Tilpasset eier Navn",
"LabelRSSFeedPreventIndexing": "Forhindre indeksering", "LabelRSSFeedPreventIndexing": "Forhindre indeksering",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Dodano w", "LabelAddedAt": "Dodano w",
"LabelAddToPlaylist": "Dodaj do playlisty", "LabelAddToPlaylist": "Dodaj do playlisty",
"LabelAll": "Wszystkie", "LabelAll": "Wszystkie",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Autor", "LabelAuthor": "Autor",
"LabelAuthorFirstLast": "Autor (Rosnąco)", "LabelAuthorFirstLast": "Autor (Rosnąco)",
"LabelAuthorLastFirst": "Author (Malejąco)", "LabelAuthorLastFirst": "Author (Malejąco)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Czytaj ponownie", "LabelReadAgain": "Czytaj ponownie",
"LabelRecentlyAdded": "Ostatnio dodane", "LabelRecentlyAdded": "Ostatnio dodane",
"LabelRecentSeries": "Najnowsze serie", "LabelRecentSeries": "Najnowsze serie",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email", "LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
"LabelRSSFeedCustomOwnerName": "Custom owner Name", "LabelRSSFeedCustomOwnerName": "Custom owner Name",
"LabelRSSFeedPreventIndexing": "Zapobiegaj indeksowaniu", "LabelRSSFeedPreventIndexing": "Zapobiegaj indeksowaniu",
+294
View File
@@ -0,0 +1,294 @@
{
"ButtonAdd": "Adicionar",
"ButtonAddNewServer": "Adicionar Novo Servidor",
"ButtonAuthors": "Autores",
"ButtonBack": "Voltar",
"ButtonCancel": "Cancelar",
"ButtonCancelTimer": "Cancelar Timer",
"ButtonClearFilter": "Limpar Filtro",
"ButtonCloseFeed": "Fechar Feed",
"ButtonCollections": "Coleções",
"ButtonConnect": "Conectar",
"ButtonConnectToServer": "Conectar ao Servidor",
"ButtonCreate": "Criar",
"ButtonCreateBookmark": "Criar Marcador",
"ButtonCreateNewPlaylist": "Criar Nova Lista de Reprodução",
"ButtonDelete": "Apagar",
"ButtonDeleteLocalEpisode": "Apagar episódio local",
"ButtonDeleteLocalFile": "Apagar arquivo local",
"ButtonDeleteLocalItem": "Apagar item local",
"ButtonDisableAutoTimer": "Desativar Timer Automático",
"ButtonDisconnect": "Desconectar",
"ButtonHistory": "Histórico",
"ButtonHome": "Principal",
"ButtonIssues": "Problemas",
"ButtonLatest": "Mais Recentes",
"ButtonLibrary": "Biblioteca",
"ButtonLocalMedia": "Mídia Local",
"ButtonManageLocalFiles": "Gerenciar Arquivos Locais",
"ButtonNewFolder": "Nova Pasta",
"ButtonNextEpisode": "Próximo Episódio",
"ButtonOpenFeed": "Abrir Feed",
"ButtonOverride": "Sobrepor",
"ButtonPause": "Pausar",
"ButtonPlay": "Reproduzir",
"ButtonPlaying": "Reproduzindo",
"ButtonPlaylists": "Lista de Reprodução",
"ButtonRead": "Ler",
"ButtonRemove": "Remover",
"ButtonRemoveFromServer": "Remover do Servidor",
"ButtonSave": "Salvar",
"ButtonSaveOrder": "Salvar Ordem",
"ButtonSearch": "Pesquisar",
"ButtonSendEbookToDevice": "Enviar Ebook para Dispositivo",
"ButtonSeries": "Série",
"ButtonSetTimer": "Definir Timer",
"ButtonStream": "Stream",
"ButtonSubmit": "Enviar",
"ButtonSwitchServerUser": "Trocar Servidor/Usuário",
"ButtonUserStats": "Estatísticas do Usuário",
"ButtonYes": "Sim",
"HeaderAccount": "Conta",
"HeaderAdvanced": "Avançado",
"HeaderAudioTracks": "Trilhas de áudio",
"HeaderChapters": "Capítulos",
"HeaderCollection": "Coleção",
"HeaderCollectionItems": "Itens da Coleção",
"HeaderConnectionStatus": "Status da Conexão",
"HeaderDetails": "Detalhes",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "Arquivos Ebook",
"HeaderEpisodes": "Episódios",
"HeaderEreaderSettings": "Configurações Ereader",
"HeaderLatestEpisodes": "Últimos episódios",
"HeaderLibraries": "Bibliotecas",
"HeaderLocalFolders": "Pastas Locais",
"HeaderLocalLibraryItems": "Itens de Biblioteca Locais",
"HeaderNewPlaylist": "Nova Lista de Reprodução",
"HeaderOpenRSSFeed": "Abrir Feed RSS",
"HeaderPlaybackSettings": "Configurações de Reprodução",
"HeaderPlaylist": "Lista de Reprodução",
"HeaderPlaylistItems": "Itens da lista de reprodução",
"HeaderRSSFeed": "Feed RSS",
"HeaderRSSFeedGeneral": "Detalhes RSS",
"HeaderRSSFeedIsOpen": "Feed RSS está Aberto",
"HeaderSelectDownloadLocation": "Selecione Local para Download",
"HeaderSettings": "Configurações",
"HeaderSleepTimer": "Timer",
"HeaderSleepTimerSettings": "Configurações do Timer",
"HeaderStatsMinutesListeningChart": "Minutos Escutados (últimos 7 dias)",
"HeaderStatsRecentSessions": "Sessões Recentes",
"HeaderTableOfContents": "Sumário",
"HeaderUserInterfaceSettings": "Configurações da Interface do Usuário",
"HeaderYourStats": "Suas Estatísticas",
"LabelAdded": "Acrescentado",
"LabelAddedAt": "Acrescentado Em",
"LabelAddToPlaylist": "Adicionar à Lista de Reprodução",
"LabelAll": "Todos",
"LabelAllowSeekingOnMediaControls": "Permitir busca de posição nos controles de notificação de mídia",
"LabelAuthor": "Autor",
"LabelAuthorFirstLast": "Autor (Nome Sobrenome)",
"LabelAuthorLastFirst": "Autor (Sobrenome, Nome)",
"LabelAuthors": "Autores",
"LabelAutoDownloadEpisodes": "Download Automático de Episódios",
"LabelAutoRewindTime": "Tempo para retroceder automaticamente",
"LabelAutoSleepTimer": "Timer automático",
"LabelAutoSleepTimerAutoRewind": "Retrocesso automático do timer",
"LabelAutoSleepTimerAutoRewindHelp": "Após o timer terminar, da próxima vez que o item for reproduzido a sua posição será retrocedida automaticamente.",
"LabelAutoSleepTimerHelp": "Ao reproduzir uma mídia entre as horas especificadas como inicío e fim, um timer será iniciado automaticamente.",
"LabelBooks": "Livros",
"LabelChapters": "Capítulos",
"LabelChapterTrack": "Trilha do Capítulo",
"LabelClosePlayer": "Fechar Reprodutor",
"LabelCollapseSeries": "Fechar Série",
"LabelComplete": "Concluído",
"LabelContinueBooks": "Continuar Livros",
"LabelContinueEpisodes": "Continuar Episódios",
"LabelContinueListening": "Continuar Escutando",
"LabelContinueReading": "Continuar Lendo",
"LabelContinueSeries": "Continuar Série",
"LabelCustomTime": "Personalizar tempo",
"LabelDescription": "Descrição",
"LabelDisableAudioFadeOut": "Desativar fade out de áudio",
"LabelDisableAudioFadeOutHelp": "O volume do áudio diminuirá progressivamente quando houver menos que 1 minuto no seu timer. Ative essa configuração para não diminuir o volume.",
"LabelDisableAutoRewind": "Desativar retrocesso automático",
"LabelDisableShakeToReset": "Desativar sacudir para resetar",
"LabelDisableShakeToResetHelp": "Sacudir o seu dispositivo quando o timer estiver ativo OU em até 2 minutos após o seu fim resetará o seu timer. Ative essa configuração para desabilitar o sacudir para resetar.",
"LabelDisableVibrateOnReset": "Desativar vibração ao resetar",
"LabelDisableVibrateOnResetHelp": "Quando o timer for resetado o seu dispositivo vibrará. Ative essa configuração para não vibrar quando o timer for resetado.",
"LabelDiscover": "Descobrir",
"LabelDownload": "Download",
"LabelDownloaded": "Download realizado",
"LabelDuration": "Duração",
"LabelEbook": "Ebook",
"LabelEbooks": "Ebooks",
"LabelEnable": "Ativar",
"LabelEnableMp3IndexSeeking": "Ativar busca por índice mp3",
"LabelEnableMp3IndexSeekingHelp": "Esta configuração só deve ser ativada se a busca em arquivos mp3 não estiver funcionando corretamente. Buscas incorretas são normalmente causadas por arquivos MP3 com bitrate variável (VBR). Esta configuração forçará a busca por índice, que é uma consulta do tempo-para-byte, elaborado durante a leitura do arquivo. Em alguns casos, com arquivos MP3 maiores, haverá um atraso ao buscar perto do final do arquivo.",
"LabelEnd": "Fim",
"LabelEndOfChapter": "Fim do Chapítulo",
"LabelEndTime": "Tempo final",
"LabelEpisode": "Episódio",
"LabelFeedURL": "URL do Feed",
"LabelFile": "Arquivo",
"LabelFileBirthtime": "Criação do Arquivo",
"LabelFileModified": "Modificação do Arquivo",
"LabelFilename": "Nome do Arquivo",
"LabelFinished": "Concluído",
"LabelFolder": "Pasta",
"LabelFontScale": "Escala de fonte",
"LabelGenre": "Gênero",
"LabelGenres": "Gêneros",
"LabelHapticFeedback": "Feedback tátil",
"LabelHasEbook": "Tem ebook",
"LabelHasSupplementaryEbook": "Tem ebook complementar",
"LabelHeavy": "Pesado",
"LabelHigh": "Alta",
"LabelHost": "Host",
"LabelIncomplete": "Incompleto",
"LabelInProgress": "Em Andamento",
"LabelInternalAppStorage": "Armazenamento Interno do App",
"LabelJumpBackwardsTime": "Retroceder tempo",
"LabelJumpForwardsTime": "Adiantar tempo",
"LabelLanguage": "Idioma",
"LabelLayout": "Layout",
"LabelLayoutAuto": "Automático",
"LabelLayoutSinglePage": "Uma página",
"LabelLight": "Leve",
"LabelLineSpacing": "Espaçamento entre linhas",
"LabelListenAgain": "Escutar novamente",
"LabelLocalBooks": "Livros Locais",
"LabelLocalPodcasts": "Podcasts Locais",
"LabelLockOrientation": "Travar orientação",
"LabelLockPlayer": "Travar Reprodutor",
"LabelLow": "Baixa",
"LabelMediaType": "Tipo de Mídia",
"LabelMedium": "Média",
"LabelMore": "Mais",
"LabelMoreInfo": "Mais Informações",
"LabelName": "Nome",
"LabelNarrator": "Narrador",
"LabelNarrators": "Narradores",
"LabelNewestAuthors": "Novos Autores",
"LabelNewestEpisodes": "Episódios mais recentes",
"LabelNo": "Não",
"LabelNotFinished": "Não Concluído",
"LabelNotStarted": "Não Iniciado",
"LabelOff": "Desligado",
"LabelPassword": "Senha",
"LabelPath": "Caminho",
"LabelPlaybackDirect": "Direto",
"LabelPlaybackLocal": "Local",
"LabelPlaybackSpeed": "Velocidade de Reprodução",
"LabelPlaybackTranscode": "Transcodificar",
"LabelPodcast": "Podcast",
"LabelPodcasts": "Podcasts",
"LabelPreventIndexing": "Evitar que o seu feed seja indexado pelos diretórios de podcast do iTunes e Google",
"LabelProgress": "Progresso",
"LabelPubDate": "Data de Publicação",
"LabelPublishYear": "Ano de Publicação",
"LabelRead": "Lido",
"LabelReadAgain": "Ler Novamente",
"LabelRecentlyAdded": "Novidades",
"LabelRecentSeries": "Séries Recentes",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Email do dono personalizado",
"LabelRSSFeedCustomOwnerName": "Nome do dono personalizado",
"LabelRSSFeedPreventIndexing": "Impedir Indexação",
"LabelRSSFeedSlug": "Slug do Feed RSS",
"LabelScaleElapsedTimeBySpeed": "Proporcionalizar Tempo Decorrido com a Velocidade",
"LabelSeason": "Temporada",
"LabelSelectADevice": "Selecione um dispositivo",
"LabelSeries": "Série",
"LabelServerAddress": "Endereço do servidor",
"LabelSetEbookAsPrimary": "Definir como principal",
"LabelSetEbookAsSupplementary": "Definir como complementar",
"LabelShakeSensitivity": "Sensitividade do sacudir",
"LabelShowAll": "Exibir Todos",
"LabelSize": "Tamanho",
"LabelSleepTimer": "Timer",
"LabelStart": "Iniciar",
"LabelStartTime": "Iniciado Em",
"LabelStatsBestDay": "Melhor Dia",
"LabelStatsDailyAverage": "Média Diária",
"LabelStatsDays": "Dias",
"LabelStatsDaysListened": "Dias Escutando",
"LabelStatsInARow": "seguidos",
"LabelStatsItemsFinished": "Itens Concluídos",
"LabelStatsMinutes": "minutos",
"LabelStatsMinutesListening": "Minutos Escutando",
"LabelStatsWeekListening": "Tempo escutando na semana",
"LabelTag": "Etiqueta",
"LabelTags": "Etiquetas",
"LabelTheme": "Tema",
"LabelThemeDark": "Escuro",
"LabelThemeLight": "Claro",
"LabelTimeRemaining": "{0} restantes",
"LabelTitle": "Título",
"LabelTotalTrack": "Total da Trilha",
"LabelTracks": "Trilhas",
"LabelType": "Tipo",
"LabelUnlockPlayer": "Destravar Reprodutor",
"LabelUseBookshelfView": "Usar visão estante",
"LabelUser": "Usuário",
"LabelUsername": "Nome do Usuário",
"LabelVeryHigh": "Muito Alta",
"LabelVeryLow": "Muito Baixa",
"LabelYourBookmarks": "Seus Marcadores",
"LabelYourProgress": "Seu Progresso",
"MessageAndroid10Downloads": "Android 10 e versões anteriores utilizarão o armazenamento interno para downloads.",
"MessageAttemptingServerConnection": "Tentando conexão ao ...",
"MessageAudiobookshelfServerNotConnected": "Servidor Audiobookshelf não conectado",
"MessageAudiobookshelfServerRequired": "<strong>Importante!</strong> Esse aplicativo foi desenvolvido para funcionar com um servidor Audiobookshelf que você ou algum conhecido seu está mantendo. Esse aplicativo não oferece qualquer conteúdo.",
"MessageBookshelfEmpty": "Estante vazia",
"MessageConfirmDeleteLocalEpisode": "Remover episódio local \"{0}\" do seu dispositivo? O arquivo no servidor não será afetado.",
"MessageConfirmDeleteLocalFiles": "Remover arquivos locais deste item do seu dispositivo? Os arquivos no servidor e o seu progresso não serão afetados.",
"MessageConfirmDiscardProgress": "Tem certeza de que deseja restar o seu progresso?",
"MessageConfirmMarkAsFinished": "Tem certeza de que deseja marcar esse item como concluído?",
"MessageConfirmRemoveBookmark": "Tem certeza de que deseja remover o marcador?",
"MessageDiscardProgress": "Descartar Progresso",
"MessageDownloadCompleteProcessing": "Download concluído. Processando...",
"MessageDownloading": "Realizando o download...",
"MessageDownloadingEpisode": "Realizando o downloading do episódio",
"MessageEpisodesQueuedForDownload": "{0} Episódio(s) na fila de download",
"MessageFeedURLWillBe": "URL do Feed será {0}",
"MessageFetching": "Buscando...",
"MessageFollowTheProjectOnGithub": "Siga este projeto no Github",
"MessageItemDownloadCompleteFailedToCreate": "Download concluído mas não foi possível criar item da biblioteca",
"MessageLoading": "Carregando...",
"MessageLoadingServerData": "Carregando dados do servidor...",
"MessageMarkAsFinished": "Marcar como Concluído",
"MessageMediaLinkedToADifferentServer": "Mídia está associada a um servidor Audiobookshelf em um endereço diferente ({0}). O progresso será sincronizado quando conectado a esse servidor.",
"MessageMediaLinkedToADifferentUser": "Mídia está associada a este servidor mas o download foi feito por outro usuário. O progresso só será sincronizado para o usuário que realizou o download.",
"MessageMediaLinkedToServer": "Associado ao servidor {0}",
"MessageMediaLinkedToThisServer": "Mídia baixada está associada a esse servidor",
"MessageMediaNotLinkedToServer": "Mídia não está associada a um servidor Audiobookshelf. Nenhum progresso será sincronizado.",
"MessageNoBookmarks": "Sem Marcadores",
"MessageNoChapters": "Sem Capítulos",
"MessageNoItems": "Sem Itens",
"MessageNoItemsFound": "Nenhum item encontrado",
"MessageNoListeningSessions": "Sem Sessões de Escuta",
"MessageNoMediaFolders": "Sem Pastas de Mídia",
"MessageNoNetworkConnection": "Nem conexão de rede",
"MessageNoPodcastsFound": "Nenhum podcast encontrado",
"MessageNoUpdatesWereNecessary": "Nenhuma atualização é necessária",
"MessageNoUserPlaylists": "Você não tem listas de reprodução",
"MessageReportBugsAndContribute": "Reporte bugs, peça funcionalidades e contribua em",
"MessageSocketConnectedOverMeteredCellular": "Socket conectado usando rede celular limitada",
"MessageSocketConnectedOverMeteredWifi": "Socket conectado usando wifi limitada",
"MessageSocketConnectedOverUnmeteredCellular": "Socket conectado usando rede celular ilimitada",
"MessageSocketConnectedOverUnmeteredWifi": "Socket conectado usando wifi ilimitada",
"MessageSocketNotConnected": "Socket não conectado",
"NoteRSSFeedPodcastAppsHttps": "Atenção: A maioria dos aplicativos de podcasts requer que a URL do feed RSS use HTTPS",
"NoteRSSFeedPodcastAppsPubDate": "Atenção: Um ou mais dos seus episódios não tem uma data de publicação. Alguns aplicativos de podcasts requerem isto.",
"ToastBookmarkCreateFailed": "Falha ao criar marcador",
"ToastBookmarkRemoveFailed": "Falha ao remover marcador",
"ToastBookmarkUpdateFailed": "Falha ao atualizar marcador",
"ToastItemMarkedAsFinishedFailed": "Falha ao marcar como Concluído",
"ToastItemMarkedAsNotFinishedFailed": "Falha ao marcar como Não Concluído",
"ToastPlaylistCreateFailed": "Falha ao criar lista de reprodução",
"ToastPodcastCreateFailed": "Falha ao criar podcast",
"ToastPodcastCreateSuccess": "Podcast criado",
"ToastRSSFeedCloseFailed": "Falha ao fechar feed RSS",
"ToastRSSFeedCloseSuccess": "Feed RSS fechado"
}
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Дата добавления", "LabelAddedAt": "Дата добавления",
"LabelAddToPlaylist": "Добавить в плейлист", "LabelAddToPlaylist": "Добавить в плейлист",
"LabelAll": "Все", "LabelAll": "Все",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Автор", "LabelAuthor": "Автор",
"LabelAuthorFirstLast": "Автор (Имя Фамилия)", "LabelAuthorFirstLast": "Автор (Имя Фамилия)",
"LabelAuthorLastFirst": "Автор (Фамилия, Имя)", "LabelAuthorLastFirst": "Автор (Фамилия, Имя)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Read Again", "LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Недавно добавленные", "LabelRecentlyAdded": "Недавно добавленные",
"LabelRecentSeries": "Недавние серии", "LabelRecentSeries": "Недавние серии",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Пользовательский Email владельца", "LabelRSSFeedCustomOwnerEmail": "Пользовательский Email владельца",
"LabelRSSFeedCustomOwnerName": "Пользовательское Имя владельца", "LabelRSSFeedCustomOwnerName": "Пользовательское Имя владельца",
"LabelRSSFeedPreventIndexing": "Запретить индексирование", "LabelRSSFeedPreventIndexing": "Запретить индексирование",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "Tillagd vid", "LabelAddedAt": "Tillagd vid",
"LabelAddToPlaylist": "Lägg till i Spellista", "LabelAddToPlaylist": "Lägg till i Spellista",
"LabelAll": "Alla", "LabelAll": "Alla",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "Författare", "LabelAuthor": "Författare",
"LabelAuthorFirstLast": "Författare (Förnamn Efternamn)", "LabelAuthorFirstLast": "Författare (Förnamn Efternamn)",
"LabelAuthorLastFirst": "Författare (Efternamn, Förnamn)", "LabelAuthorLastFirst": "Författare (Efternamn, Förnamn)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "Read Again", "LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added", "LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series", "LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Anpassad ägarens e-post", "LabelRSSFeedCustomOwnerEmail": "Anpassad ägarens e-post",
"LabelRSSFeedCustomOwnerName": "Anpassat ägarnamn", "LabelRSSFeedCustomOwnerName": "Anpassat ägarnamn",
"LabelRSSFeedPreventIndexing": "Förhindra indexering", "LabelRSSFeedPreventIndexing": "Förhindra indexering",
+2
View File
@@ -85,6 +85,7 @@
"LabelAddedAt": "添加于", "LabelAddedAt": "添加于",
"LabelAddToPlaylist": "添加到播放列表", "LabelAddToPlaylist": "添加到播放列表",
"LabelAll": "全部", "LabelAll": "全部",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAuthor": "作者", "LabelAuthor": "作者",
"LabelAuthorFirstLast": "作者 (姓 名)", "LabelAuthorFirstLast": "作者 (姓 名)",
"LabelAuthorLastFirst": "作者 (名, 姓)", "LabelAuthorLastFirst": "作者 (名, 姓)",
@@ -190,6 +191,7 @@
"LabelReadAgain": "再次阅读", "LabelReadAgain": "再次阅读",
"LabelRecentlyAdded": "最近添加", "LabelRecentlyAdded": "最近添加",
"LabelRecentSeries": "最近添加系列", "LabelRecentSeries": "最近添加系列",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "自定义所有者电子邮件", "LabelRSSFeedCustomOwnerEmail": "自定义所有者电子邮件",
"LabelRSSFeedCustomOwnerName": "自定义所有者名称", "LabelRSSFeedCustomOwnerName": "自定义所有者名称",
"LabelRSSFeedPreventIndexing": "防止索引", "LabelRSSFeedPreventIndexing": "防止索引",