diff --git a/web/player.html b/web/player.html
index 9aa00a1..eea1a4f 100644
--- a/web/player.html
+++ b/web/player.html
@@ -249,15 +249,28 @@
log('Stream URL: ' + streamUrl.substring(0, 80) + '...');
// Determine stream type and try appropriate player
- if (streamUrl.includes('.m3u8')) {
+ const lowerUrl = streamUrl.toLowerCase();
+
+ // Check for standard video files that should be played directly
+ if (lowerUrl.includes('.mp4') || lowerUrl.includes('.mkv') ||
+ lowerUrl.includes('.avi') || lowerUrl.includes('.webm') ||
+ lowerUrl.includes('.mov')) {
+ log('Detected direct video file, playing directly');
+ await playDirect(streamUrl);
+ }
+ // HLS streams
+ else if (lowerUrl.includes('.m3u8')) {
await playWithHLS(streamUrl);
- } else if (streamUrl.includes('.ts')) {
+ }
+ // MPEG-TS streams
+ else if (lowerUrl.includes('.ts')) {
const success = await playWithMpegTS(streamUrl);
if (!success) {
await playDirect(streamUrl);
}
- } else {
- // Try HLS first, then MPEG-TS
+ }
+ // Unknown format - try HLS first (for FFmpeg generated streams)
+ else {
await playWithHLS(streamUrl);
}
}