From d4cdc2075f3aeacff57fc43d6d054543f7e67e4b Mon Sep 17 00:00:00 2001 From: Scott Schneider Date: Fri, 8 Nov 2024 06:43:12 -0800 Subject: [PATCH 1/5] Use more interesting videos for README experiment --- README.md | 5 + .../decoders/benchmark_decoders_library.py | 63 ++-- .../decoders/benchmark_readme_chart.png | Bin 53163 -> 66994 bytes .../decoders/benchmark_readme_data.json | 348 +++++++++++++----- benchmarks/decoders/generate_readme_data.py | 24 +- 5 files changed, 302 insertions(+), 138 deletions(-) diff --git a/README.md b/README.md index 79aaf031b..3c3354a45 100644 --- a/README.md +++ b/README.md @@ -124,6 +124,11 @@ The following was generated by running [our benchmark script](./benchmarks/decod ![benchmark_results](./benchmarks/decoders/benchmark_readme_chart.png) +The top row is a [Mandelbrot](https://ffmpeg.org/ffmpeg-filters.html#mandelbrot) video +generated from FFmpeg that has a resolution of 1280x720 at 60 fps and is 120 seconds long. +The bottom row is [promotional video from NASA](https://download.pytorch.org/torchaudio/tutorial-assets/stream-api/NASAs_Most_Scientifically_Complex_Space_Observatory_Requires_Precision-MP4_small.mp4) +that has a resolution of 960x540 at 29.7 fps and is 206 seconds long. + ## Planned future work We are actively working on the following features: diff --git a/benchmarks/decoders/benchmark_decoders_library.py b/benchmarks/decoders/benchmark_decoders_library.py index f4be7d8e6..bbd8ad088 100644 --- a/benchmarks/decoders/benchmark_decoders_library.py +++ b/benchmarks/decoders/benchmark_decoders_library.py @@ -2,6 +2,7 @@ import json import os import subprocess +import urllib.request from concurrent.futures import ThreadPoolExecutor, wait from itertools import product @@ -330,6 +331,7 @@ def generate_video(command): def generate_videos( resolutions, encodings, + patterns, fpses, gop_sizes, durations, @@ -341,23 +343,25 @@ def generate_videos( video_count = 0 futures = [] - for resolution, duration, fps, gop_size, encoding, pix_fmt in product( - resolutions, durations, fpses, gop_sizes, encodings, pix_fmts + for resolution, duration, fps, gop_size, encoding, pattern, pix_fmt in product( + resolutions, durations, fpses, gop_sizes, encodings, patterns, pix_fmts ): - outfile = f"{output_dir}/{resolution}_{duration}s_{fps}fps_{gop_size}gop_{encoding}_{pix_fmt}.mp4" + outfile = f"{output_dir}/{pattern}_{resolution}_{duration}s_{fps}fps_{gop_size}gop_{encoding}_{pix_fmt}.mp4" command = [ ffmpeg_cli, "-y", "-f", "lavfi", "-i", - f"color=c=blue:s={resolution}:d={duration}", + f"{pattern}=s={resolution}", + "-t", + str(duration), "-c:v", encoding, "-r", - f"{fps}", + str(fps), "-g", - f"{gop_size}", + str(gop_size), "-pix_fmt", pix_fmt, outfile, @@ -372,6 +376,10 @@ def generate_videos( print(f"Generated {video_count} videos") +def retrieve_videos(urls_and_dest_paths): + for url, path in urls_and_dest_paths: + urllib.request.urlretrieve(url, path) + def plot_data(df_data, plot_path): # Creating the DataFrame df = pd.DataFrame(df_data) @@ -400,7 +408,7 @@ def plot_data(df_data, plot_path): nrows=len(unique_videos), ncols=max_combinations, figsize=(max_combinations * 6, len(unique_videos) * 4), - sharex=True, + sharex=False, sharey=True, ) @@ -419,16 +427,16 @@ def plot_data(df_data, plot_path): ax = axes[row, col] # Select the appropriate axis # Set the title for the subplot - base_video = os.path.basename(video) + base_video = os.path.basename(video).removesuffix(".mp4") ax.set_title( - f"video={base_video}\ndecode_pattern={vcount} x {vtype}", fontsize=12 + f"video={base_video}\ndecode_pattern={vcount} x {vtype}", fontsize=10 ) # Plot bars with error bars ax.barh( group["decoder"], - group["fps"], - xerr=[group["fps"] - group["fps_p75"], group["fps_p25"] - group["fps"]], + group["fps_mean"], + xerr=group["fps_std"], color=[colors(i) for i in range(len(group))], align="center", capsize=5, @@ -438,28 +446,11 @@ def plot_data(df_data, plot_path): # Set the labels ax.set_xlabel("FPS") - # No need for y-axis label past the plot on the far left - if col == 0: - ax.set_ylabel("Decoder") - # Remove any empty subplots for videos with fewer combinations for row in range(len(unique_videos)): for col in range(video_type_combinations[unique_videos[row]], max_combinations): fig.delaxes(axes[row, col]) - # If we just call fig.legend, we'll get duplicate labels, as each label appears on - # each subplot. We take advantage of dicts having unique keys to de-dupe. - handles, labels = plt.gca().get_legend_handles_labels() - unique_labels = dict(zip(labels, handles)) - - # Reverse the order of the handles and labels to match the order of the bars - fig.legend( - handles=reversed(unique_labels.values()), - labels=reversed(unique_labels.keys()), - frameon=True, - loc="right", - ) - # Adjust layout to avoid overlap plt.tight_layout() @@ -534,9 +525,11 @@ def run_benchmarks( df_item["median"] = results[-1].median df_item["iqr"] = results[-1].iqr df_item["type"] = f"{kind}:seek()+next()" - df_item["fps"] = 1.0 * num_samples / results[-1].median - df_item["fps_p75"] = 1.0 * num_samples / results[-1]._p75 - df_item["fps_p25"] = 1.0 * num_samples / results[-1]._p25 + df_item["fps_mean"] = num_samples / results[-1].mean + df_item["fps_std"] = np.std([num_samples / t for t in results[-1].times]) + df_item["fps_median"] = num_samples / results[-1].median + df_item["fps_p75"] = num_samples / results[-1]._p75 + df_item["fps_p25"] = num_samples / results[-1]._p25 df_data.append(df_item) for num_consecutive_nexts in num_sequential_frames_from_start: @@ -564,9 +557,11 @@ def run_benchmarks( df_item["median"] = results[-1].median df_item["iqr"] = results[-1].iqr df_item["type"] = "next()" - df_item["fps"] = 1.0 * num_consecutive_nexts / results[-1].median - df_item["fps_p75"] = 1.0 * num_consecutive_nexts / results[-1]._p75 - df_item["fps_p25"] = 1.0 * num_consecutive_nexts / results[-1]._p25 + df_item["fps_mean"] = num_samples / results[-1].mean + df_item["fps_std"] = np.std([num_samples / t for t in results[-1].times]) + df_item["fps_median"] = num_consecutive_nexts / results[-1].median + df_item["fps_p75"] = num_consecutive_nexts / results[-1]._p75 + df_item["fps_p25"] = num_consecutive_nexts / results[-1]._p25 df_data.append(df_item) first_video_file_path = video_files_paths[0] diff --git a/benchmarks/decoders/benchmark_readme_chart.png b/benchmarks/decoders/benchmark_readme_chart.png index 8c5466cc22f5fb39eb37a79e67547c90cee0a67b..ac365ca5eb6028a4f1752da2ce324d43b1d626a1 100644 GIT binary patch literal 66994 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

@Q^q&mIcU2 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 None: """Benchmarks the performance of a few video decoders on synthetic videos""" - resolutions = ["640x480"] + videos_dir_path = "/tmp/torchcodec_benchmarking_videos" + shutil.rmtree(videos_dir_path, ignore_errors=True) + os.makedirs(videos_dir_path) + + resolutions = ["1280x720"] encodings = ["libx264"] - fpses = [30] + patterns = ["mandelbrot"] + fpses = [60] gop_sizes = [600] - durations = [10] + durations = [120] pix_fmts = ["yuv420p"] ffmpeg_path = "ffmpeg" - videos_dir_path = "/tmp/torchcodec_benchmarking_videos" - shutil.rmtree(videos_dir_path, ignore_errors=True) - os.makedirs(videos_dir_path) generate_videos( resolutions, encodings, + patterns, fpses, gop_sizes, durations, @@ -44,12 +49,15 @@ def main() -> None: 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) + video_files_paths = glob.glob(f"{videos_dir_path}/*.mp4") decoder_dict = {} decoder_dict["TorchCodec"] = TorchCodecPublic() - decoder_dict["TorchCodec[num_threads=1]"] = TorchCodecPublic(num_ffmpeg_threads=1) - decoder_dict["TorchVision[backend=video_reader]"] = TorchVision("video_reader") + decoder_dict["TorchVision[video_reader]"] = TorchVision("video_reader") decoder_dict["TorchAudio"] = TorchAudioDecoder() decoder_dict["Decord"] = DecordAccurateBatch() From d537a901e940590b0867189e4ac3219e06897071 Mon Sep 17 00:00:00 2001 From: Scott Schneider Date: Fri, 8 Nov 2024 06:47:18 -0800 Subject: [PATCH 2/5] Apply linting. --- benchmarks/decoders/benchmark_decoders_library.py | 9 +++++++-- benchmarks/decoders/generate_readme_data.py | 10 ++++++---- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/benchmarks/decoders/benchmark_decoders_library.py b/benchmarks/decoders/benchmark_decoders_library.py index bbd8ad088..e31ee506b 100644 --- a/benchmarks/decoders/benchmark_decoders_library.py +++ b/benchmarks/decoders/benchmark_decoders_library.py @@ -380,6 +380,7 @@ def retrieve_videos(urls_and_dest_paths): for url, path in urls_and_dest_paths: urllib.request.urlretrieve(url, path) + def plot_data(df_data, plot_path): # Creating the DataFrame df = pd.DataFrame(df_data) @@ -526,7 +527,9 @@ def run_benchmarks( df_item["iqr"] = results[-1].iqr df_item["type"] = f"{kind}:seek()+next()" df_item["fps_mean"] = num_samples / results[-1].mean - df_item["fps_std"] = np.std([num_samples / t for t in results[-1].times]) + df_item["fps_std"] = np.std( + [num_samples / t for t in results[-1].times] + ) df_item["fps_median"] = num_samples / results[-1].median df_item["fps_p75"] = num_samples / results[-1]._p75 df_item["fps_p25"] = num_samples / results[-1]._p25 @@ -558,7 +561,9 @@ def run_benchmarks( df_item["iqr"] = results[-1].iqr df_item["type"] = "next()" df_item["fps_mean"] = num_samples / results[-1].mean - df_item["fps_std"] = np.std([num_samples / t for t in results[-1].times]) + df_item["fps_std"] = np.std( + [num_samples / t for t in results[-1].times] + ) df_item["fps_median"] = num_consecutive_nexts / results[-1].median df_item["fps_p75"] = num_consecutive_nexts / results[-1]._p75 df_item["fps_p25"] = num_consecutive_nexts / results[-1]._p25 diff --git a/benchmarks/decoders/generate_readme_data.py b/benchmarks/decoders/generate_readme_data.py index 6ba8412eb..7785845fb 100644 --- a/benchmarks/decoders/generate_readme_data.py +++ b/benchmarks/decoders/generate_readme_data.py @@ -14,15 +14,16 @@ from benchmark_decoders_library import ( DecordAccurateBatch, generate_videos, + retrieve_videos, run_benchmarks, TorchAudioDecoder, TorchCodecPublic, TorchVision, - retrieve_videos, ) NASA_URL = "https://download.pytorch.org/torchaudio/tutorial-assets/stream-api/NASAs_Most_Scientifically_Complex_Space_Observatory_Requires_Precision-MP4_small.mp4" + def main() -> None: """Benchmarks the performance of a few video decoders on synthetic videos""" @@ -50,11 +51,11 @@ def main() -> None: videos_dir_path, ) - urls_and_dest_paths = [(NASA_URL, f"{videos_dir_path}/nasa_960x540_206s_30fps_yuv420p.mp4")] + urls_and_dest_paths = [ + (NASA_URL, f"{videos_dir_path}/nasa_960x540_206s_30fps_yuv420p.mp4") + ] retrieve_videos(urls_and_dest_paths) - video_files_paths = glob.glob(f"{videos_dir_path}/*.mp4") - decoder_dict = {} decoder_dict["TorchCodec"] = TorchCodecPublic() decoder_dict["TorchVision[video_reader]"] = TorchVision("video_reader") @@ -63,6 +64,7 @@ def main() -> None: # These are the number of uniform seeks we do in the seek+decode benchmark. num_samples = 10 + video_files_paths = glob.glob(f"{videos_dir_path}/*.mp4") df_data = run_benchmarks( decoder_dict, video_files_paths, From 74db54d233a116f6ee43a2ad328fc816aa246b64 Mon Sep 17 00:00:00 2001 From: Scott Schneider Date: Fri, 8 Nov 2024 10:28:51 -0800 Subject: [PATCH 3/5] Revert mean back to median --- .../decoders/benchmark_decoders_library.py | 12 +- .../decoders/benchmark_readme_chart.png | Bin 66994 -> 67606 bytes .../decoders/benchmark_readme_data.json | 288 ++++++++---------- 3 files changed, 122 insertions(+), 178 deletions(-) diff --git a/benchmarks/decoders/benchmark_decoders_library.py b/benchmarks/decoders/benchmark_decoders_library.py index e31ee506b..a29d6c7a2 100644 --- a/benchmarks/decoders/benchmark_decoders_library.py +++ b/benchmarks/decoders/benchmark_decoders_library.py @@ -436,8 +436,8 @@ def plot_data(df_data, plot_path): # Plot bars with error bars ax.barh( group["decoder"], - group["fps_mean"], - xerr=group["fps_std"], + group["fps_median"], + xerr=[group["fps_median"] - group["fps_p75"], group["fps_p25"] - group["fps_median"]], color=[colors(i) for i in range(len(group))], align="center", capsize=5, @@ -526,10 +526,6 @@ def run_benchmarks( df_item["median"] = results[-1].median df_item["iqr"] = results[-1].iqr df_item["type"] = f"{kind}:seek()+next()" - df_item["fps_mean"] = num_samples / results[-1].mean - df_item["fps_std"] = np.std( - [num_samples / t for t in results[-1].times] - ) df_item["fps_median"] = num_samples / results[-1].median df_item["fps_p75"] = num_samples / results[-1]._p75 df_item["fps_p25"] = num_samples / results[-1]._p25 @@ -560,10 +556,6 @@ def run_benchmarks( df_item["median"] = results[-1].median df_item["iqr"] = results[-1].iqr df_item["type"] = "next()" - df_item["fps_mean"] = num_samples / results[-1].mean - df_item["fps_std"] = np.std( - [num_samples / t for t in results[-1].times] - ) df_item["fps_median"] = num_consecutive_nexts / results[-1].median df_item["fps_p75"] = num_consecutive_nexts / results[-1]._p75 df_item["fps_p25"] = num_consecutive_nexts / results[-1]._p25 diff --git a/benchmarks/decoders/benchmark_readme_chart.png b/benchmarks/decoders/benchmark_readme_chart.png index ac365ca5eb6028a4f1752da2ce324d43b1d626a1..17a8e5592047c10d2c777e363b5fa42b2baaec78 100644 GIT binary patch literal 67606 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 literal 66994 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

@Q^q&mIcU2 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 Date: Fri, 8 Nov 2024 11:27:42 -0800 Subject: [PATCH 4/5] Refactor out uses of os library --- .../decoders/benchmark_decoders_library.py | 21 +- .../decoders/benchmark_readme_chart.png | Bin 67606 -> 67441 bytes .../decoders/benchmark_readme_data.json | 240 +++++++++--------- benchmarks/decoders/generate_readme_data.py | 3 +- 4 files changed, 133 insertions(+), 131 deletions(-) diff --git a/benchmarks/decoders/benchmark_decoders_library.py b/benchmarks/decoders/benchmark_decoders_library.py index a29d6c7a2..4ba79b507 100644 --- a/benchmarks/decoders/benchmark_decoders_library.py +++ b/benchmarks/decoders/benchmark_decoders_library.py @@ -1,10 +1,10 @@ import abc import json -import os import subprocess import urllib.request from concurrent.futures import ThreadPoolExecutor, wait from itertools import product +from pathlib import Path import matplotlib.pyplot as plt import numpy as np @@ -428,7 +428,7 @@ def plot_data(df_data, plot_path): ax = axes[row, col] # Select the appropriate axis # Set the title for the subplot - base_video = os.path.basename(video).removesuffix(".mp4") + base_video = Path(video).name.removesuffix(".mp4") ax.set_title( f"video={base_video}\ndecode_pattern={vcount} x {vtype}", fontsize=10 ) @@ -437,7 +437,10 @@ def plot_data(df_data, plot_path): ax.barh( group["decoder"], group["fps_median"], - xerr=[group["fps_median"] - group["fps_p75"], group["fps_p25"] - group["fps_median"]], + xerr=[ + group["fps_median"] - group["fps_p75"], + group["fps_p25"] - group["fps_median"], + ], color=[colors(i) for i in range(len(group))], align="center", capsize=5, @@ -467,7 +470,7 @@ def get_metadata(video_file_path: str) -> VideoStreamMetadata: def run_benchmarks( decoder_dict: dict[str, AbstractDecoder], - video_files_paths: list[str], + video_files_paths: list[Path], num_samples: int, num_sequential_frames_from_start: list[int], min_runtime_seconds: float, @@ -507,7 +510,7 @@ def run_benchmarks( seeked_result = benchmark.Timer( stmt="decoder.get_frames_from_video(video_file, pts_list)", globals={ - "video_file": video_file_path, + "video_file": str(video_file_path), "pts_list": pts_list, "decoder": decoder, }, @@ -520,7 +523,7 @@ def run_benchmarks( ) df_item = {} df_item["decoder"] = decoder_name - df_item["video"] = video_file_path + df_item["video"] = str(video_file_path) df_item["description"] = results[-1].description df_item["frame_count"] = num_samples df_item["median"] = results[-1].median @@ -535,7 +538,7 @@ def run_benchmarks( consecutive_frames_result = benchmark.Timer( stmt="decoder.get_consecutive_frames_from_video(video_file, consecutive_frames_to_extract)", globals={ - "video_file": video_file_path, + "video_file": str(video_file_path), "consecutive_frames_to_extract": num_consecutive_nexts, "decoder": decoder, }, @@ -550,7 +553,7 @@ def run_benchmarks( ) df_item = {} df_item["decoder"] = decoder_name - df_item["video"] = video_file_path + df_item["video"] = str(video_file_path) df_item["description"] = results[-1].description df_item["frame_count"] = num_consecutive_nexts df_item["median"] = results[-1].median @@ -568,7 +571,7 @@ def run_benchmarks( creation_result = benchmark.Timer( stmt="create_torchcodec_decoder_from_file(video_file)", globals={ - "video_file": first_video_file_path, + "video_file": str(first_video_file_path), "create_torchcodec_decoder_from_file": create_torchcodec_decoder_from_file, }, label=f"video={first_video_file_path} {metadata_label}", diff --git a/benchmarks/decoders/benchmark_readme_chart.png b/benchmarks/decoders/benchmark_readme_chart.png index 17a8e5592047c10d2c777e363b5fa42b2baaec78..e3c09a46a43e3929c7fd234b8d3cb155cec946fa 100644 GIT binary patch literal 67441 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 literal 67606 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 diff --git a/benchmarks/decoders/benchmark_readme_data.json b/benchmarks/decoders/benchmark_readme_data.json index c01a82649..28c79303d 100644 --- a/benchmarks/decoders/benchmark_readme_data.json +++ b/benchmarks/decoders/benchmark_readme_data.json @@ -2,288 +2,288 @@ { "decoder": "TorchCodec", "description": "uniform 10 seek()+next()", - "fps_median": 2.9050155095772285, - "fps_p25": 2.9059820685697826, - "fps_p75": 2.880933484785095, + "fps_median": 2.874245162330032, + "fps_p25": 2.890669218048133, + "fps_p75": 2.862767020928218, "frame_count": 10, - "iqr": 0.02991968486458063, - "median": 3.4423224134370685, + "iqr": 0.03371739387512207, + "median": 3.4791743345558643, "type": "uniform:seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { "decoder": "TorchCodec", "description": "random 10 seek()+next()", - "fps_median": 3.6525311175629223, - "fps_p25": 3.6586038754766816, - "fps_p75": 3.6327026279085315, + "fps_median": 3.658458368739899, + "fps_p25": 3.679569429876782, + "fps_p75": 3.606357184854245, "frame_count": 10, - "iqr": 0.019488366786390543, - "median": 2.737827462144196, + "iqr": 0.05517190555110574, + "median": 2.733391771093011, "type": "random:seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { "decoder": "TorchCodec", "description": "100 next()", - "fps_median": 337.0957155968332, - "fps_p25": 341.23008495152504, - "fps_p75": 329.47800949979404, + "fps_median": 248.32328677696285, + "fps_p25": 250.6501813668334, + "fps_p75": 244.31468271091225, "frame_count": 100, - "iqr": 0.0104529969394207, - "median": 0.29665164928883314, + "iqr": 0.010345779359340668, + "median": 0.402700855396688, "type": "next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { "decoder": "TorchVision[video_reader]", "description": "uniform 10 seek()+next()", - "fps_median": 0.4175591370593086, - "fps_p25": 0.41877516257488173, - "fps_p75": 0.41635015320602003, + "fps_median": 0.4195638935454161, + "fps_p25": 0.42014650010734295, + "fps_p75": 0.4189829005177118, "frame_count": 10, - "iqr": 0.1390829123556614, - "median": 23.948703578673303, + "iqr": 0.06610076874494553, + "median": 23.834272095002234, "type": "uniform:seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { "decoder": "TorchVision[video_reader]", "description": "random 10 seek()+next()", - "fps_median": 0.31985873799064213, - "fps_p25": 0.31985873799064213, - "fps_p75": 0.31985873799064213, + "fps_median": 0.32245125406966435, + "fps_p25": 0.32245125406966435, + "fps_p75": 0.32245125406966435, "frame_count": 10, "iqr": 0.0, - "median": 31.263801210559905, + "median": 31.01243947353214, "type": "random:seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { "decoder": "TorchVision[video_reader]", "description": "100 next()", - "fps_median": 184.3567079731282, - "fps_p25": 185.82518181062227, - "fps_p75": 182.56566445787055, + "fps_median": 176.82997455955987, + "fps_p25": 177.54379221046926, + "fps_p75": 175.14625035317215, "frame_count": 100, - "iqr": 0.009607925545424223, - "median": 0.5424266960471869, + "iqr": 0.00771009735763073, + "median": 0.5655149826779962, "type": "next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { "decoder": "TorchAudio", "description": "uniform 10 seek()+next()", - "fps_median": 0.5315197269252764, - "fps_p25": 0.5315925271219106, - "fps_p75": 0.5314469466655023, + "fps_median": 0.5316661236830815, + "fps_p25": 0.5318804166321828, + "fps_p75": 0.5314520033403498, "frame_count": 10, - "iqr": 0.005153049249202013, - "median": 18.813977155368775, + "iqr": 0.015156010165810585, + "median": 18.80879663862288, "type": "uniform:seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { "decoder": "TorchAudio", "description": "random 10 seek()+next()", - "fps_median": 0.4172639871627649, - "fps_p25": 0.4172779817714737, - "fps_p75": 0.41724999349272307, + "fps_median": 0.417209378798961, + "fps_p25": 0.41758998612516984, + "fps_p75": 0.4168294646408316, "frame_count": 10, - "iqr": 0.0016075125895440578, - "median": 23.96564359171316, + "iqr": 0.04369210824370384, + "median": 23.968780444934964, "type": "random:seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { "decoder": "TorchAudio", "description": "100 next()", - "fps_median": 189.72647328494682, - "fps_p25": 191.4775712949362, - "fps_p75": 188.21121906566208, + "fps_median": 179.4697720392447, + "fps_p25": 181.05508626841646, + "fps_p75": 173.49148405860208, "frame_count": 100, - "iqr": 0.009063576348125935, - "median": 0.5270745735615492, + "iqr": 0.024079074384644628, + "median": 0.5571968965232372, "type": "next()", "video": "/tmp/torchcodec_benchmarking_videos/mandelbrot_1280x720_120s_60fps_600gop_libx264_yuv420p.mp4" }, { "decoder": "Decord", "description": "uniform 10 seek()+next()", - "fps_median": 2.9181279375487224, - "fps_p25": 2.926132590889362, - "fps_p75": 2.9043566210391187, + "fps_median": 2.9254250604823127, + "fps_p25": 2.928776037979067, + "fps_p75": 2.9179279307467434, "frame_count": 10, - "iqr": 0.02562321163713932, - "median": 3.426854549907148, + "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.4027752419992057, - "fps_p25": 2.4139772816947085, - "fps_p75": 2.3867080237967175, + "fps_median": 2.3913952159683447, + "fps_p25": 2.409423905905687, + "fps_p75": 2.379609551240287, "frame_count": 10, - "iqr": 0.04733047331683338, - "median": 4.161854103207588, + "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": 303.97023020713453, - "fps_p25": 306.9165287602907, - "fps_p75": 298.471953035804, + "fps_median": 301.64058598625485, + "fps_p25": 304.4257754819803, + "fps_p75": 297.8336145342091, "frame_count": 100, - "iqr": 0.009218367747962475, - "median": 0.3289795843884349, + "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.982870598540245, - "fps_p25": 33.53712218119845, - "fps_p75": 32.42894928840988, + "fps_median": 32.797487611763884, + "fps_p25": 33.16049598127707, + "fps_p75": 32.34604228526151, "frame_count": 10, - "iqr": 0.010189405642449856, - "median": 0.30318767949938774, + "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.90810163775481, - "fps_p25": 32.31238533327661, - "fps_p75": 31.34280799992071, + "fps_median": 31.86583108909739, + "fps_p25": 32.422775044534646, + "fps_p75": 31.51582155415764, "frame_count": 10, - "iqr": 0.009573605610057712, - "median": 0.3134000296704471, + "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": 477.01726595744304, - "fps_p25": 483.34825092064364, - "fps_p75": 469.27587526025616, + "fps_median": 478.59019817346393, + "fps_p25": 483.5137156807738, + "fps_p75": 469.99482336428133, "frame_count": 100, - "iqr": 0.006204103585332632, - "median": 0.20963601768016815, + "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.844615411913145, - "fps_p25": 5.8659710766777815, - "fps_p75": 5.835104027247645, + "fps_median": 5.863026312201653, + "fps_p25": 5.883880399939407, + "fps_p75": 5.821213575132222, "frame_count": 10, - "iqr": 0.00901792454533279, - "median": 1.7109765647910535, + "iqr": 0.01829617563635111, + "median": 1.705603807233274, "type": "uniform:seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { "decoder": "TorchVision[video_reader]", "description": "random 10 seek()+next()", - "fps_median": 3.6401192923382673, - "fps_p25": 3.6496797321910934, - "fps_p75": 3.612839806014688, + "fps_median": 3.5804448256145283, + "fps_p25": 3.610017214846564, + "fps_p75": 3.573725565752598, "frame_count": 10, - "iqr": 0.027939285151660442, - "median": 2.7471627155318856, + "iqr": 0.028130420949310064, + "median": 2.7929490571841598, "type": "random:seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { "decoder": "TorchVision[video_reader]", "description": "100 next()", - "fps_median": 220.63296750560824, - "fps_p25": 221.8042615668676, - "fps_p75": 218.6722404756298, + "fps_median": 220.60506211225706, + "fps_p25": 221.92824221952606, + "fps_p75": 219.83775682122163, "frame_count": 100, - "iqr": 0.006457451265305281, - "median": 0.45324142230674624, + "iqr": 0.004284817026928067, + "median": 0.45329875499010086, "type": "next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { "decoder": "TorchAudio", "description": "uniform 10 seek()+next()", - "fps_median": 10.495437834002228, - "fps_p25": 10.61999905412796, - "fps_p75": 10.327745200898438, + "fps_median": 10.562701139154996, + "fps_p25": 10.594120999307123, + "fps_p75": 10.475383401305544, "frame_count": 10, - "iqr": 0.02664589136838913, - "median": 0.9527949341572821, + "iqr": 0.010699251666665077, + "median": 0.9467275338247418, "type": "uniform:seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { "decoder": "TorchAudio", "description": "random 10 seek()+next()", - "fps_median": 7.186776056270641, - "fps_p25": 7.239280403178448, - "fps_p75": 7.062493238320365, + "fps_median": 7.143372898069971, + "fps_p25": 7.190431420792876, + "fps_p75": 6.984323268168379, "frame_count": 10, - "iqr": 0.03457779437303543, - "median": 1.3914444977417588, + "iqr": 0.041040806798264384, + "median": 1.3998989192768931, "type": "random:seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { "decoder": "TorchAudio", "description": "100 next()", - "fps_median": 234.17844344395624, - "fps_p25": 235.3988736419582, - "fps_p75": 232.30089774655477, + "fps_median": 234.31507730203276, + "fps_p25": 235.5241203289182, + "fps_p75": 233.2609776710573, "frame_count": 100, - "iqr": 0.005665298085659742, - "median": 0.4270247872918844, + "iqr": 0.004119404591619968, + "median": 0.42677578050643206, "type": "next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { "decoder": "Decord", "description": "uniform 10 seek()+next()", - "fps_median": 28.97005387448491, - "fps_p25": 29.41040268230174, - "fps_p75": 28.507951904044013, + "fps_median": 28.951774908715404, + "fps_p25": 29.60339324217526, + "fps_p75": 28.130013392739134, "frame_count": 10, - "iqr": 0.010763574857264757, - "median": 0.3451840318739414, + "iqr": 0.017693073954433203, + "median": 0.3454019669443369, "type": "uniform:seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { "decoder": "Decord", "description": "random 10 seek()+next()", - "fps_median": 23.54393110850557, - "fps_p25": 23.886881444001464, - "fps_p75": 23.20010474060079, + "fps_median": 23.55224702573544, + "fps_p25": 23.829998507803513, + "fps_p75": 23.327513783118945, "frame_count": 10, - "iqr": 0.012392706237733364, - "median": 0.4247379060834646, + "iqr": 0.00903920829296112, + "median": 0.424587938003242, "type": "random:seek()+next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, { "decoder": "Decord", "description": "100 next()", - "fps_median": 523.2874503768032, - "fps_p25": 533.2957890239073, - "fps_p75": 510.5824754967286, + "fps_median": 526.5873947695661, + "fps_p25": 534.5632246100912, + "fps_p75": 514.0865116923063, "frame_count": 100, - "iqr": 0.008341543842107058, - "median": 0.19109955709427595, + "iqr": 0.007451178273186088, + "median": 0.18990200106054544, "type": "next()", "video": "/tmp/torchcodec_benchmarking_videos/nasa_960x540_206s_30fps_yuv420p.mp4" }, @@ -294,4 +294,4 @@ "python_version": "3.11.10", "system": "Linux" } -] \ No newline at end of file +] diff --git a/benchmarks/decoders/generate_readme_data.py b/benchmarks/decoders/generate_readme_data.py index 7785845fb..277cd3752 100644 --- a/benchmarks/decoders/generate_readme_data.py +++ b/benchmarks/decoders/generate_readme_data.py @@ -4,7 +4,6 @@ # This source code is licensed under the BSD-style license found in the # LICENSE file in the root directory of this source tree. -import glob import json import os import platform @@ -64,7 +63,7 @@ def main() -> None: # These are the number of uniform seeks we do in the seek+decode benchmark. num_samples = 10 - video_files_paths = glob.glob(f"{videos_dir_path}/*.mp4") + video_files_paths = list(Path(videos_dir_path).glob("*.mp4")) df_data = run_benchmarks( decoder_dict, video_files_paths, From 51b51467386919b18e79faf00217ea66200745ef Mon Sep 17 00:00:00 2001 From: Scott Schneider Date: Fri, 8 Nov 2024 12:04:31 -0800 Subject: [PATCH 5/5] Add encoding and pixel format to README --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 3c3354a45..ca0fa4f80 100644 --- a/README.md +++ b/README.md @@ -127,7 +127,8 @@ The following was generated by running [our benchmark script](./benchmarks/decod The top row is a [Mandelbrot](https://ffmpeg.org/ffmpeg-filters.html#mandelbrot) video generated from FFmpeg that has a resolution of 1280x720 at 60 fps and is 120 seconds long. The bottom row is [promotional video from NASA](https://download.pytorch.org/torchaudio/tutorial-assets/stream-api/NASAs_Most_Scientifically_Complex_Space_Observatory_Requires_Precision-MP4_small.mp4) -that has a resolution of 960x540 at 29.7 fps and is 206 seconds long. +that has a resolution of 960x540 at 29.7 fps and is 206 seconds long. Both videos were +encoded with libx264 and yuv420p pixel format. ## Planned future work