lyrics-transcriber 0.37.0__tar.gz → 0.39.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/PKG-INFO +3 -2
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/handlers/extend_anchor.py +13 -2
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/handlers/word_operations.py +8 -2
- lyrics_transcriber-0.39.0/lyrics_transcriber/frontend/dist/assets/index-DKnNJHRK.js +26696 -0
- lyrics_transcriber-0.39.0/lyrics_transcriber/frontend/dist/assets/index-DKnNJHRK.js.map +1 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/dist/index.html +1 -1
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/package.json +3 -2
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/EditModal.tsx +1 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/LyricsAnalyzer.tsx +36 -13
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/ReferenceView.tsx +41 -1
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/ReviewChangesModal.tsx +48 -16
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/TimelineEditor.tsx +71 -16
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/TranscriptionView.tsx +11 -7
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/shared/components/HighlightedText.tsx +45 -12
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/shared/hooks/useWordClick.ts +83 -19
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/shared/types.ts +3 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/shared/utils/initializeDataWithIds.tsx +65 -9
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/vite.config.js +4 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/vite.config.ts +4 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/lyrics/genius.py +41 -12
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdg.py +1 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/composer.py +839 -534
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/review/server.py +10 -12
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/pyproject.toml +3 -2
- lyrics_transcriber-0.37.0/lyrics_transcriber/frontend/dist/assets/index-BNNbsbVN.js +0 -182
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/LICENSE +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/README.md +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/__init__.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/cli/__init__.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/cli/cli_main.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/core/__init__.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/core/config.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/core/controller.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/anchor_sequence.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/corrector.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/handlers/__init__.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/handlers/base.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/handlers/levenshtein.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/handlers/no_space_punct_match.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/handlers/relaxed_word_count_match.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/handlers/repeat.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/handlers/sound_alike.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/handlers/syllables_match.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/handlers/word_count_match.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/phrase_analyzer.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/correction/text_utils.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/.gitignore +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/README.md +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/dist/vite.svg +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/eslint.config.js +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/index.html +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/package-lock.json +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/public/vite.svg +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/App.tsx +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/api.ts +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/AudioPlayer.tsx +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/CorrectionMetrics.tsx +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/DetailsModal.tsx +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/FileUpload.tsx +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/ModeSelector.tsx +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/SegmentDetailsModal.tsx +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/WordEditControls.tsx +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/shared/components/SourceSelector.tsx +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/shared/components/Word.tsx +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/shared/constants.ts +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/shared/styles.ts +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/components/shared/utils/referenceLineCalculator.ts +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/main.tsx +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/types.ts +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/src/vite-env.d.ts +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/tsconfig.app.json +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/tsconfig.json +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/tsconfig.node.json +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/tsconfig.tsbuildinfo +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/frontend/vite.config.d.ts +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/lyrics/base_lyrics_provider.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/lyrics/file_provider.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/lyrics/spotify.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/__init__.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/ass/__init__.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/ass/ass.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/ass/ass_specs.txt +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/ass/config.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/ass/constants.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/ass/event.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/ass/formatters.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/ass/lyrics_line.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/ass/lyrics_screen.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/ass/section_detector.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/ass/section_screen.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/ass/style.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/__init__.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/cdg.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/config.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/images/instrumental.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/images/intro.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/pack.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/render.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/transitions/centertexttoplogobottomtext.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/transitions/circlein.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/transitions/circleout.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/transitions/fizzle.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/transitions/largecentertexttoplogo.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/transitions/rectangle.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/transitions/spiral.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/transitions/topleftmusicalnotes.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/transitions/wipein.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/transitions/wipeleft.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/transitions/wipeout.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/transitions/wiperight.png +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/cdgmaker/utils.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/fonts/AvenirNext-Bold.ttf +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/fonts/DMSans-VariableFont_opsz,wght.ttf +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/fonts/DMSerifDisplay-Regular.ttf +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/fonts/Oswald-SemiBold.ttf +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/fonts/Zurich_Cn_BT_Bold.ttf +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/fonts/arial.ttf +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/fonts/georgia.ttf +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/fonts/verdana.ttf +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/generator.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/lyrics_file.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/plain_text.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/segment_resizer.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/subtitles.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/output/video.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/review/__init__.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/storage/__init__.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/storage/dropbox.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/transcribers/audioshake.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/transcribers/base_transcriber.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/transcribers/whisper.py +0 -0
- {lyrics_transcriber-0.37.0 → lyrics_transcriber-0.39.0}/lyrics_transcriber/types.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.3
|
2
2
|
Name: lyrics-transcriber
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.39.0
|
4
4
|
Summary: Automatically create synchronised lyrics files in ASS and MidiCo LRC formats with word-level timestamps, using Whisper and lyrics from Genius and Spotify
|
5
5
|
License: MIT
|
6
6
|
Author: Andrew Beveridge
|
@@ -14,6 +14,7 @@ Classifier: Programming Language :: Python :: 3.11
|
|
14
14
|
Classifier: Programming Language :: Python :: 3.12
|
15
15
|
Requires-Dist: dropbox (>=12)
|
16
16
|
Requires-Dist: fastapi (>=0.115)
|
17
|
+
Requires-Dist: fonttools (>=4.55)
|
17
18
|
Requires-Dist: karaoke-lyrics-processor (>=0.4)
|
18
19
|
Requires-Dist: lyricsgenius (>=3)
|
19
20
|
Requires-Dist: metaphone (>=0.6)
|
@@ -26,7 +27,7 @@ Requires-Dist: spacy (>=3.8)
|
|
26
27
|
Requires-Dist: spacy-syllables (>=3)
|
27
28
|
Requires-Dist: syllables (>=1)
|
28
29
|
Requires-Dist: syrics (>=0)
|
29
|
-
Requires-Dist: torch (
|
30
|
+
Requires-Dist: torch (<2.5)
|
30
31
|
Requires-Dist: tqdm (>=4.67)
|
31
32
|
Requires-Dist: transformers (>=4.47)
|
32
33
|
Requires-Dist: uvicorn (>=0.34)
|
@@ -80,8 +80,19 @@ class ExtendAnchorHandler(GapCorrectionHandler):
|
|
80
80
|
confidence = len(matching_sources) / len(gap.reference_words)
|
81
81
|
sources = ", ".join(matching_sources)
|
82
82
|
|
83
|
-
#
|
84
|
-
|
83
|
+
# Get base reference positions
|
84
|
+
base_reference_positions = WordOperations.calculate_reference_positions(gap, matching_sources)
|
85
|
+
|
86
|
+
# Adjust reference positions based on the word's position in the reference text
|
87
|
+
reference_positions = {}
|
88
|
+
for source in matching_sources:
|
89
|
+
if source in base_reference_positions:
|
90
|
+
# Find this word's position in the reference text
|
91
|
+
ref_words = gap.reference_words[source]
|
92
|
+
for ref_idx, ref_word in enumerate(ref_words):
|
93
|
+
if ref_word.lower() == word.lower():
|
94
|
+
reference_positions[source] = base_reference_positions[source] + ref_idx
|
95
|
+
break
|
85
96
|
|
86
97
|
corrections.append(
|
87
98
|
WordOperations.create_word_replacement_correction(
|
@@ -23,9 +23,15 @@ class WordOperations:
|
|
23
23
|
|
24
24
|
for source in sources_to_check:
|
25
25
|
if source in gap.preceding_anchor.reference_positions:
|
26
|
-
# Calculate position
|
26
|
+
# Calculate base position from anchor
|
27
27
|
anchor_pos = gap.preceding_anchor.reference_positions[source]
|
28
|
-
|
28
|
+
base_ref_pos = anchor_pos + len(gap.preceding_anchor.words)
|
29
|
+
|
30
|
+
# Calculate word offset within the gap
|
31
|
+
word_offset = gap.words.index(gap.words[gap.transcription_position - gap.transcription_position])
|
32
|
+
|
33
|
+
# Add word offset to base position
|
34
|
+
ref_pos = base_ref_pos + word_offset
|
29
35
|
reference_positions[source] = ref_pos
|
30
36
|
return reference_positions
|
31
37
|
|