oneword-ai 0.1.1__py3-none-any.whl → 0.1.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.
- {oneword_ai-0.1.1.dist-info → oneword_ai-0.1.2.dist-info}/METADATA +36 -46
- {oneword_ai-0.1.1.dist-info → oneword_ai-0.1.2.dist-info}/RECORD +7 -7
- onewordai/core/engine.py +2 -2
- {oneword_ai-0.1.1.dist-info → oneword_ai-0.1.2.dist-info}/WHEEL +0 -0
- {oneword_ai-0.1.1.dist-info → oneword_ai-0.1.2.dist-info}/entry_points.txt +0 -0
- {oneword_ai-0.1.1.dist-info → oneword_ai-0.1.2.dist-info}/licenses/license.txt +0 -0
- {oneword_ai-0.1.1.dist-info → oneword_ai-0.1.2.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: oneword-ai
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Summary: Create viral-style one-word subtitles for Reels, Shorts & TikToks using AI. Perfect for content creators!
|
|
5
5
|
Author-email: Ambrish <ambrishyadav1110@gmail.com>
|
|
6
6
|
License: Copyright 2025 Ambrish
|
|
@@ -37,7 +37,7 @@ Dynamic: license-file
|
|
|
37
37
|
**Generate viral-style one-word subtitles from video/audio using Whisper AI**
|
|
38
38
|
|
|
39
39
|
[](https://pypi.org/project/oneword-ai/)
|
|
40
|
-
[](https://www.python.org/)
|
|
41
41
|
[](license.txt)
|
|
42
42
|
|
|
43
43
|
Perfect for creating high-energy reels, shorts, and TikToks! 🚀
|
|
@@ -63,13 +63,11 @@ Perfect for creating high-energy reels, shorts, and TikToks! 🚀
|
|
|
63
63
|
|
|
64
64
|
## 🚀 Installation
|
|
65
65
|
|
|
66
|
-
### Method 1: Install from PyPI (Recommended)
|
|
67
|
-
|
|
68
66
|
```bash
|
|
69
67
|
pip install oneword-ai
|
|
70
68
|
```
|
|
71
69
|
|
|
72
|
-
**Prerequisites**:
|
|
70
|
+
**Prerequisites**: Install [FFmpeg](https://ffmpeg.org/) on your system.
|
|
73
71
|
|
|
74
72
|
---
|
|
75
73
|
|
|
@@ -77,10 +75,9 @@ pip install oneword-ai
|
|
|
77
75
|
|
|
78
76
|
### Option 1: Web Interface (Easiest)
|
|
79
77
|
|
|
80
|
-
Start the web server
|
|
78
|
+
Start the web server:
|
|
81
79
|
|
|
82
80
|
```bash
|
|
83
|
-
# Start server
|
|
84
81
|
python -m onewordai.api.main
|
|
85
82
|
```
|
|
86
83
|
|
|
@@ -88,38 +85,27 @@ Then open http://localhost:8000 in your browser.
|
|
|
88
85
|
|
|
89
86
|
**Features:**
|
|
90
87
|
- 📤 Drag & drop file upload
|
|
91
|
-
- 📊 Real-time download progress with speed
|
|
92
|
-
- ⏱️ Live transcription status
|
|
88
|
+
- 📊 Real-time download progress with speed & ETA
|
|
89
|
+
- ⏱️ Live transcription status updates
|
|
93
90
|
- ❌ Cancel processing anytime
|
|
94
|
-
- 📥 Instant SRT download
|
|
95
91
|
- ⚠️ Reload protection (won't lose progress)
|
|
92
|
+
- 📥 Instant SRT download
|
|
96
93
|
|
|
97
94
|
---
|
|
98
95
|
|
|
99
|
-
### Option 2: Google Colab
|
|
96
|
+
### Option 2: Google Colab
|
|
100
97
|
|
|
101
|
-
Run OneWord AI in the cloud
|
|
98
|
+
Run OneWord AI in the cloud with Web UI or Python API:
|
|
102
99
|
|
|
103
100
|
[](https://colab.research.google.com/github/Ambrishyadav-byte/OnewordAI/blob/main/OneWord_Colab.ipynb)
|
|
104
101
|
|
|
105
|
-
**
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
# Install package
|
|
109
|
-
!pip install oneword-ai
|
|
110
|
-
|
|
111
|
-
# Import and use
|
|
112
|
-
from onewordai.core.engine import SubtitleGenerator
|
|
113
|
-
|
|
114
|
-
# Generate subtitles
|
|
115
|
-
generator = SubtitleGenerator(model_name="medium")
|
|
116
|
-
output = generator.process("video.mp4", mode="oneword")
|
|
117
|
-
print(f"✅ Subtitles saved: {output}")
|
|
118
|
-
```
|
|
102
|
+
**The Colab notebook includes:**
|
|
103
|
+
- 🌐 **Option A**: Web UI with Gradio (free public URL, no setup required)
|
|
104
|
+
- 💻 **Option B**: Python API for direct code usage
|
|
119
105
|
|
|
120
106
|
---
|
|
121
107
|
|
|
122
|
-
### Option 3: Command Line
|
|
108
|
+
### Option 3: Command Line (CLI)
|
|
123
109
|
|
|
124
110
|
For batch processing and automation:
|
|
125
111
|
|
|
@@ -127,11 +113,11 @@ For batch processing and automation:
|
|
|
127
113
|
# Basic usage
|
|
128
114
|
python -m onewordai.cli -i video.mp4
|
|
129
115
|
|
|
130
|
-
#
|
|
116
|
+
# With options
|
|
131
117
|
python -m onewordai.cli -i video.mp4 -m medium -lang hi -mode oneword
|
|
132
118
|
```
|
|
133
119
|
|
|
134
|
-
**See [CLI.md](CLI.md) for full
|
|
120
|
+
**See [CLI.md](CLI.md) for full documentation.**
|
|
135
121
|
|
|
136
122
|
---
|
|
137
123
|
|
|
@@ -139,19 +125,21 @@ python -m onewordai.cli -i video.mp4 -m medium -lang hi -mode oneword
|
|
|
139
125
|
|
|
140
126
|
| Mode | Description | Best For |
|
|
141
127
|
|------|-------------|----------|
|
|
142
|
-
| **
|
|
143
|
-
| **
|
|
144
|
-
| **
|
|
128
|
+
| **oneword** | Each word = separate subtitle | High-energy viral content, reels |
|
|
129
|
+
| **twoword** | Groups of 2 words | Punchy messaging, Instagram posts |
|
|
130
|
+
| **phrase** | Full sentence segments | YouTube videos, longer content |
|
|
145
131
|
|
|
146
132
|
---
|
|
147
133
|
|
|
148
134
|
## 🎨 Model Options
|
|
149
135
|
|
|
150
|
-
| Model | Size | Speed | Quality | Language
|
|
151
|
-
|
|
152
|
-
| **medium** | ~1.5GB | Fast |
|
|
153
|
-
| **large** | ~3GB | Slower |
|
|
154
|
-
| **Hindi2Hinglish** | ~1.5GB | Fast |
|
|
136
|
+
| Model | Size | Speed | Quality | Language |
|
|
137
|
+
|-------|------|-------|---------|----------|
|
|
138
|
+
| **medium** | ~1.5GB | Fast | ⭐⭐⭐⭐ | Multi-language |
|
|
139
|
+
| **large** | ~3GB | Slower | ⭐⭐⭐⭐⭐ | Multi-language |
|
|
140
|
+
| **Oriserve/Whisper-Hindi2Hinglish-Prime** | ~1.5GB | Fast | ⭐⭐⭐⭐⭐ | Hindi → Hinglish |
|
|
141
|
+
|
|
142
|
+
> **Note**: Models are downloaded automatically on first use and cached locally.
|
|
155
143
|
|
|
156
144
|
---
|
|
157
145
|
|
|
@@ -160,19 +148,19 @@ python -m onewordai.cli -i video.mp4 -m medium -lang hi -mode oneword
|
|
|
160
148
|
This project wouldn't be possible without these amazing open-source projects:
|
|
161
149
|
|
|
162
150
|
### Core Technologies
|
|
163
|
-
- **[OpenAI Whisper](https://github.com/openai/whisper)** -
|
|
164
|
-
- **[Oriserve/Whisper-Hindi2Hinglish-Prime](https://huggingface.co/Oriserve/Whisper-Hindi2Hinglish-Prime)** - Hindi to Hinglish transcription
|
|
165
|
-
- **[HuggingFace Transformers](https://github.com/huggingface/transformers)** - Model loading and inference
|
|
151
|
+
- **[OpenAI Whisper](https://github.com/openai/whisper)** - State-of-the-art speech recognition model
|
|
152
|
+
- **[Oriserve/Whisper-Hindi2Hinglish-Prime](https://huggingface.co/Oriserve/Whisper-Hindi2Hinglish-Prime)** - Fine-tuned Hindi to Hinglish transcription
|
|
153
|
+
- **[HuggingFace Transformers](https://github.com/huggingface/transformers)** - Model loading and inference framework
|
|
166
154
|
|
|
167
155
|
### Backend & UI
|
|
168
|
-
- **[FastAPI](https://fastapi.tiangolo.com/)** -
|
|
169
|
-
- **[Gradio](https://gradio.app/)** - ML web
|
|
170
|
-
- **[FFmpeg](https://ffmpeg.org/)** -
|
|
156
|
+
- **[FastAPI](https://fastapi.tiangolo.com/)** - High-performance Python web framework
|
|
157
|
+
- **[Gradio](https://gradio.app/)** - ML web interface library
|
|
158
|
+
- **[FFmpeg](https://ffmpeg.org/)** - Multimedia processing toolkit
|
|
171
159
|
|
|
172
160
|
### Special Thanks
|
|
173
|
-
- OpenAI for making Whisper open-source
|
|
174
|
-
- Oriserve team for the
|
|
175
|
-
- All contributors
|
|
161
|
+
- OpenAI team for making Whisper open-source
|
|
162
|
+
- Oriserve team for the specialized Hindi model
|
|
163
|
+
- All open-source contributors
|
|
176
164
|
|
|
177
165
|
---
|
|
178
166
|
|
|
@@ -190,6 +178,8 @@ Free to use for personal and commercial projects!
|
|
|
190
178
|
|
|
191
179
|
💼 Connect: [@ambrish.yadav.1](https://instagram.com/ambrish.yadav.1)
|
|
192
180
|
|
|
181
|
+
📦 PyPI: [oneword-ai](https://pypi.org/project/oneword-ai/)
|
|
182
|
+
|
|
193
183
|
---
|
|
194
184
|
|
|
195
185
|
<div align="center">
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
oneword_ai-0.1.
|
|
1
|
+
oneword_ai-0.1.2.dist-info/licenses/license.txt,sha256=ZlGk1ZMpgK_LQB1VTiN27JbvU-KL31byRxgM7wAmEu4,1060
|
|
2
2
|
onewordai/__init__.py,sha256=DW7ib3o1W0lchP960Mqdg_a-_aPPhPWgYKu5efR56ME,73
|
|
3
3
|
onewordai/cli.py,sha256=kz8epolGelaSfbOXdIB8IaiwUBLaKD8uyP6RBGOkCMM,2008
|
|
4
4
|
onewordai/api/__init__.py,sha256=W5bQNZGz2YLMXx1hC9e_eKhbf_GNFVYy3MC3D7gugUc,20
|
|
5
5
|
onewordai/api/main.py,sha256=QGyg4q72QkodF4HFAz6KOA8d3AlucisUB1OAw2XpANk,7964
|
|
6
6
|
onewordai/core/__init__.py,sha256=oTsOiTuWDAh1O6N9ZXfNFuiCmP3R99dBkEFljt3LI6Q,114
|
|
7
|
-
onewordai/core/engine.py,sha256=
|
|
7
|
+
onewordai/core/engine.py,sha256=cJRDL8A7S9R8NU-EIZYbiziae2oEUecByIFIi8k-RSo,15665
|
|
8
8
|
onewordai/web/app.js,sha256=mOp_RRear_N8RTpNEsYs2oj6mkji_AaKXlpxFsAtH-M,11166
|
|
9
9
|
onewordai/web/index.html,sha256=r1OSgeb35diHKmj1uWGnd-ltPBPz6aQp5mmcp2jTDmY,5995
|
|
10
10
|
onewordai/web/style.css,sha256=InsF-b_e5-zRhwaUHKf7cHnenNv87zA82VjcjqIsOnE,10485
|
|
11
|
-
oneword_ai-0.1.
|
|
12
|
-
oneword_ai-0.1.
|
|
13
|
-
oneword_ai-0.1.
|
|
14
|
-
oneword_ai-0.1.
|
|
15
|
-
oneword_ai-0.1.
|
|
11
|
+
oneword_ai-0.1.2.dist-info/METADATA,sha256=DarH3-rmwPMDGEsoIXpcWmDW7lO5ayQoKYj3e3YpZDw,6846
|
|
12
|
+
oneword_ai-0.1.2.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
13
|
+
oneword_ai-0.1.2.dist-info/entry_points.txt,sha256=qJ4u04rCiYtI5fCyPRBfTzW_-xc05BCSEct8YHzXX9Y,97
|
|
14
|
+
oneword_ai-0.1.2.dist-info/top_level.txt,sha256=otwwf_hwyKfUYUJnculUSznHz9iCFJRrHgIHyLQRbfE,10
|
|
15
|
+
oneword_ai-0.1.2.dist-info/RECORD,,
|
onewordai/core/engine.py
CHANGED
|
@@ -44,8 +44,8 @@ class SubtitleGenerator:
|
|
|
44
44
|
def __init__(self, *args, **kwargs):
|
|
45
45
|
super().__init__(*args, **kwargs)
|
|
46
46
|
|
|
47
|
-
def display(self, msg=None, pos=None):
|
|
48
|
-
super().display(msg, pos)
|
|
47
|
+
def display(self, msg=None, pos=None, *args, **kwargs):
|
|
48
|
+
super().display(msg, pos, *args, **kwargs)
|
|
49
49
|
# Capture progress for status callback
|
|
50
50
|
if status_callback and self.total:
|
|
51
51
|
downloaded = self.n
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|