From c2111afd6e4a444556eef703a2dcb93a0298ebcd Mon Sep 17 00:00:00 2001 From: ahmadsharif1 Date: Wed, 13 Nov 2024 16:27:04 -0500 Subject: [PATCH 1/6] Improve color accuracy of BT709 frames on CUDA (#372) --- src/torchcodec/decoders/_core/CudaDevice.cpp | 23 +++++++++++++++----- test/decoders/test_video_decoder_ops.py | 6 +++-- test/utils.py | 2 +- 3 files changed, 22 insertions(+), 9 deletions(-) diff --git a/src/torchcodec/decoders/_core/CudaDevice.cpp b/src/torchcodec/decoders/_core/CudaDevice.cpp index 8aa464e4e..75dea7d8f 100644 --- a/src/torchcodec/decoders/_core/CudaDevice.cpp +++ b/src/torchcodec/decoders/_core/CudaDevice.cpp @@ -223,13 +223,24 @@ void convertAVFrameToDecodedOutputOnCuda( Npp8u* input[2] = {src->data[0], src->data[1]}; auto start = std::chrono::high_resolution_clock::now(); - NppStatus status = nppiNV12ToRGB_8u_P2C3R( - input, - src->linesize[0], - static_cast(dst.data_ptr()), - dst.stride(0), - oSizeROI); + NppStatus status; + if (src->colorspace == AVColorSpace::AVCOL_SPC_BT709) { + status = nppiNV12ToRGB_709HDTV_8u_P2C3R( + input, + src->linesize[0], + static_cast(dst.data_ptr()), + dst.stride(0), + oSizeROI); + } else { + status = nppiNV12ToRGB_8u_P2C3R( + input, + src->linesize[0], + static_cast(dst.data_ptr()), + dst.stride(0), + oSizeROI); + } TORCH_CHECK(status == NPP_SUCCESS, "Failed to convert NV12 frame."); + // Make the pytorch stream wait for the npp kernel to finish before using the // output. at::cuda::CUDAEvent nppDoneEvent; diff --git a/test/decoders/test_video_decoder_ops.py b/test/decoders/test_video_decoder_ops.py index eb3b55db6..ec56d9fe9 100644 --- a/test/decoders/test_video_decoder_ops.py +++ b/test/decoders/test_video_decoder_ops.py @@ -118,8 +118,10 @@ def test_get_frame_at_pts(self, device): # return the next frame since the right boundary of the interval is # open. next_frame, _, _ = get_frame_at_pts(decoder, 6.039367) - with pytest.raises(AssertionError): - frame_compare_function(next_frame, reference_frame6.to(device)) + if device == "cpu": + # We can only compare exact equality on CPU. + with pytest.raises(AssertionError): + frame_compare_function(next_frame, reference_frame6.to(device)) @pytest.mark.parametrize("device", cpu_and_cuda()) def test_get_frame_at_index(self, device): diff --git a/test/utils.py b/test/utils.py index 89957da7a..0fa843851 100644 --- a/test/utils.py +++ b/test/utils.py @@ -44,7 +44,7 @@ def assert_tensor_equal(*args, **kwargs): # Asserts that at least `percentage`% of the values are within the absolute tolerance. def assert_tensor_close_on_at_least( - actual_tensor, ref_tensor, percentage=90, abs_tolerance=20 + actual_tensor, ref_tensor, percentage=90, abs_tolerance=19 ): assert ( actual_tensor.device == ref_tensor.device From 92018787de384da2cd3f4feba5a597656680d3a2 Mon Sep 17 00:00:00 2001 From: ahmadsharif1 Date: Thu, 14 Nov 2024 11:45:11 -0500 Subject: [PATCH 2/6] Improve CUDA documentation by adding TorchCodec installation instructions (#365) --- README.md | 56 ++++++++++++++++++++++++++++++++++ examples/basic_cuda_example.py | 27 ++++------------ 2 files changed, 62 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index 40603254e..254c97349 100644 --- a/README.md +++ b/README.md @@ -93,6 +93,7 @@ ffmpeg -f lavfi -i \ ``` ## Installing TorchCodec +### Installing CPU-only TorchCodec 1. Install the latest stable version of PyTorch following the [official instructions](https://pytorch.org/get-started/locally/). For other @@ -127,6 +128,61 @@ The following table indicates the compatibility between versions of | not yet supported | `2.5` | `>=3.9`, `<=3.12` | | `0.0.3` | `2.4` | `>=3.8`, `<=3.12` | +### Installing CUDA-enabled TorchCodec + +First, make sure you have a GPU that has NVDEC hardware that can decode the +format you want. Refer to Nvidia's GPU support matrix for more details +[here](https://developer.nvidia.com/video-encode-and-decode-gpu-support-matrix-new). + +1. Install CUDA Toolkit. Pytorch and TorchCodec supports CUDA Toolkit + versions 11.8, 12.1 or 12.4. In particular TorchCodec depends on + CUDA libraries libnpp and libnvrtc (which are part of CUDA Toolkit). + +2. Install Pytorch that corresponds to your CUDA Toolkit version using the + [official instructions](https://pytorch.org/get-started/locally/). + +3. Install or compile FFmpeg with NVDEC support. + TorchCodec with CUDA should work with FFmpeg versions in [4, 7]. + + If FFmpeg is not already installed, or you need a more recent version, an + easy way to install it is to use `conda`: + + ```bash + conda install ffmpeg + # or + conda install ffmpeg -c conda-forge + ``` + + If you are building FFmpeg from source you can follow Nvidia's guide to + configuring and installing FFmpeg with NVDEC support + [here](https://docs.nvidia.com/video-technologies/video-codec-sdk/12.0/ffmpeg-with-nvidia-gpu/index.html). + + After installing FFmpeg make sure it has NVDEC support when you list the supported + decoders: + + ```bash + ffmpeg -decoders | grep -i nvidia + # This should show a line like this: + # V..... h264_cuvid Nvidia CUVID H264 decoder (codec h264) + ``` + + To check that FFmpeg libraries work with NVDEC correctly you can decode a sample video: + + ```bash + ffmpeg -hwaccel cuda -hwaccel_output_format cuda -i test/resources/nasa_13013.mp4 -f null - + ``` + +4. Install TorchCodec by passing in an `--index-url` parameter that corresponds to your CUDA + Toolkit version, example: + + ```bash + # This corresponds to CUDA Toolkit version 12.4 and nightly Pytorch. + pip install torchcodec --index-url=https://download.pytorch.org/whl/nightly/cu124 + ``` + + Note that without passing in the `--index-url` parameter, `pip` installs TorchCodec + binaries from PyPi which are CPU-only and do not have CUDA support. + ## Benchmark Results The following was generated by running [our benchmark script](./benchmarks/decoders/generate_readme_data.py) on a lightly loaded 56-core machine. diff --git a/examples/basic_cuda_example.py b/examples/basic_cuda_example.py index 5ff85e8e0..7c29e4475 100644 --- a/examples/basic_cuda_example.py +++ b/examples/basic_cuda_example.py @@ -18,6 +18,9 @@ running the transform steps. Encoded packets are often much smaller than decoded frames so CUDA decoding also uses less PCI-e bandwidth. +When to and when not to use CUDA Decoding +----------------------------------------- + CUDA Decoding can offer speed-up over CPU Decoding in a few scenarios: #. You are decoding a large resolution video @@ -37,28 +40,10 @@ TorchCodec you can simply pass in a device parameter to the :class:`~torchcodec.decoders.VideoDecoder` class to use CUDA Decoding. +Installing TorchCodec with CUDA Enabled +--------------------------------------- -In order to use CUDA Decoding will need the following installed in your environment: - -#. An Nvidia GPU that supports decoding the video format you want to decode. See - the support matrix `here `_ -#. `CUDA-enabled pytorch `_ -#. FFmpeg binaries that support - `NVDEC-enabled `_ - codecs -#. libnpp and nvrtc (these are usually installed when you install the full cuda-toolkit) - - -FFmpeg versions 5, 6 and 7 from conda-forge are built with -`NVDEC support `_ -and you can install them with conda. For example, to install FFmpeg version 7: - - -.. code-block:: bash - - conda install ffmpeg=7 -c conda-forge - conda install libnpp cuda-nvrtc -c nvidia - +Refer to the installation guide in the `README `_. """ From 29bf5ca1d729c6e3a31df26f4e2d04f7c3b62380 Mon Sep 17 00:00:00 2001 From: ahmadsharif1 Date: Thu, 14 Nov 2024 11:46:38 -0500 Subject: [PATCH 3/6] Add Nvidia licenses link to README.md (#270) --- README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/README.md b/README.md index 254c97349..14b32452e 100644 --- a/README.md +++ b/README.md @@ -212,3 +212,10 @@ guide](CONTRIBUTING.md) for more details. ## License TorchCodec is released under the [BSD 3 license](./LICENSE). + +However, TorchCodec may be used with code not written by Meta which may be +distributed under different licenses. + +For example, if you build TorchCodec with ENABLE_CUDA=1 or use the CUDA-enabled +release of torchcodec, please review CUDA's license here: +[Nvidia licenses](https://docs.nvidia.com/cuda/eula/index.html). From 6ab15a6fc68e65570c889b5a6d11ee87c800a645 Mon Sep 17 00:00:00 2001 From: Scott Schneider Date: Thu, 14 Nov 2024 16:34:07 -0500 Subject: [PATCH 4/6] Update readme chart (#377) --- .../decoders/benchmark_readme_chart.png | Bin 81499 -> 77135 bytes .../decoders/benchmark_readme_data.json | 322 +++++++----------- benchmarks/decoders/generate_readme_data.py | 8 +- 3 files changed, 128 insertions(+), 202 deletions(-) diff --git a/benchmarks/decoders/benchmark_readme_chart.png b/benchmarks/decoders/benchmark_readme_chart.png index 5dec9348ad7da72495fa2fec11b0800082fd9877..28ceabe4adf8b0588f761d786164e3e289827079 100644 GIT binary patch literal 77135 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 z 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 diff --git a/benchmarks/decoders/benchmark_readme_data.json b/benchmarks/decoders/benchmark_readme_data.json index 28c79303d..9639d107e 100644 --- a/benchmarks/decoders/benchmark_readme_data.json +++ b/benchmarks/decoders/benchmark_readme_data.json @@ -1,290 +1,218 @@ [ { - "decoder": "TorchCodec", + "decoder": "torchcodec", "description": "uniform 10 seek()+next()", - "fps_median": 2.874245162330032, - "fps_p25": 2.890669218048133, - "fps_p75": 2.862767020928218, + "fps_median": 2.888099110308182, + "fps_p25": 2.9416150999827617, + "fps_p75": 2.8451474402295633, "frame_count": 10, - "iqr": 0.03371739387512207, - "median": 3.4791743345558643, - "type": "uniform:seek()+next()", + "iqr": 0.1152633186429739, + "median": 3.4624850526452065, + "type": "uniform seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { - "decoder": "TorchCodec", + "decoder": "torchcodec", "description": "random 10 seek()+next()", - "fps_median": 3.658458368739899, - "fps_p25": 3.679569429876782, - "fps_p75": 3.606357184854245, + "fps_median": 3.679673367614735, + "fps_p25": 3.7010260633892753, + "fps_p75": 3.6730411925903006, "frame_count": 10, - "iqr": 0.05517190555110574, - "median": 2.733391771093011, - "type": "random:seek()+next()", + "iqr": 0.020586160942912102, + "median": 2.7176325181499124, + "type": "random seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { - "decoder": "TorchCodec", + "decoder": "torchcodec", "description": "100 next()", - "fps_median": 248.32328677696285, - "fps_p25": 250.6501813668334, - "fps_p75": 244.31468271091225, + "fps_median": 332.62889220665653, + "fps_p25": 335.30421912694004, + "fps_p75": 329.14228955425125, "frame_count": 100, - "iqr": 0.010345779359340668, - "median": 0.402700855396688, - "type": "next()", + "iqr": 0.005583339370787144, + "median": 0.300635339692235, + "type": "100 next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { - "decoder": "TorchVision[video_reader]", + "decoder": "torchvision[video_reader]", "description": "uniform 10 seek()+next()", - "fps_median": 0.4195638935454161, - "fps_p25": 0.42014650010734295, - "fps_p75": 0.4189829005177118, + "fps_median": 0.4183496816958986, + "fps_p25": 0.42028123679840773, + "fps_p75": 0.41643579969655253, "frame_count": 10, - "iqr": 0.06610076874494553, - "median": 23.834272095002234, - "type": "uniform:seek()+next()", + "iqr": 0.21971396077424288, + "median": 23.90344832930714, + "type": "uniform seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { - "decoder": "TorchVision[video_reader]", + "decoder": "torchvision[video_reader]", "description": "random 10 seek()+next()", - "fps_median": 0.32245125406966435, - "fps_p25": 0.32245125406966435, - "fps_p75": 0.32245125406966435, + "fps_median": 0.3201664495067429, + "fps_p25": 0.3201664495067429, + "fps_p75": 0.3201664495067429, "frame_count": 10, "iqr": 0.0, - "median": 31.01243947353214, - "type": "random:seek()+next()", + "median": 31.23375361599028, + "type": "random seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { - "decoder": "TorchVision[video_reader]", + "decoder": "torchvision[video_reader]", "description": "100 next()", - "fps_median": 176.82997455955987, - "fps_p25": 177.54379221046926, - "fps_p75": 175.14625035317215, + "fps_median": 183.6059253297136, + "fps_p25": 184.88581057175523, + "fps_p75": 180.4772551158132, "frame_count": 100, - "iqr": 0.00771009735763073, - "median": 0.5655149826779962, - "type": "next()", + "iqr": 0.01321205124258995, + "median": 0.5446447320282459, + "type": "100 next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { - "decoder": "TorchAudio", + "decoder": "torchaudio", "description": "uniform 10 seek()+next()", - "fps_median": 0.5316661236830815, - "fps_p25": 0.5318804166321828, - "fps_p75": 0.5314520033403498, + "fps_median": 0.5240865109999612, + "fps_p25": 0.5245880071682041, + "fps_p75": 0.5235859727575772, "frame_count": 10, - "iqr": 0.015156010165810585, - "median": 18.80879663862288, - "type": "uniform:seek()+next()", + "iqr": 0.03648180142045021, + "median": 19.080819273367524, + "type": "uniform seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { - "decoder": "TorchAudio", + "decoder": "torchaudio", "description": "random 10 seek()+next()", - "fps_median": 0.417209378798961, - "fps_p25": 0.41758998612516984, - "fps_p75": 0.4168294646408316, + "fps_median": 0.41470785541122906, + "fps_p25": 0.4150239639037595, + "fps_p75": 0.41439222808863957, "frame_count": 10, - "iqr": 0.04369210824370384, - "median": 23.968780444934964, - "type": "random:seek()+next()", + "iqr": 0.03673251997679472, + "median": 24.113360452465713, + "type": "random seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { - "decoder": "TorchAudio", + "decoder": "torchaudio", "description": "100 next()", - "fps_median": 179.4697720392447, - "fps_p25": 181.05508626841646, - "fps_p75": 173.49148405860208, + "fps_median": 189.09233561323046, + "fps_p25": 190.02373443273453, + "fps_p75": 187.75804451204894, "frame_count": 100, - "iqr": 0.024079074384644628, - "median": 0.5571968965232372, - "type": "next()", + "iqr": 0.0063502974808216095, + "median": 0.5288421642035246, + "type": "100 next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { - "decoder": "Decord", + "decoder": "torchcodec", "description": "uniform 10 seek()+next()", - "fps_median": 2.9254250604823127, - "fps_p25": 2.928776037979067, - "fps_p75": 2.9179279307467434, + "fps_median": 33.23248091744692, + "fps_p25": 33.74429257495837, + "fps_p75": 32.677051134717146, "frame_count": 10, - "iqr": 0.012693846598267555, - "median": 3.4183066710829735, - "type": "uniform:seek()+next()", - "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" - }, - { - "decoder": "Decord", - "description": "random 10 seek()+next()", - "fps_median": 2.3913952159683447, - "fps_p25": 2.409423905905687, - "fps_p75": 2.379609551240287, - "frame_count": 10, - "iqr": 0.05200037732720375, - "median": 4.181659281253815, - "type": "random:seek()+next()", - "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" - }, - { - "decoder": "Decord", - "description": "100 next()", - "fps_median": 301.64058598625485, - "fps_p25": 304.4257754819803, - "fps_p75": 297.8336145342091, - "frame_count": 100, - "iqr": 0.0072706404607743025, - "median": 0.33152037439867854, - "type": "next()", - "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" - }, - { - "decoder": "TorchCodec", - "description": "uniform 10 seek()+next()", - "fps_median": 32.797487611763884, - "fps_p25": 33.16049598127707, - "fps_p75": 32.34604228526151, - "frame_count": 10, - "iqr": 0.007593189366161823, - "median": 0.30490140337496996, - "type": "uniform:seek()+next()", - "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" - }, - { - "decoder": "TorchCodec", - "description": "random 10 seek()+next()", - "fps_median": 31.86583108909739, - "fps_p25": 32.422775044534646, - "fps_p75": 31.51582155415764, - "frame_count": 10, - "iqr": 0.008875773288309574, - "median": 0.313815759960562, - "type": "random:seek()+next()", - "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" - }, - { - "decoder": "TorchCodec", - "description": "100 next()", - "fps_median": 478.59019817346393, - "fps_p25": 483.5137156807738, - "fps_p75": 469.99482336428133, - "frame_count": 100, - "iqr": 0.00594893516972661, - "median": 0.20894702896475792, - "type": "next()", - "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" - }, - { - "decoder": "TorchVision[video_reader]", - "description": "uniform 10 seek()+next()", - "fps_median": 5.863026312201653, - "fps_p25": 5.883880399939407, - "fps_p75": 5.821213575132222, - "frame_count": 10, - "iqr": 0.01829617563635111, - "median": 1.705603807233274, - "type": "uniform:seek()+next()", + "iqr": 0.009678754955530167, + "median": 0.3009104263037443, + "type": "uniform seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { - "decoder": "TorchVision[video_reader]", + "decoder": "torchcodec", "description": "random 10 seek()+next()", - "fps_median": 3.5804448256145283, - "fps_p25": 3.610017214846564, - "fps_p75": 3.573725565752598, + "fps_median": 32.0340867355421, + "fps_p25": 32.33995696335928, + "fps_p75": 31.48660833047371, "frame_count": 10, - "iqr": 0.028130420949310064, - "median": 2.7929490571841598, - "type": "random:seek()+next()", + "iqr": 0.008380331099033356, + "median": 0.3121674759313464, + "type": "random seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { - "decoder": "TorchVision[video_reader]", + "decoder": "torchcodec", "description": "100 next()", - "fps_median": 220.60506211225706, - "fps_p25": 221.92824221952606, - "fps_p75": 219.83775682122163, + "fps_median": 373.9297931168172, + "fps_p25": 377.8974427908539, + "fps_p75": 366.9518403987283, "frame_count": 100, - "iqr": 0.004284817026928067, - "median": 0.45329875499010086, - "type": "next()", + "iqr": 0.007893264293670654, + "median": 0.267429880797863, + "type": "100 next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { - "decoder": "TorchAudio", + "decoder": "torchvision[video_reader]", "description": "uniform 10 seek()+next()", - "fps_median": 10.562701139154996, - "fps_p25": 10.594120999307123, - "fps_p75": 10.475383401305544, + "fps_median": 5.826583628637648, + "fps_p25": 5.869409916500439, + "fps_p75": 5.80448564059718, "frame_count": 10, - "iqr": 0.010699251666665077, - "median": 0.9467275338247418, - "type": "uniform:seek()+next()", + "iqr": 0.01905675418674946, + "median": 1.7162715988233685, + "type": "uniform seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { - "decoder": "TorchAudio", + "decoder": "torchvision[video_reader]", "description": "random 10 seek()+next()", - "fps_median": 7.143372898069971, - "fps_p25": 7.190431420792876, - "fps_p75": 6.984323268168379, + "fps_median": 3.5913843964539565, + "fps_p25": 3.641605801630432, + "fps_p75": 3.557561124756978, "frame_count": 10, - "iqr": 0.041040806798264384, - "median": 1.3998989192768931, - "type": "random:seek()+next()", + "iqr": 0.06487313844263554, + "median": 2.7844415679574013, + "type": "random seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { - "decoder": "TorchAudio", + "decoder": "torchvision[video_reader]", "description": "100 next()", - "fps_median": 234.31507730203276, - "fps_p25": 235.5241203289182, - "fps_p75": 233.2609776710573, + "fps_median": 220.82061460318502, + "fps_p25": 222.48418761498934, + "fps_p75": 218.84938919419412, "frame_count": 100, - "iqr": 0.004119404591619968, - "median": 0.42677578050643206, - "type": "next()", + "iqr": 0.007465103641152382, + "median": 0.452856270596385, + "type": "100 next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { - "decoder": "Decord", + "decoder": "torchaudio", "description": "uniform 10 seek()+next()", - "fps_median": 28.951774908715404, - "fps_p25": 29.60339324217526, - "fps_p75": 28.130013392739134, + "fps_median": 10.54381002725746, + "fps_p25": 10.612585301638902, + "fps_p75": 10.516430888261935, "frame_count": 10, - "iqr": 0.017693073954433203, - "median": 0.3454019669443369, - "type": "uniform:seek()+next()", + "iqr": 0.008615483529865742, + "median": 0.9484237646684051, + "type": "uniform seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { - "decoder": "Decord", + "decoder": "torchaudio", "description": "random 10 seek()+next()", - "fps_median": 23.55224702573544, - "fps_p25": 23.829998507803513, - "fps_p75": 23.327513783118945, + "fps_median": 7.206591092692971, + "fps_p25": 7.231744857114745, + "fps_p75": 7.073061841995869, "frame_count": 10, - "iqr": 0.00903920829296112, - "median": 0.424587938003242, - "type": "random:seek()+next()", + "iqr": 0.0310227214358747, + "median": 1.3876186218112707, + "type": "random seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { - "decoder": "Decord", + "decoder": "torchaudio", "description": "100 next()", - "fps_median": 526.5873947695661, - "fps_p25": 534.5632246100912, - "fps_p75": 514.0865116923063, + "fps_median": 204.94896843488522, + "fps_p25": 206.320878222405, + "fps_p75": 203.29397516227598, "frame_count": 100, - "iqr": 0.007451178273186088, - "median": 0.18990200106054544, - "type": "next()", + "iqr": 0.007216569967567921, + "median": 0.4879263397306204, + "type": "100 next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { diff --git a/benchmarks/decoders/generate_readme_data.py b/benchmarks/decoders/generate_readme_data.py index 277cd3752..91be59dc1 100644 --- a/benchmarks/decoders/generate_readme_data.py +++ b/benchmarks/decoders/generate_readme_data.py @@ -11,7 +11,6 @@ from pathlib import Path from benchmark_decoders_library import ( - DecordAccurateBatch, generate_videos, retrieve_videos, run_benchmarks, @@ -56,10 +55,9 @@ def main() -> None: retrieve_videos(urls_and_dest_paths) decoder_dict = {} - decoder_dict["TorchCodec"] = TorchCodecPublic() - decoder_dict["TorchVision[video_reader]"] = TorchVision("video_reader") - decoder_dict["TorchAudio"] = TorchAudioDecoder() - decoder_dict["Decord"] = DecordAccurateBatch() + decoder_dict["torchcodec"] = TorchCodecPublic() + decoder_dict["torchvision[video_reader]"] = TorchVision("video_reader") + decoder_dict["torchaudio"] = TorchAudioDecoder() # These are the number of uniform seeks we do in the seek+decode benchmark. num_samples = 10 From 0256788d90d3de72751e1ce6a1d94fb75775cd5c Mon Sep 17 00:00:00 2001 From: Scott Schneider Date: Mon, 18 Nov 2024 10:55:51 -0500 Subject: [PATCH 5/6] Add notes that version is generated during install (#386) --- setup.py | 1 + src/torchcodec/__init__.py | 1 + 2 files changed, 2 insertions(+) diff --git a/setup.py b/setup.py index 7588c000f..9120c7fe0 100644 --- a/setup.py +++ b/setup.py @@ -196,6 +196,7 @@ def _write_version_files(): print("INFO: Didn't find sha. Is this a git repo?") with open(_ROOT_DIR / "src/torchcodec/version.py", "w") as f: + f.write("# Note that this file is generated during install.\n") f.write(f"__version__ = '{version}'\n") diff --git a/src/torchcodec/__init__.py b/src/torchcodec/__init__.py index 2b83eb035..e96aa5b33 100644 --- a/src/torchcodec/__init__.py +++ b/src/torchcodec/__init__.py @@ -10,6 +10,7 @@ from . import decoders, samplers # noqa try: + # Note that version.py is generated during install. from .version import __version__ # noqa: F401 except Exception: pass From faa2fd9baf031c50e811bbda44626d1928ada760 Mon Sep 17 00:00:00 2001 From: ahmadsharif1 Date: Tue, 19 Nov 2024 10:19:50 -0500 Subject: [PATCH 6/6] Added a decode+resize benchmark and cuda decoder (#378) --- README.md | 3 +- .../decoders/benchmark_decoders_library.py | 99 ++++- .../decoders/benchmark_readme_chart.png | Bin 77135 -> 106334 bytes .../decoders/benchmark_readme_data.json | 369 +++++++++++++----- benchmarks/decoders/generate_readme_data.py | 64 +-- 5 files changed, 407 insertions(+), 128 deletions(-) diff --git a/README.md b/README.md index 14b32452e..8643e0e3a 100644 --- a/README.md +++ b/README.md @@ -185,7 +185,8 @@ format you want. Refer to Nvidia's GPU support matrix for more details ## Benchmark Results -The following was generated by running [our benchmark script](./benchmarks/decoders/generate_readme_data.py) on a lightly loaded 56-core machine. +The following was generated by running [our benchmark script](./benchmarks/decoders/generate_readme_data.py) on a lightly loaded 22-core machine with an Nvidia A100 with +5 [NVDEC decoders](https://docs.nvidia.com/video-technologies/video-codec-sdk/12.1/nvdec-application-note/index.html#). ![benchmark_results](./benchmarks/decoders/benchmark_readme_chart.png) diff --git a/benchmarks/decoders/benchmark_decoders_library.py b/benchmarks/decoders/benchmark_decoders_library.py index 33d25c637..a5102fd32 100644 --- a/benchmarks/decoders/benchmark_decoders_library.py +++ b/benchmarks/decoders/benchmark_decoders_library.py @@ -38,6 +38,14 @@ def __init__(self): def get_frames_from_video(self, video_file, pts_list): pass + @abc.abstractmethod + def get_consecutive_frames_from_video(self, video_file, numFramesToDecode): + pass + + @abc.abstractmethod + def decode_and_transform(self, video_file, pts_list, height, width, device): + pass + class DecordAccurate(AbstractDecoder): def __init__(self): @@ -89,8 +97,10 @@ def __init__(self, backend): self._backend = backend self._print_each_iteration_time = False import torchvision # noqa: F401 + from torchvision.transforms import v2 as transforms_v2 self.torchvision = torchvision + self.transforms_v2 = transforms_v2 def get_frames_from_video(self, video_file, pts_list): self.torchvision.set_video_backend(self._backend) @@ -111,6 +121,20 @@ def get_consecutive_frames_from_video(self, video_file, numFramesToDecode): frames.append(frame["data"].permute(1, 2, 0)) return frames + def decode_and_transform(self, video_file, pts_list, height, width, device): + self.torchvision.set_video_backend(self._backend) + reader = self.torchvision.io.VideoReader(video_file, "video") + frames = [] + for pts in pts_list: + reader.seek(pts) + frame = next(reader) + frames.append(frame["data"].permute(1, 2, 0)) + frames = [ + self.transforms_v2.functional.resize(frame.to(device), (height, width)) + for frame in frames + ] + return frames + class TorchCodecCore(AbstractDecoder): def __init__(self, num_threads=None, color_conversion_library=None, device="cpu"): @@ -239,6 +263,10 @@ def __init__(self, num_ffmpeg_threads=None, device="cpu"): ) self._device = device + from torchvision.transforms import v2 as transforms_v2 + + self.transforms_v2 = transforms_v2 + def get_frames_from_video(self, video_file, pts_list): decoder = VideoDecoder( video_file, num_ffmpeg_threads=self._num_ffmpeg_threads, device=self._device @@ -258,6 +286,14 @@ def get_consecutive_frames_from_video(self, video_file, numFramesToDecode): break return frames + def decode_and_transform(self, video_file, pts_list, height, width, device): + decoder = VideoDecoder( + video_file, num_ffmpeg_threads=self._num_ffmpeg_threads, device=self._device + ) + frames = decoder.get_frames_played_at(pts_list) + frames = self.transforms_v2.functional.resize(frames.data, (height, width)) + return frames + @torch.compile(fullgraph=True, backend="eager") def compiled_seek_and_next(decoder, pts): @@ -299,7 +335,9 @@ def __init__(self): self.torchaudio = torchaudio - pass + from torchvision.transforms import v2 as transforms_v2 + + self.transforms_v2 = transforms_v2 def get_frames_from_video(self, video_file, pts_list): stream_reader = self.torchaudio.io.StreamReader(src=video_file) @@ -325,6 +363,21 @@ def get_consecutive_frames_from_video(self, video_file, numFramesToDecode): return frames + def decode_and_transform(self, video_file, pts_list, height, width, device): + stream_reader = self.torchaudio.io.StreamReader(src=video_file) + stream_reader.add_basic_video_stream(frames_per_chunk=1) + frames = [] + for pts in pts_list: + stream_reader.seek(pts) + stream_reader.fill_buffer() + clip = stream_reader.pop_chunks() + frames.append(clip[0][0]) + frames = [ + self.transforms_v2.functional.resize(frame.to(device), (height, width)) + for frame in frames + ] + return frames + def create_torchcodec_decoder_from_file(video_file): video_decoder = create_from_file(video_file) @@ -443,7 +496,7 @@ def plot_data(df_data, plot_path): # Set the title for the subplot base_video = Path(video).name.removesuffix(".mp4") - ax.set_title(f"{base_video}\n{vcount} x {vtype}", fontsize=11) + ax.set_title(f"{base_video}\n{vtype}", fontsize=11) # Plot bars with error bars ax.barh( @@ -486,6 +539,14 @@ class BatchParameters: batch_size: int +@dataclass +class DataLoaderInspiredWorkloadParameters: + batch_parameters: BatchParameters + resize_height: int + resize_width: int + resize_device: str + + def run_batch_using_threads( function, *args, @@ -525,6 +586,7 @@ def run_benchmarks( num_sequential_frames_from_start: list[int], min_runtime_seconds: float, benchmark_video_creation: bool, + dataloader_parameters: DataLoaderInspiredWorkloadParameters = None, batch_parameters: BatchParameters = None, ) -> list[dict[str, str | float | int]]: # Ensure that we have the same seed across benchmark runs. @@ -550,6 +612,39 @@ def run_benchmarks( for decoder_name, decoder in decoder_dict.items(): print(f"video={video_file_path}, decoder={decoder_name}") + if dataloader_parameters: + bp = dataloader_parameters.batch_parameters + dataloader_result = benchmark.Timer( + stmt="run_batch_using_threads(decoder.decode_and_transform, video_file, pts_list, height, width, device, batch_parameters=batch_parameters)", + globals={ + "video_file": str(video_file_path), + "pts_list": uniform_pts_list, + "decoder": decoder, + "run_batch_using_threads": run_batch_using_threads, + "batch_parameters": dataloader_parameters.batch_parameters, + "height": dataloader_parameters.resize_height, + "width": dataloader_parameters.resize_width, + "device": dataloader_parameters.resize_device, + }, + label=f"video={video_file_path} {metadata_label}", + sub_label=decoder_name, + description=f"dataloader[threads={bp.num_threads} batch_size={bp.batch_size}] {num_samples} decode_and_transform()", + ) + results.append( + dataloader_result.blocked_autorange( + min_run_time=min_runtime_seconds + ) + ) + df_data.append( + convert_result_to_df_item( + results[-1], + decoder_name, + video_file_path, + num_samples * dataloader_parameters.batch_parameters.batch_size, + f"dataloader[threads={bp.num_threads} batch_size={bp.batch_size}] {num_samples} x decode_and_transform()", + ) + ) + for kind, pts_list in [ ("uniform", uniform_pts_list), ("random", random_pts_list), diff --git a/benchmarks/decoders/benchmark_readme_chart.png b/benchmarks/decoders/benchmark_readme_chart.png index 28ceabe4adf8b0588f761d786164e3e289827079..f433f61991837910ba3baf75397cf4432b1efbde 100644 GIT binary patch literal 106334 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%0DYaW&rg@ zI@CEnr+}PDvJM}v>GB^wZfD4&iwOH+b!FbBL|An3xLsu9=hz-&IZH;D+%Gk!4rza@ zy+6Si29Dy(JSvV_ULgKjWoo9Rm z(IK)z(^3OXpaE!vs9E7%@`BS?y)~>Xp+oErqNBhe^iM zFAQ(JC1!5dMnHaoP3x~!a$HAi^0kuGa?5l>Kah|BAt6{0C-aXnO7WyqaZdrHS-J9)zK7?M z5bUc}xb{|q2+O!dnb0k8uQ2uvb(NKiTp_l@ZE`h1<_%ehnbd5Tqn&i z(KLE}{U3IBJ9vKQiQY?Eo`eMcv`NSjcETC%&x_mN{VCG`s6^qjBW-G$a^hMpa4?sG zS7zjF{t!majpUk1P(!B_HjN$a3paDT)f2Se5~(eOwZ<&&82Rv`&lI^vnj`sB@_yJ! z5^pK`Xy%x{V$NEpQsIHfjFvp4&%YjdAJ%N6j9JS~eCvPU=N#76S zfaxRxUAT{$7Lk?7sG;)#Gq%=Nf|jWBNI+gpKnlG?!X^G`x5oUZ^7Kzd&JR^6PR8kd zKVz9k#bj$o>c|UB;t`{>h&JSM3qWgrl>vH^fLPDYy}QLfF-0^kf#WC!y+ z_I&s2vDK0_z}>N)vz;d^(!B`qvz={C=herxOW(MtjN?0t2?(4-g4086ZT|FrRQqKN zW=N9i4~TTx_3fJp88dm9wKybT*`>3DugW+SF!`7_Zd^AKK}*wq7xbQOlsoIU)Qn%+ zdRouO=Peu|uu+E7lx~=O9eD$4q+zS_pij!g0FpV-zC`=9c1W`;9q`Mdq6?sLhAFP_ zdZjv|zSdJN&oh;BOU)|;D1NOI&{Z1S`sgU7^?3Pi!{$e{?pDR=C#-qR z`k0*qMQiBC))uj#fO0Z7q!`hrCL>TRs7qJGQt5ktHE6CkFSn=J9+83!GYma1=rRB( zYK$Iw77W}F)!;_Eny>S~JB@;fcv(t{l$(;2cST`W5 zvR$J_cwO(RKSwr0xa?IIKEyobMP=ni-c*Ef3VIBsHD0q+gqte4C!+eayN8C@r)eRa z6DuCuImn#ogR!3a@EbwqawO`5Db2UA@QX-oi3xLSsc4R+&zW4fngTPG%H-J<8z75W zo>|`N??Ve0+TTDBV>= zQ=+kLn7R*_@5E7Vv>&rPby$!eWuq2hK3oY|M%xfp$&>iU7d?L*WuN^+i?E_J5pT2-07T4BeYL##aEjIhrUx#(`bL8B*uglMbOz zQ&tMzAKZv-M&-w(aZlsKN+oR1g2~crgZ6VS&>4;AY|>_HXk({7A``nKC+q+y5$fp+ zxB=k|QI90ZVq+NDN~>Vo9sF>%Fbzfbi-VbqHb*l~*|H-t7Oi>4EKe~VAAggK31Rs`XcwH(&8i#uI0`BVSoa_XsP0ppb&+7#Z~Fh3f; zUJg9f_5d|V#mCs$g3~t9JHYl-vuiC^d@8;5UhHg$v)4z4axqvAUT}OpL(F(5Wg@@g9xA_?J~j(2Xy5^ou{4!vX#LiQx)r)w}PEx1wUFGeQ+Ndsj; zO{pRY`RN9@5n-n>c*lXeBJ@-Dp-G!~*gVe3OnG&ZuK9l4il4M^Zy8{~b)e?@Du(f< z^TD(A0d*2ogKBj1By($RT!ryx@rV$#xR5)gxbX65UbYlI0lKnP_u+?{^r(i~M9VX9 z&2etUYUpK|z9<4oj~AeFeR**3T(dm854F~2h^~hs5anW)P@G(3Dk617ZD&_bzmr1MY4fQldPN(LD2%Kvk>?=DIBsp2g zLOIgPmAnMCeeWW4y>i>sfvp#ZcdG3jC@p(J6(7!*!lKB?ZSs!$k1y>JNPGR6(#)6H>4h6>aCgiKkBbgsr=5~2J zJGg3qBE>skhBuu5EKdv&GftMCW7orwhmPvpv17!~|Dd;#2q`C0J;Gd~#I3ZZk|iLB)+k$6NS~jxk4H?N z?>kNd+y_tZ8%?L0*<>zoG9e*V!_Zyi?W z#MgJ+VEgpu4XJWw_Pz->;t{XEV~4a)g>xmtVD90eYw7>h^77#fd@-#U*9FidcCxLA zsH$Ew!}XWQu*e&K$$5)WmTyYdBHRzA`hb}UQC@P;IiZ0HGOukvsXT;2#hd=f!un|F zy@k^^y7s&H>umn*4;$}(`an0ASxqLqm?Ne&A4vUB}gt#pd$tz%-E zO$^ENUh2^BqH{nmH|cN<3QTejLToCE_^WCUb3=y6bT(^48j;P8j z#46#KI@KwHkDT(b1s1abg7YB;f94ae8E^QyfHCXhyfRW#$AKnk%b}EA=S&!v{q=7w zQk4<@!XZbL=S_>}PT0^=8x^NBGNs}4i5q(Y<8*u2*G$pPoB{{@bq;8%vks5ua!~nr>msLVS$go)6kBqvIF#(WjqO|Xn&`6q2 zfp6ju5>nZn;Q)YHNMx3a1Yab9CABa9{F8U?W!uB;8XTLTAXLiaCpUH7(IK9a!5$sg zBIHYIUPq}PpI6dwN@f(1n%TWoXTjdNfsyIF?_@H%0VkWt_ z&Dj2OfVxL%L}=(j6Er;=h3AqvL?RpQK5WVNa>BRk)Mvfz3xpi}0O5Wi_K|6l%EJ{X zP!4n9#1?18nJ-h(#;fmu@v1H;3CygNA%Tnl7v5>zC}_MT+)Lxk62F*#e4<89Xz*0W zUw-~suxmam;mkMI&_BEf-ct>s!bc%ZD46!N4EvmE9oNBHR2TT8xbTRxckX;b_B>SE zdtq7x$>v35fvXAHKqkb3Y6Q`9D4dt_HK~;PTRXXCbYwa1ykW}D&Q|{3ZP;1zLN4>- zvO^ImO8NpP{ULQh5mEKz!1o4~9x6}zmJti2Y3nR-sB5#*$8_y za;F`|-UT=wd9&-n6O)cq*bgvio?^|0t zZ&RNX-4Xtk6*Np@_?HJS8Oe0~lJEeGlk7FY-{s1w7kF(1L6a$Y$YF*P!U*z}36WeA z71x|*b%MB#ErABVeKkmwc2mkK16SvajvABFaFdw6N$;D(LdRq{rz^D2@vL5ROQ%FO zQ4eLy-^bUeqpu|$5kiaHhRGq;&w#8-p^_Jakq3^W*hb_M(I=9V=IJGX`%W&&v->)I z4*;A8m0%QQXFCd7CZ@(sq}NCRMajoo4=Un96QMfwiGBHyc?S9QFtj|hiy|+l!0nSw zzq|sXU^%_MLo=^4nCow4=0jvJ%Mr*jZ6qvVyem>H5xPjo4~OwpuQ&uk!W`DXw_fJ5 z=#)R1SH*m}Er9_zJZP)~TYR=UG@J$6wV1cVR<~fCPY1&-Q(PZr)s@33jk)hSZwZB( zY?4yyTCs%?p>UdK|8k|$x^C%`;JQ(vZ-yvNZz{^Ndzr-JmaI>i{jt`GmR+jTW{&VI z32_;Y&e9C4`Q><_{h@U=9YZ7c0vp}k zY;-#?>5TN%kK(pT)MLU^K1`d3SKbk19!OKEV9rEsX6`YufO&wbE|Nj`@WUC z^~X9;r?%f6M2X$FXh%i0AM)63(MWKSnt`iVh%d3>!GqlW+O_>Qh)9)kyr_rwftn;k zJ!e{%C4nn7_@O2Cpi>GlE-&8JVNW?N%2$Z` ztTgBSw2283Q-)asUm2E(*V7{$y_Q6Q zVlbHbWp+eT5`d9R9-^w2K|M0?ua}m^9tmQSkiR9h{nEBbfyz9{#LFqF?sppW4x8Z- z!poDEhB+s%5z-_vUUnxbmWAEV=3@tqlRoNX(cDniPZ{pJ?q<5Z0qF!P>9+9m+~%+N z|8sCXNO-%LTau>GONjbdcoP=1PGCx9OqZ@*&6;(!0e#RV-B8z~_Hk^u`8fX_@F_w8 zcka{u!V)s+U`3z9eKJx$S_5uy%p+Vfi43pp{jm1gbTj>ZPsh}52`*d>hr^Joz`ChK z4&!u8^-_YWpg#_6>BNjl;W~tGo!7fZk5}vVs}+?r4vMR?AE^wq-fzvVCblr}%)$Y` zYG`R?UZ@gUjQ1{gGRH}lXg8qgq$pm{W++GnzLQ%vvThCqDP3>mpWvO3a4$EiEi!EL zo%^xH3x4{o?PoXB%X&?Wn-LV#c4=Olb@uti5l_1qmOU?Td;#Mk;Gsmf!{fmuERmrw z&}sdLxpn^frS|%KJGQE%>Jc+}%f`z7^Vf%iYX^q)4U@!rZrJFWIywm^@iaaaf+kb* z{Pi}@pI1%)0ph4;zgyExu7br#O6&`ROGdg3TiLsNn zHRdsADpX0-dnGe438WZD@m4nAY||7Qdk&PIX2;ttwCor!yHoOgxxtEh1RCFOKbdm* z#oHaX1i-I&d^O?u&G`$8iW~wvR2^76qu))>S8WvOU#hw|cJCMDHJ@g$tW4ow(0q-N z6L>`|5)#YC=Wjrr>YY8c#=zWgRQdr7AF|8?gcEa(j7*{+xX7hDIHTX*a$U`$+L_EI zHMr^4?UMuA9OgjV2GEoCJ$%f0Vx3CMwZ9B~a^-QXLjWSnWst?zK4HBLITE)d?_fPn zIW^G+YM$m9hT>Z;;v}P+U?1JbtS;zvqra}X_WJwNS?LXQPNXn)){E^Gegy#CqhB=X zwtk3uzGo$2n|BMY8S$xs-P@ufV)qZg(Fy=ee>r)+W5v6J=LO_@UMbGVhgtnbHmU;C zHXGA{XKulpc@g>32GE_nIJdZnDP>D{rLR+4ENQD$r$=YzL-Su`gU;vHNec_)f)ZY2 zMgO<7m>}1IF84B8=IK0r8Q$*&n9pUXIH&9)=b_}nh{#INus%6~np#>lce*YdN4xy1SdAhTDFAS_7yG7i)3#zGz zri;3R{Yl+4NKgJiLdWfHZf=qlAkToC?OFK9#zTp;a?5yCp+TLAN~N-kz#QmNS*Dtw zRAaWCb_pYRzf!_cvJc%C{Q}nHvs^oqZ8l=ryi92qIlZCjUS-J$UAA_0LT0Ac({mZn z$ivvvYx_~cRW-fS)pb}8!HdNG5?J~x8iq~-->j>F&)L8Vk}&10jQyB6xbSKy5L+%e zzof<(PU_2?ePt{vVv@?=zQyc*ue4Wn#wVtx0sUtL>9pNb+)dx<25tN*UClSSVY9U? zQtvYo&R-->A_2+yrEPu3yvSATR*75?x(hs|(~Jc%Z5`$sgp`D}b3nlJ@XW$!tc;Y* zMR{+EXV2(+aXbE-W#{K~!If4Ja%HHPDyAc$`k8?@;sMkp+t0D6Z0#`)Ehs(P+|WTuT@Hk` zw0n+7Mw~xL>K`FV>C>>XHZ)i*=-z1m_LJ%2OWww3%c(={X>xShbl1L`TZ*2K*irv5 z%jI6_q~E3~-Yok>nE6%dIGxR>E`CZ-tabg*Z9jhx2)61QJ?Ux1`3p?BGP9KgxYELI z>CrQBdF`;aAvYE~2O%il0Ffo3n%M6G@LEon=lJ=U>uWCDEltt@$Y8kq;GBLxA8+2? zHr^rRdev@t@&FWQ0hAyzLIV`u%tM7p(x`~*M~K}a3y$CCQc;`5Fm*78;RIy!br*qh zb??^gJV%q%J`LC}&q*H!<;DH!da{)sGh0MCOp@AgzO{Jv0DzAOnJDdbhaSlbb9q+F zsQo2)asw$xSlJ%{%Jgxac<4NGpI1;?%gN~#L16&ok&N8|1M#DTFP`YK(sknG(QdPl zo=I6RhUldI{S1&np?v|sYhEa}2v&t^xbMa%#_}wLpXObZ!9_mc?ohjTnR(eVd0CW* z;FkgwlY7~0qdg8|wLh)82%^M9#@~`Ot+o+*!{2rcgA59wToO%N7J&E#KfeuBBXj4? z%hbx4a>%j;krCy>0%*eH%waf7YkZOYCE}Cw0VPQs+A_RAcCb7VSd;@n$9b}^CGZL~ zQC94cF{Z1zLbG`A<3aSzEi5imwBJijeZ)`8xgDkJVt+rF!b)f^(eX$Nh<5UZjE?NH zvDe&(z%pW(lUZnzFrV5xDJy<~vEW;-L4Z?_4G>NQyUfp(iT*BtE}}JLD2H zgBZ_uQ%X}3TC-SQ7ha13g@(%3np*qVOgL{LIEDFwug>D24=R1j4SNn`u~g#NmM)xn zfnw=3?Sw>#1+8h6W{h}vImv_iotnM3*O7{L?|^U}P&!`bsS9AS{OtFii6@=QBuHj1 z)3X%SpM0sRe0GeiUJ|ikxt!>NTZzsKF2Mg*BORjTt_hoN{e3cg%!r8-qvHo|l%X|Z zl;V7rDSncYM#u)M%{a1)L8$yh@R|~%G8dfS01=JC$5CKUe1AgO0dy*~^@rdH#=UW4 z++TZd<+Bx=Z~QW|y6Yo3p5!F-onY%bWlC_%Cs)D0u=kZrGvb*EjI{ri;{TyxMiG*K_Iar!gA`N&vRMz^y zbX(Ss;mRCJhu^z4K05+K+E$+W21)DZbQhr&@aPEB&iRsJNI>SxR7d(8{ad z(Wi>SHDTyd5fJec*{51|PK{mc;@&i6-Qk=BgY*VPt;u@ z+*%g$T8=q$&^h~{*>suWQddKv8JRjq6EYg>{vluA4QNd)IT_bUa1CLK>-hr~=(^26 zdc%YSU3PKNttljeuh0>^9pJ(O6=rrQ6o;=k_}PFy3?00yK6r31a8tkwC$1y=Kr`;~ zRIZn*iDwnY8c1*C!*P%4b54rSYLCjEHX@A=FdqP6FKY?F)z6S~Ml#*R9(H6f_OmG% zUi`lQ?JHr#*!p4uBO_QGEaHY4H23gWw2os%GzNpfGGzL3d`r%3 z;Zo*v$EVWS^m%>qROnufVz!bWrCuT;%kRJc-kXZeSLP5%>gt*69E3gyZ}Rw^9+b1f zq+u8vQjNiTmDQGp^l^#aLe0q&T=k|rde29y+Hzh$a)9J;D5-^+hCtL}qlJhk1^|>h zW>PWvL=iXZnDD1hL#2Q4+aFZ_P{*fncmqLmn-~_|!2%}XMWE})_)&bt9K@038+i1A z6k@chH|g~!0CI}s&jM;gCp)0OynT@jbnVt{9Y6%+Kw6qWb(YigBrV4RmGaA`o?99!#F{_%U zZ492FQ!SxG@bO}g>g)8f3+~^W#?=!i=j`3=`b7wlQ@MTWbjmFM=wT+zkUcI+m9L3c zq6G*7_f#5QAR)d8=tOW}k2~AC9=2mX>Afn?T~H2cm-$>Ldy%DF;(n_KlCa;YbfciH zer&eiFewNI#LrFHB8y^$FUPqL@t8(Wo#^H#h&E=ZC55AC3?(b-KRi5+aTVVp+W+o= zz0EsotEx1G&=Ui&6%BMvp_!-vs|8^1Hp=J`#K19NULTQAAciQ8&Dd7o?0Rq=>*4i* zI!5A+%X#9LQh7C1MU6-p1Ed|968K~N9mXcA_}(e>Dnjv#&yJN~G1(Me+S~Tj9*s^( z@9Bb7Vhxd=Kx$1u9HcFlOBFG0njaPUI|w`o=2)&p`67~DRsQ5g{(!w<+n(iZd)%Ys z)FtcvwvprIo?Uo9L7_>!T zE|?rMp$1f8BI2JUXDAb8JzLJx%!OG8Yw1zasI9CbP9Sd{=b6e!JsK1Ye1L!kKkf+? z!yHzV5_05Jt-5Zb3(o$oy?SjxWVo@Y49$RS7FZ58_-hCJ8^1aszfR@sOrR{%G zvbN_m5`jnB`#}lF)`M_OkcgU9PDoy0Hl_{6A0Y=C`aN$zt(S)Tn+kT~TjX%lg8nS? zxJ8d7d)$Xc@*zw=_8@(hw&ao>VIp*)%;1oJ8Xn~2?l+s~HBy6HZpC!3LKeSj0u5{O zWMgZ^u0L94u7Rzc*}uK}aXK}`C&e#EC_ay`F^IA=kvHjKF0_%@c(Ir7S~jA;+wrz* zinKpWic?W=g&0Jfp8eE*57~a7b?i7E+C`HZ<4U$^r6Q0r{}{)sHx5!cz4_O5WTw41 zFj%+q*F6q7-ru&MM(nowdZv$05QME!QPOkHe-H zO?)N^OJOwnapM#uhZCk^B}IeWs3Hu&&aC#Px!_ktpa>&UwKBZ<-5!uavS;KtuSQvy zGr+{PZ{%GFH__4pMD5tai6Dc`yI(FhJv-khq??)YrM z8W`Vi+NI+RjPH1WfHTP0_0$70O+2EB<|31B<`UI&S}&ts3cCrsl!xdm)b-fP;gS#f zU2vC8)dFRXUw(e8gY(%dSFU^)*kw~mJ)z^{*2F8+bhdo|5Awas^Y&b(nX&f%~W-|7nZGC>gaNlg@;9`qH|+ zB7Uzn8gYI*eF+|W$Y8U(}SFQxKd-kj&3J@w;)oi`@`Vho$J62k9ZOLE1O&mVv_fPh3S{ZYDQ(<{A}~Pzx3DHqyF;Gs9d| z-FZ3GT{Gz(hkWRu*fd+BV-Pii*;$VI9M23N#pKtB2J7pDS`6n}t*Mi2GT6#v&qfqn z?IAhD{3`g8qet+q%$kq0XbbiRe0gA@#17Nuod_Po@a^4Sk8)0UEwcpZ_wq{{5LVD= z75yViGMQ;X7R;6<^tWHpzYhEKzYIK#{~;>p`xiXQ6dHZLF5b?e$I@0jW-Q_}ueEy? zqpO(fHFB7C)T*+cUGoT{HlE#&VByJ~E4Tt3{Z^gnJe_Y*pe`!=0QRXkr1gte_);p z&wIG)Gx_?#|K+a*-T&*a)ei809ghCM_?xy-f4*%FS1J@uPVf1-qO0$>FqG3W)~8XS zU2^Bwzy0L0T;#j{{g?6g|LyT8NbUREuT5QANkI31{(APU+-ZON75{^PXn*_V{`;r@ zW?ueAMU4IJkBqJwT8?SGj~aTOR&UfnGgK!|Gp>JfA+`Vdu;YHN1*(5)1dOkC}gf4MUJ;` zl4JkRU+!fI=dO%U6r`hI6yFz_8VL2fZ&PJV|ML%RI>F0m+9mEpys&e>YPB-zOVX#= zHGeelsQ>lLT}yw)r-~fG={rG(K#_^PbeD=ot~EecS5O>$V|9^lH~y{sc;QC>eq_ICx4z;YH=QE| zDa`ohXZ&5!$jji*6%CyHuTV5Tn%Q}(#KTK6F&|urZ{YKnTPJg`@g#+q1W=Il%&ZVo zQ;2u|V{X+O%(48a%fN-i;7A1{xD9tk76|BJnzOB|EYpua5Y`b&6ief5`u0WedlI+g z?H+4bwY%LF@tWGka@ zAByiyq%~L%skLTG>8)qb#z}Qy%#(a&td~TAO5%}F7vc%#H9ExJc%;yEJ?Nwh@k4$7K_lwL&z`v>IDduJB_4VK) zc}&rxSUWQ6Da`Mh=BIoGhRjL)6c~ymRJuTxt>8PjoqK+TM8WOsZQS{ z(<8-)MiL5%g5MrZc|t0ZM1gY6z)g>wI(4c{6H}YEb0rLK7I?>Hdcf63UH*PJX^)u| z-@2u>@Cr0X(xU0fFm3Yvtvn2Xr_@Egkj*VDP7bk6$brm9QF2tL5 z!(ZT51WR0)%dkdrzxe|u&GnRsK3eYKT3V7WN1VkqQCo;hh8s=d#5u;8sUVG$%s$;y-r6!D8yZQds0 zQCa2W3tvWLEske7e0_b* zbm)bA@hE}l52Aq9TY`Q?0w!4OvPC=}5u-}*j4>5fWK{z`XrVM{6k#|Ho7JIZT-&l91|Wb1Jk1BKp&a;QW@73GET=Q6=hc~{o{BIY1sOqJNO~z zM_d^ZAb>skP@%S^6cnk)wN#LvOEkNxynn#c%TP9LgO6&-*{d$LFY#!G1=UqoXCigH zNZZpr+NN+(wz6!D{e>T<>XyLJ68Tp~|z zfxj{UjEXg0bfCpZRG+bX`Ji)UXr({h?9tawKww4D1*8&FWFAtN8I`L}`S@Id84jS$ zm()lQBw>`-(oMA11FFMk=`$NUQ)BE>j6D72iK#nQcm^s)Se6f*mz!xC zfYoq8^+}1xU4|{i;PTMY*B2M0KlZPkw{W53N>>u;=-2dRlgOM6iaiM1r2vFtr$T@_ zfY+xd`#HrSMbCAg^^93%q3CC`D9Jl4iwvvN_mn&WD2bIJ{N3)+3*ys?4<&2nt-chR zFan_Zc?5E<+rfhs-FivI`9}YJs}4_x95jy}+*VPrC|vm=th_EiCaRMnsvYagt_?D; z1vxRAMbB#9ihq+v0?U3D+7Fq3M0Ymnkw4(4D9iR}>{^m^ySSoa)W(gK)T*0I>Z4=s zR{C~n7R_u+y4BpJis+>uYsj;m7k$`SP(UVk#`s~1Xa6|UoOH@O?x|f|(gNLf3UV3U z+jjf5F?qSu{9Bf$r}F0*q=O~S^W^+7dUo9{5%_tu9v$Ri)W&Uv1zk1P+huF8b?)pe z&+~NG{`tU7$(v)EC!UzN`L@-Qf@~dWvfExOsy%6LQgUwxh4jCE*{M-vx($d@>UP)@ z*5%~uoRBeka#zs4+3VYL_l{WkiW7O%CN(UJL-m9?1D{_0tSLCO^MzI1aeZ>2CSJkB z>jaNja(+(amSF6E1BADU9$mKC0sX|y&9Ui%&q*%1XE+hK{-wmsjVXQIXo?T3^~R4K z#m7%nFo_bkZ`IM2CvD@FB zJs*%+ErSlAi9FRAO(%NJw!t$o#dQBtZg$B{z@--!(Zb1u4>UxksS@G&b@Wb4F5h8# z;uQ88ZE{(XP-G0#dt@AP_jDR)Vj__Qp6BTe7r{^8Bym%{^!2YRMYs#E)n8XPu1_^k z!Gm5-m)QnlM26(xr$%BS>J9j?^b5@*8^&c8f~7--eUqmUG2S^By5bQu(O-ate1>`X z|5_~kOH?PR5Eo&?k{XOLEJ9{;RTzBCVbW34bv5=Bmn)g--^*}693e7K3WdQDR1Lkl zTO;)q>u5^NE7H_4ybMLyFYF_#jeVqkEQ2?YbRe#o94eCI3x0XETTIIEJCJ!xAU!2` zLyAAd3#zH)>`cSV`l5Br&lWaUicgSJF=?VWlT%IxBuj?;%Bw%>6xY0cdml7d285H) z09K#}KO(vFTubjMZ`Wg77+qmNc#d3zTmz**R}!5e5&E2XvWj{7N5JRAq00(LxnQe^ zI{RbazRtnx7k96Io2+Ha++oQCLc`d5k(MGp?c&*}C>eCi+5FA6mEZ}Q5P2kW)s z_tJBlw>4-eHrWqUeE#8c3Hs=*Z6~$D6 zycCS(p>i|i)0Mo8Np$)n#2|xcu8?0hIk1{Jy})1 zS3|-xI10iY%2q^>lvm_(4d^Z$5jBFuS(G87S_SbIx>)9}NiEACHy+(Dx;xM7zV7Ya zMUxfQ*t3k)TgR)F+x6>5b*IN)99@1HNFcu;A}7H3P-`X}od|2JcyFe7R&1e_=zTl* z6UB5X5!qBNtFC&sE-3u`+N5}gr8V&_w}V@|=O4e(asHe+(ZQ{Xv~Qm%Xvt(yR?El+ z#n7P*{S=$Z&NU~U_;uPBih^D)3X0diuX4qIZ>;|}_No8nla2l#`5^mm2eS$nA5qJv zDqQwBi*KR*NY%G|AUAIat(Od-{ux>N4gwvKr zdyXfa+YwLCCCTIezCpFWJG0kaEHLn18^CsVE#I|j38w((+*zPp-oRHvz?3hXT>u(2lvePJiS2`)Ie9yxd znbk*HB&r%vgR-aQn;dfQo@G1Qn*M&Xo8qOZ^Uhe&TGFgn-2gTY9udq=it6px|N0*s zf2-Sf>T@3nWbiyEnz{R;&Bw1&w&Y3BI*4|m3#g)(Jzm~wlSj(08TVtxqz@Z7ZJ=o> zmW&JhU|R-&>>TKvQycMWUaRRX=65XDqyGfDp7it>pCa~8qmGJA*9QDMezrBC%@sf> z>iYMBLwRDA8F4JF_$?6E)rT@bPY7tK@yYVLi?AHM!xE%2_9t$RB@7Dd21@hAP*{S> zquv;yuKxW5vUQ)}fs!eya>YU=$dD9~%Tb|8eIaPSoeV{DCcReXYf4HJS2lVl>wV|u zPGyJ(Fc7m_?1Gb+2ye)p%l~db9}uP%$C4`YW>}4_XwZUUkuwCqKuP$Hhy+0)CZB%_ zE#^>gLUbJxBf>qJf_|K@A^^VdxF>Y%2PaJdr|MK`Ib+{qSMKF`{46v7@x|Tog}4j` z9!rC<(3b8sy9&(|nT`;|s~1!wSM?Vgo%~GHDbmhMj;#5fy9R1R8U%>WnuQ|qOK_U1 z_#HeQw3s`Coq(SlCB;X6A0-df=rUM7FscP~{q=dSuHD{;{dsSi%n_gkQz@}%y8$7R z338Kc4vNF~xZ#VO^d;1vE^^q%;Gy9rvEedufcmP$S{FP%5NEY1P1|zP@vmRMjs+qZ zus{YUEU3=Sc){}8X?w53P59B?Z54~XX(#2pVNNzzXq?CfM%%BD|eEV|JUf% zqh%6M0&r6G_U)oIYt}@b{tePl!UQ9K4n(;_j)gy;xr{_NBc@H^^T9Lb8Po)Xa0wcA z5|&{$rn(;Pwk&%0a2R~sC)c5ovqB$Y1u`LpB~oHd2hQEZ2*>hP~Zr%ecrKFA8Vf+ew zOy&y#7V5<|OclS1$hOIU5zW($7keovhbsI=s(N$x)E+j^Fz6yxA(rQv&| zn&)dzLbM?7vb5BvY{K7KpZF8c|FPda>%zQmPSC)EX&zP=V3VZ$ZQD6t=X#!WZLpHU z4KT$SpjqVWU{W%u2yx6oby08fGkRrKNPv}u0m|cnzXO>7U$Ym{zq%E&f0?+-fs#dJ zBlIRR8Kc78^*)uvZ%QLJ(pt0WMJ8Fr+h@i9ASBV?EC!=y`dq zT%{Af*^s2$BD3L#10Y|$dR6WfQ6l21ylvHjR$x6%3>ku%k{d^jEC8YeNJ*`Zg0z(7 z$#u7vJ5j9)coa&q<}k~N#(1E}GC6f*vq<9t0t8vF4+(MB9zg5*j2n)@20>^$Fd1l}EN$qzUgxP#9Ea1s-{9M=vo!Kut< zK|$#e#4Rbu0{5^)>Jio<^QAz6nKC#XY)%ApV!0Mfg{&!OI%R&Dh%XVe^sECVBUWt8u*X{^30F_Kn~C=N+3{ zCL%3|P8d|AyM8^YIGR;Y@CTOoh|c?!JFJ@#)`qN}3KlrV)I1k6>SDAhB6vnJeHyQ^ zwF&4_1QrvCc4leNE-u-3OUu(bX{fFc7wm6|)D$XQ<|m9wqpcG_lTRvyw`q|d!fg^o zJ%eu=hXLE1>!*#It(M6VEGBj z%YjULP1$}00Nx+z&U%Eky_n9DP?D6+hr!R{IB_AYRQc9x^#}2~@7*%EGeOnG;i%QuSHd>nN`6E|88$!4s~>Xch}OS{ zI>WP&Nis-Jj{byLIT0vpWw>4U^+!~^3Bd#`A0t*%n!(ia%z>+K?iAC_&}XavkM6z$ zs_OIG@+y|ZM2!=TiXu_3h=A}{K$>8S;st5al&V2`0O=x95@SqIKrT(CsuV$*(vf0{ zA|0tBAQpO+F7?hn7!#BK|E+m5>&<&_hLyF{(0=9n&Uen<`|NYd^zswz#4RkOS0?Z0p}wY#s@nunzLTzfhV4qhPNLx+K$Wq8eAZV( zf|K`P-*+z8Fn&Ms ziLvmHyLLg*Bf!FL4#x)2i|-(xs@Hb77m{DY+G4|fxX>W-u!>!{_fPF~jns075_unK z3bAq>0e_oA#52dfpyO-0-|IYd`Nu}BVT4@mF!tnUVZE%#&GL2|vL6N-1sL`lk)pP4x!ru1+Cm1TT4JO{mx z+Gq6RT+z~}^E7r8l}bvCQfXYj3lFb0#hki;%h2wj58|m~%OdOTZHC*DEmH5aP0|?% zN!OD5z)V&@ndQ0=J1yAOr8tjY?7e`Y!*?cMvfcuXIn7Ek3txiv*;2G5#g4pEXm(uS ztPYY==j-)yRmvb)^%J7)cr=UTypJo-+X>gwN~F=ZKu>i--JCgJl_r*=&$(W~pPJig znbzjJxe{=Qr(6SV4Lm+$QTq%qK$$S{jk%uep^2CH zN>GXd($YFGx4MgsW}FC~_yhBW2cFUN)%udvnF$9RzV?HDirZtHOC zk!Y|8lQ^IVEEz6zHw?8D$EW*ac;@w-g^bZTr#x`m;^bi5STPRX--jrrH_1(EqVt24 zN%I4bV@M*56!$_<_ypf1&}Z9Oih z^BUxNz>|S_aLGrhZhfrT&cAWTWa?B6?3M_I#hR}M(&>Qif0~Dm`hb!X*bkqKPWNRv z$)4hwXN^@n5${^}WqyKntJH!IDh6vF2`fgBTiUgR&F!tfa{w?Hk*Ug9p)H{~bJ&%d?2j&p4|KC-YGG!}TEh0m4u z&0KS%CLrL!+BdEtj2biP%|&f|5-TYdE9x$+NF*S_S+`6<2CK2q!Y z$iR*rg(3|svS^_gYV?%(A`rwspI?6i%0PA$0s*z`EG*}kHgKH>T#yVKb6w6^^oako zH9SkWkzXh6Hr`MyN}t1Q%HW}7ZoQTaU76OEQmpvU7~KN*y!5cp7~b3!z(mN8nZ;RM zYQo8cHk>l?Z;MkSTmfZQQ+u}2b)>8iC2THq1dYdL;;*+JbkHJ6tT^QEN;X zRo1JDUiCV)B64^%;+~q-BR_DEAps7f_a9uN*4V-}y!6xn&Y70&QDU0Xp=`C zrvVm4ANT=M?zmNAWJ8WPoUqpzByL-dTu*M%7$c(T={LJ*$^l!WA5+^EJ9otP6HPv8_JV!73PzfS#C} zfi{fSRsB-*GyE@fy&Pua#m7UnU{W#+u$$b)+15?A9MLI|4d2Xgpm{9{lH0b8g&w5S zI^i?B^Kg!8J^3?dI{LSso%A;_YJBD}&ju`nV?+jBO2um@h~;F*!P@?kcp;K0`- zCs8=4;yr$Mo|+gvMIU8R_Os}mr-X3 zp#`b0sZo*W-{6SVfFvxV?oi^7&L?&hPWaVX3FO|3l~9EpOU-{3I_`*rl>8yE1~94B zPV2OqfdM3eNT^AQf&?x##?L<-KYa1~?>m9su^mR;sLckYj)`|`5cVmd zKxhvn*o8XfFHTdF7u1i`?1cAXhQe1XA1l1;Zs7)X$o9d%MPkFPI>XT$G#!hh6CR8V zlhA-=n=g_fu@@{_&?{GMwH!za2nsFCU?uela@Aw=P5>1`$3|JG4|^+%y3X)i0!rgJl1IQbVCp5@F(0IR{sBJx`R$9f2b za_V=t(PVNH`T(joNMt}pzEn$MmuMk%Ae%zQWyFv;56-M`{VjAflB%R&c2tB2u1Sc2 zp&t@N#twQ^X2I3zRn$I+d8Y?x44s2`Wi%4Qg~EkvZXwUs*+&l4m_(zBhod=;(xw~i zRH^edk~<*x$M{)YL@E^u8K^Vn4z>6Jd?L~O`4TdqNkfkv6|_~gD<0|fMG*vtoF(ux;Dc*6@x1alJ;YJXZl%A>EQJKlC%53 zZt=bebEqVdpsss|r*2DIkwU-%4hZsvCs3O5L{w7UNb+Eybj88(`*|=` zTQs~GS&$(17M^xI8p+6293@1Xr1uGgXX5r~@CSr-G%^|Hof=Sod-KR>xsLa10(;ee zzDGMdM}-V3U|N-c@QM8EE9k&!h64%&sx@WN6q#)eTjEK=g2>Dpz={HW4Gd}!N75lQ zp{Yal(?~jNkl7Mc8i#iR)pI2hRY!=ENsEom0(YFeXiViq4R743nJ-1MON&x(g})IANO;wi;DQ?r%@-F=>z)S&yQs*qMnbmbR8_{8gXgMqf-u&J@^oqR6)9b3V%JxoZu> z^N#h!u?Qy~hUYi$MgQ+_`@c+?{$I5;R(M`$+z+A=i8%gyxBctO$}$XLfT`uyn~Xzo zwNv^M<{#u&c2ZkDvZ4kbCG_4V_3V28HB&k%Vir16t5u{Qel?b}2de*ISh z)8780B}btq$X*?XBD&)FYnjAmuyplaCLnvmu#?`6X$IwH?_ZQH2&Emx$oH z+R4#+367Ig9~L4mVpe9JI_nyDPCJ{TKEUBQ{rQ9KuR7G%;vA}?tPxxy~=vPcxyj@+RsRhkDLTKHg7b|kv%ZrV9DKM@I zKwA}VG!Ee&Y8$^Ylae53RG)TX|V}f-CnjQ0;lh@Z1Lrb|C3MN71Mks0purg8U zl&9uH)%FBd7*u*eJxe4i<%b|BMqtIhqt_}fW#?UwtJvp~Y0v;%lW0Dq>W<7wsO?MeKL6#t> zn-6T2hI$Zpmo9`90qNtjZ2MSrzr`V|o^!^TK*#!RkSP3+PqV3c0P{4FuIkTavzT^4 zl@ThAvWzkSaAdNFEAV$1&7+}d*r#*|68fy{dy7dPa44tm{osP3;e=YEeKQS{QOS-0 zl}$Ye?9{eA3|oXB_f5dojXLch4}mxmNJ9pVc#R-8A}o1A8*r7lf>>NUiw)-oGRMTt zkTDqD3>mlJrDSQiD-%J3WL@wyA?Sce=+jg=K&-u~ej0kijQK0_!0F=7K$rEQQ3Ah7 z8&^&RmMppp>l4dAh(Ryv9({C76(NDN^>|ULY>Wl?2PnB`FITNyyNz`ggf>D7AFPAA zu*J2Iw}XepNIVwJKVy$PT4!U1oKHCu`S^f2kjm?rg@)mU0Fh~~S{xt>b`+kAMeAcf zc(jlb4P%C(F?3)7swO*JG6uxIAD3suoBENBg z&mE2OBBB=+4fShK^8#*l%a$!&cwE!0$=NfF(oYz#4|29W4RlM|~D=UhE^r55+aS1!;5-O42Tescb1APc+~J zubsGh(u1R8oG>=}xquWX){$~AxY(KI6I1~K!`>Fde0J*P0HH>c#bJ6OW?a0IY`2t$ zv6OXT8xl^#ML-&MftDio9n{>k(NO}>1T8RQRgQ@ta{5`0P-hLnNXLo<7|glhJ-`qx z6F-6ZDVpbr;v=*ceF)^r2g_6c#88l&bJioenHfRQ=xeY+WSV*(rIvxRh&?SQ9iSc9 zBMyflB-7416;R-qq11!uIgm-lka$w`w#cmzV_=l2)d5^d;%*wGgHR~~eGtmiZq)wv z{HYKYE}OC(ho>CBtgJqYvKs7{#1)y?EHoB{h!84l09qu`8-OlU>p9k4H{uwa-GZr& z;NpsVG&>QqwdHglXwQukgo>sHQ^1G^M_WN%4yvT38+IQ9?xhYR1A5Mwe5{IQggry} zH?@^)WRbP3IG*>#d*@-;ioHm4GP=g>hv75OgU2lZK#xo#1U*%9q!qLgP{rV;7+mbs z4#4>=2G}!MoXPqEvd25tgD#pRIu@{oNPZd`G>GcMShpP=Jt&eofku%H6zS$^SRNSK znusKO6iMQC*Q0jF-a&nmDfeD{{%2p|$pu2KjsM)vpqL{a)`BX{?g;uA94~^fA&oM~ z1gJ5|4Xz=EuhbVfx6aSn$4SMDIX(ao8&V5THseg@XOVFA-a!M6f; zP@vvMv}Olvf71a8XE2leH43{vhSO(lfrm$IV+2q!ra7EImf`2p`HItx01s3vC$~qy ze-}ruCWN}E_;zJB3#DL&MUUQE(Dn!3)Eb(D;GjAgikJhDx>}GE*=C;u9&Y(n3an+a z^pv$wbCFtWG)Juv6z|Hp+?=%de?AVVnkF&;V6ct?_6}3#;GJlqIxOBelMbG%)nOe; zaG3xmQ~>V?*AA0QtZg>LAmVNMIOfuK1G^*>VW!m5PfLnGUKwBZW8z#cHJ6?;)4%UL zpaq4~oHSPJv!@4^%eIOor#cdY3!&{6{je`~qNFXJ(vvzaRVv!b4%>I_U9Do5hT~iF38% zIOpp)$%VE~j||2PHSk>34boZ#|k;p-I_3+N${&is3qzj;)|Z6rts7PDqt9l zIYe_j2wHAGcf--tzndCmn~tN_kO+m(ceP{E5vjMPs~+v*Bmi7G#%TdoK|BR9J8ct! z;}crD!`W$Q$P#?pjW+*ksLmnM_vguUpIm}`=#s(sy63bM`r^$?_S$JP5*MU^{^z0QS+ zkKXw(J+%UNH_PJu@9GkvZ)dkUY#2eROn`cqQ}mqVfOsE6N-5xCq1jNG}4`dkv z?b{!eM#ms}P$Wn^8fjOXpbE@Qa3pSI0r-k1Qf_-0*)h&FvLSS}rzGM0Vn@M?tP5|o zVF)i<3y`i|&J0H3DX<~1VCM0+}e}ndUXf3{n_F34#!M?sK-}Zb4mEc@&$p5N~gLGw!dC#dn zT0_ktDA;PjktdE)n?2b{z(`NBH3SV7u*jhPN=P#HgEa926-kCue*@5^T6xf~p%5&b zNPc`U6~;K6l<$0yB#_^b6p#6lxv~(!kzZU~6Cl~#{5lX*$9iCOgE5;Hqi|;isOj_= z&XWhJE0#S%vbAfb;ZGpDGf7lAawN^CK#;m*@b1ZUm1L2Wd*jK%DV<#db478SAa1al zTQ(S$~gK|kYhfF=^G8qz5ZxW2h~^=ti-nH%W|ks4969#3iaR!`O!w48~SOL znPVdGJOwtP%V^pYgv<$xUJ{nGcnycKQXIR^yqLW7QHuHFnQ&4y0=-8C46Ne|HQ7=n zV$mUe{Nz3WsU|hE^JqPDt4!izToIk0a-s{~J0zC-9k_q_@+CPTLPBEdE&U(Zm}0k7 zS%4pv0gkjIc&sF|Ass3VWc4s9KnAi(zU zOpL}nS(-PAK&e5^#Loew(+@@GG$gxfSiZ!!qCTT;XZ)WhI2pp~q;R^>P&u+oBnv+H znh;b?-h#-8$Uu>X#1PmIP+m%R7A-W#<|(3+R1KLDq3LMI0eeKaf3~vk)esammY|ME zegPOe2I)Nk&s5Jt9tDnp$_B{=mswRHAreT4!j?nnML~j^Y#?KziV3xS96(~_Oc^9w zf~Wh)r4Yx+O6Y-*Np_Nv3dC1{iu=|Nn=I8>haNUZA?UK=$=M(GOkSgU(i^g7H_dMr zOT3T_mgmqryyDr44M;lutK~K_7;h~r7r}~QDpG$j<4aR)YOf`N*<&mi>9$-SEALX23#-4L7y52XOIteH)bZ|N%FID zAkQQs0PoHmhj3lMPxXpW-$MBwh5p2^$itN22Bba+P;rnHlWY+L+STob{~ml3K+iac2o9}|9Vh()XwdenD5x{XCfMPXvs=lW`y*7{UoV$Ib-#*vI=g(@r#olyiK zp&lZ$;8P{5A+5(~!P{U)k^7UKi?~-E%tgX_cDbE9N3vbP0;K4dcaUWyg$T59%arwW zb;TiBw17`$JY3}w*NiVyueBJwwW#VK`jPj;Abi^O-rA{9Q^u8xK$oED)kR##2-71c zwL4;v+linEq26i@2M34zVQ3Wv5Ys>2%(bf3YN|)zjLh11_-E6Cgk54AU*;_C;?$aP zKA8udQI=KZ;;e_XOp>^saY7dKNi$w7y1#0Y@vrdTz2DMmfmnQ3h__Ter+`e`r1?FIx zA32x&*Wtq-CU^|Sdkd9j(X-x7xid@dbE8B#T-vI2LH~j-H?s8?PWvJvPr%rmVZADC zu%7&CUYP8ga(Daxt6S>dWj?d_Zw@MY5}7^jsN>#$c!pdg2r^3_44fbz-yyUuBG3r@ zWn*D$o>(CCLi(?8ID@hGTVrOSfO|=7@nIkMuG&K7O8tcB9Goo4!0$-%?WvWBBvs*~ z`zz|-y4*l$@wBx5!Kq2p`RtU+I|CklmXGEy;}KoOhU-1WQNGHIz4`?Dx1!PRb#u+w zubY3goX#ah=mT+y12X;bGI=vw|K3sqGoLqG(Lq{bk~-)1#3ZH@wcSgY!5BrOf5nR? zi^;-#5%i`%aA-RENiiwyb`nPpXa_QKfszGznG#t?A!Gh#mu^NbWl%_zNT!aSR{@;q z=>Jp$Ae0Vw1^6UOH`f6Xne&W>x`^5=K`9Ve13dD}dLuswGN6o)NBT?$2pk&Vd$ohA zVi=xQB3-jD9fuj8lDxhRJaDxmD-wFScwz^O12uC0Na2M}34L&x`P zfd0%BrjEnYcZPAA;1*T_YsBNgXjN3n4>rAk88i51ppKqbNloIYJpg@e!Qey8EXk0Ek3Nm~P;MLUlOdK^%N#hb{8lHl@05boKAX3*LnU>)gx{mW&Y3g_Qa$LSG zNiJF5Chs}_>#nGnfa9f6lK#;#<&iPhMz@!VMF+i(Uy#5jf7;lOrL%O4&oQZL4GT4? z8Pz9gVpAJ$9FIA&W&cUf>0CWk_x=H1q4JCC#tr&q#|yJhZ}3eohaNkxr6aeZA=%9! z`B#^_pR5bwu?&J5pA2qvlgk^)7N(C0dEW)};#d*0K?Jq9K$VHv|o0?F3 zN@1YW_?dDni*`7XmjiP1?`>L5-v8PKleMKG5+ay(ZJ9b?#1=Y!kI9*?;DpA8pA}#M z==XR(?BBogF{^UVg?$d_1v7=NNeY+f&&2B_&HB1#>;->jb}L(P2rUiK;9DksS)G4n za&i)b9(RGoIwzd}_7$@T9=tmt#5IW+xMVo}H8Pr_b8Ui#EDXB?dhL%xdLv3Q6?PMb z=uULX@3{_vQ!7NV zb93(m90I#!fzi>?>{nibV{1}@sfN0ZHB5A=c%a*EvK3`g1?mTQjXpzz;6}7Olx)vz zV&C$Sj(?Ix54w54-5EI!n%AN)LV2X}Eb2BqDF(*hg zTzYg{t|L=2fnGlwK>E4D6U~neA&)DAUFl+0wH4;fEja6#0%O7Wg@5)i=VzRGuM(20XEwhtJ5j zIZqTA9-ZQ&7Sl{Wmc{9|$_KjAV#>i+VFb6HngEQ_?ad5SM z0QOw}pybk}OKDBPhc~L~9?(iY7AS-e-*c^-S#0Or*E|ydSD$zG9s>nau`M=~t*$H; z-QeN_eguq)3c?ec2^W`Q%s>y-wa(sR8t!7U0RzOR+eAEyAj(lRvM!hzo9;E;qo|~$ z1QXw2(Q?UKPmDG=RPOUO7!c;g*q>C?CF`A@o}|aEVA_N}EP0fs0r5wihM z;hloCGWsr{7kjWq*AYO`$KG%5@I!(`?#rb#jd9%U?XzZ}3|Date4G&#P5|ypBt1Pn z+7WbB`NcicFE6i?5bg-IS5AWWw;rs1x@s*ul zIu}Fr<2Ls~8?W^(PD6VbeNX&ca;1h`3+)yOb#8KQvXy6_LJIEEGWEQ^byvjO-?p-Q zb3*#;Vhz@SJiM34w0izp}M5E_1rbMtf#a$-~ zFtvIoFqhLn7lL4qCDvf(_{+yz#irKN)?&A2z4j@A*0uP0M+;tvM0PHs*jl-BXXwj; z4hICG3w1jR=VNTK#x->T*xNDuUd$payry2K*ibu#e%#gWiB|sx5EvGgmK1=Ge*QG% z`ACdOVSbmAO)(h6@niXDU!~|;R9>Hlhs`YrWPLC1q z)Ul-8q2j6*1fP7*d8)RXXA3H##(xaXbZM%NcsdpB9C7B=Pe(!}?}nQ9NxWYJvl)C> zIL=4kF9QY3{P6+hrC)NmD&=^t6^2yTP3KG0hI7PE>|1>txHP*Jy^hwl_i3#|)*s!+ zsVgxUyJu1ef_pd1?(xQp0a7KW(Ary;)adweKB(THphW09N1S!ToyY6zt6cB(9K8sh zsRUdW0OB7hrr@8JqfZM)5m|%#lVL=pISlJs^)7e$+zM6|5M0!fvHHIA7(9tF8O~=% ztXgzWfWSVyih14FJU3|i@y6)Kv8_W3<9$O(|2~_QOo{mXtcjffgFlbR%)1tO2 z8*o+cn=s`1qSr`AT31~vc>OoY3cF2R0e9v(aL77&h5Y&_F@saDEZ@7@NXu8(@8gng zN)pwcL4Yu~y|3S+D_yN=PpvV`=#n1C3qWO}GBPsCD(+A9Sa!)aq$klj*m>%3mz1;k zO#l%I4R^~D8%O2R9m_pr@&#K=e?QnFU8_77@v6rZy71!(!7R9epSnp~n=xM=YoOh_Z=6Uyr8NA)FCN&z=TJ4czN-3x{G4h(+`+ z-}kWY7%z89w)?zVOU#+inAf`}D6%8$h3KXq;}B zC@8`lzdmM>Ov^<1p`LQs*f5JQ=_L@rUEdBT08DfwrB-;riiD44eZMb*l9cV`jsTdv zXY)I6UaCUwg;^ZZ5Z2q+zW2pU@uFtS?~$eMD`g6nuQ_e_bkZ3TlMtQA$3nbGl-1F!7p;VZ2(B zqLr1^EQZFlZ?|z#bf0Q$;bWnQ@Z+6*b5ZK`Wzl;`6>?v#N`4G~VbPJe{Y;#n|hTb6|src6tZr`prAaeq2-8 z^sd)p!Wyk5oEe+Z{VF1^Mngd{*x3QS4-u*5(t>*?id1lhoNJ++6N~HUa3w%9dTzag zZ*36uhy5d_nRuBMP*v)LmLLe)!>ulu`wB?-V4#A=U__&hDG!;qc>NWoOMiBUUFQwt z0bnyjv9QG_vOuGhK;%3Wn0#)_YJCT_TaNIOE0*dA^#_qDIhUTo=E)Sx6=~FAHl3Lh z{muoAW=%ZKO@0^*^bgFtXWbh<@-_b4rvJ9KzJEsq4ujSJb>(egjtL%| z*)F^#O8rj1cu*Q9lj#tX5MxjeCNu(eZ4w1o9@E4|o%#8+-cS9TdA=X{6UOvNhKetjti zBu3Gx?0!KC;S&1CKfgVX5!s_LglLEV(<#}!r6BWBzABd_*B1^~fUxcc5p$w^_i*W_ zymGrKk;Rj_2R{8998X2%q8ii#klmNjIP^#&e+R@+M-Ch~K;exppT5<q%CE~5**KQA;Ax(DK2h#W1DbheZ$LYeLQ?}Kp4I0EVXA~IRzL;XSgQ*> zIO~y1%%#>UZr$pxmt~+JC$D|uq1Gaohk^!vfahYV3@EcS@W+9@3n}Kn^>6YO*!6k+ zjxO+W7|tKh6QSc6m0}Q{PKWG(iwfYvt3adEBsNl6KtExynVJ6}zjSR%@n#NJN`dX7ggR`4l;kd9)5o+kUONO&Kj)s>zw`yZ`u&G7 zV*LBRtMV=V@A!!rgTQbG!+WOxS>`F^P=Vo#7?l^Wl5Q(oFc`PxaDMhig#PaKj9ZC3 z!u_Wtxj5=S;S)7?sy=6&h`q_rW+Js&75*`!SJ$bnTtC~va1)1X??erQq3Skw!Fc$Q z^FE0TIffv}K7~y?_r)PJND3=P`z*H=eZy27Hq7K>4ns98$Nt?ntigHBJ_TgHd6#)* zUQKm{bT8L$pIW6S|Ar{v06WrU(w&hCD$!-F9%F&8FPCpw_8C{3 z8kef~IfKd#uP%;t3J-4P{HomCcJ&nJ%kWOKuodd>uM8CiGHPU@UhAIG)BgI0T`NS> zYV$u6o$B7BSIp_XC$iquLC)55jhT!%qqewXVc$k~GvEHt_6+Tr-qZXNKXD^|A`g#x zbKas(wJsRN{Ql8K-U3^z? zF<&uusCxI>7jJPgTRwQe^~Z>@;SE)OzkSZb+Wq87ym*X-*G+x_**|`Rr<juf5n75#ULo)a z6_sCa`xVs~&z?Q|lt)@@Yv}3yayZ~X%8756`=KJD&NlQ3x5a#EHutwaG1g|$^F6(2 z_MR8csZ}g5=0T`dF98+^n3V&Fa0z9D#@Xu*ksyEq$86X)VI*`=Utj;0F-$|w-o^Lu z6=q79pbtzHzbq|n1{4=}Sr?@fcLC#+pPg{f^um#`8gX10wbLc$!^LuMzEwWc z=I}ilnN}C_dYto%I`iwg=asK~GhapLP!@6!#lIKxA<_VKf@~gwo1`BD!u1Oz%E?|} zlwUst2i<5En$^W^;W=ZtWmvXZUAz5sPOw7TsT|&^fS}!wP(H+T&SSYa428idYEhla zUt8-sbyst#&olqAEQ}qxw9Y!~##{KM7yyRKNIQqe^$_w&16qrRkLLCoiwL5HvED4< z-2(aI&jrGRBVyG*0KXlzt=8E3roLcyv}zKtYr%ZcDA8#okJh#`$PX2#+z_n1>(V7m zlJY0JH?f{18y3jAzu4w=^KDJ6oF;P{#v&aTf)vd=`Et@59DGUmy*>H^0+4M#pL--{ z!E)X`gLKk>xh*N{mDeusRdWl1bLZ6i1))~-Zdb68nfBf7y>eigd981v#p#-GhZvHk ztmHDBdREV!I6P4;?IZeZztUd$qnj&hYnIBGKbU{p6TQWE4<8M6sA4H4wV)QaMV5wF zi1aGulBs<3bhmbaz^bjtZ!Oc3@^)aJ$I8@8o$WYrY1bC5D`Ria2SAG&J*c~J&CU+Z{^i2aQH%eK95p!in=eOGMel> zBW8L{S!`r6c|}$h78Z8T%%PP+4|Tq9$hyGVOq-Uf8LYJ6e%g?L#~@YAkaP!vCN=om z=OOD=+VqhH6Dnw(JNSs+`$MaTijGssoXKQn5$dJ-PEliH2sG=SW-0~Ifyy_s*H0u=P52Q3}_{j!8Rh~S2n}kd>TU>rZSX5l^rphy&bFhF`;32FQ=0mF9ml) zP~H9x2x+n{G{!p1?!8yC6D@Be{mn8U10GW@b)I+ngzw!~F_yRI9hMgP+vDyMvN)}C zppT_XWHNLydT84Xqe6*g_w?jNW5AcuR_A8Zd|qEpdUZ8wy~P6Q?{ZG6%-s(XXTuy1 z6u}broBMm5cz>NWN4|ee${r{Xg?vH7iQ=l9u}4RA3+wCaW6{RFG&MF=NH;?W;yy*} za690sX%?5y#2L^p2H(wQx&R)sM>AXp#FaGjOkG<$7|mYofRfy2+YD#71RI<+M<{r= z1NNG>yJEw)p3d=AXrJ5lpW7~; zTm<{=<6T`T%bz-0bn1`WpjglCv$CPOmwgHu_5`Z^YXnNL*i;2HKsI@j0qS@xUazO#)itkjA2z@O#{rg&9Js>w0;WL|EaJMqbXQmTFmzofoU! zG{L>5M$DFdmGVf4xrklN;SWo$@6Zm*R~-6AGQ;i*h43_%bbRO4A&t;ds0A!~@Tu zttzpTL`;B>>$q1UTmq!Z4~YDsOaM#)88eN>ucFWPxzCKy`Pk4$$yC)0Fhb@E3H^gh zk>?8h)1`|`Dyg|v(I}iNnCrsFnjPN5Nlk0&Q0b8@?-cN1=^XIhYpO2Miwr;V5|2x( zU)K|(j=}+oA#-5{ihe@55N47@p(Y_rhs7q)1Oj@6)W!@66N*T4;iiAj0=2d122q|P zSdc-y*pLZSCn%#iy*K_&lENl~_y+V&bI-hJ486&(Fpkmb>>optZZ5hlr+;mrYlFbG zU%TW4uK9Pl_o_=@;tnl{9*Yv~jW;JSB`9cOE(1YeEP8%>MW;abA{?RmNhr*vUVi^M zn@R7)zj5V3Kb%++EIYIWI5jkNaub6D?2+9oxf z8!e?uKBg_Wy2hlLL2y$N_sb}9R?UDs5&J2tOTfajyQ+2~+%00w(*g~F-`9k=l(yr?FuSOJHOmVt`3u`{u4 z%S$T=!PVBQcuZDT<WCRygxbBUb0z! zi~Y`KUpEC^9w4{}*f|E)-3E@_F`Z$ z{~6YbyqZK>_#z?CB^Z-#X325_x514h+AAIMmYFIy#*vznZKG9{Iqc{ zr^`cZ5oE8Vgdl%3(PkCpoQUG+_d1#jQc2`tImMbozi0a#0W76iX_<@FdB4A^UL@(3 zUVzAMIII&jIpP-uJ(kX`HbiPOF=fi->|oE7b!POAp*}#U*tg(yYC7fNSr_~T8eE0C zySwouux`DOq$PVldUrruArroZb$A$=Fd#_Pjac`>z(BMGJYm6Ph|bx}k#Y1i=wk83 zR8>cv2eu!TX5%{2sdjnIj++k~mr69H6jIUiXPOVB>=HtLRSU>fi@_>I5y$q%y^9<0 z6b^1Qh(8XzX3&@O);HP>(=Q@k0VoujX|Cd2f0y8Mx|iWKCkopA`I;4-!kWLf$sEt^ zkafMRd0ty2eQV!cxal8?5CLH?3?@fwa?qi^4`NM@^NpJ<@c;$ z2z(9ZpP(80GV%I3s1@rO$+$hG4WOqc9*Vg8;ap6i+eG-k^<)N(8);`O&CH&@-tlam zXd#cY9ubn~-u}v4P7xS%K}=GTFyPcu7)D&@o#~WE38E64>z)&i1KrWlk>GKA%363i zgS>Q(BM7d?xIULcndg2KLa*&GI^=Kk@Q(t|v}Nm}G2Xz^B8NR=+rkbmHOQkBaNlB{ z00Mo{cjjU+o>Om(hLO1BC0q`M5Bc!5T~vKd8%Z~i#d_2;s$13k4X z52|UL#k_*wKc+UB{^|S7@4x6h63y`3i3H&NSN*4b;zWTMnk7&Xr*&uCkEt669!sR6 zB{FtB$6C$f7-gDTF@>(OR=};NNNNbLiRg@sU8q$`?ih^5(=(tNn#w%D&J5M`KXDcd zMx;y}YK_|?Oa?>x8L||+zVv!N)}hO5p1jHcsxH#pGI}rpuaaxgr-#{SbC3l9D_|vx zqYR6Khv05**>cL62>hpX)%-XLU7FM=V(S%di$c4<30YRZXb0xx|Ig%0T#sw*q6Kr~~D zcryp+VtPskHcW4P@G^#`5-93g`Ps#u-BF7e0!mz8F!l<5x?b`h5IB}ANi+vADdD1+ zQZ-4`F*1}c1Sa<(|A^MS0XG{WII1QIngp;}28JOO;G=N3EJIZoq?88l?|h@#a)JS^ z-XuBa3Cf=B6}qv(wfAn-5G6URq3iXze3XU_?m(4NZ$8Y$kiPf_Maf#q2sl7jwGLrK z0&!1?Et}L4&IHwv+mplf!2R%tH&A>7*j(gNu<}4 z-;kwlR8o$df_9(fG@BeuVJX@QK`2OmgA0?MJ=kVUrhNnxD_NT3sL(hECf9q+)a#vj zc_F%|kc$x}|KY6*B*vV!J<2$-hxUM;YhOC6D#r3|eN9cTV+hndq%pZBY5TQ*5A27! zNLev~T0I<~!EVUYtVIqh__{aCQ5QLiwG0HD7>&CupD z9MTdB34|oxj+IldpZtbvppoy5j6{G5^m_LAi|2Bc>oZ?d}e;Va-N zTARY~oH^>s=_mpDDT>=z7FG?3@J{#Xw+U$bSiIrP33M;Ct^AEq`SV|%vy5#N7sJ7i z-bzAhxdNMnFe15c_Fphvz;Iaj;X;fLMv(FpPU~@aG{>?oDPO?oRCo{iYJf@A*h)*4 z=LKSOIj|0$rkEQyHlkoxWUohQDfPmWE9Zm>W3MR|&E8QzVBpem^E`vh@N_yE5$Kbp znqJTL;VM!)sKcs8M;pwB%s{Rv;WId=*-T0nqhppZ9KQVU%FI~F3Mvf72@h2$3Xt-e zg4nty>*~ZNW_g>}ChWZEK1$R9@V7y$m0Y7S&vO|z?VpQyJ76eA<-FOc0*(ynO4=(T zA`EA`wU49I46{xyP)wqSNSq8f@f}1HQBl*?HJ`!r)rX5o=O{2nwJz5C5YFhmbXJ3w w^6wv00`!o6|M-6Z@Bi<~Lj3PvRSbuBbHUG<+h0B0Mh~BLQ2DE*{U^TrpRGJ;+yDRo literal 77135 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 None: """Benchmarks the performance of a few video decoders on synthetic videos""" videos_dir_path = "/tmp/torchcodec_benchmarking_videos" - shutil.rmtree(videos_dir_path, ignore_errors=True) - os.makedirs(videos_dir_path) + if not os.path.exists(videos_dir_path): + shutil.rmtree(videos_dir_path, ignore_errors=True) + os.makedirs(videos_dir_path) - resolutions = ["1280x720"] - encodings = ["libx264"] - patterns = ["mandelbrot"] - fpses = [60] - gop_sizes = [600] - durations = [120] - pix_fmts = ["yuv420p"] - ffmpeg_path = "ffmpeg" - generate_videos( - resolutions, - encodings, - patterns, - fpses, - gop_sizes, - durations, - pix_fmts, - ffmpeg_path, - videos_dir_path, - ) + resolutions = ["1920x1080"] + encodings = ["libx264"] + patterns = ["mandelbrot"] + fpses = [60] + gop_sizes = [600] + durations = [120] + pix_fmts = ["yuv420p"] + ffmpeg_path = "ffmpeg" + generate_videos( + resolutions, + encodings, + patterns, + fpses, + gop_sizes, + durations, + pix_fmts, + ffmpeg_path, + videos_dir_path, + ) - urls_and_dest_paths = [ - (NASA_URL, f"{videos_dir_path}/nasa_960x540_206s_30fps_yuv420p.mp4") - ] - retrieve_videos(urls_and_dest_paths) + urls_and_dest_paths = [ + (NASA_URL, f"{videos_dir_path}/nasa_960x540_206s_30fps_yuv420p.mp4") + ] + retrieve_videos(urls_and_dest_paths) decoder_dict = {} decoder_dict["torchcodec"] = TorchCodecPublic() + decoder_dict["torchcodec[cuda]"] = TorchCodecPublic(device="cuda") decoder_dict["torchvision[video_reader]"] = TorchVision("video_reader") decoder_dict["torchaudio"] = TorchAudioDecoder() # These are the number of uniform seeks we do in the seek+decode benchmark. num_samples = 10 video_files_paths = list(Path(videos_dir_path).glob("*.mp4")) + assert len(video_files_paths) == 2, "Expected exactly 2 videos" df_data = run_benchmarks( decoder_dict, video_files_paths, @@ -69,6 +76,12 @@ def main() -> None: num_sequential_frames_from_start=[100], min_runtime_seconds=30, benchmark_video_creation=False, + dataloader_parameters=DataLoaderInspiredWorkloadParameters( + batch_parameters=BatchParameters(batch_size=64, num_threads=8), + resize_height=256, + resize_width=256, + resize_device="cuda", + ), ) df_data.append( { @@ -77,6 +90,7 @@ def main() -> None: "machine": platform.machine(), "processor": platform.processor(), "python_version": str(platform.python_version()), + "is_cuda_available": str(torch.cuda.is_available()), } )