{"id":28313699,"url":"https://github.com/mo7ammedd/mpv-configurations","last_synced_at":"2026-02-03T22:06:27.820Z","repository":{"id":270519405,"uuid":"910628958","full_name":"Mo7ammedd/mpv-configurations","owner":"Mo7ammedd","description":"my configurations for MPV Media Player ","archived":false,"fork":false,"pushed_at":"2025-04-21T19:28:55.000Z","size":14,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-08T00:53:22.010Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Mo7ammedd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-12-31T21:36:09.000Z","updated_at":"2025-05-29T22:53:15.000Z","dependencies_parsed_at":"2024-12-31T22:24:13.915Z","dependency_job_id":"d38c6b90-4958-4f40-ab52-343a9e39b056","html_url":"https://github.com/Mo7ammedd/mpv-configurations","commit_stats":null,"previous_names":["mo7ammedd/mpv-keyboard-shortcuts"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Mo7ammedd/mpv-configurations","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mo7ammedd%2Fmpv-configurations","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mo7ammedd%2Fmpv-configurations/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mo7ammedd%2Fmpv-configurations/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mo7ammedd%2Fmpv-configurations/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mo7ammedd","download_url":"https://codeload.github.com/Mo7ammedd/mpv-configurations/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mo7ammedd%2Fmpv-configurations/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29059094,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-03T20:13:53.544Z","status":"ssl_error","status_checked_at":"2026-02-03T20:13:40.507Z","response_time":96,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-05-24T18:11:20.176Z","updated_at":"2026-02-03T22:06:27.803Z","avatar_url":"https://github.com/Mo7ammedd.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# my configrations for MPV Media Player \n\n## Keyboard and Mouse Controls\n### Seek Controls\n- **LEFT and RIGHT**: Seek backward/forward 5 seconds.  \n  `Shift + LEFT/RIGHT`: Exact seek backward/forward 1 second.\n- **UP and DOWN**: Seek forward/backward 1 minute.  \n  `Shift + UP/DOWN`: Exact seek forward/backward 5 seconds.\n- **Ctrl + LEFT/RIGHT**: Seek to the previous/next subtitle (may have restrictions).\n- **Ctrl + Shift + LEFT/RIGHT**: Adjust subtitle delay to sync subtitles to audio.\n- **PGUP and PGDWN**: Seek to the beginning of the previous/next chapter.  \n  `Shift + PGUP/PGDWN`: Seek backward/forward 10 minutes.\n\n### Playback Speed Controls\n- **[ and ]**: Decrease/increase playback speed by 10%.\n- **{ and }**: Halve/double playback speed.\n- **BACKSPACE**: Reset playback speed to normal.\n- **Shift + BACKSPACE**: Undo the last seek (if the playlist entry hasn't changed).\n- **Shift + Ctrl + BACKSPACE**: Mark the current position for later revert.\n\n### Playlist Navigation\n- **\u003c and \u003e**: Go backward/forward in the playlist.\n- **ENTER**: Go forward in the playlist.\n\n### Playback Controls\n- **p / SPACE**: Pause (pressing again unpauses).\n- **.**: Step forward (frame-by-frame).\n- **,**: Step backward (frame-by-frame).\n- **q**: Stop playing and quit.\n- **Q**: Stop playing, quit, and store the current playback position for later resume.\n\n### Volume Controls\n- **/ and ***: Decrease/increase volume.\n- **9 and 0**: Decrease/increase volume.\n- **m**: Mute sound.\n\n### Track Selection\n- **_**: Cycle through available video tracks.\n- **#**: Cycle through available audio tracks.\n- **j and J**: Cycle through available subtitles.\n\n### Subtitle Controls\n- **v**: Toggle subtitle visibility.\n- **z and Z**: Adjust subtitle delay by +/- 0.1 seconds.\n- **r and R**: Move subtitles up/down.\n- **u**: Toggle SSA/ASS subtitle style overrides.\n- **V**: Toggle subtitle VSFilter aspect compatibility mode.\n\n### Screenshot Controls\n- **s**: Take a screenshot.\n- **S**: Take a screenshot without subtitles.\n- **Ctrl + s**: Take a screenshot as the window shows it (with subtitles, OSD, and scaled video).\n\n### Video Controls\n- **f**: Toggle fullscreen.\n- **ESC**: Exit fullscreen mode.\n- **T**: Toggle stay-on-top.\n- **w and W**: Decrease/increase pan-and-scan range.\n- **A**: Cycle aspect ratio override.\n- **d**: Activate/deactivate deinterlacer.\n- **Ctrl + h**: Toggle hardware video decoding.\n\n### Pan and Zoom\n- **Alt + LEFT/RIGHT/UP/DOWN**: Move the video rectangle (panning).\n- **Alt + +/–**: Change video zoom.\n- **Alt + BACKSPACE**: Reset pan/zoom settings.\n\n### Advanced Controls\n- **l**: Set/clear A-B loop points.\n- **L**: Toggle infinite looping.\n- **Ctrl + +/–**: Adjust audio delay (A/V sync) by +/- 0.1 seconds.\n- **o / P**: Show progression bar, elapsed time, and total duration on the OSD.\n- **O**: Toggle OSD states between normal and playback time/duration.\n- **i / I**: Show/toggle statistics overlay (use `0,1,2,3,4` keys to cycle through stats).\n\n### Video Adjustment (if supported)\n- **1 and 2**: Adjust contrast.\n- **3 and 4**: Adjust brightness.\n- **5 and 6**: Adjust gamma.\n- **7 and 8**: Adjust saturation.\n- **Alt + 0**: Resize video window to half its original size.\n- **Alt + 1**: Resize video window to its original size.\n- **Alt + 2**: Resize video window to double its original size.\n\n### Multimedia Keys (if available)\n- **PAUSE**: Pause.\n- **STOP**: Stop playing and quit.\n- **PREVIOUS/NEXT**: Seek backward/forward 1 minute.\n\n### Mouse Controls\n- **Button 3 and 4**: Seek backward/forward 1 minute.\n- **Button 5 and 6**: Decrease/increase volume.\n\n## Configuration Files\n\nMPV uses several configuration files to customize behavior:\n\n### Main Configuration Files\n- **mpv.conf**: Main configuration file\n  - Location (Windows): `%APPDATA%\\mpv\\mpv.conf`\n  - Location (Linux/macOS): `~/.config/mpv/mpv.conf`\n  - via snap (linux): ```nano ~/snap/mpv/current/.config/mpv/mpv.conf```\n- **input.conf**: Custom key bindings\n  - Location (Windows): `%APPDATA%\\mpv\\input.conf`\n  - Location (Linux/macOS): `~/.config/mpv/input.conf`\n\n### Essential Configuration Options for mpv.conf\n\n#### Video Settings\n```\n# Video Settings\nprofile=gpu-hq               # High quality video rendering preset\nscale=ewa_lanczossharp       # High quality video scaling\ncscale=ewa_lanczossharp      # High quality colorspace scaling\nvideo-sync=display-resample  # Sync video to display refresh rate\ninterpolation                # Frame interpolation for smoother playback\ntscale=oversample            # Filter for interpolation\nhwdec=auto-safe              # Hardware video decoding when possible\n\n# Resolution and display\ngeometry=50%                 # Start with window 50% of screen size\nautofit-larger=90%x90%       # Don't allow window larger than 90% of screen\nfullscreen=no                # Don't start in fullscreen mode\n\n# OSD Settings\nosd-level=1                  # Display time and duration\nosd-duration=2000            # Show OSD for 2 seconds\nosd-font='Sans'              # OSD font\nosd-font-size=32             # OSD font size\nosd-color='#FFFFFF'          # OSD font color\nosd-border-color='#000000'   # OSD border color\nosd-bar-h=2                  # Height of OSD bar\nosd-bar-w=90                 # Width of OSD bar as percentage\nosd-bar=yes                  # Show OSD bar during seek\n```\n\n#### Audio Settings\n```\n# Audio Settings\nvolume=80                    # Default volume (0-100)\nvolume-max=100               # Maximum volume\naudio-channels=auto          # Use audio file's native channel layout\naudio-device=auto            # Use default audio device\naudio-pitch-correction=yes   # Pitch correction during audio speed change\naf=scaletempo2=min-speed=0.25:max-speed=4.0  # Audio filter for speed changes\nalang=eng,en,jpn,jp          # Audio language priority\n```\n\n#### Subtitle Settings\n```\n# Subtitle Settings\nsub-auto=fuzzy               # Load subtitles automatically\nsub-file-paths=sub:subs:subtitles  # Look for subtitles in these folders\nslang=eng,en                 # Subtitle language priority\nsub-font='Sans'              # Subtitle font\nsub-font-size=48             # Subtitle font size\nsub-color='#FFFFFF'          # Subtitle font color\nsub-border-color='#000000'   # Subtitle border color\nsub-border-size=2            # Subtitle border size\nsub-pos=95                   # Subtitle position (lower is higher on screen)\n```\n\n#### Screenshot Settings\n```\n# Screenshot Settings\nscreenshot-format=png        # Screenshot format (png, jpg, etc.)\nscreenshot-png-compression=7 # PNG compression level (0-9)\nscreenshot-template='%F-%P-%n'  # Filename template\nscreenshot-directory=~/Pictures  # Save screenshots here\n```\n\n#### Performance \u0026 Cache Settings\n```\n# Cache Settings\ncache=yes                    # Enable cache\ndemuxer-max-bytes=400MiB     # Max size of cache\ndemuxer-max-back-bytes=150MiB  # Max size for backward cache\n\n# GPU Rendering\ngpu-api=auto                 # GPU API (auto, opengl, vulkan, d3d11)\nvulkan-async-compute=yes     # Use async compute with Vulkan\nvulkan-async-transfer=yes    # Use async transfers with Vulkan\n```\n\n#### Miscellaneous Settings\n```\n# Miscellaneous\nkeep-open=yes                # Don't close player after file ends\nsave-position-on-quit=yes    # Remember position when quitting\nwatch-later-directory=~/.config/mpv/watch_later  # Save position here\nautoload-files=yes           # Load related files automatically\nloop-playlist=inf            # Loop playlist infinitely\nreset-on-next-file=pause     # Reset pause status when loading next file\n\n# UI Behavior\ncursor-autohide=1000         # Hide cursor after 1 second\nfit-border=no                # Don't add border when fitting window\n\n# Network Settings\nuser-agent=\"Mozilla/5.0\"     # User agent for HTTP streams\nytdl-format=bestvideo[height\u003c=?1080]+bestaudio/best  # YouTube-dl format selection\n```\n\n### Script Settings\nMPV supports Lua scripts for extending functionality. Scripts go in:\n- Windows: `%APPDATA%\\mpv\\scripts\\`\n- Linux/macOS: `~/.config/mpv/scripts/`\n\n### Common Useful Scripts\n1. **sponsorblock.lua** - Skips sponsored segments in YouTube videos\n2. **autoload.lua** - Automatically loads all videos in the current directory into a playlist\n3. **stats.lua** - Shows detailed playback statistics\n4. **modernx.lua** - Modern UI overlay for MPV\n5. **mpv-thumbnail-script** - Shows thumbnails when hovering over the timeline\n\n### Profile Configuration\nProfiles allow you to have different settings for different types of content:\n\n```\n# High quality profile for movies\n[high-quality]\nprofile=gpu-hq\nscale=ewa_lanczossharp\ncscale=ewa_lanczossharp\nvideo-sync=display-resample\ninterpolation\ntscale=oversample\n\n# Low-quality profile for old content\n[low-quality]\nprofile=fast\nscale=bilinear\ncscale=bilinear\ndscale=bilinear\ninterpolation=no\ncorrect-downscaling=no\n\n# YouTube profile with specific settings for streaming\n[youtube]\nytdl-format=bestvideo[height\u003c=?1080]+bestaudio/best\nforce-window=immediate\nscript-opts=ytdl_hook-try_ytdl_first=yes\ndemuxer-lavf-o=reconnect=1:reconnect_streamed=1:reconnect_delay_max=5\n\n# Apply profiles based on file patterns\n[extension.webm]\nloop-file=inf\n\n[extension.gif]\nloop-file=inf\n\n# Apply profile for 4K content\n[4k]\nprofile-cond=width \u003e= 3840\nhwdec=auto\n```\n\n## Advanced Features\n\n### Hardware Acceleration\nTo enable hardware acceleration:\n```\nhwdec=auto-safe       # Try all hardware decoding methods\n```\nFor specific hardware:\n```\nhwdec=nvdec           # NVIDIA GPU acceleration\nhwdec=vaapi           # Intel/AMD GPU acceleration on Linux\nhwdec=dxva2           # Windows DirectX Video Acceleration\nhwdec=videotoolbox    # macOS hardware acceleration\n```\n\n### HDR Playback Support\nFor HDR video playback:\n```\n# HDR settings\ntarget-trc=pq         # HDR10 transfer function\nhdr-compute-peak=yes  # Dynamic HDR tone mapping\ntone-mapping=mobius   # HDR to SDR tone mapping algorithm\ngamut-mapping-mode=desaturate  # Color space mapping algorithm\n```\n\n### Upscaling Settings\nFor high-quality upscaling:\n```\n# High quality upscaling\nglsl-shaders=\"~/.config/mpv/shaders/FSRCNNX_x2_8-0-4-1.glsl\"  # AI upscaling shader\nscale=ewa_lanczossharp\ncscale=ewa_lanczossharp\ndscale=mitchell\ncorrect-downscaling=yes\nlinear-downscaling=yes\nsigmoid-upscaling=yes\n```\n\n### Audio Enhancement\nFor better audio:\n```\n# Audio enhancement\naf=loudnorm=I=-16:TP=-3:LRA=4   # Audio normalization\naudio-spdif=ac3,dts,eac3,dts-hd  # Pass through lossless audio to receiver\n```\n\n### Protocol-Specific Settings\n```\n# Network protocols settings\n[protocol.http]\nhls-bitrate=max       # Use maximum quality for HLS streams\ncache=yes\ndemuxer-max-bytes=150MiB\ndemuxer-readahead-secs=20\n\n[protocol.https]\nprofile=protocol.http\n\n[protocol.ytdl]\nprofile=protocol.http\n```\n\n### Automatic Recovery from Playback Errors\n```\n# Error recovery\nhr-seek-framedrop=yes     # Drop frames when seeking for smoother playback\ndemuxer-thread=yes        # Use a separate thread for demuxing\ndemuxer-readahead-secs=10 # Read ahead to prevent stuttering\n```\n\n### Custom Shader Support\nFor film grain, denoising, or other effects:\n```\n# Shader examples\nglsl-shaders=\"~/.config/mpv/shaders/KrigBilateral.glsl:~/.config/mpv/shaders/adaptive-sharpen.glsl\"  # Multiple shaders\n```\n\n## Troubleshooting Tips\n\n1. **Playback Issues**\n   - Try different hwdec values: `hwdec=no`, `hwdec=auto`, or specific ones like `hwdec=nvdec`\n   - Reduce settings: `profile=fast`\n   - Disable fancy scaling: `scale=bilinear`, `cscale=bilinear`\n\n2. **Performance Problems**\n   - Reduce cache settings: `demuxer-max-bytes=50MiB`\n   - Disable interpolation: `interpolation=no`\n   - Use faster scaling algorithms: `scale=bilinear`\n   - Enable hardware decoding: `hwdec=auto-safe`\n\n3. **Audio Sync Issues**\n   - Adjust audio sync: `audio-delay=0.05` (50ms delay)\n   - Try different video-sync modes: `video-sync=audio`\n\n4. **Subtitles Not Loading**\n   - Check subtitle paths: `sub-file-paths=sub:subs:subtitles`\n   - Enable verbose logging: `--msg-level=sub=trace`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmo7ammedd%2Fmpv-configurations","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmo7ammedd%2Fmpv-configurations","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmo7ammedd%2Fmpv-configurations/lists"}