diff --git a/JellyfinPlayer.xcodeproj/project.pbxproj b/JellyfinPlayer.xcodeproj/project.pbxproj index 038f4adb..4dc90f18 100644 --- a/JellyfinPlayer.xcodeproj/project.pbxproj +++ b/JellyfinPlayer.xcodeproj/project.pbxproj @@ -475,7 +475,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 20; - DEVELOPMENT_ASSET_PATHS = "\"JellyfinPlayer/Preview Content\""; + DEVELOPMENT_ASSET_PATHS = ""; DEVELOPMENT_TEAM = 9R8RREG67J; ENABLE_BITCODE = NO; ENABLE_PREVIEWS = YES; @@ -502,7 +502,7 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 20; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_ASSET_PATHS = "\"JellyfinPlayer/Preview Content\""; + DEVELOPMENT_ASSET_PATHS = ""; DEVELOPMENT_TEAM = 9R8RREG67J; ENABLE_BITCODE = NO; ENABLE_PREVIEWS = YES; diff --git a/JellyfinPlayer/Assets.xcassets/AccentColor.colorset/Contents.json b/JellyfinPlayer/Assets.xcassets/AccentColor.colorset/Contents.json index eb878970..f2d53c24 100644 --- a/JellyfinPlayer/Assets.xcassets/AccentColor.colorset/Contents.json +++ b/JellyfinPlayer/Assets.xcassets/AccentColor.colorset/Contents.json @@ -1,6 +1,15 @@ { "colors" : [ { + "color" : { + "color-space" : "srgb", + "components" : { + "alpha" : "1.000", + "blue" : "1.000", + "green" : "1.000", + "red" : "0.498" + } + }, "idiom" : "universal" } ], diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/100.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/100.png new file mode 100644 index 00000000..3344d384 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/100.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/1024.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/1024.png new file mode 100644 index 00000000..39934f79 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/1024.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/114.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/114.png new file mode 100644 index 00000000..2bf3e86d Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/114.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/120.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/120.png new file mode 100644 index 00000000..747d0a70 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/120.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/144.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/144.png new file mode 100644 index 00000000..ac27ff59 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/144.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/152.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/152.png new file mode 100644 index 00000000..416ad786 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/152.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/167.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/167.png new file mode 100644 index 00000000..45e73a86 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/167.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/180.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/180.png new file mode 100644 index 00000000..2ca9c5c5 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/180.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/20.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/20.png new file mode 100644 index 00000000..ce097830 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/20.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/29.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/29.png new file mode 100644 index 00000000..bfcf1009 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/29.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/40.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/40.png new file mode 100644 index 00000000..acbb7cba Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/40.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/50.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/50.png new file mode 100644 index 00000000..ffb6fd49 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/50.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/57.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/57.png new file mode 100644 index 00000000..3978d6f9 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/57.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/58.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/58.png new file mode 100644 index 00000000..899d55a8 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/58.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/60.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/60.png new file mode 100644 index 00000000..7a324dca Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/60.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/72.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/72.png new file mode 100644 index 00000000..a425ce88 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/72.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/76.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/76.png new file mode 100644 index 00000000..1b174312 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/76.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/80.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/80.png new file mode 100644 index 00000000..8d4ea26b Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/80.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/87.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/87.png new file mode 100644 index 00000000..9ef41a73 Binary files /dev/null and b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/87.png differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Contents.json b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Contents.json index b313d6fc..65b74d7e 100644 --- a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -1,114 +1 @@ -{ - "images" : [ - { - "filename" : "Icon-Spotlight-42.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "20x20" - }, - { - "filename" : "Icon-60.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "20x20" - }, - { - "filename" : "Icon-Small@2x.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "29x29" - }, - { - "filename" : "Icon-Small@3x.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "29x29" - }, - { - "filename" : "Icon-Spotlight-40@2x.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "40x40" - }, - { - "filename" : "Icon-Spotlight-40@3x.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "40x40" - }, - { - "filename" : "Icon-60@2x.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "60x60" - }, - { - "filename" : "Icon-60@3x.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "60x60" - }, - { - "idiom" : "ipad", - "scale" : "1x", - "size" : "20x20" - }, - { - "filename" : "Icon-Spotlight-41.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "20x20" - }, - { - "filename" : "Icon-Small.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "29x29" - }, - { - "filename" : "Icon-Small@2x-1.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "29x29" - }, - { - "filename" : "Icon-Spotlight-40.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "40x40" - }, - { - "filename" : "Icon-Spotlight-40@2x-1.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "40x40" - }, - { - "filename" : "Icon-76.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "76x76" - }, - { - "filename" : "Icon-76@2x.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "76x76" - }, - { - "filename" : "Icon-iPadPro@2x.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "83.5x83.5" - }, - { - "idiom" : "ios-marketing", - "scale" : "1x", - "size" : "1024x1024" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} +{"images":[{"size":"60x60","expected-size":"180","filename":"180.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"40x40","expected-size":"80","filename":"80.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"40x40","expected-size":"120","filename":"120.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"60x60","expected-size":"120","filename":"120.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"57x57","expected-size":"57","filename":"57.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"1x"},{"size":"29x29","expected-size":"58","filename":"58.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"29x29","expected-size":"29","filename":"29.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"1x"},{"size":"29x29","expected-size":"87","filename":"87.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"57x57","expected-size":"114","filename":"114.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"20x20","expected-size":"40","filename":"40.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"20x20","expected-size":"60","filename":"60.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"1024x1024","filename":"1024.png","expected-size":"1024","idiom":"ios-marketing","folder":"Assets.xcassets/AppIcon.appiconset/","scale":"1x"},{"size":"40x40","expected-size":"80","filename":"80.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"72x72","expected-size":"72","filename":"72.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"76x76","expected-size":"152","filename":"152.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"50x50","expected-size":"100","filename":"100.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"29x29","expected-size":"58","filename":"58.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"76x76","expected-size":"76","filename":"76.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"29x29","expected-size":"29","filename":"29.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"50x50","expected-size":"50","filename":"50.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"72x72","expected-size":"144","filename":"144.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"40x40","expected-size":"40","filename":"40.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"83.5x83.5","expected-size":"167","filename":"167.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"20x20","expected-size":"20","filename":"20.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"20x20","expected-size":"40","filename":"40.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"}]} \ No newline at end of file diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-60.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-60.png deleted file mode 100644 index 4fea123d..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-60.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-60@2x.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-60@2x.png deleted file mode 100644 index cfb6ba73..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-60@2x.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-60@3x.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-60@3x.png deleted file mode 100644 index e25f7f48..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-60@3x.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-72@2x.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-72@2x.png deleted file mode 100644 index fe1980d9..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-72@2x.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-76.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-76.png deleted file mode 100644 index 7b5e329f..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-76.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-76@2x.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-76@2x.png deleted file mode 100644 index fc65b467..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-76@2x.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-76@3x.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-76@3x.png deleted file mode 100644 index 806d2a64..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-76@3x.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small-50.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small-50.png deleted file mode 100644 index 214ab957..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small-50.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small-50@2x.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small-50@2x.png deleted file mode 100644 index 4d232062..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small-50@2x.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small.png deleted file mode 100644 index c78c0af4..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small@2x.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small@2x.png deleted file mode 100644 index fd561818..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small@2x.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small@3x.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small@3x.png deleted file mode 100644 index 06ed8a0f..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Small@3x.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-40.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-40.png deleted file mode 100644 index ab8345c2..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-40.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-40@2x-1.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-40@2x-1.png deleted file mode 100644 index f5a60d14..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-40@2x-1.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-40@2x.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-40@2x.png deleted file mode 100644 index f5a60d14..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-40@2x.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-40@3x.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-40@3x.png deleted file mode 100644 index 8604a4c5..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-40@3x.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-42.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-42.png deleted file mode 100644 index ab8345c2..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-Spotlight-42.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-iPadPro@2x.png b/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-iPadPro@2x.png deleted file mode 100644 index 2751b336..00000000 Binary files a/JellyfinPlayer/Assets.xcassets/AppIcon.appiconset/Icon-iPadPro@2x.png and /dev/null differ diff --git a/JellyfinPlayer/Assets.xcassets/Color-1.colorset/Contents.json b/JellyfinPlayer/Assets.xcassets/Color-1.colorset/Contents.json new file mode 100644 index 00000000..88fe200a --- /dev/null +++ b/JellyfinPlayer/Assets.xcassets/Color-1.colorset/Contents.json @@ -0,0 +1,29 @@ +{ + "colors" : [ + { + "idiom" : "universal" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "color" : { + "color-space" : "srgb", + "components" : { + "alpha" : "1.000", + "blue" : "1.000", + "green" : "1.000", + "red" : "1.000" + } + }, + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/JellyfinPlayer/Info.plist b/JellyfinPlayer/Info.plist index 1b0f697e..2026a01a 100644 --- a/JellyfinPlayer/Info.plist +++ b/JellyfinPlayer/Info.plist @@ -5,7 +5,7 @@ CFBundleDevelopmentRegion $(DEVELOPMENT_LANGUAGE) CFBundleDisplayName - Jellyfin SUI + Jellyfin CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier @@ -19,7 +19,7 @@ CFBundleShortVersionString $(MARKETING_VERSION) CFBundleVersion - 20 + $(CURRENT_PROJECT_VERSION) ITSAppUsesNonExemptEncryption LSRequiresIPhoneOS diff --git a/JellyfinPlayer/Views/VideoPlayer.storyboard b/JellyfinPlayer/Views/VideoPlayer.storyboard index 677541c1..4e5729ca 100644 --- a/JellyfinPlayer/Views/VideoPlayer.storyboard +++ b/JellyfinPlayer/Views/VideoPlayer.storyboard @@ -1,6 +1,6 @@ - + @@ -13,25 +13,23 @@ - - - + + - - - + + + - - - + + - + @@ -41,7 +39,7 @@ + @@ -134,14 +137,16 @@ - + + + - + @@ -151,11 +156,22 @@ + + + + + + + + + + + @@ -175,11 +191,12 @@ - + + diff --git a/JellyfinPlayer/Views/VideoPlayer.swift b/JellyfinPlayer/Views/VideoPlayer.swift index 4524dc93..22dd4e75 100644 --- a/JellyfinPlayer/Views/VideoPlayer.swift +++ b/JellyfinPlayer/Views/VideoPlayer.swift @@ -44,7 +44,7 @@ class PlayerViewController: UIViewController, VLCMediaDelegate, VLCMediaPlayerDe weak var delegate: PlayerViewControllerDelegate? - var mediaPlayer = VLCMediaPlayer(options: ["--sub-margin=200"])! + var mediaPlayer = VLCMediaPlayer(options: ["--sub-margin=-50"])! var globalData = GlobalData() @IBOutlet weak var timeText: UILabel! @@ -54,6 +54,7 @@ class PlayerViewController: UIViewController, VLCMediaDelegate, VLCMediaPlayerDe @IBOutlet weak var titleLabel: UILabel! @IBOutlet weak var jumpBackButton: UIButton! @IBOutlet weak var jumpForwardButton: UIButton! + @IBOutlet weak var playerSettingsButton: UIButton! var shouldShowLoadingScreen: Bool = false; var ssTargetValueOffset: Int = 0; @@ -79,6 +80,7 @@ class PlayerViewController: UIViewController, VLCMediaDelegate, VLCMediaPlayerDe sendProgressReport(eventName: "pause") mediaPlayer.pause() } + @IBAction func seekSliderValueChanged(_ sender: Any) { let videoDuration = Double(mediaPlayer.time.intValue + abs(mediaPlayer.remainingTime.intValue))/1000 let secondsScrubbedTo = round(Double(seekSlider.value) * videoDuration); @@ -154,7 +156,7 @@ class PlayerViewController: UIViewController, VLCMediaDelegate, VLCMediaPlayerDe override func viewDidLoad() { super.viewDidLoad() - + //View has loaded. //Show loading screen usleep(10000); @@ -267,6 +269,15 @@ class PlayerViewController: UIViewController, VLCMediaDelegate, VLCMediaPlayerDe } } mediaPlayer.play() + mediaPlayer.currentVideoSubTitleIndex = -1; + mediaPlayer.currentAudioTrackIndex = selectedAudioTrack; + mediaPlayer.pause() + usleep(10000); + mediaPlayer.play() + usleep(10000); + mediaPlayer.pause() + usleep(10000); + mediaPlayer.play() mediaPlayer.jumpForward(Int32(manifest.Progress/10000000)) } catch {