Some small cleanup

This commit is contained in:
Vitalii Lebedynskyi
2022-08-20 22:21:42 +03:00
parent fdfd2c6135
commit a7b08ffa64
2 changed files with 25 additions and 12 deletions

View File

@@ -83,7 +83,7 @@ class ChatConnection:
try: try:
while True: while True:
msg = self.connection.recv(1024).decode('utf-8') msg = self.connection.recv(2048).decode('utf-8')
if "PING :tmi.twitch.tv" in msg: if "PING :tmi.twitch.tv" in msg:
self.connection.send(bytes("PONG :tmi.twitch.tv\r\n", "UTF-8")) self.connection.send(bytes("PONG :tmi.twitch.tv\r\n", "UTF-8"))
logger.info("RECEIVED Ping from server. Answered") logger.info("RECEIVED Ping from server. Answered")

View File

@@ -1,6 +1,7 @@
import logging import logging
import os import os
import subprocess import subprocess
import sys
from datetime import datetime from datetime import datetime
from datetime import timedelta from datetime import timedelta
@@ -14,7 +15,7 @@ class Clipper:
except BaseException as e: except BaseException as e:
logger.error(e) logger.error(e)
def _run(self, video_file, chat_peaks_file, output_folder): def _run(self, source_video_file, chat_peaks_file, output_folder):
if not os.path.isdir(output_folder): if not os.path.isdir(output_folder):
os.mkdir(output_folder) os.mkdir(output_folder)
@@ -36,25 +37,28 @@ class Clipper:
ffmpeg_start_time = start_time.strftime("%H:%M:00") ffmpeg_start_time = start_time.strftime("%H:%M:00")
ffmpeg_end_time = end_time.strftime("%H:%M:00") ffmpeg_end_time = end_time.strftime("%H:%M:00")
output_file = os.path.join(output_folder, f"clip_{counter}.mp4") ffmpeg_output_file = os.path.join(output_folder, f"clip_{counter}.mp4")
self._cut_clip(video_file, ffmpeg_start_time, ffmpeg_end_time, output_file) logger.info("ffmpeg start time %s", ffmpeg_start_time)
logger.info("ffmpeg end time %s", ffmpeg_end_time)
logger.info("ffmpeg output file %s", ffmpeg_output_file)
self._cut_clip(source_video_file, ffmpeg_start_time, ffmpeg_end_time, ffmpeg_output_file)
counter = counter + 1 counter = counter + 1
def _cut_clip(self, video_file, start_time, end_time, output_name): def _cut_clip(self, source_video_file, start_time, end_time, output_name):
# ffmpeg -ss 00:01:00 -to 00:02:00 -i input.mp4 -c copy output.mp4 # ffmpeg -ss 00:01:00 -to 00:02:00 -i input.mp4 -c copy output.mp4
try: try:
subprocess.call([ subprocess.call([
"ffmpeg", "ffmpeg",
"-err_detect",
"ignore_err",
"-ss", "-ss",
start_time, start_time,
"-to", "-to",
end_time, end_time,
"-i", "-i",
video_file, source_video_file,
"-c", "-c",
"copy", "copy",
"-err_detect",
"ignore_err",
output_name output_name
]) ])
@@ -64,9 +68,18 @@ class Clipper:
if __name__ == "__main__": if __name__ == "__main__":
"/Users/vetalll/Projects/Python/TwitchClipper/recorded/" args = sys.argv
video = "/Users/vetalll/Projects/Python/TwitchClipper/recorded/icebergdoto/17-08-2022_13-30-20/video.mp4" if len(args) != 4:
peaks = "/Users/vetalll/Projects/Python/TwitchClipper/recorded/icebergdoto/17-08-2022_13-30-20/chat_peaks.txt" logger.error("Wrong arguments passed")
result = "/Users/vetalll/Projects/Python/TwitchClipper/recorded/icebergdoto/17-08-2022_13-30-20/clips" logger.error("Usage clipper.py video_file chat_peaks_file output_folder")
exit(1)
video = args[1]
peaks = args[2]
result = args[3]
# "/Users/vetalll/Projects/Python/TwitchClipper/recorded/"
# video = "/Users/vetalll/Projects/Python/TwitchClipper/recorded/icebergdoto/17-08-2022_14-29-53/video.mp4"
# peaks = "/Users/vetalll/Projects/Python/TwitchClipper/recorded/icebergdoto/17-08-2022_14-29-53/chat_peaks.txt"
# result = "/Users/vetalll/Projects/Python/TwitchClipper/recorded/icebergdoto/17-08-2022_14-29-53/clips"
clipper = Clipper() clipper = Clipper()
clipper.run(video, peaks, result) clipper.run(video, peaks, result)