Skip to content

VideoTogether/vlc-pause-click-plugin

 
 

Repository files navigation

Pause Click plugin for VLC

VLC plugin that allows you to pause/play a video by clicking on the video image.

Can be configured to work nicely with double-click-to-fullscreen by enabling "Prevent pause/play from triggering on double click" option in the settings. By default it pauses on every click instead.

Table of contents

Supported versions of VLC

VLC 2.1, 2.2 and 3.0 are supported.

VLC versions below 2.1 are not supported. However, there is a lua extension that should work with VLC 2.0 and possibly even earlier versions of VLC.

Support for the newer VLC versions will be available as they get released and as I get time to work on it.

There is an experimental support for the nightly, in-development version of VLC (VLC 4.0). The development version of VLC often breaks both API and ABI, which can result in the plugin failing to build and the plugin built for nightly VLC of today be non-functional in newer nightly VLC builds. Due to this, the support for nightly VLC is very limited and low-priority. The plugin is not guaranteed to work correctly with it, or even work at all. If the plugin breaks to build against newer nightly VLC versions, it might not get fixed for quite some time. It's also quite possible that nightly VLC could have its own bugs that prevent the plugin from working that are out of my control to fix.

Install

Windows

Download an appropriate archive:

Version/Bitness VLC 32 bit VLC 64 bit
VLC 2.1 Download Download
VLC 2.2 Download Download
VLC 3.0 Download Download

For the nightly VLC 4.0 see the nightly builds.

Extract the archive at {VLC}\plugins\video_filter\, where {VLC} is the directory the VLC was installed into. By default, the 32-bit VLC installs into C:\Program Files (x86)\VideoLAN\VLC\ and the 64-bit one into C:\Program Files\VideoLAN\VLC\.

Then follow the usage instructions below on how to enable the plugin.

If you want to build the plugin binary yourself, take a look at the build instructions.

macOS

Download an appropriate archive:

Version/Bitness VLC 64 bit
VLC 2.1 Download
VLC 2.2 Download
VLC 3.0 Download

For the nightly VLC 4.0 see the nightly builds.

Extract the archive at /Applications/VLC.app/Contents/MacOS/plugins/

Then follow the usage instructions below on how to enable the plugin.

If you want to build the plugin binary yourself, take a look at the build instructions.

Linux

Note that Snap versions of VLC are not supported. Not supported in a sense that I haven't figured out how to build the plugin such that it would be ABI compatible with the Snap VLC and how to make the Snap VLC load the plugin. If someone could figure that out and contribute their findings - that would be very helpful. This Snap VLC discussion might be useful.

Debian

Get required libraries and tools:

sudo apt-get install build-essential pkg-config libvlccore-dev libvlc-dev

Get the latest release of the plugin:

sudo apt-get install git
git clone https://github.com/nurupo/vlc-pause-click-plugin
cd vlc-pause-click-plugin
git checkout \
  "$(git tag --list | grep -P '^(\d+).(\d+).(\d+)$' | \
    sed "s/\./ /g" | \
    sort -snk3,3 | sort -snk2,2 | sort -snk1,1 | \
    tail -n 1 | \
    sed 's/ /\./g')"

(Or alternatively download the latest release's tarball, extract it and cd into it)

Build and install:

make
sudo make install

Then follow the usage instructions below on how to enable the plugin.

If these build instructions don't work for you (perhaps you are using a non-Debian-derived Linux distribution), there are more generic build instructions available.

Arch Linux

There is vlc-pause-click-plugin package available in the AUR repository.

Usage

  1. Restart VLC to load the newly added plugin [screenshot]
  2. Go into advanced preferences: Tools -> Preferences -> Show settings -> All [screenshot] [screenshot]
  3. Enable the plugin with a checkbox: (in advanced preferences) Interface -> Control Interfaces -> Pause/Play video on mouse click [screenshot]
  4. Enable the plugin with a checkbox: (in advanced preferences) Video -> Filters -> Pause/Play video on mouse click [screenshot]
  5. Change the plugin settings however you like: (in advanced preferences) Video -> Filters -> Pause click [screenshot]
  6. Restart VLC for settings to take place [screenshot]
  7. Play a video
  8. Click on the video picture to pause/play the video

Make sure you have checked both of "Pause/Play video on mouse click" checkboxes per #3 and #4! It's a very common mistake to skip one of those.

Troubleshooting

I don't see any plugin-related options described in Usage instructions in my VLC preferences

  • Make sure to restart VLC after you have put the plugin .dll (Windows) or .so (Linux) or .dylib (macOS) in the appropriate directory.
  • Make sure you have downloaded the appropriate version of the plugin for the VLC you are trying to use it with. Plugin's version and bitness should match the version and bitness of the VLC you are trying to use the plugin with. Plugin's bitness has nothing to do with the operation system bitness. For example, if you use 32-bit VLC, it doesn't matter whether your Windows is 32-bit or 64-bit, you should use 32-bit version of the plugin, because it matches the bitness of the VLC you use.
  • Some users have reported that they had to run the VLC executable with --reset-plugins-cache flag once for the plugin to appear in the GUI.

I do see the plugin-related options described in Usage instructions in my VLC preferences, but the plugin still doesn't work

  • Double-check that you have followed Usage instructions closely, especially 3rd and 4th points. Look at the screenshots.
  • Some users have reported that they had to re-install VLC and select "Delete preferences and cache" in the installer for the plugin to work.

If the issue persists, open an Issue in this repository and I will try to help.

Green video image

When playing interlaced videos in VLC 3.0 on Windows using Direct3D11 hardware-accelerated decoding, the first interlaced video will play fine, but the following ones will play showing a green video image (while still correctly playing the sound).

This is a known bug in VLC 3.0 and it has to be fixed in VLC, it's not something that can be fixed in our plugin. The upcoming VLC 4.0 has this bug fixed, however it's unlikely that the fix will be back-ported to VLC 3.0.

You can see this issue report for more information.

There are several possible workarounds:

  • Enable "Direct3D11 deinterlace filter" in: Tools -> Preferences -> (All) -> Video -> Filters

    Note that this results in x2 GPU usage due to additional video format conversions this option makes.

  • Disable hardware-accelerated decoding.

    You can do so in: Tools -> Preferences -> (Simple) -> Input / Codecs -> Hardware-accelerated decoding

    Note that this results in higher CPU usage, since the video is now decoded in software using the CPU.

  • Restart VLC every time you want to play a second interlaced video in a VLC session.

  • If you have Intel integrated graphics, you could try making VLC use that for its hardware-accelerated decoding.

It works for videos but not for audio-only files

That's not a bug, that's the expected behavior due to how the plugin and VLC work.

To know when a user clicks their mouse, the plugin implements the video filter interface of VLC, which allows it to react on mouse clicks done on the video surface/image. When playing audio-only files, VLC doesn't create any video surface and thus doesn't load any of video filter plugins, so the plugin simply doesn't get loaded and can't react to mouse clicks.

There is, however, a creative way to make the plugin work on audio-only files -- enable an audio visualization via Audio -> Visualizations menu. Enabling an audio visualization will force VLC to create a video surface for the visualization and load the plugin. Now, if you click on the visualization, the audio should pause. All visualizations seem to work aside from the 3D spectrum one. If you are on Linux, depending on how VLC is packaged in your distribution, you might need to install an additional package to enable audio visualizations, despite them already being listed in the GUI (e.g. vlc-plugin-visualization package in Debian).

License

LGPLv2.1+

About

Plugin for VLC that pauses/plays video on mouse click

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 75.3%
  • Shell 20.5%
  • Makefile 2.3%
  • Dockerfile 1.9%