GameSentenceMiner 2.13.2__tar.gz → 2.13.3__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.
Files changed (79) hide show
  1. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/ocr/owocr_helper.py +34 -2
  2. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/configuration.py +1 -1
  3. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/notification.py +7 -0
  4. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner.egg-info/PKG-INFO +1 -1
  5. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/PKG-INFO +1 -1
  6. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/pyproject.toml +1 -1
  7. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/__init__.py +0 -0
  8. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/ai/__init__.py +0 -0
  9. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/ai/ai_prompting.py +0 -0
  10. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/anki.py +0 -0
  11. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/assets/__init__.py +0 -0
  12. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/assets/icon.png +0 -0
  13. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/assets/icon128.png +0 -0
  14. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/assets/icon256.png +0 -0
  15. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/assets/icon32.png +0 -0
  16. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/assets/icon512.png +0 -0
  17. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/assets/icon64.png +0 -0
  18. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/assets/pickaxe.png +0 -0
  19. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/config_gui.py +0 -0
  20. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/gametext.py +0 -0
  21. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/gsm.py +0 -0
  22. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/locales/en_us.json +0 -0
  23. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/locales/ja_jp.json +0 -0
  24. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/locales/zh_cn.json +0 -0
  25. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/obs.py +0 -0
  26. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/ocr/__init__.py +0 -0
  27. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/ocr/gsm_ocr_config.py +0 -0
  28. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/ocr/ocrconfig.py +0 -0
  29. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/ocr/owocr_area_selector.py +0 -0
  30. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/ocr/ss_picker.py +0 -0
  31. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/owocr/owocr/__init__.py +0 -0
  32. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/owocr/owocr/__main__.py +0 -0
  33. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/owocr/owocr/config.py +0 -0
  34. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/owocr/owocr/lens_betterproto.py +0 -0
  35. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/owocr/owocr/ocr.py +0 -0
  36. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/owocr/owocr/run.py +0 -0
  37. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/owocr/owocr/screen_coordinate_picker.py +0 -0
  38. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/__init__.py +0 -0
  39. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/audio_offset_selector.py +0 -0
  40. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/communication/__init__.py +0 -0
  41. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/communication/send.py +0 -0
  42. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/communication/websocket.py +0 -0
  43. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/downloader/Untitled_json.py +0 -0
  44. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/downloader/__init__.py +0 -0
  45. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/downloader/download_tools.py +0 -0
  46. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/downloader/oneocr_dl.py +0 -0
  47. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/electron_config.py +0 -0
  48. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/ffmpeg.py +0 -0
  49. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/gsm_utils.py +0 -0
  50. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/model.py +0 -0
  51. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/package.py +0 -0
  52. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/ss_selector.py +0 -0
  53. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/text_log.py +0 -0
  54. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/util/window_transparency.py +0 -0
  55. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/vad.py +0 -0
  56. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/__init__.py +0 -0
  57. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/service.py +0 -0
  58. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/static/__init__.py +0 -0
  59. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/static/apple-touch-icon.png +0 -0
  60. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/static/favicon-96x96.png +0 -0
  61. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/static/favicon.ico +0 -0
  62. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/static/favicon.svg +0 -0
  63. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/static/site.webmanifest +0 -0
  64. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/static/style.css +0 -0
  65. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/static/web-app-manifest-192x192.png +0 -0
  66. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/static/web-app-manifest-512x512.png +0 -0
  67. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/templates/__init__.py +0 -0
  68. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/templates/index.html +0 -0
  69. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/templates/text_replacements.html +0 -0
  70. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/templates/utility.html +0 -0
  71. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/web/texthooking_page.py +0 -0
  72. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner/wip/get_overlay_coords.py +0 -0
  73. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner.egg-info/SOURCES.txt +0 -0
  74. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner.egg-info/dependency_links.txt +0 -0
  75. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner.egg-info/entry_points.txt +0 -0
  76. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner.egg-info/requires.txt +0 -0
  77. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/GameSentenceMiner.egg-info/top_level.txt +0 -0
  78. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/LICENSE +0 -0
  79. {gamesentenceminer-2.13.2 → gamesentenceminer-2.13.3}/setup.cfg +0 -0
@@ -53,6 +53,7 @@ def get_ocr_config(window=None, use_window_for_config=False) -> OCRConfig:
53
53
  """Loads and updates screen capture areas from the corresponding JSON file."""
54
54
  ocr_config_dir = get_ocr_config_path()
55
55
  obs.connect_to_obs_sync(retry=0)
56
+ obs.update_current_game()
56
57
  if use_window_for_config and window:
57
58
  scene = sanitize_filename(window)
58
59
  else:
@@ -161,7 +162,7 @@ class WebsocketServerThread(threading.Thread):
161
162
  async def send_text(self, text, line_time: datetime):
162
163
  if text:
163
164
  return asyncio.run_coroutine_threadsafe(
164
- self.send_text_coroutine(json.dumps({"sentence": text, "time": line_time.isoformat()})), self.loop)
165
+ self.send_text_coroutine(json.dumps({"sentence": text, "time": line_time.isoformat(), "process_path": obs.get_current_game()})), self.loop)
165
166
 
166
167
  def stop_server(self):
167
168
  self.loop.call_soon_threadsafe(self._stop_event.set)
@@ -291,6 +292,38 @@ def reset_callback_vars():
291
292
  previous_text_list = []
292
293
  last_ocr2_result = ""
293
294
  run.set_last_image(None)
295
+
296
+ # class TwoPassOCRHandler:
297
+ # def __init__(self, ocr1, ocr2):
298
+ # self.ocr1 = ocr1
299
+ # self.ocr2 = ocr2
300
+ # self.second_ocr_queue = queue.Queue()
301
+ # self.previous_text = None
302
+ # self.previous_orig_text = ""
303
+ # self.previous_img = None
304
+ # self.text_stable_start_time = None
305
+ # self.last_oneocr_time = None
306
+ # self.force_stable = False
307
+ # self.previous_ocr1_result = ""
308
+ # self.last_sent_result = ""
309
+ # self.previous_text_list = []
310
+
311
+ # def check_first_ocr(self, text, orig_text, time, img=None, came_from_ss=False, filtering=None, crop_coords=None):
312
+ # if not twopassocr or not ocr2:
313
+ # return text_callback(text, orig_text, time, img=img, came_from_ss=came_from_ss, filtering=filtering, crop_coords=crop_coords)
314
+
315
+ # text_callback(text, orig_text, time, img=img, came_from_ss=came_from_ss, filtering=filtering, crop_coords=crop_coords)
316
+
317
+ # def set_ocr_ocr1(self, ocr1):
318
+ # self.ocr1 = ocr1
319
+ # def set_ocr_ocr2(self, ocr2):
320
+ # self.ocr2 = ocr2
321
+
322
+ # def get_ocr_ocr1(self):
323
+ # return self.ocr1
324
+
325
+ # def get_ocr_ocr2(self):
326
+ # return self.ocr2
294
327
 
295
328
  def text_callback(text, orig_text, time, img=None, came_from_ss=False, filtering=None, crop_coords=None):
296
329
  global twopassocr, ocr2, previous_text, last_oneocr_time, text_stable_start_time, previous_orig_text, previous_img, force_stable, previous_ocr1_result, previous_text_list, last_sent_result
@@ -305,7 +338,6 @@ def text_callback(text, orig_text, time, img=None, came_from_ss=False, filtering
305
338
 
306
339
  line_start_time = time if time else datetime.now()
307
340
 
308
-
309
341
  if manual or not get_ocr_two_pass_ocr():
310
342
  if compare_ocr_results(last_sent_result, text, 80):
311
343
  if text:
@@ -689,7 +689,7 @@ class Config:
689
689
  configs: Dict[str, ProfileConfig] = field(default_factory=dict)
690
690
  current_profile: str = DEFAULT_CONFIG
691
691
  switch_to_default_if_not_found: bool = True
692
- locale: Locale = Locale.English
692
+ locale: Locale = Locale.English.value
693
693
 
694
694
  @classmethod
695
695
  def new(cls):
@@ -138,3 +138,10 @@ def send_error_no_anki_update():
138
138
  message=f"Anki Card not updated, Check Console for Reason!",
139
139
  timeout=5 # Notification disappears after 5 seconds
140
140
  )
141
+
142
+ def send_error_notification(message):
143
+ send_notification(
144
+ title="Error",
145
+ message=message,
146
+ timeout=5 # Notification disappears after 5 seconds
147
+ )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GameSentenceMiner
3
- Version: 2.13.2
3
+ Version: 2.13.3
4
4
  Summary: A tool for mining sentences from games. Update: Overlay?
5
5
  Author-email: Beangate <bpwhelan95@gmail.com>
6
6
  License: MIT License
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GameSentenceMiner
3
- Version: 2.13.2
3
+ Version: 2.13.3
4
4
  Summary: A tool for mining sentences from games. Update: Overlay?
5
5
  Author-email: Beangate <bpwhelan95@gmail.com>
6
6
  License: MIT License
@@ -7,7 +7,7 @@ build-backend = "setuptools.build_meta"
7
7
 
8
8
  [project]
9
9
  name = "GameSentenceMiner"
10
- version = "2.13.2"
10
+ version = "2.13.3"
11
11
  description = "A tool for mining sentences from games. Update: Overlay?"
12
12
  readme = "README.md"
13
13
  requires-python = ">=3.10"