avcodec_decode_video2:额外的字节会阻止什么
avcodec_decode_video2: what do the extra bytes prevent?
在avcodec_decode_video2文档中,它给出了以下警告:
警告:
输入缓冲区FF_INPUT_BUFFER_PADDING_SIZE必须大于实际读取字节,因为一些优化的比特流读者一次读取 32 或 64 位,最后可以读取。这输入缓冲区 buf 的末尾应设置为 0,以确保 no对于损坏的 MPEG 流,会发生过度读取。
如果不这样做,这会导致发生过度读取时分段错误吗?还是可能导致奇怪的腐败?我只是好奇,因为我有腐败,我不确定这是否可能导致我的问题。
它不一定会导致分段错误,但它会undefined behavior
,因为这些读取器将读取未分配的内存。这可能会使程序立即崩溃,或者工作一段时间,甚至看起来工作正常:你永远无法确定什么时候 undefined behavior
.
相关文章:
- 如果我向一个12字节的缓冲区写入的字节数少于12,会发生什么情况
- 什么是 16 字节有符号整数数据类型?
- libc++ 的 std::basic_string 的 16 字节对齐模式背后的原因是什么?
- 一个对象什么时候可以有非零大小的一个,但不能同时具有一个或多个字节的存储
- 在自定义 C/C++ 程序中获取 PPP0 接口 Tx/Rx 字节的最简单方法是什么?
- 在C++中使用什么来进行uint8或char的字节操作
- 将字节数组从c++传递到c#程序集的不同方法是什么
- 当C#中的字节数组传递给结构中的非托管代码时,会发生什么情况
- 在opencv中使用imshow显示字节数组的最快方法是什么?
- 对C++中的字节字段使用char*或void*或其他什么
- 在 C++ 中将字节数组转换为十六进制字符串的最快方法是什么?
- 将ULONGLONG分配给16字节数组的结果是什么
- 在Windows上,从文件中删除前N个字节的最有效方法是什么
- 解码像 FAST 这样的数据协议的快速方法是什么,其中数据以字节为单位编码,并将位作为存在标志
- 我的字节数组到十六进制字符串转换器有什么问题,或者为什么它在写入文件时会在某个位置后剪切符号?
- avcodec_decode_video2:额外的字节会阻止什么
- 从 C++ 中的字节数组中检索整数的最佳方法是什么
- 在现代C++中处理中型字节数组的正确方法是什么?
- 如果将int传递给C中的字节参数,会发生什么
- VisualC++DLL将2-3兆字节复制到C#缓冲区的最快方法是什么