From c298cd4f989125c33d259df83393121539ccf136 Mon Sep 17 00:00:00 2001 From: Prabhat Roy Date: Sun, 9 Jan 2022 14:39:11 -0800 Subject: [PATCH] Move loading Decoder.so to a separate file to avoid building it internally --- torchvision/io/__init__.py | 6 +++++- torchvision/io/_load_gpu_decoder.py | 8 ++++++++ torchvision/io/_video_opt.py | 6 ------ 3 files changed, 13 insertions(+), 7 deletions(-) create mode 100644 torchvision/io/_load_gpu_decoder.py diff --git a/torchvision/io/__init__.py b/torchvision/io/__init__.py index 410ec5bfc2c..eed2a0ecba4 100644 --- a/torchvision/io/__init__.py +++ b/torchvision/io/__init__.py @@ -3,10 +3,14 @@ import torch from ..utils import _log_api_usage_once + +try: + from ._load_gpu_decoder import _HAS_VIDEO_DECODER +except ModuleNotFoundError: + _HAS_VIDEO_DECODER = False from ._video_opt import ( Timebase, VideoMetaData, - _HAS_VIDEO_DECODER, _HAS_VIDEO_OPT, _probe_video_from_file, _probe_video_from_memory, diff --git a/torchvision/io/_load_gpu_decoder.py b/torchvision/io/_load_gpu_decoder.py new file mode 100644 index 00000000000..bfcea9a67c3 --- /dev/null +++ b/torchvision/io/_load_gpu_decoder.py @@ -0,0 +1,8 @@ +from ..extension import _load_library + + +try: + _load_library("Decoder") + _HAS_VIDEO_DECODER = True +except (ImportError, OSError): + _HAS_VIDEO_DECODER = False diff --git a/torchvision/io/_video_opt.py b/torchvision/io/_video_opt.py index 5ef975e3586..de4b25bb7b5 100644 --- a/torchvision/io/_video_opt.py +++ b/torchvision/io/_video_opt.py @@ -14,12 +14,6 @@ except (ImportError, OSError): _HAS_VIDEO_OPT = False -try: - _load_library("Decoder") - _HAS_VIDEO_DECODER = True -except (ImportError, OSError): - _HAS_VIDEO_DECODER = False - default_timebase = Fraction(0, 1)