A Python package and command line interface to control video players for MultiViewer For F1, the best way to watch Formula 1.
- Command line interface for controlling MultiViewer For F1. Useful for integrations with control interfaces like StreamDeck
- Pythonic interface for controlling MultiViewer For F1. No GraphQL needed!
- Type hints
- Full documentation
- Test coverage
- black Praise the Dark Lord
The latest version can be installed via pip.
$ pip install mvf1
$ mvf1-cli --help
Displaying all players
>>> from mvf1 import MultiViewerForF1
>>> remote = MultiViewerForF1()
>>> remote.players
[6: INTERNATIONAL, 7: PER]
Pause all players
>>> from mvf1 import MultiViewerForF1
>>> remote = MultiViewerForF1()
>>> for player in remote.players:
>>> player.mute()
{'data': {'playerSetMuted': True}}
{'data': {'playerSetMuted': True}}
Retrieve specific player
>>> from mvf1 import MultiViewerForF1
>>> remote = MultiViewerForF1()
>>> player = remote.player(6)
>>> player.state
{'ts': 1677168293.21, 'paused': False, 'muted': True, 'volume': 100, 'live': False, 'currentTime': 10.002025, 'interpolatedCurrentTime': 363.656025}
Switch stream of player to data channel
>>> from mvf1 import MultiViewerForF1
>>> remote = MultiViewerForF1()
>>> player = remote.player(6)
>>> player.switch_stream('DATA')
{'data': {'playerCreate': '12'}}
Synchronize all players to specific player
>>> from mvf1 import MultiViewerForF1
>>> remote = MultiViewerForF1()
>>> player = remote.player(6)
>>> player.sync()
{'data': {'playerSync': True}}
Synchornize all players to player streaming broadcast commentary
>>> from mvf1 import MultiViewerForF1
>>> remote = MultiViewerForF1()
>>> remote.player_sync_to_commentary()
{'data': {'playerSync': True}}
To hack on the project, clone the GitHub repo:
$ git clone https://github.com/RobSpectre/mvf1
Then install in a virtualenv.
$ pip install -e ./
The project uses tox for tests. Simply run from project root
$ tox
- Written by Rob Spectre.
- Released under MIT License.
- Software is as is - no warranty expressed or implied, diggity.
- This package is not developed or maintained by MultiViewer For F1 or Formula 1 TV.
- Shout out to the excellent MultiViewer For F1 team! This app absolutely changed how I enjoy Formula 1.
- 🏎️ ¡Vamos Checo! 🏎️