view libdha/sysdep/pci_freebsd.c @ 11662:173f22eb0505

vf_zrmjpeg MJPEG encoding filter, works together with vo_zr2. Only YV12 colorspace input supported for now. Autocropping is also not implemented. Example usage: mplayer -vo zr2 -vf zrmjpeg foo.avi. vf_zrmjpeg and vo_zr2 should obsolete vo_zr and libvo/jpeg_enc.c in the future. Problem is that it needs some paramters of the zoran card (max resolution), for now the user needs to tell vf_zrmjpeg those parameters (which is stupid, because zrmjpeg should be able to query vo_zr2 for that information....) The filter currently uses code which is also present in libvo/jpeg_enc.c, in the future the (then enhanced) ffmpeg mjpeg encoder should/will be used.
author rik
date Fri, 19 Dec 2003 22:15:37 +0000
parents 1faf2566907b
children 806cd20f1c8f
line wrap: on
line source

/*
   This file is based on:
   $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $
   Modified for readability by Nick Kurshev
*/
#include <errno.h>
#include <sys/file.h>
/* machine/console.h seems to be outdated by recent FreeBSD *
 * however pcvt_ioctl.h seems to exist for very long time   */
/* #include <machine/console.h>*/
#include <machine/pcvt_ioctl.h>
#ifndef GCCUSESGAS
#define GCCUSESGAS
#endif

static int io_fd;

static __inline__ int enable_os_io(void)
{
    io_fd = -1 ;
    if ((io_fd = open("/dev/console", O_RDWR, 0)) < 0) {
        perror("/dev/console");
	return(errno);
    }
    if (ioctl(io_fd, KDENABIO, 0) < 0) {
        perror("ioctl(KDENABIO)");
        return(errno);
    }
    return(0);
}

static __inline__ int disable_os_io(void)
{
    if (ioctl(io_fd, KDDISABIO, 0) < 0) {
        perror("ioctl(KDDISABIO)");
	close(io_fd);
        return(errno);
    }
    close(io_fd);
    return(0);
}