sws_scale 与媒体播放器实时调整大小的性能比较
sws_scale performance comparison to media players real time resize
播放 4K 视频时,用户可以调整播放器大小 window - 结果图像将在 运行 时间内平滑缩放。
另一方面 - 使用 libav 编写的程序逐帧读取 4k 视频文件并使用 sws_scale 函数缩小它的效果较差:调整大小花费的时间比视频持续时间长。
为什么会这样?可能是因为播放器 fps 较低并且跳过了一些帧 - 但视频看起来仍然流畅?
这是因为大多数视频播放器都会在视频卡的硬件中进行缩放。例如,使用 GL,缩放(甚至从 YUV 到 RGB 的格式转换)是免费的。
播放 4K 视频时,用户可以调整播放器大小 window - 结果图像将在 运行 时间内平滑缩放。
另一方面 - 使用 libav 编写的程序逐帧读取 4k 视频文件并使用 sws_scale 函数缩小它的效果较差:调整大小花费的时间比视频持续时间长。
为什么会这样?可能是因为播放器 fps 较低并且跳过了一些帧 - 但视频看起来仍然流畅?
这是因为大多数视频播放器都会在视频卡的硬件中进行缩放。例如,使用 GL,缩放(甚至从 YUV 到 RGB 的格式转换)是免费的。