fid-ffmpeg 0.4.4__py3-none-any.whl → 0.4.5__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.
- fid/fid.py +42 -0
- fid/fid_interactive.py +42 -0
- fid/tasks/video/speed.py +0 -0
- fid/welcome.py +23 -0
- {fid_ffmpeg-0.4.4.dist-info → fid_ffmpeg-0.4.5.dist-info}/METADATA +1 -84
- fid_ffmpeg-0.4.5.dist-info/RECORD +69 -0
- {fid_ffmpeg-0.4.4.dist-info → fid_ffmpeg-0.4.5.dist-info}/entry_points.txt +1 -1
- fid_ffmpeg-0.4.5.dist-info/top_level.txt +1 -0
- fid_ffmpeg-0.4.4.dist-info/RECORD +0 -65
- fid_ffmpeg-0.4.4.dist-info/top_level.txt +0 -2
- {initial_files → fid}/__init__.py +0 -0
- {tasks → fid/initial_files}/__init__.py +0 -0
- {initial_files → fid/initial_files}/error_handling.py +0 -0
- {tasks/audio → fid/tasks}/__init__.py +0 -0
- {tasks/encode → fid/tasks/audio}/__init__.py +0 -0
- {tasks → fid/tasks}/audio/audio_interactive.py +0 -0
- {tasks → fid/tasks}/audio/bitrate.py +0 -0
- {tasks → fid/tasks}/audio/channels.py +0 -0
- {tasks → fid/tasks}/audio/codec.py +0 -0
- {tasks → fid/tasks}/audio/compressor.py +0 -0
- {tasks → fid/tasks}/audio/delay.py +0 -0
- {tasks → fid/tasks}/audio/denoise.py +0 -0
- {tasks → fid/tasks}/audio/equalizer.py +0 -0
- {tasks → fid/tasks}/audio/fade.py +0 -0
- {tasks → fid/tasks}/audio/mix.py +0 -0
- {tasks → fid/tasks}/audio/mute.py +0 -0
- {tasks → fid/tasks}/audio/normalize.py +0 -0
- {tasks → fid/tasks}/audio/replace.py +0 -0
- {tasks → fid/tasks}/audio/speed.py +0 -0
- {tasks → fid/tasks}/audio/trim.py +0 -0
- {tasks → fid/tasks}/audio/volume.py +0 -0
- {tasks/extract → fid/tasks/encode}/__init__.py +0 -0
- {tasks → fid/tasks}/encode/av1.py +0 -0
- {tasks → fid/tasks}/encode/encode_interactive.py +0 -0
- {tasks → fid/tasks}/encode/h264.py +0 -0
- {tasks → fid/tasks}/encode/h265.py +0 -0
- {tasks/stream → fid/tasks/extract}/__init__.py +0 -0
- {tasks → fid/tasks}/extract/attachments.py +0 -0
- {tasks → fid/tasks}/extract/audio.py +0 -0
- {tasks → fid/tasks}/extract/audio_channels.py +0 -0
- {tasks → fid/tasks}/extract/audio_track.py +0 -0
- {tasks → fid/tasks}/extract/chapters.py +0 -0
- {tasks → fid/tasks}/extract/extract_interactive.py +0 -0
- {tasks → fid/tasks}/extract/frames.py +0 -0
- {tasks → fid/tasks}/extract/keyframes.py +0 -0
- {tasks → fid/tasks}/extract/subtitles.py +0 -0
- {tasks → fid/tasks}/extract/subtitles_convert.py +0 -0
- {tasks → fid/tasks}/extract/subtitles_track.py +0 -0
- {tasks → fid/tasks}/extract/thumbnails.py +0 -0
- {tasks → fid/tasks}/info.py +0 -0
- {tasks/video → fid/tasks/stream}/__init__.py +0 -0
- {tasks → fid/tasks}/stream/dash.py +0 -0
- {tasks → fid/tasks}/stream/hls.py +0 -0
- {tasks → fid/tasks}/stream/http.py +0 -0
- {tasks → fid/tasks}/stream/rtmp.py +0 -0
- {tasks → fid/tasks}/stream/rtsp.py +0 -0
- {tasks → fid/tasks}/stream/srt.py +0 -0
- {tasks → fid/tasks}/stream/stream_interactive.py +0 -0
- {tasks → fid/tasks}/stream/udp.py +0 -0
- /tasks/video/concat.py → /fid/tasks/video/__init__.py +0 -0
- {tasks → fid/tasks}/video/compressor.py +0 -0
- /tasks/video/crop.py → /fid/tasks/video/concat.py +0 -0
- /tasks/video/fps.py → /fid/tasks/video/crop.py +0 -0
- /tasks/video/rotate.py → /fid/tasks/video/fps.py +0 -0
- {tasks → fid/tasks}/video/gif.py +0 -0
- {tasks → fid/tasks}/video/resize.py +0 -0
- /tasks/video/speed.py → /fid/tasks/video/rotate.py +0 -0
- {tasks → fid/tasks}/video/trim.py +0 -0
- {tasks → fid/tasks}/video/video_interactive.py +0 -0
- {fid_ffmpeg-0.4.4.dist-info → fid_ffmpeg-0.4.5.dist-info}/WHEEL +0 -0
- {fid_ffmpeg-0.4.4.dist-info → fid_ffmpeg-0.4.5.dist-info}/licenses/LICENSE +0 -0
fid/fid.py
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import typer
|
|
2
|
+
import questionary
|
|
3
|
+
from pathlib import Path
|
|
4
|
+
from .welcome import welcome
|
|
5
|
+
from .fid_interactive import fid_main
|
|
6
|
+
from .tasks.extract.audio import audio_main
|
|
7
|
+
from .tasks.extract.frames import frames_main
|
|
8
|
+
from .tasks.audio.mute import mute_main
|
|
9
|
+
from .tasks.video.compressor import compress_main
|
|
10
|
+
from .tasks.video.gif import gif_main
|
|
11
|
+
from .tasks.info import info_main
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
app= typer.Typer()
|
|
15
|
+
|
|
16
|
+
@app.callback(invoke_without_command=True)
|
|
17
|
+
def start(ctx : typer.Context):
|
|
18
|
+
if ctx.invoked_subcommand is not None:
|
|
19
|
+
return
|
|
20
|
+
|
|
21
|
+
welcome()
|
|
22
|
+
|
|
23
|
+
while True:
|
|
24
|
+
video_path= questionary.path("enter the path to your video:").ask()
|
|
25
|
+
if video_path is None:
|
|
26
|
+
raise typer.Exit()
|
|
27
|
+
if Path(video_path).is_file():
|
|
28
|
+
fid_main(video_path)
|
|
29
|
+
break
|
|
30
|
+
else:
|
|
31
|
+
video_path= questionary.path(" it isn't a video Path ,enter the path to your video:").ask()
|
|
32
|
+
if video_path is None:
|
|
33
|
+
raise typer.Exit()
|
|
34
|
+
audio_main(app)
|
|
35
|
+
compress_main(app)
|
|
36
|
+
frames_main(app)
|
|
37
|
+
gif_main(app)
|
|
38
|
+
info_main(app)
|
|
39
|
+
mute_main(app)
|
|
40
|
+
|
|
41
|
+
if __name__=="__main__":
|
|
42
|
+
app()
|
fid/fid_interactive.py
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import questionary
|
|
2
|
+
import typer
|
|
3
|
+
from .tasks.audio.audio_interactive import audio_main
|
|
4
|
+
from .tasks.encode.encode_interactive import encode_main
|
|
5
|
+
from .tasks.extract.extract_interactive import extract_main
|
|
6
|
+
from .tasks.stream.stream_interactive import stream_main
|
|
7
|
+
from .tasks.video.video_interactive import video_main
|
|
8
|
+
|
|
9
|
+
def fid_main(video_path):
|
|
10
|
+
|
|
11
|
+
while True:
|
|
12
|
+
choice= questionary.select(
|
|
13
|
+
"select the editing option you want:",
|
|
14
|
+
choices=[
|
|
15
|
+
"video editing",
|
|
16
|
+
"audio editing",
|
|
17
|
+
"extract from the video",
|
|
18
|
+
"streaming options",
|
|
19
|
+
"encoding options",
|
|
20
|
+
"exit"
|
|
21
|
+
]).ask()
|
|
22
|
+
|
|
23
|
+
if choice is None:
|
|
24
|
+
raise typer.Exit()
|
|
25
|
+
|
|
26
|
+
if choice=="video editing":
|
|
27
|
+
video_main(video_path)
|
|
28
|
+
|
|
29
|
+
elif choice=="audio editing":
|
|
30
|
+
audio_main(video_path)
|
|
31
|
+
|
|
32
|
+
elif choice=="extract from the video":
|
|
33
|
+
extract_main(video_path)
|
|
34
|
+
|
|
35
|
+
elif choice=="streaming options":
|
|
36
|
+
stream_main(video_path)
|
|
37
|
+
|
|
38
|
+
elif choice=="encoding options":
|
|
39
|
+
encode_main(video_path)
|
|
40
|
+
|
|
41
|
+
elif choice=="exit":
|
|
42
|
+
raise typer.Exit()
|
fid/tasks/video/speed.py
ADDED
|
File without changes
|
fid/welcome.py
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
from rich.console import Console
|
|
2
|
+
from rich.panel import Panel
|
|
3
|
+
from rich.text import Text
|
|
4
|
+
import pyfiglet
|
|
5
|
+
|
|
6
|
+
console = Console()
|
|
7
|
+
|
|
8
|
+
def welcome():
|
|
9
|
+
ascii=pyfiglet.figlet_format("fid-ffmpeg",font="bloody")
|
|
10
|
+
logo = Text(ascii)
|
|
11
|
+
logo.stylize("bold gradient(cyan, magenta)")
|
|
12
|
+
console.print(logo, justify="center")
|
|
13
|
+
content =(
|
|
14
|
+
"[bold]fid-ffmpeg Helper[/bold]\n\n"
|
|
15
|
+
"[green]Commands:[/green]\n"
|
|
16
|
+
" • info Show video info\n"
|
|
17
|
+
" • audio Extract audio\n"
|
|
18
|
+
" • frames Extract frames\n"
|
|
19
|
+
" • gif Create gif\n"
|
|
20
|
+
" • mute Remove audio\n"
|
|
21
|
+
" • compress Compress video\n\n"
|
|
22
|
+
"[dim]Run : fid <command> <video path>[/dim]")
|
|
23
|
+
console.print(Panel(content,title="v0.4.3",border_style="bright_blue",expand=False),justify="center")
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fid-ffmpeg
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.5
|
|
4
4
|
Summary: FFmpeg-based CLI tool for video and audio operations like editing, extracting, streaming, and encoding
|
|
5
5
|
Author-email: Omar Abdalgwad <ahlawyomar95@gmail.com>
|
|
6
6
|
License: MIT License
|
|
@@ -58,7 +58,6 @@ fid
|
|
|
58
58
|
https://github.com/user-attachments/assets/abcc8aa0-3ada-4548-8f99-987687cfccd9
|
|
59
59
|
|
|
60
60
|
## Requirements
|
|
61
|
-
|
|
62
61
|
- python >=3.9 : [Download Python](https://www.python.org/downloads/)
|
|
63
62
|
- ffmpeg : [Download FFmpeg](https://www.ffmpeg.org/download.html)
|
|
64
63
|
- install fid-cli with pip :
|
|
@@ -86,88 +85,6 @@ For more advanced options, use the interactive mode by running `fid` without arg
|
|
|
86
85
|
- Built with Typer for commands and Questionary for interactive prompts.
|
|
87
86
|
- Rich console output for a modern look.
|
|
88
87
|
|
|
89
|
-
## Project Structure
|
|
90
|
-
|
|
91
|
-
```
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
FID
|
|
95
|
-
├─ LICENSE
|
|
96
|
-
├─ pyproject.toml
|
|
97
|
-
├─ README.md
|
|
98
|
-
└─ src
|
|
99
|
-
├─ fid.py
|
|
100
|
-
├─ fid_interactive.py
|
|
101
|
-
├─ initial_files
|
|
102
|
-
│ ├─ error_handling.py
|
|
103
|
-
│ └─ __init__.py
|
|
104
|
-
├─ tasks
|
|
105
|
-
│ ├─ audio
|
|
106
|
-
│ │ ├─ audio_interactive.py
|
|
107
|
-
│ │ ├─ bitrate.py
|
|
108
|
-
│ │ ├─ channels.py
|
|
109
|
-
│ │ ├─ codec.py
|
|
110
|
-
│ │ ├─ compressor.py
|
|
111
|
-
│ │ ├─ delay.py
|
|
112
|
-
│ │ ├─ denoise.py
|
|
113
|
-
│ │ ├─ equalizer.py
|
|
114
|
-
│ │ ├─ fade.py
|
|
115
|
-
│ │ ├─ mix.py
|
|
116
|
-
│ │ ├─ mute.py
|
|
117
|
-
│ │ ├─ normalize.py
|
|
118
|
-
│ │ ├─ replace.py
|
|
119
|
-
│ │ ├─ speed.py
|
|
120
|
-
│ │ ├─ trim.py
|
|
121
|
-
│ │ ├─ volume.py
|
|
122
|
-
│ │ └─ __init__.py
|
|
123
|
-
│ ├─ encode
|
|
124
|
-
│ │ ├─ av1.py
|
|
125
|
-
│ │ ├─ encode_interactive.py
|
|
126
|
-
│ │ ├─ h264.py
|
|
127
|
-
│ │ ├─ h265.py
|
|
128
|
-
│ │ └─ __init__.py
|
|
129
|
-
│ ├─ extract
|
|
130
|
-
│ │ ├─ attachments.py
|
|
131
|
-
│ │ ├─ audio.py
|
|
132
|
-
│ │ ├─ audio_channels.py
|
|
133
|
-
│ │ ├─ audio_track.py
|
|
134
|
-
│ │ ├─ chapters.py
|
|
135
|
-
│ │ ├─ extract_interactive.py
|
|
136
|
-
│ │ ├─ frames.py
|
|
137
|
-
│ │ ├─ keyframes.py
|
|
138
|
-
│ │ ├─ subtitles.py
|
|
139
|
-
│ │ ├─ subtitles_convert.py
|
|
140
|
-
│ │ ├─ subtitles_track.py
|
|
141
|
-
│ │ ├─ thumbnails.py
|
|
142
|
-
│ │ └─ __init__.py
|
|
143
|
-
│ ├─ info.py
|
|
144
|
-
│ ├─ stream
|
|
145
|
-
│ │ ├─ dash.py
|
|
146
|
-
│ │ ├─ hls.py
|
|
147
|
-
│ │ ├─ http.py
|
|
148
|
-
│ │ ├─ rtmp.py
|
|
149
|
-
│ │ ├─ rtsp.py
|
|
150
|
-
│ │ ├─ srt.py
|
|
151
|
-
│ │ ├─ stream_interactive.py
|
|
152
|
-
│ │ ├─ udp.py
|
|
153
|
-
│ │ └─ __init__.py
|
|
154
|
-
│ ├─ video
|
|
155
|
-
│ │ ├─ compressor.py
|
|
156
|
-
│ │ ├─ concat.py
|
|
157
|
-
│ │ ├─ crop.py
|
|
158
|
-
│ │ ├─ fps.py
|
|
159
|
-
│ │ ├─ gif.py
|
|
160
|
-
│ │ ├─ resize.py
|
|
161
|
-
│ │ ├─ rotate.py
|
|
162
|
-
│ │ ├─ speed.py
|
|
163
|
-
│ │ ├─ trim.py
|
|
164
|
-
│ │ ├─ video_interactive.py
|
|
165
|
-
│ │ └─ __init__.py
|
|
166
|
-
│ └─ __init__.py
|
|
167
|
-
├─ welcome.py
|
|
168
|
-
└─ __init__.py
|
|
169
|
-
|
|
170
|
-
```
|
|
171
88
|
|
|
172
89
|
## Contributing
|
|
173
90
|
Contributions are welcome! Fork the repo, create a branch, and submit a pull request. For major changes, open an issue first.
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
fid/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
+
fid/fid.py,sha256=PzXi0iQXEnbkNpxVOjFkLyMV8ZDT3MGMM6FbC2arcgI,1163
|
|
3
|
+
fid/fid_interactive.py,sha256=QnYlfo0zkVUO6vOzz0pZc3W74O18PYGnvYpEagu8VA0,1277
|
|
4
|
+
fid/welcome.py,sha256=2zjllb-_E1MhE6cBRX_w06Rk_5WZXZZ55Ec9MyD8W3M,838
|
|
5
|
+
fid/initial_files/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
|
+
fid/initial_files/error_handling.py,sha256=Z1gSb90rS2Vy4VZHS9Zk7OHPL2o6NOw4ipzBQTmjLbo,351
|
|
7
|
+
fid/tasks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
8
|
+
fid/tasks/info.py,sha256=lDrvHBGTp-PQFb-6jZ9FeB6ou4SNo4CO4Rc9SVPBHPo,367
|
|
9
|
+
fid/tasks/audio/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
|
+
fid/tasks/audio/audio_interactive.py,sha256=U9D7yh2tXmJMP7nmmnOEYPoLBrPs2hNn3soNkYFLIRM,2519
|
|
11
|
+
fid/tasks/audio/bitrate.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
12
|
+
fid/tasks/audio/channels.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
13
|
+
fid/tasks/audio/codec.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
14
|
+
fid/tasks/audio/compressor.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
|
+
fid/tasks/audio/delay.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
|
+
fid/tasks/audio/denoise.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
17
|
+
fid/tasks/audio/equalizer.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
18
|
+
fid/tasks/audio/fade.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
19
|
+
fid/tasks/audio/mix.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
20
|
+
fid/tasks/audio/mute.py,sha256=OsPLClHQfWdJaUg_DOiJok0zKOtIhcAk6Ex7wuGUaFs,466
|
|
21
|
+
fid/tasks/audio/normalize.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
22
|
+
fid/tasks/audio/replace.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
23
|
+
fid/tasks/audio/speed.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
24
|
+
fid/tasks/audio/trim.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
25
|
+
fid/tasks/audio/volume.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
26
|
+
fid/tasks/encode/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
27
|
+
fid/tasks/encode/av1.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
28
|
+
fid/tasks/encode/encode_interactive.py,sha256=pdzbFIeo_EDVK52LOLvhtzT33uivfc8gO4ANFzea1G4,861
|
|
29
|
+
fid/tasks/encode/h264.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
30
|
+
fid/tasks/encode/h265.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
31
|
+
fid/tasks/extract/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
32
|
+
fid/tasks/extract/attachments.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
33
|
+
fid/tasks/extract/audio.py,sha256=vsAcpzp7qauIRakxrbWmleSeXKJoqKqwYwK2QSYsejA,432
|
|
34
|
+
fid/tasks/extract/audio_channels.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
35
|
+
fid/tasks/extract/audio_track.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
36
|
+
fid/tasks/extract/chapters.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
37
|
+
fid/tasks/extract/extract_interactive.py,sha256=ctv-G4YnaS5vUZGKOYDgWpei-44YdXTnp1nAc1umzD0,2198
|
|
38
|
+
fid/tasks/extract/frames.py,sha256=AXo5YYwcPqiGiNzIVh2rbgwdTAuOuFWQ_nVDlzTzOyo,506
|
|
39
|
+
fid/tasks/extract/keyframes.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
40
|
+
fid/tasks/extract/subtitles.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
41
|
+
fid/tasks/extract/subtitles_convert.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
42
|
+
fid/tasks/extract/subtitles_track.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
43
|
+
fid/tasks/extract/thumbnails.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
44
|
+
fid/tasks/stream/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
45
|
+
fid/tasks/stream/dash.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
46
|
+
fid/tasks/stream/hls.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
47
|
+
fid/tasks/stream/http.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
48
|
+
fid/tasks/stream/rtmp.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
49
|
+
fid/tasks/stream/rtsp.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
50
|
+
fid/tasks/stream/srt.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
51
|
+
fid/tasks/stream/stream_interactive.py,sha256=WVOpW9g0HdwPcsMc5ed_RUHJQGgGmQ8Wu2uMXjr5Nz4,1439
|
|
52
|
+
fid/tasks/stream/udp.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
53
|
+
fid/tasks/video/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
54
|
+
fid/tasks/video/compressor.py,sha256=cOBjww_BLYQuccZR0O1TCw5eIif0-loTb-RuZ4eZ7VI,578
|
|
55
|
+
fid/tasks/video/concat.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
56
|
+
fid/tasks/video/crop.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
57
|
+
fid/tasks/video/fps.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
58
|
+
fid/tasks/video/gif.py,sha256=o2_przDXUjNMxs0LlfQLRYK6xRsb2Lti0LRs0fSA07g,426
|
|
59
|
+
fid/tasks/video/resize.py,sha256=aQTGZDiwCW2RhfX_7DMc7S-mqTuYsqw5G91xkDRZ5Y0,677
|
|
60
|
+
fid/tasks/video/rotate.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
61
|
+
fid/tasks/video/speed.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
62
|
+
fid/tasks/video/trim.py,sha256=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN_XKdLCPjaYaY,2
|
|
63
|
+
fid/tasks/video/video_interactive.py,sha256=W9CODtlwwDjVjgWoRsj4Av-bP_e-3qT2QUtnr64Gdfg,1641
|
|
64
|
+
fid_ffmpeg-0.4.5.dist-info/licenses/LICENSE,sha256=F-pOyGrwdERPucmVHPPrD37KZZ7sphCDJeAzG5gxFOw,1091
|
|
65
|
+
fid_ffmpeg-0.4.5.dist-info/METADATA,sha256=eZ4OLfnog85MrVv21gxb7frZakdRvCrb8xSxr4LPEvI,4498
|
|
66
|
+
fid_ffmpeg-0.4.5.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
67
|
+
fid_ffmpeg-0.4.5.dist-info/entry_points.txt,sha256=wc8Iju3nkXAuyqF5NB1276l_AGtakuifMGR3D42dqB8,36
|
|
68
|
+
fid_ffmpeg-0.4.5.dist-info/top_level.txt,sha256=5jgogeo314G3j_oXUp3BE4wBE3t82ijRwLwF1KnYiDg,4
|
|
69
|
+
fid_ffmpeg-0.4.5.dist-info/RECORD,,
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
[console_scripts]
|
|
2
|
-
fid = fid:app
|
|
2
|
+
fid = fid.fid:app
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
fid
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
fid_ffmpeg-0.4.4.dist-info/licenses/LICENSE,sha256=F-pOyGrwdERPucmVHPPrD37KZZ7sphCDJeAzG5gxFOw,1091
|
|
2
|
-
initial_files/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
|
-
initial_files/error_handling.py,sha256=Z1gSb90rS2Vy4VZHS9Zk7OHPL2o6NOw4ipzBQTmjLbo,351
|
|
4
|
-
tasks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
|
-
tasks/info.py,sha256=lDrvHBGTp-PQFb-6jZ9FeB6ou4SNo4CO4Rc9SVPBHPo,367
|
|
6
|
-
tasks/audio/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
|
-
tasks/audio/audio_interactive.py,sha256=U9D7yh2tXmJMP7nmmnOEYPoLBrPs2hNn3soNkYFLIRM,2519
|
|
8
|
-
tasks/audio/bitrate.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
|
-
tasks/audio/channels.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
|
-
tasks/audio/codec.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
|
-
tasks/audio/compressor.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
12
|
-
tasks/audio/delay.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
13
|
-
tasks/audio/denoise.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
14
|
-
tasks/audio/equalizer.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
|
-
tasks/audio/fade.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
|
-
tasks/audio/mix.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
17
|
-
tasks/audio/mute.py,sha256=OsPLClHQfWdJaUg_DOiJok0zKOtIhcAk6Ex7wuGUaFs,466
|
|
18
|
-
tasks/audio/normalize.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
19
|
-
tasks/audio/replace.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
20
|
-
tasks/audio/speed.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
21
|
-
tasks/audio/trim.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
22
|
-
tasks/audio/volume.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
23
|
-
tasks/encode/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
24
|
-
tasks/encode/av1.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
25
|
-
tasks/encode/encode_interactive.py,sha256=pdzbFIeo_EDVK52LOLvhtzT33uivfc8gO4ANFzea1G4,861
|
|
26
|
-
tasks/encode/h264.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
27
|
-
tasks/encode/h265.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
28
|
-
tasks/extract/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
29
|
-
tasks/extract/attachments.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
30
|
-
tasks/extract/audio.py,sha256=vsAcpzp7qauIRakxrbWmleSeXKJoqKqwYwK2QSYsejA,432
|
|
31
|
-
tasks/extract/audio_channels.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
32
|
-
tasks/extract/audio_track.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
33
|
-
tasks/extract/chapters.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
34
|
-
tasks/extract/extract_interactive.py,sha256=ctv-G4YnaS5vUZGKOYDgWpei-44YdXTnp1nAc1umzD0,2198
|
|
35
|
-
tasks/extract/frames.py,sha256=AXo5YYwcPqiGiNzIVh2rbgwdTAuOuFWQ_nVDlzTzOyo,506
|
|
36
|
-
tasks/extract/keyframes.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
37
|
-
tasks/extract/subtitles.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
38
|
-
tasks/extract/subtitles_convert.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
|
-
tasks/extract/subtitles_track.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
40
|
-
tasks/extract/thumbnails.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
41
|
-
tasks/stream/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
42
|
-
tasks/stream/dash.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
43
|
-
tasks/stream/hls.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
44
|
-
tasks/stream/http.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
45
|
-
tasks/stream/rtmp.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
46
|
-
tasks/stream/rtsp.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
47
|
-
tasks/stream/srt.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
48
|
-
tasks/stream/stream_interactive.py,sha256=WVOpW9g0HdwPcsMc5ed_RUHJQGgGmQ8Wu2uMXjr5Nz4,1439
|
|
49
|
-
tasks/stream/udp.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
50
|
-
tasks/video/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
51
|
-
tasks/video/compressor.py,sha256=cOBjww_BLYQuccZR0O1TCw5eIif0-loTb-RuZ4eZ7VI,578
|
|
52
|
-
tasks/video/concat.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
53
|
-
tasks/video/crop.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
54
|
-
tasks/video/fps.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
55
|
-
tasks/video/gif.py,sha256=o2_przDXUjNMxs0LlfQLRYK6xRsb2Lti0LRs0fSA07g,426
|
|
56
|
-
tasks/video/resize.py,sha256=aQTGZDiwCW2RhfX_7DMc7S-mqTuYsqw5G91xkDRZ5Y0,677
|
|
57
|
-
tasks/video/rotate.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
58
|
-
tasks/video/speed.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
59
|
-
tasks/video/trim.py,sha256=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN_XKdLCPjaYaY,2
|
|
60
|
-
tasks/video/video_interactive.py,sha256=W9CODtlwwDjVjgWoRsj4Av-bP_e-3qT2QUtnr64Gdfg,1641
|
|
61
|
-
fid_ffmpeg-0.4.4.dist-info/METADATA,sha256=jyspJKlLKFtGLgKuxAnHHjawVBYCp4jgtybm7rvaxf4,6775
|
|
62
|
-
fid_ffmpeg-0.4.4.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
63
|
-
fid_ffmpeg-0.4.4.dist-info/entry_points.txt,sha256=E2zJLHL_dLfno_lfymdOFiE4Zq_aJBa5vVNfwHTB5FE,32
|
|
64
|
-
fid_ffmpeg-0.4.4.dist-info/top_level.txt,sha256=glIqk4p9N9EoHXTmkNQdRlbb1HpxOx2xuh9eO52I1E0,20
|
|
65
|
-
fid_ffmpeg-0.4.4.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tasks → fid/tasks}/audio/mix.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tasks → fid/tasks}/info.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tasks → fid/tasks}/video/gif.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|