talks-reducer 0.4.1__py3-none-any.whl → 0.5.1__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.
@@ -0,0 +1,119 @@
1
+ Metadata-Version: 2.4
2
+ Name: talks-reducer
3
+ Version: 0.5.1
4
+ Summary: CLI for speeding up long-form talks by removing silence
5
+ Author: Talks Reducer Maintainers
6
+ License-Expression: MIT
7
+ Requires-Python: >=3.9
8
+ Description-Content-Type: text/markdown
9
+ License-File: LICENSE
10
+ Requires-Dist: audiotsm>=0.1.2
11
+ Requires-Dist: scipy>=1.10.0
12
+ Requires-Dist: numpy>=1.22.0
13
+ Requires-Dist: tqdm>=4.65.0
14
+ Requires-Dist: tkinterdnd2>=0.3.0
15
+ Requires-Dist: Pillow>=9.0.0
16
+ Requires-Dist: imageio-ffmpeg>=0.4.8
17
+ Requires-Dist: gradio>=4.0.0
18
+ Provides-Extra: dev
19
+ Requires-Dist: build>=1.0.0; extra == "dev"
20
+ Requires-Dist: twine>=4.0.0; extra == "dev"
21
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
22
+ Requires-Dist: black>=23.0.0; extra == "dev"
23
+ Requires-Dist: isort>=5.12.0; extra == "dev"
24
+ Requires-Dist: bump-my-version>=0.5.0; extra == "dev"
25
+ Requires-Dist: pyinstaller>=6.4.0; extra == "dev"
26
+ Dynamic: license-file
27
+
28
+ # Talks Reducer
29
+ Talks Reducer shortens long-form presentations by removing silent gaps and optionally re-encoding them to smaller files. The
30
+ project was renamed from **jumpcutter** to emphasize its focus on conference talks and screencasts.
31
+
32
+ ![Main demo](docs/assets/screencast-main.gif)
33
+
34
+ ## Example
35
+ - 1h 37m, 571 MB — Original OBS video recording
36
+ - 1h 19m, 751 MB — Talks Reducer
37
+ - 1h 19m, 171 MB — Talks Reducer `--small`
38
+
39
+ ## Changelog
40
+
41
+ See [CHANGELOG.md](CHANGELOG.md).
42
+
43
+ ## Install GUI (Windows, macOS)
44
+ Go to the [releases page](https://github.com/popstas/talks-reducer/releases) and download the appropriate artifact:
45
+
46
+ - **Windows** — `talks-reducer-windows-0.4.0.zip`
47
+ - **macOS** — `talks-reducer.app.zip`
48
+
49
+ > **Troubleshooting:** If launching the bundle (or running `python talks_reducer/gui.py`) prints `macOS 26 (2600) or later required, have instead 16 (1600)!`, make sure you're using a Python build that ships a modern Tk. The stock [python.org 3.13.5 installer](https://www.python.org/downloads/release/python-3135/) includes Tk 8.6 and has been verified to work.
50
+
51
+ When extracted on Windows the bundled `talks-reducer.exe` behaves like the
52
+ `python talks_reducer/gui.py` entry point: double-clicking it launches the GUI
53
+ and passing a video file path (for example via *Open with…* or drag-and-drop
54
+ onto the executable) automatically queues that recording for processing.
55
+
56
+ ## Install CLI (Linux, Windows, macOS)
57
+ ```
58
+ pip install talks-reducer
59
+ ```
60
+
61
+ **Note:** FFmpeg is now bundled automatically with the package, so you don't need to install it separately. You you need, don't know actually.
62
+
63
+ The `--small` preset applies a 720p video scale and 128 kbps audio bitrate, making it useful for sharing talks over constrained
64
+ connections. Without `--small`, the script aims to preserve original quality while removing silence.
65
+
66
+ Example CLI usage:
67
+
68
+ ```sh
69
+ talks-reducer --small input.mp4
70
+ ```
71
+
72
+ ### Speech detection
73
+
74
+ Talks Reducer now relies on its built-in volume thresholding to detect speech. Adjust `--silent_threshold` if you need to fine-tune when segments count as silence. Dropping the optional Silero VAD integration keeps the install lightweight and avoids pulling in PyTorch.
75
+
76
+ When CUDA-capable hardware is available the pipeline leans on GPU encoders to keep export times low, but it still runs great on
77
+ CPUs.
78
+
79
+ ## Simple web server
80
+
81
+ Prefer a lightweight browser interface? Launch the Gradio-powered simple mode with:
82
+
83
+ ```sh
84
+ talks-reducer server
85
+ ```
86
+
87
+ This opens a local web page featuring a drag-and-drop upload zone, a **Small video** checkbox that mirrors the CLI preset, a live
88
+ progress indicator, and automatic previews of the processed output. Once the job completes you can inspect the resulting compression
89
+ ratio and download the rendered video directly from the page.
90
+
91
+ ### Uploading and retrieving a processed video
92
+
93
+ 1. Open the printed `http://localhost:<port>` address (the default port is `9005`).
94
+ 2. Drag a video onto the **Video file** drop zone or click to browse and select one from disk.
95
+ 3. (Optional) Enable **Small video** before the upload finishes to apply the 720p/128 kbps preset.
96
+ 4. Wait for the progress bar and log to report completion—the interface queues work automatically after the file arrives.
97
+ 5. Watch the processed preview in the **Processed video** player and click **Download processed file** to save the result locally.
98
+
99
+ Need to change where the server listens? Run `talks-reducer server --host 0.0.0.0 --port 7860` (or any other port) to bind to a
100
+ different address.
101
+
102
+ ### Automating uploads from the command line
103
+
104
+ Prefer to script uploads instead of using the browser UI? Start the server and use the bundled helper to submit a job and save
105
+ the processed video locally:
106
+
107
+ ```sh
108
+ python -m talks_reducer.service_client --server http://127.0.0.1:9005/ --input demo.mp4 --output output/demo_processed.mp4
109
+ ```
110
+
111
+ The helper wraps the Gradio API exposed by `server.py`, waits for processing to complete, then copies the rendered file to the
112
+ path you provide. Pass `--small` to mirror the **Small video** checkbox or `--print-log` to stream the server log after the
113
+ download finishes.
114
+
115
+ ## Contributing
116
+ See `CONTRIBUTION.md` for development setup details and guidance on sharing improvements.
117
+
118
+ ## License
119
+ Talks Reducer is released under the MIT License. See `LICENSE` for the full text.
@@ -0,0 +1,19 @@
1
+ talks_reducer/__about__.py,sha256=cD5R3DXad04Jmf7zP4WEetKCHW_dds5YR5hzpqpbLz4,92
2
+ talks_reducer/__init__.py,sha256=Kzh1hXaw6Vq3DyTqrnJGOq8pn0P8lvaDcsg1bFUjFKk,208
3
+ talks_reducer/__main__.py,sha256=azR_vh8HFPLaOnh-L6gUFWsL67I6iHtbeH5rQhsipGY,299
4
+ talks_reducer/audio.py,sha256=sjHMeY0H9ESG-Gn5BX0wFRBX7sXjWwsgS8u9Vb0bJ88,4396
5
+ talks_reducer/chunks.py,sha256=IpdZxRFPURSG5wP-OQ_p09CVP8wcKwIFysV29zOTSWI,2959
6
+ talks_reducer/cli.py,sha256=VOFZni7rl2CTCK3aLUO_iCV6PNva9ylIrmxxwNltQG4,8031
7
+ talks_reducer/ffmpeg.py,sha256=dsHBOBcr5XCSg0q3xmzLOcibBiEdyrXdEQa-ze5vQsM,12551
8
+ talks_reducer/gui.py,sha256=1iCzAdImdNg1ezMvGJee5l4hOEkEvrMY6YkwO7pyF5Y,59801
9
+ talks_reducer/models.py,sha256=6Q_8rmHLyImXp88D4B7ptTbFaH_xXa_yxs8A2dypz2Y,2004
10
+ talks_reducer/pipeline.py,sha256=JnWa84sMwYncGv7crhGLZu0cW1Xx0eGQyFP-nLp-DHk,12222
11
+ talks_reducer/progress.py,sha256=Mh43M6VWhjjUv9CI22xfD2EJ_7Aq3PCueqefQ9Bd5-o,4565
12
+ talks_reducer/server.py,sha256=twnuh4QErwjSfa60NICrNXwraIV5x7h0apEVLyz3KVA,11166
13
+ talks_reducer/service_client.py,sha256=Hv3hKBUn2n7M5hLUVHamNphUdMt9bCXUrJaJMZHlE0Q,3088
14
+ talks_reducer-0.5.1.dist-info/licenses/LICENSE,sha256=jN17mHNR3e84awmH3AbpWBcBDBzPxEH0rcOFoj1s7sQ,1124
15
+ talks_reducer-0.5.1.dist-info/METADATA,sha256=shRuBxoKEvPxZstY2pOu5-vP-45jHkShbE1sC_Am0ig,5218
16
+ talks_reducer-0.5.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
17
+ talks_reducer-0.5.1.dist-info/entry_points.txt,sha256=no-NVP5Z9LrzaJL4-2ltKe9IkLZo8dQ32zilIb1gbZE,149
18
+ talks_reducer-0.5.1.dist-info/top_level.txt,sha256=pJWGcy__LR9JIEKH3QJyFmk9XrIsiFtqvuMNxFdIzDU,14
19
+ talks_reducer-0.5.1.dist-info/RECORD,,
@@ -1,3 +1,4 @@
1
1
  [console_scripts]
2
2
  talks-reducer = talks_reducer.cli:main
3
3
  talks-reducer-gui = talks_reducer.gui:main
4
+ talks-reducer-server = talks_reducer.server:main
@@ -1,71 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: talks-reducer
3
- Version: 0.4.1
4
- Summary: CLI for speeding up long-form talks by removing silence
5
- Author: Talks Reducer Maintainers
6
- License-Expression: MIT
7
- Requires-Python: >=3.9
8
- Description-Content-Type: text/markdown
9
- License-File: LICENSE
10
- Requires-Dist: audiotsm>=0.1.2
11
- Requires-Dist: scipy>=1.10.0
12
- Requires-Dist: numpy>=1.22.0
13
- Requires-Dist: tqdm>=4.65.0
14
- Requires-Dist: tkinterdnd2>=0.3.0
15
- Requires-Dist: Pillow>=9.0.0
16
- Requires-Dist: imageio-ffmpeg>=0.4.8
17
- Provides-Extra: dev
18
- Requires-Dist: build>=1.0.0; extra == "dev"
19
- Requires-Dist: twine>=4.0.0; extra == "dev"
20
- Requires-Dist: pytest>=7.0.0; extra == "dev"
21
- Requires-Dist: black>=23.0.0; extra == "dev"
22
- Requires-Dist: isort>=5.12.0; extra == "dev"
23
- Requires-Dist: bump-my-version>=0.5.0; extra == "dev"
24
- Requires-Dist: pyinstaller>=6.4.0; extra == "dev"
25
- Dynamic: license-file
26
-
27
- # Talks Reducer
28
- Talks Reducer shortens long-form presentations by removing silent gaps and optionally re-encoding them to smaller files. The
29
- project was renamed from **jumpcutter** to emphasize its focus on conference talks and screencasts.
30
-
31
- ![Main demo](docs/assets/screencast-main.gif)
32
-
33
- ## Example
34
- - 1h 37m, 571 MB — Original OBS video recording
35
- - 1h 19m, 751 MB — Talks Reducer
36
- - 1h 19m, 171 MB — Talks Reducer `--small`
37
-
38
- ## Changelog
39
-
40
- See [CHANGELOG.md](CHANGELOG.md).
41
-
42
- ## Install GUI (Windows, macOS)
43
- Go to the [releases page](https://github.com/popstas/talks-reducer/releases) and download the appropriate artifact:
44
-
45
- - **Windows** — `talks-reducer-windows-0.4.0.zip`
46
- - **macOS** — `talks-reducer.app.zip` (but it doesn't work for me)
47
-
48
- ## Install CLI (Linux, Windows, macOS)
49
- ```
50
- pip install talks-reducer
51
- ```
52
-
53
- **Note:** FFmpeg is now bundled automatically with the package, so you don't need to install it separately. You you need, don't know actually.
54
-
55
- The `--small` preset applies a 720p video scale and 128 kbps audio bitrate, making it useful for sharing talks over constrained
56
- connections. Without `--small`, the script aims to preserve original quality while removing silence.
57
-
58
- Example CLI usage:
59
-
60
- ```sh
61
- talks-reducer --small input.mp4
62
- ```
63
-
64
- When CUDA-capable hardware is available the pipeline leans on GPU encoders to keep export times low, but it still runs great on
65
- CPUs.
66
-
67
- ## Contributing
68
- See `CONTRIBUTION.md` for development setup details and guidance on sharing improvements.
69
-
70
- ## License
71
- Talks Reducer is released under the MIT License. See `LICENSE` for the full text.
@@ -1,17 +0,0 @@
1
- talks_reducer/__about__.py,sha256=alr6lZlZdo3EO0f71sv2_kzVDYc2BcevvykHDr0-W8U,92
2
- talks_reducer/__init__.py,sha256=Kzh1hXaw6Vq3DyTqrnJGOq8pn0P8lvaDcsg1bFUjFKk,208
3
- talks_reducer/__main__.py,sha256=azR_vh8HFPLaOnh-L6gUFWsL67I6iHtbeH5rQhsipGY,299
4
- talks_reducer/audio.py,sha256=sjHMeY0H9ESG-Gn5BX0wFRBX7sXjWwsgS8u9Vb0bJ88,4396
5
- talks_reducer/chunks.py,sha256=IpdZxRFPURSG5wP-OQ_p09CVP8wcKwIFysV29zOTSWI,2959
6
- talks_reducer/cli.py,sha256=OYmahiEo7ivhix4861pN9Kp1DkRvU7WBj6fBE2cVVWU,7377
7
- talks_reducer/ffmpeg.py,sha256=CVrxwNcWHrzvxTzoALtx5UdNWXxxfOFYF3FES7lvaO4,11680
8
- talks_reducer/gui.py,sha256=xsJj1uO1WX14rNVSrkQf2b4K6BdNDbeZ-A1bB0fsSIM,54463
9
- talks_reducer/models.py,sha256=vdQLliiHKUuYtNlZzS796kGK39cbtjkUfYcT95KwwKE,1197
10
- talks_reducer/pipeline.py,sha256=nfAX8dooN3-009WqMyYTv4nINNMtVmbWtsmzQeBM9Wg,9415
11
- talks_reducer/progress.py,sha256=Mh43M6VWhjjUv9CI22xfD2EJ_7Aq3PCueqefQ9Bd5-o,4565
12
- talks_reducer-0.4.1.dist-info/licenses/LICENSE,sha256=jN17mHNR3e84awmH3AbpWBcBDBzPxEH0rcOFoj1s7sQ,1124
13
- talks_reducer-0.4.1.dist-info/METADATA,sha256=nATcAfXLYIF61laKzOtKPbJ0of3owOuxxZYSDcBinjs,2449
14
- talks_reducer-0.4.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
15
- talks_reducer-0.4.1.dist-info/entry_points.txt,sha256=LCzfSnh_7VXhvl9twoFSAj0C3sG7bayWs2LkxpH7hoI,100
16
- talks_reducer-0.4.1.dist-info/top_level.txt,sha256=pJWGcy__LR9JIEKH3QJyFmk9XrIsiFtqvuMNxFdIzDU,14
17
- talks_reducer-0.4.1.dist-info/RECORD,,