mirror of
https://github.com/streamyfin/streamyfin.git
synced 2026-07-19 02:34:17 +01:00
feat: MPV player for both Android and iOS with added HW decoding PiP (with subtitles) (#1332)
Co-authored-by: Alex Kim <alexkim@Alexs-MacBook-Pro.local> Co-authored-by: Alex <111128610+Alexk2309@users.noreply.github.com> Co-authored-by: Simon-Eklundh <simon.eklundh@proton.me>
This commit is contained in:
committed by
GitHub
parent
df2f44e086
commit
f1575ca48b
@@ -34,6 +34,7 @@ export const useVolumeAndBrightness = ({
|
||||
const initialVolume = useRef<number | null>(null);
|
||||
const initialBrightness = useRef<number | null>(null);
|
||||
const dragStartY = useRef<number | null>(null);
|
||||
const brightnessSupported = useRef(true);
|
||||
|
||||
const startVolumeDrag = useCallback(async (startY: number) => {
|
||||
if (Platform.isTV || !VolumeManager) return;
|
||||
@@ -88,20 +89,26 @@ export const useVolumeAndBrightness = ({
|
||||
}, []);
|
||||
|
||||
const startBrightnessDrag = useCallback(async (startY: number) => {
|
||||
if (Platform.isTV || !Brightness) return;
|
||||
if (Platform.isTV || !Brightness || !brightnessSupported.current) return;
|
||||
|
||||
try {
|
||||
const brightness = await Brightness.getBrightnessAsync();
|
||||
initialBrightness.current = brightness;
|
||||
dragStartY.current = startY;
|
||||
} catch (error) {
|
||||
console.error("Error starting brightness drag:", error);
|
||||
console.warn("Brightness not supported on this device:", error);
|
||||
brightnessSupported.current = false;
|
||||
}
|
||||
}, []);
|
||||
|
||||
const updateBrightnessDrag = useCallback(
|
||||
async (deltaY: number) => {
|
||||
if (Platform.isTV || !Brightness || initialBrightness.current === null)
|
||||
if (
|
||||
Platform.isTV ||
|
||||
!Brightness ||
|
||||
initialBrightness.current === null ||
|
||||
!brightnessSupported.current
|
||||
)
|
||||
return;
|
||||
|
||||
try {
|
||||
@@ -118,7 +125,8 @@ export const useVolumeAndBrightness = ({
|
||||
const brightnessPercent = Math.round(newBrightness * 100);
|
||||
onBrightnessChange?.(brightnessPercent);
|
||||
} catch (error) {
|
||||
console.error("Error updating brightness:", error);
|
||||
console.warn("Brightness not supported on this device:", error);
|
||||
brightnessSupported.current = false;
|
||||
}
|
||||
},
|
||||
[onBrightnessChange],
|
||||
|
||||
Reference in New Issue
Block a user