VLC Not Playing Video? 7 Fixes That Actually Work

Video Playback Issues Last updated: Applies to: All platforms · VLC 3.0.x

"VLC is not playing video" covers a surprisingly wide range of symptoms: the file opens but nothing happens, playback immediately stops, the timeline shows 00:00, or VLC reports an error and closes the window. The good news: in most cases the media file is fine and the problem lives in VLC’s decoding pipeline, the file’s metadata, or a stale configuration. Work through these fixes in order — fix 1 resolves roughly half of all reports, and by fix 4 the large majority of cases are solved.

Why does this happen?

  • Missing or broken codec in the specific file — uncommon with stock VLC (it bundles virtually every codec), but some exotic containers or corrupt moov atoms (MP4 index) block playback.
  • Hardware acceleration failing on a specific codec — your GPU decodes the stream badly and VLC falls back to a black/blank window.
  • Corrupt media file or incomplete download — truncated MP4/MKV files lack the index needed to seek and play.
  • Wrong or corrupted VLC preferences — e.g. a broken video output module saved from a previous configuration.
  • Outdated VLC with demuxer bugs — older 3.0.x builds crash or stall on newer container variants.

How to fix it

Fix 1Update VLC to the latest version

Applies official bug and security fixes (current stable: 3.0.23)

  1. In VLC, go to Help > Check for Updates.

    VLC compares your version with the latest.

  2. If an update exists, download it from the official page videolan.org.

    The new installer is downloaded.

  3. Install over your current version (settings are kept) and restart.

    VLC runs the new version.

NoteVLC 3.0.23 is the 24th update to the 3.0 branch and includes a large batch of demuxer and stability fixes — many "not playing" issues are already fixed there.

Fix 2Disable hardware-accelerated decoding

Fixes black/green screen, pixelation and stuttering in most cases

  1. Open VLC and go to Tools > Preferences (or press Ctrl+P on Windows/Linux, Cmd+, on macOS).

    The Preferences window opens.

  2. Click the Input / Codecs tab on the left.

    Codec-related settings are shown.

  3. Find "Hardware-accelerated decoding" and set it to Disable.

    The dropdown now reads "Disable".

  4. Click Save, then fully restart VLC (close every VLC window, not just the video).

    VLC restarts with software decoding.

  5. Play the problematic file again.

    If the issue is gone, the GPU decoder was the culprit.

NoteThis forces CPU decoding. Slightly higher CPU usage is normal, but playback becomes stable. If it works, you can later re-enable it after updating your graphics driver.

Fix 3Switch the video output module to Automatic (or OpenGL/Direct3D11 — test each)

Resolves black screen and rendering glitches on specific GPU setups

  1. Go to Tools > Preferences > Video.

    Video settings open.

  2. Set "Output" to Automatic (or OpenGL/Direct3D11 — test each).

    The output module changes.

  3. Click Save and restart VLC.

    VLC restarts.

  4. Reopen the file and check the picture.

    The video should now render correctly.

NoteIf the new module works, keep it. Different GPUs and drivers behave differently, so testing is the fastest way to find a stable output.

Fix 4Test the file in another player and re-download if needed

Confirms whether the file itself is broken

  1. Open the same file in Windows Media Player / QuickTime / mpv.

    You see whether any player can decode it.

  2. If the file is a download, re-fetch it (incomplete downloads are the #1 cause of "not playing").

    A complete file usually plays.

  3. For MP4 files with audio but no picture, remux with ffmpeg -i input.mp4 -c copy output.mp4 to rebuild the index.

    The remuxed file plays in VLC.

NoteVLC is famously tolerant, so if even VLC refuses, the file is very likely truncated or corrupted — re-downloading usually ends the saga.

Fix 5Reset VLC preferences to defaults

Clears corrupted settings that cause crashes, black screens and audio issues

  1. Close VLC completely.

    No VLC process is running.

  2. Open a command prompt (Win+R → cmd) or terminal.

    A command line is available.

  3. Run: vlc --reset-config (Windows/Linux) — on macOS delete ~/Library/Preferences/org.videolan.vlc instead.

    VLC preferences are restored to defaults.

  4. Launch VLC and re-apply only the settings you actually need.

    VLC starts with clean settings.

NoteThis erases all custom preferences (including shortcuts and skins). Export your config first under Tools > Preferences > All > Interface if you want a backup.

Fix 6Test with a portable VLC build

Isolates configuration problems without touching your install

  1. Download the portable/zip build from the official mirrors (videolan.org > Windows > zip).

    A portable VLC folder is extracted.

  2. Run vlc.exe directly from that folder.

    VLC runs with clean, default settings.

  3. Play the problematic file in the portable copy.

    You can now tell whether the problem is config-related or file-related.

NoteIf the portable build plays the file fine, your installed configuration is the problem — do a full reset or reinstall.

Fix 7Do a clean reinstall of VLC

Fixes corrupt installs, broken plugins cache and version conflicts

  1. Uninstall VLC via Settings > Apps (Windows) or drag VLC to Trash (macOS).

    VLC is removed from the system.

  2. Delete the leftover config folder: %APPDATA%\vlc (Windows), ~/Library/Preferences/org.videolan.vlc (macOS) or ~/.config/vlc (Linux).

    All VLC data is gone.

  3. Download the latest version only from the official source: videolan.org/vlc.

    A clean official installer is downloaded.

  4. Install and test your file again.

    A fresh install usually resolves stubborn issues.

NoteNever download VLC from third-party mirrors — repackaged builds are a common source of crashes and bundled adware.

Advanced fixes

Fix 1Play with the demuxer override

Forces VLC to use a different container parser

  1. Go to Tools > Preferences > Input / Codecs > "Demuxer" and set it to "MP4/MOV demuxer" or "Matroska demuxer" for the container in question.

    VLC parses the file with the chosen demuxer.

  2. Save, restart VLC and reopen the file.

    Playback starts with the forced demuxer.

NoteUse this only when the auto-detected demuxer fails on a specific file — it can break other files, so switch back to Automatic afterwards.

Fix 2Start VLC with a clean interface (dummy mode)

Finds out whether the GUI is causing the crash

  1. Close VLC.

    VLC is closed.

  2. Open a terminal and run: vlc -I dummy.

    VLC starts without the GUI (no window).

  3. Play a file: vlc -I dummy "path\to\file.mp4".

    If audio plays, the core works and the GUI was at fault.

  4. Restart normally afterwards.

    Normal interface is restored.

NoteIf dummy mode plays files fine, reset preferences or disable interface extensions — see the fixes above.

How to avoid it in the future

  • Always complete downloads before opening (check file size vs. the server listing).
  • Keep VLC on the latest stable branch — demuxer fixes land constantly.
  • If you archive media, verify integrity with ffmpeg -v error -i file -f null - occasionally.

Frequently asked questions

Why does VLC not play MP4 files?
MP4 playback failure is usually one of three things: an incomplete download (missing moov atom), hardware decoding failing on H.264/HEVC, or a demuxer bug in an old VLC. Update VLC first, then disable hardware acceleration.
Why does VLC close immediately when I open a video?
That is a crash, not a playback refusal. See our crash guides — the usual causes are Lua extensions and corrupted preferences, both fixed by resetting config.
Can VLC play every video format?
VLC bundles most codecs, but exotic or DRM-protected formats (some iTunes, some streaming downloads) will not play. If VLC refuses, check whether the format uses DRM.
Does VLC need codec packs?
No. Installing third-party codec packs on Windows often breaks VLC. VLC brings its own decoders — keep the system clean.
VLC plays audio but no picture — what does that mean?
The file decodes, but the video renderer fails. Disable hardware acceleration and switch the video output module — see the black screen guide.

Summary

Update VLC to the latest version — Applies official bug and security fixes (current stable: 3.0.23). If it does not help, work through the remaining fixes in order: each targets a different layer of the problem. Most users resolve this issue by fix 3 at the latest. Keep VLC updated (current stable: 3.0.23) and revisit this guide when a new VLC version ships.