diff options
Diffstat (limited to 'client')
| -rw-r--r-- | client/dv.h | 33 | ||||
| -rw-r--r-- | client/dvfile.cc | 60 | ||||
| -rw-r--r-- | client/dvfile.h | 51 | 
3 files changed, 111 insertions, 33 deletions
| diff --git a/client/dv.h b/client/dv.h deleted file mode 100644 index e346d03..0000000 --- a/client/dv.h +++ /dev/null @@ -1,33 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/*************************************************************************** - *            dv.h - * - *  Thu Apr 14 19:29:55 CEST 2005 - *  Copyright  2005 Bent Bisballe - *  deva@aasimon.org - ****************************************************************************/ - -/* - *    This file is part of MIaV. - * - *    MIaV is free software; you can redistribute it and/or modify - *    it under the terms of the GNU General Public License as published by - *    the Free Software Foundation; either version 2 of the License, or - *    (at your option) any later version. - * - *    MIaV is distributed in the hope that it will be useful, - *    but WITHOUT ANY WARRANTY; without even the implied warranty of - *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the - *    GNU General Public License for more details. - * - *    You should have received a copy of the GNU General Public License - *    along with MIaV; if not, write to the Free Software - *    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA. - */ -#include "config.h" -#ifndef __MIAV_DV_H__ -#define __MIAV_DV_H__ - -#define DVPACKAGE_SIZE 144000 - -#endif/*__MIAV_DV_H__*/ diff --git a/client/dvfile.cc b/client/dvfile.cc new file mode 100644 index 0000000..7d83255 --- /dev/null +++ b/client/dvfile.cc @@ -0,0 +1,60 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/*************************************************************************** + *            dvfile.cc + * + *  Thu Jul 28 17:30:48 CEST 2005 + *  Copyright  2005 Bent Bisballe + *  deva@aasimon.org + ****************************************************************************/ + +/* + *  This file is part of MIaV. + * + *  MIaV is free software; you can redistribute it and/or modify + *  it under the terms of the GNU General Public License as published by + *  the Free Software Foundation; either version 2 of the License, or + *  (at your option) any later version. + * + *  MIaV is distributed in the hope that it will be useful, + *  but WITHOUT ANY WARRANTY; without even the implied warranty of + *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the + *  GNU General Public License for more details. + * + *  You should have received a copy of the GNU General Public License + *  along with MIaV; if not, write to the Free Software + *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA. + */ +#include "config.h" +#include "dvfile.h" + +#include "dv.h" +#include "util.h" + +dvfile::dvfile(Info* i) +{ +  info = i; +  fp = fopen(TEST_MOVIE, "r"); +  if(!fp) info->error("Couldn't open %s for reading.", TEST_MOVIE); +} + +dvfile::~dvfile() +{ +  fclose(fp); +} + +unsigned char *dvfile::readFrame() +{ +  unsigned char *frame = new unsigned char[DVPACKAGE_SIZE]; + +  sleep_1_frame(); + +  if(fp) { +    while(fread(frame, DVPACKAGE_SIZE, 1, fp) == 0) { +      fseek(fp, 0L, SEEK_SET); +    } +  } else { +    memset(frame, 0, sizeof(frame)); +  } +   +  return frame; +} diff --git a/client/dvfile.h b/client/dvfile.h new file mode 100644 index 0000000..dc91a14 --- /dev/null +++ b/client/dvfile.h @@ -0,0 +1,51 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/*************************************************************************** + *            dvfile.h + * + *  Thu Jul 28 17:30:48 CEST 2005 + *  Copyright  2005 Bent Bisballe + *  deva@aasimon.org + ****************************************************************************/ + +/* + *  This file is part of MIaV. + * + *  MIaV is free software; you can redistribute it and/or modify + *  it under the terms of the GNU General Public License as published by + *  the Free Software Foundation; either version 2 of the License, or + *  (at your option) any later version. + * + *  MIaV is distributed in the hope that it will be useful, + *  but WITHOUT ANY WARRANTY; without even the implied warranty of + *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the + *  GNU General Public License for more details. + * + *  You should have received a copy of the GNU General Public License + *  along with MIaV; if not, write to the Free Software + *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA. + */ +#include "config.h" +#ifndef __MIAV_DVFILE_H__ +#define __MIAV_DVFILE_H__ + +#include "frame_stream.h" + +#include <stdio.h> + +#include "info.h" + +#define TEST_MOVIE     PIXMAPS"/dummy.dv" + +class dvfile : public frame_stream { +public: +  dvfile(Info* info); +  ~dvfile(); + +  unsigned char *readFrame(); + +private: +  Info* info; +  FILE* fp; +}; + +#endif/*__MIAV_DVFILE_H__*/ | 
