【Q】看起来一样的视频,一个20M左右,一个500多M。然后我对比了一下生成视频的2份代码,找到原因(还好生成视频的代码还在,要不然我怎么找都不会找到原因
【解释】
video_writer = cv2.VideoWriter(output_file, fourcc, 30, (width, height))
当fourcc = 0时,生成的视频比较大,对应500多M的视频。原因:使用0作为编解码器通常会导致使用默认的编解码器,这可能会导致生成的视频文件较大,因为它可能不会进行高效的压缩。
当使用fourcc = cv2.VideoWriter_fourcc(*'MJPG')时,生成的视频比较小,对应20多M。原因:指定特定的编解码器,例如MJPG,会使用该编解码器对视频进行压缩,从而生成更小且质量较高的视频文件。
经历了不应该有的代价,学到的知识🙂