Menu

Showing posts with label vdo. Show all posts
Showing posts with label vdo. Show all posts

Friday, October 25, 2013

[FFmpeg] วิธีการติดตั้ง FFmpeg สำหรับ Windows 7
[FFmpeg] How to Install FFmpeg for Windows 7

ขั้นแรก ดาวน์โหลด FFmpeg จาก http://ffmpeg.zeranoe.com/builds/
First, download FFmpeg from http://ffmpeg.zeranoe.com/builds/ 

แตกไฟล์ที่ดาวน์โหลดมาด้วย 7-zip ไว้ที่ C:/
Extract downloaded file with 7-zip to C:/

เปลี่ยนชื่อแฟ้มที่ได้จากการแตกไฟล์เป็น ffmpeg
Rename extracted folder to ffmpeg


Saturday, June 8, 2013

[OpenCV] วิธีการบันทึกไฟล์วิดีโอ
[OpenCV] How to Write/Save Video File

ขั้นแรก นิยามตัวแปรที่ใช้เขียนไฟล์วิดีโอตามด้านล่างนี้
First, define the video writer as follow
CvVideoWriter* writer = cvCreateVideoWriter(filepath,fourccfpsframe_size, iscolor);

โดยที่
filepath เป็นที่อยู่ของวิดีโอที่ต้องการจะบันทึก ในที่นี้ใช้นามสกุล avi
fourcc เป็น codec ของวิดีโอที่จะบันทึก ในที่นี้ใช้ CV_FOURCC('M','J','P','G') 
where
filepath is the path of output video file, in this case, file extension is avi
fourcc is the codec of video, in this case, CV_FOURCC('M','J','P','G') is used

ขั้นที่สอง เขียนเฟรมแต่ละเฟรมไปยังวิดีโอที่บันทึก
Second, write frame to output video as follow
cvWriteFrame(writer, frame);

ขั้นสุดท้าย ปลดปล่อยหน่วยความจำสำหรับตัวแปรที่ใช้เขียนไฟล์วิดีโอ
Last, release the video writer 
cvReleaseVideoWriter(&writer);

Friday, June 7, 2013

[OpenCV] วิธีเล่นวิดีโอจากไฟล์
[OpenCV] How to Play Video From File

  1. CvCapture* capture=cvCreateFileCapture("E:/Wildlife.wmv");
  2. IplImage* img;
  3. char c;

  4. double frame_width=cvGetCaptureProperty(capture,CV_CAP_PROP_FRAME_WIDTH );
  5. double frame_height=cvGetCaptureProperty(capture,CV_CAP_PROP_FRAME_HEIGHT  );
  6. double fps=cvGetCaptureProperty(capture,CV_CAP_PROP_FPS  );
  7. printf("%f %f %f",frame_width, frame_height,fps);

  8. cvNamedWindow("test",1);
  9. img=cvQueryFrame(capture);
  10. while(img){
  11. cvShowImage("test",img);
  12. c=cvWaitKey(30);
  13. if(c==27)
  14. break;
  15. img=cvQueryFrame(capture);
  16. }
  17. cvReleaseCapture(&capture);