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)