diff --git a/README.md b/README.md
index 4c9c730d..414c9265 100644
--- a/README.md
+++ b/README.md
@@ -1,64 +1 @@
-
-
-
-
- ᴠɪᴅᴇᴏ ᴄᴏɴᴠᴇʀᴛᴏʀ
-
-
-
-
-
-`Main branch` - For personal use
-
-
-
-
-`Public branch` - For your channel
-
-
-
-
-`Telegran Channel` - DroneBots
- 
-
-# Main branch
-Main branch is to deploy a bot for your `personal` use only. Deploy from `public` branch if you need bot for your channel.
-
-VARIABLES required are:
-
-* `API_ID`
-
-* `API_HASH`
-
-* `BOT_TOKEN`
-
-* `BOT_UN` - Username of yout Bot.
-
-# Deploy (🌟Star the repo)
-
-Deploy your bot on `heroku`
-
-`Warning` - There are two different branches available, go to [public](github.com/vasusen-code/videoconvertor) branch if you need bot for your `channel`.
-
-`Fork and Click on Deploy in your fork`
- 
-
-`Alternate way:`
-
-If you are facing any problem while deploying through heroku button, just fork and `deploy manually` by creating a new app in heroku.
-
-Add these buildpacks if you are deploying manually (Read tutorial) :
-
-- `https://github.com/jonathanong/heroku-buildpack-ffmpeg-latest.git`
-- `heroku/python`
-
- 
-
-Deploy your bot on `Okteto`
-
-[](https://cloud.okteto.com)
-
-LICENSE:
-
-[](LICENSE)
-
+Don't deploy this branch!!
diff --git a/main/plugins/compressor.py b/main/plugins/compressor.py
index be9b557e..ad5b9868 100644
--- a/main/plugins/compressor.py
+++ b/main/plugins/compressor.py
@@ -12,7 +12,7 @@
#
# License can be found in < https://github.com/vasusen-code/VIDEOconvertor/blob/public/LICENSE> .
-import asyncio, time, subprocess, re, os, ffmpeg
+import asyncio, time, subprocess, re, os
from datetime import datetime as dt
from telethon import events
@@ -24,7 +24,7 @@
from .. import Drone, BOT_UN
from LOCAL.localisation import SUPPORT_LINK, JPG, JPG2, JPG3
-from LOCAL.utils import ffmpeg_progress
+from LOCAL.utils import ffmpeg_progress, ffmpeg_exec_progress
async def compress(event, msg, ffmpeg_cmd=0, ps_name=None):
Drone = event.client
@@ -63,8 +63,6 @@ async def compress(event, msg, ffmpeg_cmd=0, ps_name=None):
name = '__' + dt.now().isoformat("_", "seconds") + ".mp4"
os.rename(n, name)
await edit.edit("Extracting metadata...")
- vid = ffmpeg.probe(name)
- codec = vid['streams'][0]['codec_name']
hgt = video_metadata(name)["height"]
wdt = video_metadata(name)["width"]
if ffmpeg_cmd == 2:
@@ -72,29 +70,29 @@ async def compress(event, msg, ffmpeg_cmd=0, ps_name=None):
await edit.edit("Fast compress cannot be used for this media, try using HEVC!")
os.rmdir("encodemedia")
return
- if ffmpeg_cmd == 3:
- if codec == 'hevc':
- await edit.edit("The given video is already in H.265 codec.")
- os.rmdir("encodemedia")
- return
- if ffmpeg_cmd == 4:
- if codec == 'h264':
- await edit.edit("The given video is already in H.264 codec.")
- os.rmdir("encodemedia")
- return
FT = time.time()
progress = f"progress-{FT}.txt"
- cmd = f'ffmpeg -hide_banner -loglevel quiet -progress {progress} -i """{name}""" None """{out}""" -y'
+ cmd = "Join @MaheshChauhan"
if ffmpeg_cmd == 1:
cmd = f'ffmpeg -hide_banner -loglevel quiet -progress {progress} -i """{name}""" -preset ultrafast -vcodec libx265 -crf 28 -acodec copy -c:s copy """{out}""" -y'
elif ffmpeg_cmd == 2:
- cmd = f'ffmpeg -hide_banner -loglevel quiet -progress {progress} -i """{name}""" -c:v libx265 -crf 22 -preset ultrafast -s 640x360 -c:a copy -c:s copy """{out}""" -y'
+ cmd = [
+ "ffmpeg", "-hide_banner", "-loglevel", "quiet", "-progress", progress,
+ "-i", name,
+ "-c:v", "libx265", "-crf 22", "-preset", "ultrafast", "-vf", "scale=640:trunc(ow/a/2)*2",
+ "-c:a", "copy",
+ "-c:s", "copy",
+ out, "-y"
+ ]
elif ffmpeg_cmd == 3:
- cmd = f'ffmpeg -hide_banner -loglevel quiet -progress {progress} -i """{name}""" -preset ultrafast -vcodec libx265 -crf 20 -acodec copy -c:s copy """{out}""" -y'
+ cmd = f'ffmpeg -hide_banner -loglevel quiet -progress {progress} -i """{name}""" -preset ultrafast -vcodec libx265 -acodec copy -c:s copy """{out}""" -y'
elif ffmpeg_cmd == 4:
- cmd = f'ffmpeg -hide_banner -loglevel quiet -progress {progress} -i """{name}""" -preset ultrafast -vcodec libx264 -crf 20 -acodec copy -c:s copy """{out}""" -y'
+ cmd = f'ffmpeg -hide_banner -loglevel quiet -progress {progress} -i """{name}""" -preset ultrafast -vcodec libx264 -acodec copy -c:s copy """{out}""" -y'
try:
- await ffmpeg_progress(cmd, name, progress, FT, edit, ps_name)
+ if ffmpeg_cmd != 2:
+ await ffmpeg_progress(cmd, name, progress, FT, edit, ps_name)
+ else:
+ await ffmpeg_exec_progress(cmd, name, progress, FT, edit, ps_name)
except Exception as e:
os.rmdir("encodemedia")
print(e)
diff --git a/main/plugins/encoder.py b/main/plugins/encoder.py
index 54a0b324..d65f5783 100644
--- a/main/plugins/encoder.py
+++ b/main/plugins/encoder.py
@@ -12,7 +12,7 @@
#
# License can be found in < https://github.com/vasusen-code/VIDEOconvertor/blob/public/LICENSE> .
-import asyncio, time, subprocess, re, os, ffmpeg
+import asyncio, time, subprocess, re, os
from datetime import datetime as dt
from telethon import events
@@ -24,7 +24,7 @@
from .. import Drone, BOT_UN
from LOCAL.localisation import SUPPORT_LINK, JPG, JPG2, JPG3
-from LOCAL.utils import ffmpeg_progress
+from LOCAL.utils import ffmpeg_exec_progress
async def encode(event, msg, scale=0):
Drone = event.client
@@ -61,9 +61,9 @@ async def encode(event, msg, scale=0):
name = '__' + dt.now().isoformat("_", "seconds") + ".mp4"
os.rename(n, name)
await edit.edit("Extracting metadata...")
- vid = ffmpeg.probe(name)
- hgt = int(vid['streams'][0]['height'])
- wdt = int(vid['streams'][0]['width'])
+ vid = video_metadata(name)
+ hgt = int(vid['height'])
+ wdt = int(vid['width'])
if scale == hgt:
os.rmdir("encodemedia")
return await edit.edit(f"The video is already in {scale}p resolution.")
@@ -85,17 +85,45 @@ async def encode(event, msg, scale=0):
return await edit.edit(f"The video is already in {scale}p resolution.")
FT = time.time()
progress = f"progress-{FT}.txt"
- cmd = ''
+ cmd = ["Join @MaheshChauhan"]
if scale == 240:
- cmd = f'ffmpeg -hide_banner -loglevel quiet -progress {progress} -i """{name}""" -c:v libx264 -pix_fmt yuv420p -preset ultrafast -s 426x240 -crf 18 -c:a libopus -ac 2 -ab 128k -c:s copy """{out}""" -y'
+ cmd = [
+ "ffmpeg", "-hide_banner", "-loglevel", "quiet", "-progress", progress,
+ "-i", name,
+ "-c:v", "libx264", "-pix_fmt", "yuv420p", "-preset", "faster", "-vf", "scale=426:trunc(ow/a/2)*2", "-crf", "22",
+ "-c:a", "libopus", "-ac", "2", "-ab", "128k",
+ "-c:s", "copy",
+ out, "-y"
+ ]
elif scale == 360:
- cmd = f'ffmpeg -hide_banner -loglevel quiet -progress {progress} -i """{name}""" -c:v libx264 -pix_fmt yuv420p -preset ultrafast -s 640x360 -crf 20 -c:a libopus -ac 2 -ab 128k -c:s copy """{out}""" -y'
+ cmd = [
+ "ffmpeg", "-hide_banner", "-loglevel", "quiet", "-progress", progress,
+ "-i", name,
+ "-c:v", "libx264", "-pix_fmt", "yuv420p", "-preset", "faster", "-vf", "scale=640:trunc(ow/a/2)*2", "-crf", "22",
+ "-c:a", "libopus", "-ac", "2", "-ab", "128k",
+ "-c:s", "copy",
+ out, "-y"
+ ]
elif scale == 480:
- cmd = f'ffmpeg -hide_banner -loglevel quiet -progress {progress} -i """{name}""" -c:v libx264 -pix_fmt yuv420p -preset ultrafast -s 854x480 -crf 23 -c:a libopus -ac 2 -ab 128k -c:s copy """{out}""" -y'
+ cmd = [
+ "ffmpeg", "-hide_banner", "-loglevel", "quiet", "-progress", progress,
+ "-i", name,
+ "-c:v", "libx264", "-pix_fmt", "yuv420p", "-preset", "faster", "-vf", "scale=854:trunc(ow/a/2)*2", "-crf", "22",
+ "-c:a", "libopus", "-ac", "2", "-ab", "256k",
+ "-c:s", "copy",
+ out, "-y"
+ ]
elif scale == 720:
- cmd = f'ffmpeg -hide_banner -loglevel quiet -progress {progress} -i """{name}""" -c:v libx264 -pix_fmt yuv420p -preset ultrafast -s 1280x720 -crf 27 -c:a libopus -ac 2 -ab 128k -c:s copy """{out}""" -y'
+ cmd = [
+ "ffmpeg", "-hide_banner", "-loglevel", "quiet", "-progress", progress,
+ "-i", name,
+ "-c:v", "libx264", "-pix_fmt", "yuv420p", "-preset", "faster", "-vf", "scale=1280:trunc(ow/a/2)*2", "-crf", "22",
+ "-c:a", "libopus", "-ac", "2", "-ab", "256k",
+ "-c:s", "copy",
+ out, "-y"
+ ]
try:
- await ffmpeg_progress(cmd, name, progress, FT, edit, '**ENCODING:**')
+ await ffmpeg_exec_progress(cmd, name, progress, FT, edit, '**ENCODING:**')
except Exception as e:
os.rmdir("encodemedia")
print(e)
diff --git a/requirements.txt b/requirements.txt
index a0a60872..fb7a2d7e 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,4 +1,3 @@
cryptg
ethon==1.3.8 #for VC
-ffmpeg-python
tgcrypto