From 12e0c5b84de6ee4b7a1ffc2ed16c666d2ee956e0 Mon Sep 17 00:00:00 2001 From: jbannon Date: Tue, 31 May 2022 01:27:24 +0000 Subject: [PATCH] mkv bug from ffmpeg --- src/ytdl_sub/entries/youtube.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/ytdl_sub/entries/youtube.py b/src/ytdl_sub/entries/youtube.py index b7e9a86c..5ec6bbdb 100644 --- a/src/ytdl_sub/entries/youtube.py +++ b/src/ytdl_sub/entries/youtube.py @@ -1,3 +1,5 @@ +import os.path +from pathlib import Path from typing import Optional from ytdl_sub.entries.entry import Entry @@ -9,6 +11,18 @@ class YoutubeVideo(YoutubeVideoVariables, Entry): Entry object to represent a Youtube video. Reserved for shared Youtube entry logic. """ + @property + def ext(self) -> str: + """ + With ffmpeg installed, yt-dlp will sometimes merge the file into an mkv file. + This is not reflected in the entry. See if the mkv file exists and return "mkv" if so, + otherwise, return the original extension. + """ + mkv_file_path = str(Path(self.working_directory()) / f"{self.uid}.mkv") + if os.path.isfile(mkv_file_path): + return "mkv" + return super().ext + class YoutubePlaylistVideo(YoutubeVideo): @property