Commit 61898506 authored by David I. Lehn's avatar David I. Lehn

initial checkin of work-in-progress vbidec plugin for closed caption support

Original commit message from CVS:
initial checkin of work-in-progress vbidec plugin for closed caption support
parent 08d0c89d
......@@ -233,7 +233,7 @@ GST_PLUGINS_ALL="\
mpegaudio mpegaudioparse mpegstream mpegtypes\
monoscope passthrough playondemand qtdemux rtjpeg silence sine\
smooth smpte spectrum speed stereo stereomono synaesthesia\
udp videocrop videoscale videotestsrc volenv volume\
udp vbidec videocrop videoscale videotestsrc volenv volume\
vumeter wavenc wavparse y4m"
dnl see if we can build C++ plug-ins
......@@ -1014,6 +1014,7 @@ gst/stereo/Makefile
gst/stereomono/Makefile
gst/synaesthesia/Makefile
gst/udp/Makefile
gst/vbidec/Makefile
gst/videoscale/Makefile
gst/videotestsrc/Makefile
gst/videocrop/Makefile
......
plugindir = $(libdir)/gstreamer-@GST_MAJORMINOR@
plugin_LTLIBRARIES = libgstvbidec.la
libgstvbidec_la_SOURCES = gstvbidec.h gstvbidec.c \
vbidata.h vbidata.c \
vbiscreen.h vbiscreen.c
libgstvbidec_la_CFLAGS = $(GST_CFLAGS)
libgstvbidec_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
This diff is collapsed.
/* GStreamer
* Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library 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
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
typedef struct _GstVBIDec GstVBIDec;
void gst_vbidec_show_text (GstVBIDec *vbidec, char *text, int len);
This diff is collapsed.
/**
* Copyright (c) 2002 Billy Biggs <vektor@dumbterm.net>.
* Copyright (c) 2002 Doug Bell <drbell@users.sourceforge.net>
*
* CC code from Nathan Laredo's ccdecode.
* Lots of 'hey what does this mean?' code from
* Billy Biggs and Doug Bell, like all the crap with
* XDS and stuff. Some help from Zapping's vbi library by
* Michael H. Schimek and others, released under the GPL.
*
* Modified and adapted to GStreamer by
* David I. Lehn <dlehn@users.sourceforge.net>
*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef VBIDATA_H_INCLUDED
#define VBIDATA_H_INCLUDED
#include "vbiscreen.h"
/*#include "tvtimeosd.h"*/
typedef struct vbidata_s vbidata_t;
#define CAPTURE_OFF 0
#define CAPTURE_CC1 1
#define CAPTURE_CC2 2
#define CAPTURE_CC3 4
#define CAPTURE_CC4 5
#define CAPTURE_T1 6
#define CAPTURE_T2 7
#define CAPTURE_T3 8
#define CAPTURE_T4 9
vbidata_t *vbidata_new_file( const char *filename, vbiscreen_t *vs,
/*tvtime_osd_t* osd,*/ int verbose );
vbidata_t *vbidata_new_line( vbiscreen_t *vs, int verbose );
void vbidata_delete( vbidata_t *vbi );
void vbidata_reset( vbidata_t *vbi );
void vbidata_capture_mode( vbidata_t *vbi, int mode );
void vbidata_process_frame( vbidata_t *vbi, int printdebug );
void vbidata_process_line( vbidata_t *vbi, unsigned char *s, int bottom );
void vbidata_process_16b( vbidata_t *vbi, int bottom, int w );
#endif /* VBIDATA_H_INCLUDED */
This diff is collapsed.
/**
* Copyright (c) 2002 Billy Biggs <vektor@dumbterm.net>.
* Copyright (c) 2002 Doug Bell <drbell@users.sourceforge.net>.
*
* Modified and adapted to GStreamer by
* David I. Lehn <dlehn@users.sourceforge.net>
*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef HAVE_VBISCREEN_H
#define HAVE_VBISCREEN_H
typedef struct vbiscreen_s vbiscreen_t;
vbiscreen_t *vbiscreen_new( int video_width, int video_height,
double video_aspect, int verbose, void *user_data );
void vbiscreen_delete( vbiscreen_t *vs );
void vbiscreen_set_mode( vbiscreen_t *vs, int caption, int style);
void vbiscreen_new_caption( vbiscreen_t *vs, int indent, int ital,
unsigned int colour, int row );
void vbiscreen_tab( vbiscreen_t *vs, int cols );
void vbiscreen_delete_to_end( vbiscreen_t *vs );
void vbiscreen_backspace( vbiscreen_t *vs );
void vbiscreen_erase_displayed( vbiscreen_t *vs );
void vbiscreen_erase_non_displayed( vbiscreen_t *vs );
void vbiscreen_carriage_return( vbiscreen_t *vs );
void vbiscreen_end_of_caption( vbiscreen_t *vs );
void vbiscreen_print( vbiscreen_t *vs, char c1, char c2 );
void vbiscreen_composite_packed422_scanline( vbiscreen_t *vs,
unsigned char *output,
int width, int xpos,
int scanline );
void vbiscreen_dump_screen_text( vbiscreen_t *vs );
void vbiscreen_reset( vbiscreen_t *vs );
#endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment