diff --git a/api/utils/file_utils.py b/api/utils/file_utils.py index af325baf0..9815f0df3 100644 --- a/api/utils/file_utils.py +++ b/api/utils/file_utils.py @@ -173,7 +173,7 @@ def filename_type(filename): if re.match(r".*\.(wav|flac|ape|alac|wavpack|wv|mp3|aac|ogg|vorbis|opus)$", filename): return FileType.AURAL.value - if re.match(r".*\.(jpg|jpeg|png|tif|gif|pcx|tga|exif|fpx|svg|psd|cdr|pcd|dxf|ufo|eps|ai|raw|WMF|webp|avif|apng|icon|ico|mpg|mpeg|avi|rm|rmvb|mov|wmv|asf|dat|asx|wvx|mpe|mpa|mp4)$", filename): + if re.match(r".*\.(jpg|jpeg|png|tif|gif|pcx|tga|exif|fpx|svg|psd|cdr|pcd|dxf|ufo|eps|ai|raw|WMF|webp|avif|apng|icon|ico|mpg|mpeg|avi|rm|rmvb|mov|wmv|asf|dat|asx|wvx|mpe|mpa|mp4|avi|mkv)$", filename): return FileType.VISUAL.value return FileType.OTHER.value diff --git a/rag/app/picture.py b/rag/app/picture.py index 8e9fccf67..bd2cb23d8 100644 --- a/rag/app/picture.py +++ b/rag/app/picture.py @@ -29,7 +29,7 @@ from rag.utils import clean_markdown_block ocr = OCR() # Gemini supported MIME types -VIDEO_EXTS = [".mp4", ".mov", ".avi", ".flv", ".mpeg", ".mpg", ".webm", ".wmv", ".3gp", ".3gpp"] +VIDEO_EXTS = [".mp4", ".mov", ".avi", ".flv", ".mpeg", ".mpg", ".webm", ".wmv", ".3gp", ".3gpp", ".mkv"] def chunk(filename, binary, tenant_id, lang, callback=None, **kwargs): diff --git a/rag/flow/parser/parser.py b/rag/flow/parser/parser.py index 0eaa08113..a92e1accb 100644 --- a/rag/flow/parser/parser.py +++ b/rag/flow/parser/parser.py @@ -144,7 +144,8 @@ class ParserParam(ProcessParamBase): "video": { "suffix":[ "mp4", - "av" + "avi", + "mkv" ], "output_format": "json", },