TraktForVLC allows scrobbling VLC content to trakt.tv.
TraktForVLC 2.x works by using together a lua VLC module and a Python helper script in order to find information on the media you are watching. Contrary to previous versions of TraktForVLC, the VLC module allows for a direct binding in your media activity (play, pause, stop) and thus to take immediate actions on your trakt.tv account.
This version of TraktForVLC has been rewritten from scratch.
All licensing and used code is mentionned directly in the code source, except for the external libraries and resources information provided below.
Copyright (C) 2017-2018 Raphaël Beamonte <raphael.beamonte@gmail.com>
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
The vlc-logo-1s.mp4
file in this repository, also distributed in the binary files for Windows, contains a VLC logo that is not owned by this project. This logo is owned by its authors. VideoLAN can be reached on their website.
TraktForVLC uses external libraries and APIs for the media resolution:
- The OpenSubtitles API
- The TVDB API (through the tvdb_api Python package); TV information is provided by TheTVDB.com, but we are not endorsed or certified by TheTVDB.com or its affiliates.
- The IMDB API (through the imdbpie Python package)
- The TMDb API (through the tmdbsimple Python package); This product uses the TMDb API but is not endorsed or certified by TMDb.
TraktForVLC is not endorsed or certified by any of these external libraries and resources owners.
Installers are provided in the GitHub release section. The latest release is available here; however, we highly recommend using a stable release if you are not sure of what you are doing.
Once you have found the installer that corresponds to your operating system and downloaded it, simply running it will allow you to install TraktForVLC with the default parameters.
On Windows, you can right-click and run the file with the administrator privileges to start the install process. The administrator privileges are required as, on Windows, the Python helper is installed as a Windows service.
On Linux and MacOS, make the file executable (using chmod +x file
) and then run it in the command line (./TraktForVLC_version_os
).
At the end of the first installation, the initial configuration will automatically be started by the installer. This process aims at authorizing TraktForVLC to access your trakt.tv account.
Depending on your OS, the process is presented a bit differently:
- On Linux and MacOS: a message giving instructions will appear directly at the end of the installation logs
- On Windows: a VLC window will be started and the screen will soon show a message giving instructions
The message shown should look like the following:
TraktForVLC is not setup with Trakt.tv yet!
--
PLEASE GO TO https://trakt.tv/activate
AND ENTER THE FOLLOWING CODE:
9EC4F248
The instructions are to go to a URL and enter a given code. Please do while keeping the process (VLC window on Windows) active, and wait after entering the code and validating the authorization that the process stops by itself. If you stops the process before then, you will need to restart the initial configuration manually.
To restart the initial configuration process manually, the following command might be used: ./TraktForVLC_version_os init_trakt_auth
The configuration file for TraktForVLC is a JSON file named trakt_config.json
.
The trakt_config.json
file is located in your VLC configuration directory. Depending on your OS, the VLC configuration directory will be located at the following places:
- Linux:
~/.config/vlc
- MacOS:
~/Library/Preferences/org.videolan.vlc
- Windows:
%APPDATA%/vlc
(where%APPDATA%
is the value of theAPPDATA
environment variable)
config_version
: The version of TraktForVLC that generated the configuration file (present for retrocompatibility purposes)cache
: Configuration relative to the media cache used by TraktForVLCdelay
: The delays for operations performed on the media cachesave
: Delay (in seconds) between save operations on the cache (default:30
)cleanup
: Delay (in seconds) between cleanup operations on the cache (default:60
)expire
: Time (in seconds) after which an unused entry in the cache expires (default:2592000
- 30 days)
media
: Configuration relative to media resolution and scrobblinginfo
: Configuration relative to media resolutionmax_try
: Maximum number of times we will try to resolve the current watched item through IMDB (default:10
)try_delay_factor
: Delay factor (in seconds) between try attempts; iftry_delay_factor
isf
and attempt isn
, next try will be aftern*f
seconds (default:30
)
start
: Configuration relative to media watching statustime
: Time after which a media will be marked as being watched on trakt.tv (default:30
)percent
: Percentage of the media watched after which the media will be marked as being watched on trakt.tv (default:.25
- 0.25%)movie
: Whether or not to mark movies as being watched (default:true
)episode
: Whether or not to mark episodes as being watched (default:true
)
stop
: Configuration relative to media scrobblingwatched_percent
: The minimum watched percent for a media to be scrobbled as seen on trakt.tv; i.e. you must have watched at least that percentage of the media, for it to be scrobbled (default:50
)percent
: The minimum percentage of the media duration at which you must currently be for the media to be scrobbled as seen (if the media has a duration of100mn
, and you configured thepercent
as90
, you must at least be at the90th
minute of the media) (default:90
)movie
: Whether or not to scrobble movies as watched (default:true
)episode
: Whether or not to scrobble episodes as watched (default:true
)check_unprocessed_delay
: Delay (in seconds) between checks for medias that should be scrobbled as watched but have not been for any reason (no internet connection, media not identified yet, etc.) (default:120
)delay
: Delay (in seconds) between scrobbles for a given media (any subsequent scrobble in the given delay will be ignored) (default:1200
- 20 minutes)
helper
: Configuration relative to the helper toolmode
: The mode of the helper. Can be one ofstandalone
orservice
(default:standalone
)service
: The service configuration, when the helper is installed as a servicehost
: The host on which the service is listening (default:localhost
)port
: The port on which the service is listening (default:1984
)
update
: To configure the automatic updates for TraktForVLCcheck_delay
: Delay (in seconds) in between checks for new updates, disabled if set to0
(default:86400
- 24 hours)release_type
: The type of releases to look for. Can be one ofstable
,rc
,beta
,alpha
orlatest
(default:stable
)action
: The action to perform automatically when a new release is found. Can be one ofinstall
,download
orcheck
(default:install
)
Please use the GitHub integrated issue tracker for every problem you can encounter. Please DO NOT use my email for issues or walkthrough.
When submitting an issue, please submit a VLC logfile showing the error. You can start VLC in debug mode (--vv
option) to obtain more thorough logs.
Please be careful to remove any personnal information that might still be in the logfile (password, identification token, ...) before putting your file online.