lattifai 1.2.1__py3-none-any.whl → 1.2.2__py3-none-any.whl

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.
Files changed (60) hide show
  1. lattifai/alignment/__init__.py +10 -1
  2. lattifai/alignment/lattice1_aligner.py +66 -58
  3. lattifai/alignment/punctuation.py +38 -0
  4. lattifai/alignment/sentence_splitter.py +152 -21
  5. lattifai/alignment/text_align.py +440 -0
  6. lattifai/alignment/tokenizer.py +82 -40
  7. lattifai/caption/__init__.py +82 -6
  8. lattifai/caption/caption.py +335 -1141
  9. lattifai/caption/formats/__init__.py +199 -0
  10. lattifai/caption/formats/base.py +211 -0
  11. lattifai/caption/{gemini_reader.py → formats/gemini.py} +320 -60
  12. lattifai/caption/formats/json.py +194 -0
  13. lattifai/caption/formats/lrc.py +309 -0
  14. lattifai/caption/formats/nle/__init__.py +9 -0
  15. lattifai/caption/formats/nle/audition.py +561 -0
  16. lattifai/caption/formats/nle/avid.py +423 -0
  17. lattifai/caption/formats/nle/fcpxml.py +549 -0
  18. lattifai/caption/formats/nle/premiere.py +589 -0
  19. lattifai/caption/formats/pysubs2.py +642 -0
  20. lattifai/caption/formats/sbv.py +147 -0
  21. lattifai/caption/formats/tabular.py +338 -0
  22. lattifai/caption/formats/textgrid.py +193 -0
  23. lattifai/caption/formats/ttml.py +652 -0
  24. lattifai/caption/formats/vtt.py +469 -0
  25. lattifai/caption/parsers/__init__.py +9 -0
  26. lattifai/caption/{text_parser.py → parsers/text_parser.py} +4 -2
  27. lattifai/caption/standardize.py +636 -0
  28. lattifai/caption/utils.py +474 -0
  29. lattifai/cli/__init__.py +2 -1
  30. lattifai/cli/caption.py +108 -1
  31. lattifai/cli/transcribe.py +1 -1
  32. lattifai/cli/youtube.py +4 -1
  33. lattifai/client.py +33 -113
  34. lattifai/config/__init__.py +11 -1
  35. lattifai/config/alignment.py +7 -0
  36. lattifai/config/caption.py +267 -23
  37. lattifai/config/media.py +20 -0
  38. lattifai/diarization/__init__.py +41 -1
  39. lattifai/mixin.py +27 -15
  40. lattifai/transcription/base.py +6 -1
  41. lattifai/transcription/lattifai.py +19 -54
  42. lattifai/utils.py +7 -13
  43. lattifai/workflow/__init__.py +28 -4
  44. lattifai/workflow/file_manager.py +2 -5
  45. lattifai/youtube/__init__.py +43 -0
  46. lattifai/youtube/client.py +1170 -0
  47. lattifai/youtube/types.py +23 -0
  48. lattifai-1.2.2.dist-info/METADATA +615 -0
  49. lattifai-1.2.2.dist-info/RECORD +76 -0
  50. {lattifai-1.2.1.dist-info → lattifai-1.2.2.dist-info}/entry_points.txt +1 -2
  51. lattifai/caption/gemini_writer.py +0 -173
  52. lattifai/cli/app_installer.py +0 -142
  53. lattifai/cli/server.py +0 -44
  54. lattifai/server/app.py +0 -427
  55. lattifai/workflow/youtube.py +0 -577
  56. lattifai-1.2.1.dist-info/METADATA +0 -1134
  57. lattifai-1.2.1.dist-info/RECORD +0 -58
  58. {lattifai-1.2.1.dist-info → lattifai-1.2.2.dist-info}/WHEEL +0 -0
  59. {lattifai-1.2.1.dist-info → lattifai-1.2.2.dist-info}/licenses/LICENSE +0 -0
  60. {lattifai-1.2.1.dist-info → lattifai-1.2.2.dist-info}/top_level.txt +0 -0
@@ -1,20 +1,96 @@
1
- from typing import List, Optional
1
+ """Caption processing module for LattifAI.
2
2
 
3
- from lhotse.utils import Pathlike
3
+ This module provides comprehensive caption/subtitle processing capabilities:
4
+ - Multi-format reading and writing (SRT, VTT, ASS, TTML, etc.)
5
+ - Professional NLE integration (Avid, Final Cut Pro, Premiere Pro, DaVinci Resolve)
6
+ - Audio workstation support (Pro Tools, Adobe Audition)
7
+ - Advanced features: timecode offset, overlap resolution, word-level timing
8
+ """
4
9
 
5
- from ..config.caption import InputCaptionFormat
10
+ from ..config.caption import InputCaptionFormat, OutputCaptionFormat
6
11
  from .caption import Caption
7
- from .gemini_reader import GeminiReader, GeminiSegment
8
- from .gemini_writer import GeminiWriter
12
+ from .formats.gemini import GeminiReader, GeminiSegment, GeminiWriter
13
+ from .formats.nle.audition import (
14
+ AuditionCSVConfig,
15
+ AuditionCSVWriter,
16
+ EdiMarkerConfig,
17
+ EdiMarkerWriter,
18
+ )
19
+
20
+ # Professional NLE format writers (re-exported from formats/)
21
+ from .formats.nle.avid import AvidDSConfig, AvidDSWriter, FrameRate
22
+ from .formats.nle.fcpxml import FCPXMLConfig, FCPXMLStyle, FCPXMLWriter
23
+ from .formats.nle.premiere import PremiereXMLConfig, PremiereXMLWriter
24
+ from .formats.ttml import TTMLConfig, TTMLFormat, TTMLRegion, TTMLStyle
25
+ from .parsers.text_parser import normalize_text
26
+ from .standardize import (
27
+ CaptionStandardizer,
28
+ CaptionValidator,
29
+ StandardizationConfig,
30
+ ValidationResult,
31
+ apply_margins_to_captions,
32
+ standardize_captions,
33
+ )
9
34
  from .supervision import Supervision
10
- from .text_parser import normalize_text
35
+
36
+ # Create TTMLWriter alias for backward compatibility
37
+ TTMLWriter = TTMLFormat
38
+
39
+ # Utility functions
40
+ from .utils import (
41
+ CollisionMode,
42
+ TimecodeOffset,
43
+ apply_timecode_offset,
44
+ detect_overlaps,
45
+ format_srt_timestamp,
46
+ generate_srt_content,
47
+ resolve_overlaps,
48
+ split_long_lines,
49
+ )
11
50
 
12
51
  __all__ = [
52
+ # Core classes
13
53
  "Caption",
14
54
  "Supervision",
55
+ # Standardization
56
+ "CaptionStandardizer",
57
+ "CaptionValidator",
58
+ "StandardizationConfig",
59
+ "ValidationResult",
60
+ "standardize_captions",
61
+ "apply_margins_to_captions",
62
+ # Gemini format support
15
63
  "GeminiReader",
16
64
  "GeminiWriter",
17
65
  "GeminiSegment",
66
+ # Text utilities
18
67
  "normalize_text",
68
+ # Format types
19
69
  "InputCaptionFormat",
70
+ "OutputCaptionFormat",
71
+ # Professional format writers
72
+ "AvidDSWriter",
73
+ "AvidDSConfig",
74
+ "FCPXMLWriter",
75
+ "FCPXMLConfig",
76
+ "FCPXMLStyle",
77
+ "PremiereXMLWriter",
78
+ "PremiereXMLConfig",
79
+ "AuditionCSVWriter",
80
+ "AuditionCSVConfig",
81
+ "EdiMarkerWriter",
82
+ "EdiMarkerConfig",
83
+ "TTMLWriter",
84
+ "TTMLConfig",
85
+ "TTMLStyle",
86
+ "TTMLRegion",
87
+ # Utilities
88
+ "CollisionMode",
89
+ "TimecodeOffset",
90
+ "apply_timecode_offset",
91
+ "resolve_overlaps",
92
+ "detect_overlaps",
93
+ "split_long_lines",
94
+ "format_srt_timestamp",
95
+ "generate_srt_content",
20
96
  ]