Repository Analysis

librosa/librosa

Python library for audio and music analysis

13.1 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of librosa/librosa, a Python project with 8,497 GitHub stars. SynthScan v2.0 examined 55,818 lines of code across 112 source files, recording 619 pattern matches distributed across 16 syntactic categories. The overall adjusted score of 13.1 places this repository in the Low AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

13.1
Adjusted Score
13.1
Raw Score
100%
Time Factor
2026-07-14
Last Push
8.5K
Stars
Python
Language
55.8K
Lines of Code
112
Files
619
Pattern Hits
2026-07-14
Scan Date
0.02
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.

No multi-scan history yet — run the scanner again to build trend data.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 0HIGH 2MEDIUM 57LOW 560

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 619 distinct pattern matches across 16 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Hyper-Verbose Identifiers316 hits · 317 pts
SeverityFileLineSnippetContext
LOWlibrosa/effects.py641def _signal_to_frame_nonsilent(CODE
LOWlibrosa/core/convert.py1551def fourier_tempo_frequencies(CODE
LOWlibrosa/core/convert.py2021def multi_frequency_weighting(CODE
LOWlibrosa/core/pitch.py364def _cumulative_mean_normalized_difference(CODE
LOWlibrosa/util/matching.py53def __match_interval_overlaps(query, intervals_to, candidates): # pragma: no coverCODE
LOWtests/test_sequence.py677def test_trans_local_nstates_fail(n):CODE
LOWtests/test_sequence.py683def test_trans_local_width_fail(width):CODE
LOWtests/test_sequence.py687def test_trans_local_wrap_const():CODE
LOWtests/test_sequence.py45def test_viterbi_multichannel():CODE
LOWtests/test_sequence.py121def test_viterbi_negative_minprob():CODE
LOWtests/test_sequence.py137def test_viterbi_discriminative_negative_minprob():CODE
LOWtests/test_sequence.py210def test_viterbi_bad_transition(trans, rng):CODE
LOWtests/test_sequence.py245def test_viterbi_discriminative_example(transition_min_prob):CODE
LOWtests/test_sequence.py282def test_viterbi_discriminative_multi():CODE
LOWtests/test_sequence.py348def test_viterbi_discriminative_example_init():CODE
LOWtests/test_sequence.py399def test_viterbi_discriminative_bad_transition(x_disc, trans):CODE
LOWtests/test_sequence.py414def test_viterbi_discriminative_bad_init(p_init, trans, x_disc):CODE
LOWtests/test_sequence.py429def test_viterbi_discriminative_bad_marginal(x_disc, trans, p_state):CODE
LOWtests/test_sequence.py444def test_viterbi_discriminative_bad_obs(x, trans):CODE
LOWtests/test_sequence.py449def test_viterbi_binary_example():CODE
LOWtests/test_sequence.py488def test_viterbi_binary_multi():CODE
LOWtests/test_sequence.py525def test_viterbi_binary_example_init():CODE
LOWtests/test_sequence.py567def test_viterbi_binary_bad_transition(x_data, trans):CODE
LOWtests/test_sequence.py578def test_viterbi_binary_bad_init(x_data, trans, p_init):CODE
LOWtests/test_sequence.py589def test_viterbi_binary_bad_marginal(p_state, trans, x_data):CODE
LOWtests/test_sequence.py600def test_viterbi_binary_bad_obs(x, trans):CODE
LOWtests/test_sequence.py614def test_trans_uniform_badshape(n):CODE
LOWtests/test_sequence.py704def test_trans_local_nowrap_const():CODE
LOWtests/test_sequence.py721def test_trans_local_wrap_var():CODE
LOWtests/test_sequence.py738def test_trans_local_nowrap_var():CODE
LOWtests/conftest.py41def pytest_collection_modifyitems(config, items):CODE
LOWtests/test_features.py353def test_spectral_flatness_synthetic(S, flatness_ref):CODE
LOWtests/test_features.py361def test_spectral_flatness_errors(S, amin):CODE
LOWtests/test_features.py367def test_spectral_flatness_badtype(S):CODE
LOWtests/test_features.py717def test_fourier_tempogram_fail_badwin(y, sr, win_length, window):CODE
LOWtests/test_features.py722def test_fourier_tempogram_fail_noinput():CODE
LOWtests/test_features.py730def test_fourier_tempogram_audio(y_chirp, hop_length):CODE
LOWtests/test_features.py1084def test_tempogram_ratio_aggregate(y_clicks, tg_ex):CODE
LOWtests/test_features.py1092def test_tempogram_ratio_with_tg(y_clicks, tg_ex):CODE
LOWtests/test_features.py1102def test_tempogram_ratio_with_bpm(y_clicks, tg_ex):CODE
LOWtests/test_features.py125def test_stack_memory_ndim_badshape(data, delay, n_steps):CODE
LOWtests/test_features.py147def test_spectral_centroid_synthetic(S_ideal, freq):CODE
LOWtests/test_features.py159def test_spectral_centroid_errors(S):CODE
LOWtests/test_features.py167def test_spectral_centroid_empty(y, sr, S):CODE
LOWtests/test_features.py183def test_spectral_bandwidth_synthetic(S_ideal, freq, norm, p):CODE
LOWtests/test_features.py201def test_spectral_bandwidth_onecol(S_ideal, freq):CODE
LOWtests/test_features.py209def test_spectral_bandwidth_flat():CODE
LOWtests/test_features.py229def test_spectral_bandwidth_errors(S):CODE
LOWtests/test_features.py243def test_spectral_rolloff_synthetic(S, freq, pct):CODE
LOWtests/test_features.py266def test_spectral_rolloff_errors(S, pct):CODE
LOWtests/test_features.py284def test_spectral_contrast_log(y_chirp):CODE
LOWtests/test_features.py296def test_spectral_contrast_flat(linear):CODE
LOWtests/test_features.py307def test_spectral_contrast_maximum(linear):CODE
LOWtests/test_features.py338def test_spectral_contrast_errors(S, freq, fmin, n_bands, quantile):CODE
LOWtests/test_features.py482def test_poly_features_synthetic(poly_S, poly_coeffs, poly_freq):CODE
LOWtests/test_features.py563def test_tempogram_fail_noinput():CODE
LOWtests/test_features.py573def test_tempogram_fail_badwin(y, sr, win_length, window):CODE
LOWtests/test_features.py764def test_fourier_tempogram_invert(sr, hop_length, win_length, center, window):CODE
LOWtests/test_features.py811def test_cens_nosmooth_nonorm(cens_cqt):CODE
LOWtests/test_features.py1032def test_chroma_vqt_threshold(y_chirp):CODE
256 more matches not shown…
Decorative Section Separators39 hits · 117 pts
SeverityFileLineSnippetContext
MEDIUMdocs/conf.py108# ----------------------------------STRING
MEDIUMdocs/conf.py110# ----------------------------------STRING
MEDIUMdocs/conf.py113# ------------------------------------------------------------------------------STRING
MEDIUMdocs/conf.py115# ------------------------------------------------------------------------------STRING
MEDIUMdocs/examples/plot_audio_playback.py31# -------------------------COMMENT
MEDIUMdocs/examples/plot_audio_playback.py49# --------------------COMMENT
MEDIUMdocs/examples/plot_audio_playback.py60# -------------------------COMMENT
MEDIUMdocs/examples/plot_audio_playback.py95# ------------------COMMENT
MEDIUMdocs/examples/plot_dynamic_beat.py35# ------------------------------COMMENT
MEDIUMdocs/examples/plot_dynamic_beat.py37# ------------------------------COMMENT
MEDIUMdocs/examples/plot_dynamic_beat.py56# --------------------------COMMENT
MEDIUMdocs/examples/plot_dynamic_beat.py58# --------------------------COMMENT
MEDIUMdocs/examples/plot_dynamic_beat.py75# -------------COMMENT
MEDIUMdocs/examples/plot_dynamic_beat.py77# -------------COMMENT
MEDIUMdocs/examples/plot_display.py87# --------------------COMMENT
MEDIUMdocs/examples/plot_display.py110# --------------------COMMENT
MEDIUMdocs/examples/plot_display.py125# --------------------------------COMMENT
MEDIUMdocs/examples/plot_display.py149# ----------------------------COMMENT
MEDIUMdocs/examples/plot_display.py208# -----------------------COMMENT
MEDIUMdocs/examples/plot_display.py262# -----------------COMMENT
MEDIUMdocs/examples/plot_display.py292# ----------COMMENT
MEDIUMdocs/examples/plot_display.py334# --------------COMMENT
MEDIUMdocs/examples/plot_display.py373# ----------------COMMENT
MEDIUMdocs/examples/plot_display.py420# -------------COMMENT
MEDIUMdocs/examples/plot_display.py489# ----------COMMENT
MEDIUMdocs/examples/plot_music_sync.py32# ---------------------COMMENT
MEDIUMdocs/examples/plot_music_sync.py34# ---------------------COMMENT
MEDIUMdocs/examples/plot_music_sync.py63# -----------------------COMMENT
MEDIUMdocs/examples/plot_music_sync.py65# -----------------------COMMENT
MEDIUMdocs/examples/plot_music_sync.py87# ----------------------COMMENT
MEDIUMdocs/examples/plot_music_sync.py89# ----------------------COMMENT
MEDIUMdocs/examples/plot_music_sync.py131# --------------------------------------------COMMENT
MEDIUMdocs/examples/plot_music_sync.py133# --------------------------------------------COMMENT
MEDIUMdocs/examples/plot_music_sync.py166# -----------------------------COMMENT
MEDIUMdocs/examples/plot_music_sync.py168# -----------------------------COMMENT
MEDIUMdocs/examples/plot_music_sync.py240# -------------COMMENT
MEDIUMdocs/examples/plot_music_sync.py242# -------------COMMENT
MEDIUMdocs/examples/plot_music_sync.py251# ----------COMMENT
MEDIUMdocs/examples/plot_music_sync.py253# ----------COMMENT
AI Structural Patterns66 hits · 66 pts
SeverityFileLineSnippetContext
LOWlibrosa/effects.py70CODE
LOWlibrosa/effects.py198CODE
LOWlibrosa/effects.py312CODE
LOWlibrosa/onset.py31CODE
LOWlibrosa/onset.py217CODE
LOWlibrosa/onset.py445CODE
LOWlibrosa/sequence.py70CODE
LOWlibrosa/sequence.py85CODE
LOWlibrosa/sequence.py128CODE
LOWlibrosa/sequence.py143CODE
LOWlibrosa/sequence.py157CODE
LOWlibrosa/sequence.py172CODE
LOWlibrosa/sequence.py185CODE
LOWlibrosa/display.py1441CODE
LOWlibrosa/display.py2065CODE
LOWlibrosa/display.py2673CODE
LOWlibrosa/display.py2992CODE
LOWlibrosa/display.py3176CODE
LOWlibrosa/display.py3939CODE
LOWlibrosa/segment.py361CODE
LOWlibrosa/segment.py376CODE
LOWlibrosa/segment.py391CODE
LOWlibrosa/beat.py45CODE
LOWlibrosa/beat.py60CODE
LOWlibrosa/beat.py75CODE
LOWlibrosa/beat.py89CODE
LOWlibrosa/beat.py320CODE
LOWlibrosa/filters.py589CODE
LOWlibrosa/core/constantq.py42CODE
LOWlibrosa/core/constantq.py209CODE
LOWlibrosa/core/constantq.py415CODE
LOWlibrosa/core/constantq.py594CODE
LOWlibrosa/core/constantq.py820CODE
LOWlibrosa/core/constantq.py1285CODE
LOWlibrosa/core/spectrum.py58CODE
LOWlibrosa/core/spectrum.py395CODE
LOWlibrosa/core/spectrum.py646CODE
LOWlibrosa/core/spectrum.py809CODE
LOWlibrosa/core/spectrum.py990CODE
LOWlibrosa/core/spectrum.py1522CODE
LOWlibrosa/core/spectrum.py2358CODE
LOWlibrosa/core/spectrum.py2377CODE
LOWlibrosa/core/spectrum.py2396CODE
LOWlibrosa/core/spectrum.py2669CODE
LOWlibrosa/core/spectrum.py2920CODE
LOWlibrosa/core/audio.py1731CODE
LOWlibrosa/core/pitch.py182CODE
LOWlibrosa/core/pitch.py626CODE
LOWlibrosa/core/harmonic.py465CODE
LOWlibrosa/feature/spectral.py46CODE
LOWlibrosa/feature/spectral.py194CODE
LOWlibrosa/feature/spectral.py355CODE
LOWlibrosa/feature/spectral.py535CODE
LOWlibrosa/feature/spectral.py687CODE
LOWlibrosa/feature/spectral.py919CODE
LOWlibrosa/feature/spectral.py1137CODE
LOWlibrosa/feature/spectral.py1296CODE
LOWlibrosa/feature/spectral.py1426CODE
LOWlibrosa/feature/spectral.py1576CODE
LOWlibrosa/feature/spectral.py1843CODE
6 more matches not shown…
Unused Imports59 hits · 52 pts
SeverityFileLineSnippetContext
LOWlibrosa/effects.py35CODE
LOWlibrosa/onset.py14CODE
LOWlibrosa/decompose.py13CODE
LOWlibrosa/sequence.py36CODE
LOWlibrosa/__init__.py202CODE
LOWlibrosa/display.py49CODE
LOWlibrosa/segment.py27CODE
LOWlibrosa/beat.py12CODE
LOWlibrosa/filters.py36CODE
LOWlibrosa/core/convert.py4CODE
LOWlibrosa/core/notation.py4CODE
LOWlibrosa/core/intervals.py4CODE
LOWlibrosa/core/constantq.py4CODE
LOWlibrosa/core/spectrum.py4CODE
LOWlibrosa/core/audio.py4CODE
LOWlibrosa/core/pitch.py4CODE
LOWlibrosa/core/harmonic.py5CODE
LOWlibrosa/util/files.py4CODE
LOWlibrosa/util/matching.py4CODE
LOWlibrosa/util/_nnls.py11CODE
LOWlibrosa/util/utils.py5CODE
LOWlibrosa/util/decorators.py5CODE
LOWlibrosa/feature/utils.py4CODE
LOWlibrosa/feature/spectral.py4CODE
LOWlibrosa/feature/inverse.py4CODE
LOWlibrosa/feature/rhythm.py4CODE
LOWtests/test_effects.py4CODE
LOWtests/test_notation.py6CODE
LOWtests/test_notation.py13CODE
LOWtests/test_constantq.py6CODE
LOWtests/test_constantq.py8CODE
LOWtests/test_constantq.py21CODE
LOWtests/test_core.py6CODE
LOWtests/test_core.py21CODE
LOWtests/test_core.py28CODE
LOWtests/test_core.py28CODE
LOWtests/test_core.py28CODE
LOWtests/test_display.py25CODE
LOWtests/test_convert.py6CODE
LOWtests/test_util.py4CODE
LOWtests/test_multichannel.py15CODE
LOWtests/test_multichannel.py19CODE
LOWtests/test_multichannel.py20CODE
LOWtests/test_multichannel.py23CODE
LOWtests/test_onset.py17CODE
LOWtests/test_filters.py23CODE
LOWtests/test_filters.py24CODE
LOWtests/test_intervals.py7CODE
LOWtests/test_intervals.py14CODE
LOWtests/test_segment.py4CODE
LOWtests/test_cache.py8CODE
LOWdocs/conf.py257CODE
LOWdocs/conf.py158CODE
LOWdocs/examples/plot_audio_playback.py17CODE
LOWdocs/examples/plot_audio_playback.py18CODE
LOWdocs/examples/plot_pcen_stream.py25CODE
LOWdocs/examples/plot_presets.py16CODE
LOWdocs/examples/plot_music_sync.py25CODE
LOWscripts/audit_docstring_examples.py12CODE
Self-Referential Comments14 hits · 42 pts
SeverityFileLineSnippetContext
MEDIUMlibrosa/_cache.py36 # Initialize the memory objectCOMMENT
MEDIUMlibrosa/display.py2409 # The following code centers the FFT bins at their frequenciesCOMMENT
MEDIUMlibrosa/display.py2516 # The following code centers the FFT bins at their frequenciesCOMMENT
MEDIUMlibrosa/display.py2903 # Create the adaptive drawing objectCOMMENT
MEDIUMlibrosa/display.py3144 # Create a proxy artist if we have a label to setCOMMENT
MEDIUMlibrosa/display.py3348 # Create the adaptive drawing objectCOMMENT
MEDIUMlibrosa/core/audio.py854 # Create an empty stereo output bufferCOMMENT
MEDIUMtests/test_display.py1367 # Create a chirpCOMMENT
MEDIUMdocs/conf.py6# This file is execfile()d with the current directory set to its containing dir.COMMENT
MEDIUMdocs/examples/plot_pcen_stream.py66# Create a handle for storing the block STFT outputsCOMMENT
MEDIUMdocs/examples/plot_music_sync.py154 # Create a connection patch between the aligned time pointsCOMMENT
MEDIUMscripts/pull_dois.py59 # Create a Request object with a User-Agent header.COMMENT
MEDIUMscripts/audit_docstring_examples.py121 # Create a visitor instance and visit the nodesCOMMENT
MEDIUMscripts/create_author_list.py67 # Create a Request object and add a User-Agent header (GitHub requires it).COMMENT
Over-Commented Block41 hits · 38 pts
SeverityFileLineSnippetContext
LOWlibrosa/core/audio.py1501 epsilon: float,COMMENT
LOWlibrosa/core/audio.py1521 # DEN_{M} from eqn 16 of Marple.COMMENT
LOWlibrosa/core/audio.py1561 # SNIP - we are now done with order M and advance. M-1 <- MCOMMENT
LOWtests/test_features.py541 # F#:dim is [0, 6, 9]COMMENT
LOWtests/test_core.py2981 # [3, 4, 5],COMMENT
LOWtests/test_filters.py1#!/usr/bin/env pythonCOMMENT
LOWdocs/conf.py1# -*- coding: utf-8 -*-COMMENT
LOWdocs/conf.py221COMMENT
LOWdocs/conf.py341]COMMENT
LOWdocs/examples/plot_viterbi.py61# into a likelihood (probability) by logistic mappingCOMMENT
LOWdocs/examples/plot_viterbi.py101# We'll assume that a silent frame is equally likely to be followedCOMMENT
LOWdocs/examples/plot_spectral_harmonics.py41y, sr = librosa.loadx('libri2', duration=5)COMMENT
LOWdocs/examples/plot_spectral_harmonics.py81# are indicated by bright colors toward the bottom of theCOMMENT
LOWdocs/examples/plot_spectral_harmonics.py121# From the f0 contour and the harmonic energy measurements,COMMENT
LOWdocs/examples/plot_patch_generation.py61COMMENT
LOWdocs/examples/plot_patch_generation.py101# The animation below illustrates each patch in approximateCOMMENT
LOWdocs/examples/plot_audio_playback.py61# As a slightly more advanced example, we canCOMMENT
LOWdocs/examples/plot_audio_playback.py81#COMMENT
LOWdocs/examples/plot_audio_playback.py101#COMMENT
LOWdocs/examples/plot_audio_playback.py121COMMENT
LOWdocs/examples/plot_audio_playback.py141# be, so be aware that normalization can be disabled.COMMENT
LOWdocs/examples/plot_dynamic_beat.py61# This is because the beat tracker is assuming a single (average) tempo across theCOMMENT
LOWdocs/examples/plot_hprss.py81# whether a horizontal (harmonic) or vertical (percussive) filter responds higherCOMMENT
LOWdocs/examples/plot_display.py61# %%COMMENT
LOWdocs/examples/plot_display.py81# We'll be using this format for the rest of the examples,COMMENT
LOWdocs/examples/plot_display.py101librosa.display.colorbar_db(img)COMMENT
LOWdocs/examples/plot_display.py141# `specshow`. For example, without the `hop_length`, we wouldn't know how toCOMMENT
LOWdocs/examples/plot_display.py201fig.colorbar(img, ax=ax)COMMENT
LOWdocs/examples/plot_display.py281img = librosa.display.specshow(ccov, y_axis='chroma', x_axis='chroma',COMMENT
LOWdocs/examples/plot_display.py301# colormap. Colors are so that the center value (default `div_thresh=0`) COMMENT
LOWdocs/examples/plot_display.py361fig.colorbar(img1, ax=[ax[0], ax[1]])COMMENT
LOWdocs/examples/plot_display.py421# As mentioned above, `specshow` can automatically scale the valuesCOMMENT
LOWdocs/examples/plot_display.py441librosa.display.colorbar_db(imgdb)COMMENT
LOWdocs/examples/plot_display.py481# Phase displays use a cyclic colormap (`twilight_shifted`) when the data is constrainedCOMMENT
LOWdocs/examples/plot_presets.py21COMMENT
LOWdocs/examples/plot_vocal_separation.py61#######################################COMMENT
LOWdocs/examples/plot_vocal_separation.py141###########################################COMMENT
LOWdocs/examples/plot_music_sync.py161 con.set_in_layout(False) # This is needed to preserve layoutCOMMENT
LOWdocs/examples/plot_music_sync.py201# %%COMMENT
LOWdocs/examples/plot_music_sync.py241# Next steps...COMMENT
LOWscripts/get_latest_release.sh1#!/bin/shCOMMENT
Deep Nesting33 hits · 32 pts
SeverityFileLineSnippetContext
LOWlibrosa/onset.py31CODE
LOWlibrosa/sequence.py502CODE
LOWlibrosa/sequence.py870CODE
LOWlibrosa/sequence.py1175CODE
LOWlibrosa/display.py1441CODE
LOWlibrosa/display.py2015CODE
LOWlibrosa/display.py2065CODE
LOWlibrosa/display.py2544CODE
LOWlibrosa/display.py3719CODE
LOWlibrosa/display.py254CODE
LOWlibrosa/segment.py1332CODE
LOWlibrosa/beat.py89CODE
LOWlibrosa/beat.py576CODE
LOWlibrosa/filters.py915CODE
LOWlibrosa/core/convert.py2211CODE
LOWlibrosa/core/convert.py2515CODE
LOWlibrosa/core/notation.py200CODE
LOWlibrosa/core/notation.py626CODE
LOWlibrosa/core/intervals.py28CODE
LOWlibrosa/core/intervals.py302CODE
LOWlibrosa/core/spectrum.py58CODE
LOWlibrosa/core/spectrum.py2396CODE
LOWlibrosa/core/audio.py223CODE
LOWlibrosa/core/audio.py1002CODE
LOWlibrosa/util/matching.py66CODE
LOWlibrosa/util/utils.py797CODE
LOWtests/test_features.py941CODE
LOWtests/test_core.py2713CODE
LOWtests/test_onset.py302CODE
LOWtests/test_filters.py169CODE
LOWtests/test_beat.py186CODE
LOWscripts/audit_docstring_examples.py116CODE
LOWscripts/create_author_list.py58CODE
Modern Structural Boilerplate24 hits · 24 pts
SeverityFileLineSnippetContext
LOWlibrosa/effects.py58__all__ = [CODE
LOWlibrosa/onset.py28__all__ = ["onset_detect", "onset_strength", "onset_strength_multi", "onset_backtrack"]CODE
LOWlibrosa/decompose.py29__all__ = ["decompose", "hpss", "nn_filter"]CODE
LOWlibrosa/sequence.py55__all__ = [CODE
LOWlibrosa/display.py99__all__ = [CODE
LOWlibrosa/segment.py54__all__ = [CODE
LOWlibrosa/beat.py41__all__ = ["beat_track", "plp"]CODE
LOWlibrosa/filters.py57__all__ = [CODE
LOWlibrosa/core/convert.py31__all__ = [CODE
LOWlibrosa/core/notation.py31__all__ = [CODE
LOWlibrosa/core/constantq.py36__all__ = ["cqt", "hybrid_cqt", "pseudo_cqt", "icqt", "griffinlim_cqt", "vqt"]CODE
LOWlibrosa/core/spectrum.py39__all__ = [CODE
LOWlibrosa/core/audio.py35__all__ = [CODE
LOWlibrosa/core/pitch.py25__all__ = ["estimate_tuning", "pitch_tuning", "piptrack", "yin", "pyin"]CODE
LOWlibrosa/core/harmonic.py22__all__ = ["salience", "interp_harmonics", "f0_harmonics"]CODE
LOWlibrosa/util/files.py19__all__ = [CODE
LOWlibrosa/util/matching.py17__all__ = ["match_intervals", "match_events"]CODE
LOWlibrosa/util/_nnls.py22__all__ = ["nnls"]CODE
LOWlibrosa/util/utils.py43__all__ = [CODE
LOWlibrosa/util/decorators.py25__all__ = ["moved", "deprecated", "vectorize"]CODE
LOWlibrosa/feature/utils.py17__all__ = ["delta", "stack_memory"]CODE
LOWlibrosa/feature/spectral.py26__all__ = [CODE
LOWlibrosa/feature/inverse.py25__all__ = ["mel_to_stft", "mel_to_audio", "mfcc_to_mel", "mfcc_to_audio"]CODE
LOWlibrosa/feature/rhythm.py27__all__ = [CODE
AI Response Leakage2 hits · 15 pts
SeverityFileLineSnippetContext
HIGHdocs/examples/plot_dynamic_beat.py100# In this example, the result is not perfect: `tempo_dynamic` contains jagged andCOMMENT
HIGHdocs/examples/plot_display.py274# In this example, notice that we used 'time' for both axis labels.COMMENT
Slop Phrases3 hits · 7 pts
SeverityFileLineSnippetContext
MEDIUMlibrosa/core/audio.py542 .. note:: This function is primarily useful for demonstration purposes,STRING
MEDIUMdocs/examples/plot_audio_playback.py143# in the same cell, you can useCOMMENT
MEDIUMdocs/examples/plot_display.py449# example above, you can use `vscale='dB[power]'` to indicate this.COMMENT
AI Slop Vocabulary4 hits · 6 pts
SeverityFileLineSnippetContext
LOWlibrosa/beat.py585 # NOTE: when we can bump the minimum numba to 0.58, we can eliminate this branch and just useCOMMENT
LOWlibrosa/beat.py652 # No back-link found, so just use the current scoreCOMMENT
LOWlibrosa/core/intervals.py482 # Otherwise, just return intervals as floatsCOMMENT
LOWlibrosa/core/audio.py1862 # Normally, just add a click hereCOMMENT
Redundant / Tautological Comments3 hits · 4 pts
SeverityFileLineSnippetContext
LOWlibrosa/util/matching.py375 # Check if right should be chosenCOMMENT
LOWlibrosa/util/utils.py1249 # Check if we're a local peakCOMMENT
LOWscripts/pull_dois.py70 # Check if there's a "next" page link in the JSON's "links" section.COMMENT
Verbosity Indicators6 hits · 4 pts
SeverityFileLineSnippetContext
LOWlibrosa/beat.py466 # Step 2: get the fourier tempogramSTRING
LOWlibrosa/beat.py474 # Step 3: pin to the feasible tempo rangeSTRING
LOWlibrosa/beat.py498 # Step 5: invert the Fourier tempogram to get the pulseSTRING
LOWlibrosa/beat.py503 # Step 6: retain only the positive part of the pulse cycleSTRING
LOWlibrosa/beat.py455 # Step 1: get the onset envelopeSTRING
LOWlibrosa/beat.py487 # Step 3: Discard everything below the peakSTRING
Structural Annotation Overuse6 hits · 4 pts
SeverityFileLineSnippetContext
LOWlibrosa/beat.py466 # Step 2: get the fourier tempogramSTRING
LOWlibrosa/beat.py474 # Step 3: pin to the feasible tempo rangeSTRING
LOWlibrosa/beat.py498 # Step 5: invert the Fourier tempogram to get the pulseSTRING
LOWlibrosa/beat.py503 # Step 6: retain only the positive part of the pulse cycleSTRING
LOWlibrosa/beat.py455 # Step 1: get the onset envelopeSTRING
LOWlibrosa/beat.py487 # Step 3: Discard everything below the peakSTRING
Excessive Try-Catch Wrapping2 hits · 2 pts
SeverityFileLineSnippetContext
MEDIUMtests/test_util.py1275def test_shear_sparse_1d_raises():CODE
LOWtests/test_util.py1278 except Exception:CODE
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWscripts/pull_dois.py88# Example usageCOMMENT