Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Opencv 修复HD Home Run生成的TS文件_Opencv_Ffmpeg - Fatal编程技术网

Opencv 修复HD Home Run生成的TS文件

Opencv 修复HD Home Run生成的TS文件,opencv,ffmpeg,Opencv,Ffmpeg,我正在使用hdhomerun命令行工具hdhomerun_config从电缆流录制到.ts文件。它的工作方式是,您运行该命令,它每秒左右生成一个周期,让您知道流正在成功录制。所以当我记录时,它只产生周期,这是需要的。结束它的方法是执行Ctrl-C。然而,每当我尝试使用FFMpeg将其转换为avi或mov时,都会出现一系列错误,其中一些错误是 [mpeg2video @ 0x7fbb4401a000] Invalid frame dimensions 0x0 [mpegts @ 0x7fbb448

我正在使用hdhomerun命令行工具hdhomerun_config从电缆流录制到.ts文件。它的工作方式是,您运行该命令,它每秒左右生成一个周期,让您知道流正在成功录制。所以当我记录时,它只产生周期,这是需要的。结束它的方法是执行Ctrl-C。然而,每当我尝试使用FFMpeg将其转换为avi或mov时,都会出现一系列错误,其中一些错误是

[mpeg2video @ 0x7fbb4401a000] Invalid frame dimensions 0x0
[mpegts @ 0x7fbb44819600] PES packet size mismatch
[ac3 @ 0x7fbb44015c00] incomplete frame

它仍然会创建文件,但质量很差,不能与OpenCV和其他服务一起使用。还有其他人遇到过这个问题吗?有没有人有任何可能有助于解决这种情况的知识?我试图修剪ts文件,但大多数内容都需要在编辑前进行转换。谢谢大家!

这样的警告/错误在流的最开始是正常的,因为录制开始于中流(即mid PES数据包)和ffmpeg需要PES报头(即PES数据包的开始)。一旦ffmpeg找到下一个PES头,它将很高兴(播放时间0-500毫秒后)

简而言之,它是无害的。您可以消除警告/错误,但删除每个ES的所有TS帧,直到达到有效负载单元启动标志,但ffmpeg本身已经在这样做了

如果在初始/启动后看到其他警告/错误,则可能存在需要调查的数据包丢失问题