aboutsummaryrefslogtreecommitdiffhomepage
path: root/player
Commit message (Collapse)AuthorAge
...
* stats: rescale graphs to make the average align with the center, if possibleGravatar Niklas Haas2017-10-09
| | | | | For vsync measurements this is not currently done because they don't track their average
* stats: add support for `vo-passes`, which replaces `vo-performance`Gravatar Niklas Haas2017-10-09
| | | | | | | | | | | Due to the large amount of per-pass data, the function takes a parameter indicating whether or not to print a simplified view instead. The overall intent is to print the simplified view for now, but supposed printing the full view on a dedicated "tab" (or extra view type), and as such, `o.print_perfdata_passes` will go away again. I've only introduced it for now so users can play around with this functionality if they want to, until Argon- gets around to implementing stats "tabs".
* stats: update HDR peak for upstream changesGravatar Niklas Haas2017-10-09
| | | | | This no longer reports cd/m² but now reports a relative peak as a multiple of the SDR reference brightness.
* stats: add support for deprecated propertiesGravatar Julian2017-10-09
| | | | | | | | | | | | | | Previously, we used a property and when it was unavailable we assumed it doesn't exist before assuming it really is just unavailable. This lead to unnecessarily falling back to deprecated properties which made mpv print deprecation warnings. Now we can really check if a property is not known to mpv. The alternative would've been to check the error part of mp.get_property and perform string comparisons on the returned error message. Not sure if supporting old mpv versions is actually worth it though. Fixes #37 #36
* stats: comment to remind me about deprecated propertiesGravatar Julian2017-10-09
|
* stats: add new versions of decoder and VO dropped frame countsGravatar Ricardo Constantino2017-10-09
|
* stats: put vsync ratio and jitter on the same lineGravatar Julian2017-10-09
| | | | Free some vertical space. Hope this doesn't hurt visibility.
* stats: declare function as localGravatar Julian2017-10-09
| | | | Apparently forgot this one
* stats: use container-fps together with fps (as fallback)Gravatar Julian2017-10-09
| | | | | This was already done for the actual stats a few months ago. Now it is also used by the perfdata coloring code.
* stats: rename option timing_total to print_perfdata_totalGravatar Julian2017-10-09
| | | | | Should make its purpose more clear. Also add a comment to further explain its use.
* stats: add vsync-ratio and vsync-jitterGravatar Julian2017-10-09
| | | | | | | | | | | | | | | | | | | Both come with graphs enabled by default. They can be disabled using the options plot_vsync_ratio and plot_vsync_jitter (see the readme regarding customization). In case both graphs are deactivated the ratio and jitter properties will be printed on the same line to save some space. One more user-visible/noticeable change: the maximum used to scale the values for each graph is no longer calculated each time the stats are shown but instead when collecting the data. This means the maximum can actually be higher than all values currently present in a graph's data buffer. This makes it easier to judge a graph's values, especially since as we have no axis labels. To prevent high values staying max forever graph data buffers are cleared when toggling (can be disabled). It was never useful to keep old data and simply append newer data (with a time skip) anyway.
* stats: add some documentation for generate_graph()Gravatar Julian2017-10-09
|
* stats: access less variables outside function's stateGravatar Julian2017-10-09
|
* stats: add new container-fps that deprecates fpsGravatar Ricardo Constantino (:RiCON)2017-10-09
|
* stats: remove hwdec-active propertyGravatar Ricardo Constantino (:RiCON)2017-10-09
|
* stats: fix bug introduced in earlier commitGravatar Julian2017-10-09
| | | | | Commit 76387aba26574d0d96af688cf11d10bd165171f7 broke the script in case of timing_total=true.
* stats: fix comment typoGravatar Julian2017-10-09
|
* stats: disable coloring peak performance dataGravatar Julian2017-10-09
| | | | | The peak value is probably not very well suited to draw many conclusions from it.
* stats: change coloring of performance dataGravatar Julian2017-10-09
| | | | | Previously it used display-fps to determine coloration even when display-sync was not even used.
* stats: save ASS sequences locallyGravatar Julian2017-10-09
| | | | | Instead of querying them constantly. Also add a tiny bit of documentation to some variables.
* stats: only print graphs when ASS tags are goodGravatar Julian2017-10-09
|
* stats: clearify a few descriptions/labelsGravatar Julian2017-10-09
|
* stats: don't show video/audio-speed-correction when 0Gravatar Julian2017-10-09
| | | | | | | | This used to be the case, I'm not sure when it changed. The current way of 'hiding' it in case of 0 is not exactly good and relies on the OSD representation. It could be done better by querying the video-sync-active property but that would require querying yet one more thing...
* stats: add HDR signal peak informationGravatar Niklas Haas2017-10-09
| | | | | | | | Added to mpv in commit a14f9249. Simply shown after the gamma curve if available, since it's semantically attached to it. Also regroup some of the colorimetry options to make this fit (and for them to make more sense)
* stats: add sum of timing valuesGravatar Julian2017-10-09
| | | | | | | Display an additional line with the sum of all three timing values. Disabled by default. I didn't see the necessity to also create a graph for this line
* stats: put colormatrix, primaries and gamma togetherGravatar Julian2017-10-09
| | | | Saves a bit of space.
* stats: change highlighting of performance dataGravatar Julian2017-10-09
| | | | | | | Add a yellow highlight to the existing red highlight. Red is still used once the available time is exhausted, yellow is supposed to be a warning when the headroom is getting small. The threshold is configurable.
* stats: declare functions as localGravatar Julian2017-10-09
| | | | | Because why not. Simply reorder functions instead of forward declaring stuff.
* stats: align graphsGravatar Julian2017-10-09
| | | | | | | | | Graphs are now aligned. This required a change in the layout of performance data. Reason is a wrong (but intended) calculation of vector drawing sizes in libass to maintain compatibility. This essentially prevents text following the graph. To achieve alignment only monospaced text can precede the graph. This led to the layout changing slightly when graphs are shown.
* stats: change the way the output is builtGravatar Julian2017-10-09
| | | | | | | | Instead of creating new strings with the content of the previous one followed by some new content we now write all content into tables that are concatenated in the end. This is unlikely to improve performance but at least it will cut down on all these temporary, growing strings polluting memory.
* stats: rewrite parts of performance dataGravatar Julian2017-10-09
| | | | | | | | Major changes: - graphs are only drawn when in toggled mode - performance data is retrieved every ith frame (default: 5) - highlighting of performance data (numbers): add a highlight when the summed numbers (last/avg/peak) exceed 1/display-fps
* stats: add performance dataGravatar Julian2017-10-09
| | | | | | | | Display various performance data about frames and their display/rendering. Additionally plot graphs for this data. This is experimental and pretty much just a test at this point and by far not final.
* stats: update stats when file changesGravatar Julian2017-10-09
| | | | | | | Only in toggled mode and actually only when the video output is reconfigured. This should cover the relevant cases. Fixes #22
* stats: small spelling correctionGravatar Julian2017-10-09
|
* stats: use redraw_delay for timer periodGravatar Julian2017-10-09
| | | | | | Previously the delay was slightly shortened but a user explicitly setting a specific delay most likely expects the stats to refresh in exactly the frequency he desired.
* stats: always print title if different from filenameGravatar Ricardo Constantino (:RiCON)2017-10-09
|
* stats: make a warning more visibleGravatar Julian2017-10-09
| | | | Print it to console and especially OSD upon each invocation
* stats: rename some functionsGravatar Julian2017-10-09
| | | | More useful names
* stats: add toggling of statsGravatar Julian2017-10-09
| | | | | | | | | | | | You can now either show the stats once or toggle their display. Both are using different key bindings which are additionally configurable now. Please bear in mind that "toggling" means "redraw every x seconds for x seconds". Therefore, this approach is prone to problems especially when something else is printing text to the OSD as well as every of these calls will overwrite each other. This is currently a limitation of mpv. Fixes #18
* stats: add hwdec-currentGravatar Ricardo Constantino (:RiCON)2017-10-09
| | | | | Fallback to hwdec-active if not available. This one will be removed in mpv 0.19.0.
* stats: add cache-speedGravatar Ricardo Constantino (:RiCON)2017-10-09
|
* stats: decrease default font sizeGravatar Julian2017-10-09
| | | | It's getting a bit cramped
* stats: add video-params/gamma propertyGravatar Niklas Haas2017-10-09
|
* stats: update frame drop diagnosticsGravatar Kevin Mitchell2017-10-09
|
* stats: add display fpsGravatar Kevin Mitchell2017-10-09
|
* stats: rename some variables for consistencyGravatar Julian2017-10-09
|
* stats: add support for video-sync=displayGravatar Niklas Haas2017-10-09
|
* stats: fix line wrappingGravatar Julian2017-10-09
| | | | | These spaces were not displayed on screen, however they were taken into account for line wrapping.
* stats: remove dead link from commentGravatar Julian2017-10-09
|
* stats: print bold text in terminalsGravatar Rostislav Pehlivanov2017-10-09
| | | | | | | | | | This simply prints ASCII codes to display any text marked as bold in the terminal. Supported by every sane terminal since 1986. For those insane, there's a check. The check has been copied from the ansicolors.lua script floating around and it checks if the directory path uses "\" instead of "/", and in case it does, it checks whether ANSICON env variable has been set (which is used to indicate the Windows terminal supports ACII escape sequences).