提交 d4df1e0b 编写于 作者: A Andrey Kamaev

Merged the trunk r8887, r8891, r8314

上级 5a7804d9
......@@ -478,7 +478,7 @@ string tempfile( const char* suffix )
char temp_file[MAX_PATH + 1] = { 0 };
::GetTempPathA(sizeof(temp_dir), temp_dir);
if(0 == ::GetTempFileNameA(temp_dir, "__opencv_temp.", 0, temp_file))
if(0 == ::GetTempFileNameA(temp_dir, "ocv", 0, temp_file))
return string();
string name = temp_file;
......
......@@ -68,8 +68,8 @@ static inline void _drawKeypoint( Mat& img, const KeyPoint& p, const Scalar& col
if( p.angle != -1 )
{
float srcAngleRad = p.angle*(float)CV_PI/180.f;
Point orient( cvRound( cos(srcAngleRad)*radius ),
cvRound(-sin(srcAngleRad)*radius ) // "-" to invert orientation of axis y
Point orient( cvRound(cos(srcAngleRad)*radius ),
cvRound(sin(srcAngleRad)*radius )
);
line( img, center, center+orient, color, 1, CV_AA, draw_shift_bits );
}
......
......@@ -669,7 +669,7 @@ void CvCapture_FFMPEG::seek(int64_t _frame_number)
// if we have not grabbed a single frame before first seek, let's read the first frame
// and get some valuable information during the process
if( first_frame_number < 0 )
if( first_frame_number < 0 && get_total_frames() > 1 )
grabFrame();
for(;;)
......@@ -679,7 +679,7 @@ void CvCapture_FFMPEG::seek(int64_t _frame_number)
int64_t time_stamp = ic->streams[video_stream]->start_time;
double time_base = r2d(ic->streams[video_stream]->time_base);
time_stamp += (int64_t)(sec / time_base + 0.5);
av_seek_frame(ic, video_stream, time_stamp, AVSEEK_FLAG_BACKWARD);
if (get_total_frames() > 1) av_seek_frame(ic, video_stream, time_stamp, AVSEEK_FLAG_BACKWARD);
avcodec_flush_buffers(ic->streams[video_stream]->codec);
if( _frame_number > 0 )
{
......
......@@ -716,13 +716,20 @@ class RunInfo(object):
# clean temporary files
temp_path = os.environ.get('OPENCV_TEMP_PATH')
if not temp_path:
if hostos == "nt":
if self.targetos == "nt":
temp_path = tempfile.gettempdir()
else:
temp_path = "/tmp"
for filename in glob.glob(os.path.join(temp_path, "__opencv_temp.*")) :
os.remove( filename )
try:
if self.targetos == "nt":
for filename in glob.glob(os.path.join(temp_path, "ocv*")) :
os.remove( filename )
else:
for filename in glob.glob(os.path.join(temp_path, "__opencv_temp.*")) :
os.remove( filename )
except:
pass
logpath = os.path.join(workingDir, logfile)
if os.path.isfile(logpath):
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册