建议你用360版本下的nod32杀毒 查杀准确 扫描时间短 占用内存小
渲染失败~~~
用格式工厂软件,很好用的,可以转换很多常用格式
手里黏糊糊的
”我的Image里面只有7张图片,所以我以为定义filename 的大小为7“
你可知,filename是啥?
G:\\转码视频\\Image\\out.avi这整个的是一个filename,你自己数数这一个图像你用了几个char来存储的?
你这个程序错到离谱了,这里是读取视频的程序
#include stdafx.h
#include highgui.h
int main( int argc ,char ** argv){
CvCapture * capture = cvCreateFileCapture (tree.avi); //读取视频
if(capture==NULL) {
printf(NO capture); //读取不成功,则标识
return 1;
};
double fps=cvGetCaptureProperty(capture, CV_CAP_PROP_FPS ); //读取视频的帧率
int vfps = 1000 / fps; //计算每帧播放的时间
printf(%5.1f\t%5d\n,fps,vfps);
double frames=cvGetCaptureProperty(capture,CV_CAP_PROP_FRAME_COUNT);//读取视频中有多少帧
printf(frames is %f\n,frames);
cvNamedWindow(example,CV_WINDOW_AUTOSIZE); //定义窗口
IplImage * frame;
while(1){
frame = cvQueryFrame( capture ); //抓取帧
float ratio = cvGetCaptureProperty(capture, CV_CAP_PROP_POS_AVI_RATIO); //读取该帧在视频中的相对位置
printf(%f\n,ratio);
if(!frame)break;
cvShowImage(example,frame); //显示
char c = cvWaitKey(vfps);
if(c == 27 )break;
}
cvReleaseCapture(&capture);
cvDestroyWindow(example);
}
写视频的第一步要先读图,然后写!
另外楼上的,\\和\是不一样的,望注意。
你的video生成出来了没有? 从你的代码上来看,第一帧读错了,应该是image/0.jpg 吧,不是out.avi,还有你的filename大小只有7? 先把这些问题弄完了看看还有没有问题
转换器有很多,可以重新下载一个,测试。
你好知友! 祝你元宵节快乐!
同样AVI的后缀也有好几种格式:(DIVX3.11/4.1/5/X)(XVID)(H264)等等,码率也不一样,一般的视频播放器只支持一种或几种编码方式.你可以试试使用PotPlayer或Kmplayer汉化版,看看能不能正常播放.另外,U盘读写速度不如硬盘,如有可能,最好还是在硬盘里播放,
.
如果我的回答对你有帮助.请点击我的回答下方【选为满意回答】按钮.你的采纳是我们回答的动力.
标签:AVI,...,播放