Cavern Remote user guide
Cavern Remote
Cavern Remote is a complete media player remote control webpage for Windows hosted in MPC-HC with a responsive UI. It takes the default MPC-HC remote website and extends the browser and controller with new features. Next to basic player controls, it adds a shader preset selector, Equalizer APO configurator, and keyboard/mouse control. The Remote is split into separate pages:
- Browser: Browse your local and labeled network drives for files to play.
- Controls: Basic playback info and controls with picture mode (shader preset) and sound mode (audio preset) selection, audio/subtitle track switching, and screen resizing.
- Corrections: Move or resize the screen if the content does not fit correctly. Audio delay is also adjustable from here.
- DVD: DVD menu navigation and audio/subtitle/angle selectors.
- Pro: Player menu control, playlist handling, fine controls, debug and setup options.
- Lights: Control Arduino-based ambiend lighting solutions.
Progressive Web App
Cavern Remote supports PWA. Add Cavern Remote to your phone's home screen from its browser, and use it like an app.
Licence
The source code, just like the compiled software, is given to you for free, but without any warranty. It is not guaranteed to work, and the developer is not responsible for any damages from the use of the software. You are allowed to make any modifications, and release them for free under this licence. If you release a modified version, you have to link this website as its source. You are not allowed to sell any part of the original or the modified version. You are also not allowed to show advertisements in the modified software. If you include these code or any part of the original version in any other project, these terms still apply.
Setting up Cavern Remote
- Install MPC-HC. The recommended version is by clsid2.
- In MPC-HC options, under Web Interface, enable it on any port, and set these:
- "Serve pages from" - tick this, and browse Cavern Remote's "web" folder.
- "CGI handlers" - set this to Cavern Remote's "handler.exe", like
.md=C:\Cavern Remote\handler\handler.exe;
, but use the location you unzipped Cavern Remote to. - Check your local IP (open a command prompt and use the
ipconfig
command and look forIPv4 Address
) and port (in MPC-HC's Web Interface settings), and merge them like<IPv4 address>:<port>
. This will be the web address that opens Cavern Remote in your browser or on your phone. Create a shortcut if it's convenient. - Check all optional setup tasks, and do the ones you need.
Optional: run MPC-HC as admin
For full functionality (keyboard, mouse, and Equalizer APO control), MPC-HC has to run as admin. This is required because Equalizer APO keeps its configuration files in the Program Files folder, and admin rights are needed to modify those. For full transparency and as proof that it is not malicious, the source code of the command handler is available on GitHub.
To set up MPC-HC with admin rights, open its properties from the installation directory, go to the Compatibility, and in the settings for all users window, you will find a check box to run as admin.
Optional: start MPC-HC with the computer
If you didn't give admin right to MPC-HC, simply create a shortcut for it in the Startup folder of your Start Menu. To open this folder, copy this path in the file browser:
%appdata%\Microsoft\Windows\Start Menu\Programs\Startup
.
For applications that run with admin rights, the Start Menu version will not work, nor adding an entry in the registry. This applications require a new task in the Task Scheduler with the following options:
- Run with the highest privileges (tick on the first tab)
- On the Triggers tab, add a new trigger after login.
- On the Actions tab, add a new action to open MPC-HC.
If you use SVP, it also has to run as admin, and needs a separate task to start with the system.
Optional: setup shader selection (picture mode)
- Navigate to the Player/Shaders page in MPC-HC's options.
- Create you presets here. A recommended source of shaders is the Cinema Shader Pack.
- Open
web\_cavern.js
in any text editor and add the names of your presets to theshaderPresetNames
list. Preserve the format of the array.
Optional: setup Equalizer APO support (sound mode)
- In
handler\apopath.txt
, set the location of Equalizer APO's config folder. - Add any custom presets in the
presets
folder. These must be a replacement to Equalizer APO's mainconfig.txt
, and keep in mind that these will overwrite the active configuration when selected. Make a backup ofconfig.txt
in Equalizer APO's config folder first, or use Cavern Remote's backup feature on the Pro page. - Open
web\_cavern.js
in any text editor and add the names of your presets to theapoPresetNames
list. Preserve the correct format, check the other array on how to do this properly, and don't include the .txt extensions.
Optional: setup ambient lighting control
The ambient lighting is using the Firmata protocol. Use a board on a serial port that supports Firmata, Arduino is one of them. In case of any Arduino, a StandardFirmata example should be loaded on the target. All configuration
is in web\_cavern.js
, including the port and the controlled pins. Cavern Remote only controls 2 relays with 2 ports or 4 relays with pairs in parallel. The wiring guide is:
- The
relayPowerRed
andrelayGreenBlue
pins should connect to the Vcc pins of +12V/red and green/blue relays' respectively. If you use single relays, split the Vcc between both enable pins. - Wire the R/G/B relays to NO and +12V to NC.
- JDVcc should be supplied from a different source than the Vcc pins for current distribution. Ground distribution should also be considered between all ground pins of the Arduino.
- The other pin variables set the signal pins which control each relay (active high). Also set and check the COM port.
Location
Location in the player's file system. To list all available drives, select the Root button. Network drives can be listed there by assigning a letter to them.
Search
Filter the files by searching in their names. The filtering happens every time you enter a letter. The Reset button clears the search.
Media type
Filter the files in the folder by extension. Video lists all the files usually containing video (like MKV or MP4), and Audio does the same for files with extensions usually used for audio (like WAV or OGG).
Pressing the left or right arrow keys also navigates between these filters.
Browser
Click a folder to load its contents or click a file to play in MPC-HC. A shuffle folder button is available next to Name, and files can be sorted by name or date. The up and down arrow keys could also be used to
navigate the list, while pressing Enter selects the currently highlighted item.
Status
This field shows the playback state, the file name or title of the content playing (this can be configured in MPC-HC's settings), and has a link to the Browser.
Controls
Basic player controls:
- Jump to previous file or chapter
- Play
- Pause
- Stop
- Jump to next file or chapter
Jump
Instant time jumps, configurable from MPC-HC:
- Large jump back (default: -20 seconds)
- Medium jump back (default: -5 seconds)
- Medium jump forward (default: 5 seconds)
- Large jump forward (default: 20 seconds)
Volume
Controls over MPC-HC's volume:
- Mute with a text field showing if it's muted
- Manual volume setting with a slider and apply button
- Volume step down (-5%)
- Volume step up (5%)
Seek
Manual playback position setting either on a slider or by manual input.
Repeat
Content repeat control:
- Enable/diable repeat
- Repeat mode: single file
- Repeat mode: entire folder/playlist
- Set start point of A-B repeat
- Set stop point of A-B repeat
- Clear A-B repeat
Content
Audio and subtitle track controls.
Screen
Basic video scaling control:
- 50% image size
- 200% image size
- Touch frame from inside (default)
- Touch frame from outside (hides black bars)
- Windowed mode
- Full screen
Picture mode
Shader preset selection, which has to be manually configured first. A tutorial for this can be found in the installation instructions.
Sound mode
Equalizer APO configuration selection, which has to be manually configured first. A tutorial for this can be found in the installation instructions.
This feature requires MPC-HC running with administrator privileges and a correctly set up CGI handler.
Move image
Reposition the video on the screen.
Scale image
Scale the video in any dimension.
Aspect
Scale the video to preset aspect ratios if the SAR or DAR would be wrong.
Audio delay
Manual audio delay correction for lip sync.
DVD navigation
Menu navigation directions and back/exit buttons. For MPC-HC navigation, go to the Pro page.
Menus
Links to main DVD menus.
Content
Audio and subtitle track controls with angle selection if the content supports it.
Player menu
Open/close and navigate MPC-HC's menus. The top left button opens the File menu, and from there, you can navigate using the arrows and the select button in the center.
The top right button simulates the press of the Esc key, which closes the opened context menu, but can also stop playback and exit full screen.
This feature requires MPC-HC running with administrator privileges and a correctly set up CGI handler.
Playlist
Show/hide the playlist on the bottom panel, and navigate it.
OS volume
Control the operating system's volume or mute it. The feedback is in text, and there is no slider, as this might be used for equipment protection.
This feature requires MPC-HC running with administrator privileges and a correctly set up CGI handler.
Fine navigation
Navigation frame by frame or between keyframes.
Layout
Choose between preset window layouts or toggle individual elements.
Debug
Use the Tearing test to check if the framerate is consistent.
Setup
Click the button to backup the current Equalizer APO configuration as the Manual option in Sound mode.
This feature requires MPC-HC running with administrator privileges and a correctly set up CGI handler.
Master
Turn on or off all connected lights.
Color picker
Use a color preset and toggle lights accordingly.
Manual relay control
Manually cut power supply or toggle individual colors.