import React, { useState } from 'react' import { AudioPlayer } from '../src/components/AudioPlayer' import { VideoPlayer } from '../src/components/VideoPlayer' import type { SubtitleTrack } from '../src/types' import './App.css' function App() { const [videoUrl, setVideoUrl] = useState('') const [useDemo, setUseDemo] = useState(true) const [subtitleStyleEditorEnabled, setSubtitleStyleEditorEnabled] = useState(true) // Demo video URLs (you can replace with your own) const demoVideoUrl = '/player/ses.mp4' const demoPoster = '/player/poster.svg' const demoGifUrl = 'https://upload.wikimedia.org/wikipedia/commons/2/2c/Rotating_earth_%28large%29.gif' const demoAudioUrl = 'https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3' const demoSubtitles: SubtitleTrack[] = [ { src: '/player/ses.srt', lang: 'tr', label: 'Türkçe', default: true, }, ] const currentVideoUrl = useDemo ? demoVideoUrl : videoUrl return (

🎬 Modern Video Player

A feature-rich, modern video player built with React

{currentVideoUrl ? ( console.log('Playing')} onPause={() => console.log('Paused')} onTimeUpdate={(time) => console.log('Time:', time)} /> ) : (

Enter a video URL or use the demo video

)}
setVideoUrl(e.target.value)} disabled={useDemo} />

GIF ve Ses Önizleme

Yeni medya tiplerinin player içinde nasıl göründüğünü burada test edebilirsiniz.

🖼️ Animated Image (GIF)

VideoPlayer, GIF kaynaklarını otomatik algılayıp minimal görüntü modunda açar.

🎧 Audio Player (.mp3)

MP3/WAV gibi ses dosyaları için ayrı AudioPlayer görünümü.

Features

⌨️ Keyboard Shortcuts

  • Space or K - Play/Pause
  • / - Seek 5s
  • J / L - Seek 10s
  • / - Volume
  • M - Mute/Unmute
  • F - Fullscreen
  • P - Picture-in-Picture
  • 0-9 - Jump to %

📱 Touch Gestures

  • Tap - Play/Pause
  • Double tap left - Rewind 10s
  • Double tap right - Forward 10s
  • Swipe left/right - Seek
  • Swipe up/down - Volume

🎨 Modern UI

  • Clean, minimalist design
  • Smooth animations
  • Custom red theme
  • Auto-hiding controls
  • Responsive layout

🚀 Advanced Features

  • HLS streaming support
  • HTTP Range Request (MP4)
  • Subtitles (VTT, SRT)
  • Subtitle style editor + live preview
  • Multiple audio tracks
  • Playback speed control
  • Quality selector
) } export default App