mirror of
https://github.com/mpv-player/mpv
synced 2025-01-09 01:36:25 +01:00
removed screenshot thingie - it will be moved to video filter layer
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@6204 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
f1744ebb53
commit
e9e10be568
@ -1350,55 +1350,11 @@ static uint32_t preinit(const char *arg)
|
||||
return(-1);
|
||||
}
|
||||
|
||||
#ifdef HAVE_PNG
|
||||
static int fbdev_screenshot(void)
|
||||
{
|
||||
uint32_t i;
|
||||
uint8_t *ptrs[fb_vinfo.yres];
|
||||
if(video_out_png.preinit(NULL))
|
||||
{
|
||||
printf("\nvo_fbdev: can't preinit vo_png\n");
|
||||
return 1;
|
||||
}
|
||||
if(!video_out_png.control(VOCTRL_QUERY_FORMAT, &dstFourcc))
|
||||
{
|
||||
printf("\nvo_fbdev: vo_png doesn't support: %s fourcc\n",vo_format_name(dstFourcc));
|
||||
return 1;
|
||||
}
|
||||
if(video_out_png.config(fb_vinfo.xres,
|
||||
fb_vinfo.yres,
|
||||
fb_vinfo.xres,
|
||||
fb_vinfo.yres,
|
||||
0,NULL,dstFourcc,NULL))
|
||||
{
|
||||
printf("\nvo_fbdev: can't configure vo_png\n");
|
||||
return 1;
|
||||
}
|
||||
ptrs[0] = L123123875;
|
||||
for(i=1;i<fb_vinfo.yres;i++)
|
||||
ptrs[i] = ptrs[i-1]+fb_line_len;
|
||||
if(video_out_png.draw_frame(ptrs))
|
||||
{
|
||||
printf("\nvo_fbdev: vo_png: error during dumping\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
video_out_png.uninit();
|
||||
if(verbose) printf("\nvo_fbdev: png output has been created\n");
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
static uint32_t control(uint32_t request, void *data, ...)
|
||||
{
|
||||
switch (request) {
|
||||
case VOCTRL_QUERY_FORMAT:
|
||||
return query_format(*((uint32_t*)data));
|
||||
#ifdef HAVE_PNG
|
||||
case VOCTRL_SCREENSHOT:
|
||||
return fbdev_screenshot();
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
return VO_NOTIMPL;
|
||||
}
|
||||
|
@ -946,74 +946,11 @@ static uint32_t preinit(const char *arg)
|
||||
return pre_init_err;
|
||||
}
|
||||
|
||||
#ifdef HAVE_PNG
|
||||
static int vesa_screenshot(const char *fname)
|
||||
{
|
||||
uint32_t i,n;
|
||||
uint8_t *ptrs[video_mode_info.YResolution];
|
||||
if(video_out_png.preinit(NULL))
|
||||
{
|
||||
printf("\nvo_vesa: can't preinit vo_png\n");
|
||||
return 1;
|
||||
}
|
||||
if(!video_out_png.control(VOCTRL_QUERY_FORMAT, &dstFourcc))
|
||||
{
|
||||
printf("\nvo_vesa: vo_png doesn't support: %s fourcc\n",vo_format_name(dstFourcc));
|
||||
return 1;
|
||||
}
|
||||
if(video_out_png.config(HAS_DGA()?video_mode_info.XResolution:dstW,
|
||||
HAS_DGA()?video_mode_info.YResolution:dstH,
|
||||
HAS_DGA()?video_mode_info.XResolution:dstW,
|
||||
HAS_DGA()?video_mode_info.YResolution:dstH,
|
||||
0,NULL,dstFourcc,NULL))
|
||||
{
|
||||
printf("\nvo_vesa: can't configure vo_png\n");
|
||||
return 1;
|
||||
}
|
||||
n = HAS_DGA()?video_mode_info.YResolution:dstH;
|
||||
for(i=0;i<n;i++)
|
||||
ptrs[i] = &dga_buffer[(HAS_DGA()?video_mode_info.XResolution:dstW)*i*PIXEL_SIZE()];
|
||||
if(video_out_png.draw_frame(ptrs))
|
||||
{
|
||||
printf("\nvo_vesa: vo_png: error during dumping\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
video_out_png.uninit();
|
||||
if(verbose) printf("\nvo_vesa: png output has been created\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static char _home_name[FILENAME_MAX + 1];
|
||||
static char * __get_home_filename(const char *progname)
|
||||
{
|
||||
char *p = getenv("HOME");
|
||||
|
||||
if (p == NULL || strlen(p) < 2) {
|
||||
struct passwd *psw = getpwuid(getuid());
|
||||
if (psw != NULL) p = psw->pw_dir;
|
||||
}
|
||||
|
||||
if (p == NULL || strlen(p) > FILENAME_MAX - (strlen(progname) + 4))
|
||||
p = "/tmp";
|
||||
|
||||
strcpy(_home_name, p);
|
||||
strcat(_home_name, "/.");
|
||||
return strcat(_home_name, progname);
|
||||
}
|
||||
#endif
|
||||
|
||||
static uint32_t control(uint32_t request, void *data, ...)
|
||||
{
|
||||
switch (request) {
|
||||
case VOCTRL_QUERY_FORMAT:
|
||||
return query_format(*((uint32_t*)data));
|
||||
#ifdef HAVE_PNG
|
||||
case VOCTRL_SCREENSHOT:
|
||||
return vesa_screenshot(__get_home_filename("mplayer_vesa_dump.png"));
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
return VO_NOTIMPL;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user