My first instinct was to use a bluetooth remote to control the player device, but it would require me to set up a playlist on the player device ahead of time, it limits the ability to play specific videos, and it won't let me control the volume.
Instead I came up with a solution using another Android device as the control device:
Copy videos to the player device
Install Kodi to the player device
Install Kore to the control device
Start portable hotspot on the display device
- Settings > More > Tethering & portable hotspot > Set up Wi-Fi hotspot
- Get password
- Back > enable Portable Wi-Fi hotspot
Connect the control device's wifi to the player device's hotspot
Open Kore on the control device and follow the instructions to enable remote control on the player device. The instructions are also here: Kodi web server
That's enough to enable controlling playback on the player device. However, if nothing is playing on the player and the screen turns off, starting playback from Kore won't turn the screen on. Here's how I worked around that:
Set the display of the player device to never turn off. Based on the answer from here, install Automate and use the flow provided to keep the screen on.
Alternatively, what I did is I created a flow that detects when Kodi is running, and if it is it 1. disables the wifi 2. enables the wifi hotspot 3. turns the media volume all the way up (the volume can be controlled from Kore using the volume buttons) 4. keeps the screen on.
Set up a screensaver on the player device to blank the screen to maximize battery life
- Kodi > Settings > Interface settings > Screensaver > Screensaver mode > Black
Other than higher battery use due to the display workaround, the only other downside I've found is that Kore doesn't support playlists, so you have to create a new queue every time.