diff options
author | wiz <wiz@pkgsrc.org> | 2002-12-21 11:09:59 +0000 |
---|---|---|
committer | wiz <wiz@pkgsrc.org> | 2002-12-21 11:09:59 +0000 |
commit | 71e6b786253a4ec53b9889e4aa2e014a63d0fb88 (patch) | |
tree | 6ed9c7da7264664a3cbd140c673cd4ae4e7b19ed /graphics | |
parent | 3dfa851837f4ed8fad4319cd83747d59296c59e1 (diff) | |
download | pkgsrc-71e6b786253a4ec53b9889e4aa2e014a63d0fb88.tar.gz |
Add PNG support, written by Thomas Klausner.
Sent back to maintainer, but development seems to be dormant right now.
Bump version to 1.03nb2.
Diffstat (limited to 'graphics')
-rw-r--r-- | graphics/fxtv/Makefile | 5 | ||||
-rw-r--r-- | graphics/fxtv/distinfo | 13 | ||||
-rw-r--r-- | graphics/fxtv/patches/patch-aa | 21 | ||||
-rw-r--r-- | graphics/fxtv/patches/patch-ad | 20 | ||||
-rw-r--r-- | graphics/fxtv/patches/patch-ae | 119 | ||||
-rw-r--r-- | graphics/fxtv/patches/patch-ag | 52 | ||||
-rw-r--r-- | graphics/fxtv/patches/patch-ah | 12 | ||||
-rw-r--r-- | graphics/fxtv/patches/patch-ai | 31 | ||||
-rw-r--r-- | graphics/fxtv/patches/patch-aj | 20 | ||||
-rw-r--r-- | graphics/fxtv/patches/patch-ak | 12 | ||||
-rw-r--r-- | graphics/fxtv/patches/patch-al | 20 |
11 files changed, 310 insertions, 15 deletions
diff --git a/graphics/fxtv/Makefile b/graphics/fxtv/Makefile index d5d44fae860..5bfff5b0c0c 100644 --- a/graphics/fxtv/Makefile +++ b/graphics/fxtv/Makefile @@ -1,7 +1,7 @@ -# $NetBSD: Makefile,v 1.18 2002/10/08 13:09:51 jlam Exp $ +# $NetBSD: Makefile,v 1.19 2002/12/21 11:09:59 wiz Exp $ DISTNAME= fxtv-1.03 -PKGREVISION= 1 +PKGREVISION= 2 CATEGORIES= graphics MASTER_SITES= ${HOMEPAGE} EXTRACT_SUFX= .tgz @@ -39,6 +39,7 @@ post-patch: ${MV} -f $${file}.fixed $${file}; \ done +.include "../../graphics/png/buildlink2.mk" .include "../../graphics/tiff/buildlink2.mk" .include "../../graphics/xpm/buildlink2.mk" .include "../../mk/xaw.buildlink2.mk" diff --git a/graphics/fxtv/distinfo b/graphics/fxtv/distinfo index 829d8f421cb..cf70590e754 100644 --- a/graphics/fxtv/distinfo +++ b/graphics/fxtv/distinfo @@ -1,9 +1,16 @@ -$NetBSD: distinfo,v 1.5 2002/10/08 13:09:52 jlam Exp $ +$NetBSD: distinfo,v 1.6 2002/12/21 11:09:59 wiz Exp $ SHA1 (fxtv-1.03.tgz) = 2ed9f2bee879a931c7f963a4ad7d07ef9cd297f9 Size (fxtv-1.03.tgz) = 198669 bytes -SHA1 (patch-aa) = 57e48632d026f208aef2708e1397014f83207427 +SHA1 (patch-aa) = cd994d512fe99e962cc9c505285da63d1421f81e SHA1 (patch-ab) = a62c497255063a88b7d240e902a45c85f59f84b0 SHA1 (patch-ac) = 27a825287c17d1cc957fb89ba2f665c01f998c15 +SHA1 (patch-ad) = d1f72544dd7878d43d6975edcae5d3098f940faa +SHA1 (patch-ae) = aa7689ff62388d4d50f89501f2c3084bc04409d8 SHA1 (patch-af) = 50ab2d960955a8e97b6b56265195ec325b206cf9 -SHA1 (patch-ag) = 126e1fab604038460fd79cc3487b1b1e30497742 +SHA1 (patch-ag) = 13655a94cd6200d12e25d406d7c1923f89000c80 +SHA1 (patch-ah) = 896d5164b176154b398f52d5c9887210da3d1e77 +SHA1 (patch-ai) = 85baa4b457dede91bf74ce0d8e4655fae9da2d96 +SHA1 (patch-aj) = 35ffa80ed5484c0d23a5f4fbe5657217c715e6e7 +SHA1 (patch-ak) = 4f32ae6c6eea2b8b1c26c6861e9bff1429976024 +SHA1 (patch-al) = d60ac498f40cd9ec833ca436708cb140856826f1 diff --git a/graphics/fxtv/patches/patch-aa b/graphics/fxtv/patches/patch-aa index cf1cd0d99d9..9da5e0c7348 100644 --- a/graphics/fxtv/patches/patch-aa +++ b/graphics/fxtv/patches/patch-aa @@ -1,6 +1,6 @@ -$NetBSD: patch-aa,v 1.5 2002/10/08 13:09:52 jlam Exp $ +$NetBSD: patch-aa,v 1.6 2002/12/21 11:10:00 wiz Exp $ ---- Makefile.orig Mon Feb 12 14:08:59 2001 +--- Makefile.orig Mon Feb 12 23:08:59 2001 +++ Makefile @@ -4,13 +4,10 @@ @@ -34,11 +34,10 @@ $NetBSD: patch-aa,v 1.5 2002/10/08 13:09:52 jlam Exp $ # OpenBSD stuff # ifeq ($(OS),OpenBSD) -@@ -71,6 +59,15 @@ override CFLAGS += -DHAVE_XFRE - endif +@@ -72,6 +60,15 @@ endif override CFLAGS += $(C_WARN_FLAG) -DX11BASE=\"$(X11BASEINST)\" -+ + +# +# NetBSD stuff +# @@ -47,6 +46,16 @@ $NetBSD: patch-aa,v 1.5 2002/10/08 13:09:52 jlam Exp $ + override LIBDIRS += $(LOCALBASE)/lib + override LD_INC += $(LIBOSSAUDIO) -lz +endif - ++ ifeq ($(OS), linux) override CFLAGS = $(CFLAGS) -DOLD_TUNER_IFACE + endif +@@ -81,7 +78,7 @@ endif + # + override LDFLAGS = $(LD_INC) + override VIDEOLIB_LIB = $(VIDEOLIB_DIR)/libvideo.a +-override LIBS = -ltiff -ljpeg -lXaw3d -lXmu -lXt -lXpm \ ++override LIBS = -lpng -ltiff -ljpeg -lXaw3d -lXmu -lXt -lXpm \ + -lSM -lICE -lXext -lX11 -lm + ifeq ($(HAVE_XFREE86),YES) + override LIBS += -lXxf86dga -lXxf86vm diff --git a/graphics/fxtv/patches/patch-ad b/graphics/fxtv/patches/patch-ad new file mode 100644 index 00000000000..a90ea476ec0 --- /dev/null +++ b/graphics/fxtv/patches/patch-ad @@ -0,0 +1,20 @@ +$NetBSD: patch-ad,v 1.6 2002/12/21 11:10:00 wiz Exp $ + +--- app_rsrc.h.orig Sat Dec 21 11:57:15 2002 ++++ app_rsrc.h +@@ -789,6 +789,7 @@ static String fallback_resources[] = { + "*imageSaveDialog*suffixLabel.label: Append Img # Suffix", + "*imageSaveDialog*formatLabel.label: Format:", + "*imageSaveDialog*formatMenuBox*tiffCmd.label: TIFF", ++ "*imageSaveDialog*formatMenuBox*pngCmd.label: PNG", + "*imageSaveDialog*formatMenuBox*ppmCmd.label: PPM", + "*imageSaveDialog*okCmd.label: OK", + +@@ -902,6 +903,7 @@ static String fallback_resources[] = { + "*videoSaveDialog*imageEncLabel.label: IMAGE ENCODE", + "*videoSaveDialog*iFileFmtLabel.label: Format:", + "*videoSaveDialog*iFileFmtMenuBox*tiffCmd.label: TIFF", ++ "*videoSaveDialog*iFileFmtMenuBox*pngCmd.label: PNG", + "*videoSaveDialog*iFileFmtMenuBox*ppmCmd.label: PPM", + "*videoSaveDialog*iFileFmtMenuBox*yuvCmd.label: YUV", + diff --git a/graphics/fxtv/patches/patch-ae b/graphics/fxtv/patches/patch-ae new file mode 100644 index 00000000000..c23ccce230d --- /dev/null +++ b/graphics/fxtv/patches/patch-ae @@ -0,0 +1,119 @@ +$NetBSD: patch-ae,v 1.5 2002/12/21 11:10:01 wiz Exp $ + +--- imgsav.c.orig Sun Sep 26 16:35:06 1999 ++++ imgsav.c +@@ -29,6 +29,7 @@ + + /* ******************** Include Files ************** */ + ++#include <png.h> + #include <stdio.h> + #include <stdlib.h> + #include <unistd.h> +@@ -254,6 +255,96 @@ void TVIMGSAVDoSaveTIFF( char filename[] + } + + ++void TVIMGSAVDoSavePNG( char filename[], TV_IMAGE *img ) ++{ ++ char errmsg[160]; ++ png_structp png_ptr; ++ png_infop info_ptr; ++ FILE *out; ++ TV_INT32 linebytes, ++ y, ++ pass, ++ compon; ++ TV_UINT8 *buf; ++ ++ buf = NULL; ++ if ( img->pix_geom.type != TV_PIXELTYPE_RGB ) { ++ fprintf( stderr, "Attempt to save non-RGB data as TIFF\n" ); ++ exit(1); ++ } ++ ++ /* Open output file */ ++ if ( (out = fopen( filename, "wb" )) == NULL ) { ++ sprintf( errmsg, "Can't open output file '%s'", filename ); ++ XUTILDialogPause( TVTOPLEVEL, "Error", errmsg, TV_DIALOG_TYPE_OK ); ++ return; ++ } ++ ++ /* Create PNG data structures and initialize */ ++ png_ptr = png_create_write_struct ++ (PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); ++ if (!png_ptr) { ++ sprintf( errmsg, "Can't create PNG write structure" ); ++ XUTILDialogPause( TVTOPLEVEL, "Error", errmsg, TV_DIALOG_TYPE_OK ); ++ return; ++ } ++ info_ptr = png_create_info_struct(png_ptr); ++ if (!info_ptr) { ++ png_destroy_write_struct(&png_ptr, NULL); ++ sprintf( errmsg, "Can't create PNG info structure" ); ++ XUTILDialogPause( TVTOPLEVEL, "Error", errmsg, TV_DIALOG_TYPE_OK ); ++ return; ++ } ++ ++ if (setjmp(png_jmpbuf(png_ptr))) { ++ fprintf( stderr, "PNG write error\n" ); ++ XBell( TVDISPLAY, 100 ); ++ png_destroy_write_struct( &png_ptr, &info_ptr ); ++ free( buf ); ++ fclose( out ); ++ unlink( filename ); ++ return; ++ } ++ png_init_io(png_ptr, out); ++ /* fast compression */ ++ png_set_compression_level(png_ptr, Z_BEST_SPEED); ++ ++ /* Setup image format info (chunks) */ ++ png_set_IHDR(png_ptr, info_ptr, img->geom.w, img->geom.h, ++ TV_BITS_PER_COMP, PNG_COLOR_TYPE_RGB /* XXX: ? */, ++ PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, ++ PNG_FILTER_TYPE_DEFAULT); ++ /* and write it */ ++ png_write_info(png_ptr, info_ptr); ++ /* flush image out every 50 rows */ ++ png_set_flush(png_ptr, 50); ++ ++ linebytes = img->geom.w * TV_BYTES_PER_PIX; ++ ++ if ( (buf = malloc( linebytes )) == NULL ) ++ TVUTILOutOfMemory(); ++ ++ /* Convert & write the image data */ ++ for ( pass = 0; pass < 1; pass++ ) { ++ compon = DoRed | DoGreen | DoBlue; ++ for ( y = 0; y < img->geom.h; y++ ) { ++ ++ /* Format scanline */ ++ TVIMGSAVFmtScanline24bpp( img, y, compon, buf ); ++ ++ /* And write it in PNG */ ++ png_write_row(png_ptr, buf); ++ } ++ } ++ ++ /* All done. Close up shop and go home */ ++ png_write_end(png_ptr, NULL); ++ png_destroy_write_struct(&png_ptr, &info_ptr); ++ fclose(out); ++ free( buf ); ++} ++ ++ + void TVIMGSAVDoSavePPM( char filename[], TV_IMAGE *img ) + { + static char *S_fp_buf = NULL; +@@ -407,6 +498,9 @@ void TVIMGSAVDoSave( char filename[], TV + exit(1); + } + TVIMGSAVDoSaveTIFF( filename, img ); break; ++ ++ case TV_STILL_FMT_PNG : ++ TVIMGSAVDoSavePNG ( filename, img ); break; + + case TV_STILL_FMT_PPM : + TVIMGSAVDoSavePPM ( filename, img ); break; diff --git a/graphics/fxtv/patches/patch-ag b/graphics/fxtv/patches/patch-ag index 4e05e007ac9..8ae0fcf1b15 100644 --- a/graphics/fxtv/patches/patch-ag +++ b/graphics/fxtv/patches/patch-ag @@ -1,8 +1,28 @@ -$NetBSD: patch-ag,v 1.3 2002/05/14 00:43:35 wiz Exp $ +$NetBSD: patch-ag,v 1.4 2002/12/21 11:10:01 wiz Exp $ ---- fxtv_cnvt.sh.orig Mon May 13 13:59:26 2002 -+++ fxtv_cnvt.sh Mon May 13 13:59:54 2002 -@@ -181,8 +181,8 @@ +--- fxtv_cnvt.sh.orig Mon Feb 12 22:18:40 2001 ++++ fxtv_cnvt.sh +@@ -32,7 +32,7 @@ + #VIDEO_TARGET_FPS="30" + #VIDEO_STREAM="YES" + # +-#IMAGE_TARGET_FMT="YUV" # TIFF|PPM|YUV ++#IMAGE_TARGET_FMT="YUV" # TIFF|PNG|PPM|YUV + # + #CLEANUP_TEMP_FILES="YES" + +@@ -73,6 +73,10 @@ MPEG_ENC_PARAM_STR_TIFF=\ + 'BASE_FILE_FORMAT PPM + INPUT_CONVERT tifftopnm *' + ++MPEG_ENC_PARAM_STR_PNG=\ ++'BASE_FILE_FORMAT PPM ++INPUT_CONVERT pngtopnm *' ++ + MPEG_ENC_PARAM_STR_PPM=\ + 'BASE_FILE_FORMAT PPM + INPUT_CONVERT *' +@@ -181,8 +185,8 @@ GenAudioPipe() { # Do we need an intermediate file? if [ $mpeg_enc = YES ]; then @@ -13,3 +33,27 @@ $NetBSD: patch-ag,v 1.3 2002/05/14 00:43:35 wiz Exp $ else out_soxfn="$GAout_fn" out_soxfmt="$out_fmt" +@@ -258,6 +262,7 @@ WriteMPEGEncodeParamFile() { + # Write the frame-format specific part + case $frame_fmt in + TIFF) str="$MPEG_ENC_PARAM_STR_TIFF";; ++ PNG) str="$MPEG_ENC_PARAM_STR_PNG";; + PPM) str="$MPEG_ENC_PARAM_STR_PPM" ;; + YUV) str="$MPEG_ENC_PARAM_STR_IYUV";; + esac +@@ -277,6 +282,7 @@ WriteMPEGEncodeParamFile() { + base=`basename $out_fnbase` + case $frame_fmt in + TIFF) ext="tif";; ++ PNG) ext="png";; + PPM) ext="ppm";; + YUV) ext="yuv";; + esac +@@ -321,6 +327,7 @@ CountFrameFiles() { + + case $frame_fmt in + TIFF) ext="tif";; ++ PNG) ext="png";; + PPM) ext="ppm";; + YUV) ext="yuv";; + esac diff --git a/graphics/fxtv/patches/patch-ah b/graphics/fxtv/patches/patch-ah new file mode 100644 index 00000000000..a3a3e925834 --- /dev/null +++ b/graphics/fxtv/patches/patch-ah @@ -0,0 +1,12 @@ +$NetBSD: patch-ah,v 1.3 2002/12/21 11:10:02 wiz Exp $ + +--- imgsav_dlg.c.orig Mon Sep 6 15:07:29 1999 ++++ imgsav_dlg.c +@@ -69,6 +69,7 @@ static Pixmap Select_pixmap = None, + + static TV_IFILEFMT_ITEM_DEF Fmtitem_def[] = { + { TV_STILL_FMT_TIFF , "tiff", "tiffCmd" }, ++ { TV_STILL_FMT_PNG , "png", "pngCmd" }, + { TV_STILL_FMT_PPM , "ppm" , "ppmCmd" } + }; + diff --git a/graphics/fxtv/patches/patch-ai b/graphics/fxtv/patches/patch-ai new file mode 100644 index 00000000000..6ba1ebbb452 --- /dev/null +++ b/graphics/fxtv/patches/patch-ai @@ -0,0 +1,31 @@ +$NetBSD: patch-ai,v 1.1 2002/12/21 11:10:02 wiz Exp $ + +--- batch_mode.c.orig Sat Oct 23 15:50:35 1999 ++++ batch_mode.c +@@ -154,6 +154,8 @@ static void DoStreamVideo( TV_BATCH_PARM + + if ( STREQ( parm->frame_fmt, "TIFF" ) ) + fmt = TV_STILL_FMT_TIFF; ++ else if ( STREQ( parm->frame_fmt, "PNG" ) ) ++ fmt = TV_STILL_FMT_PNG; + else if ( STREQ( parm->frame_fmt, "PPM" ) ) + fmt = TV_STILL_FMT_PPM; + else if ( STREQ( parm->frame_fmt, "YUV" ) ) +@@ -175,6 +177,7 @@ static void DoStreamVideo( TV_BATCH_PARM + if ( parm->video_target && !video2stdout ) + switch ( fmt ) { + case TV_STILL_FMT_TIFF : frame_ext = "tif"; break; ++ case TV_STILL_FMT_PNG : frame_ext = "png"; break; + case TV_STILL_FMT_PPM : frame_ext = "ppm"; break; + case TV_STILL_FMT_YUV : frame_ext = "yuv"; break; + default: abort(); +@@ -209,7 +212,8 @@ static void DoStreamVideo( TV_BATCH_PARM + return; + + /* Sanity check raw data with save type */ +- if ( ((( fmt == TV_STILL_FMT_TIFF ) || ( fmt == TV_STILL_FMT_PPM )) && ++ if ( ((( fmt == TV_STILL_FMT_TIFF ) || ( fmt == TV_STILL_FMT_PNG ) ++ || ( fmt == TV_STILL_FMT_PPM )) && + ( img.pix_geom.type != TV_PIXELTYPE_RGB )) || + (( fmt == TV_STILL_FMT_YUV ) && + ( img.pix_geom.type != TV_PIXELTYPE_YUV )) ) { diff --git a/graphics/fxtv/patches/patch-aj b/graphics/fxtv/patches/patch-aj new file mode 100644 index 00000000000..90b6474d8ba --- /dev/null +++ b/graphics/fxtv/patches/patch-aj @@ -0,0 +1,20 @@ +$NetBSD: patch-aj,v 1.1 2002/12/21 11:10:03 wiz Exp $ + +--- Fxtv.orig Sat Dec 21 11:57:15 2002 ++++ Fxtv +@@ -320,6 +320,7 @@ Fxtv*iconName: FXTV + *imageSaveDialog*suffixLabel.label: Append Img # Suffix + *imageSaveDialog*formatLabel.label: Format: + *imageSaveDialog*formatMenuBox*tiffCmd.label: TIFF ++*imageSaveDialog*formatMenuBox*pngCmd.label: PNG + *imageSaveDialog*formatMenuBox*ppmCmd.label: PPM + *imageSaveDialog*okCmd.label: OK + +@@ -432,6 +433,7 @@ Fxtv*iconName: FXTV + *videoSaveDialog*imageEncLabel.label: IMAGE ENCODE + *videoSaveDialog*iFileFmtLabel.label: Format: + *videoSaveDialog*iFileFmtMenuBox*tiffCmd.label: TIFF ++*videoSaveDialog*iFileFmtMenuBox*pngCmd.label: PNG + *videoSaveDialog*iFileFmtMenuBox*ppmCmd.label: PPM + *videoSaveDialog*iFileFmtMenuBox*yuvCmd.label: YUV + diff --git a/graphics/fxtv/patches/patch-ak b/graphics/fxtv/patches/patch-ak new file mode 100644 index 00000000000..92f40fa8bae --- /dev/null +++ b/graphics/fxtv/patches/patch-ak @@ -0,0 +1,12 @@ +$NetBSD: patch-ak,v 1.1 2002/12/21 11:10:03 wiz Exp $ + +--- glob.h.orig Mon Feb 12 20:24:44 2001 ++++ glob.h +@@ -54,6 +54,7 @@ typedef enum { + + typedef enum { + TV_STILL_FMT_TIFF, ++ TV_STILL_FMT_PNG, + TV_STILL_FMT_PPM, + TV_STILL_FMT_YUV, + TV_NUM_STILL_FMTS diff --git a/graphics/fxtv/patches/patch-al b/graphics/fxtv/patches/patch-al new file mode 100644 index 00000000000..37bdc945763 --- /dev/null +++ b/graphics/fxtv/patches/patch-al @@ -0,0 +1,20 @@ +$NetBSD: patch-al,v 1.1 2002/12/21 11:10:04 wiz Exp $ + +--- vidsav_dlg.c.orig Mon Feb 12 22:20:10 2001 ++++ vidsav_dlg.c +@@ -235,6 +235,7 @@ static TV_ICAPFMT_ITEM_DEF Icap_fmt_ + + static TV_IFILEFMT_ITEM_DEF Ifile_fmt_item_def[] = { + { TV_STILL_FMT_TIFF , "tiff", "tiffCmd" }, ++ { TV_STILL_FMT_PNG , "png", "pngCmd" }, + { TV_STILL_FMT_PPM , "ppm" , "ppmCmd" }, + { TV_STILL_FMT_YUV , "yuv" , "yuvCmd" } + }; +@@ -872,6 +873,7 @@ static TV_BOOL WriteVidConvertShScript( + + switch ( p->img_sav_fmt ) { + case TV_STILL_FMT_TIFF : str = "TIFF"; break; ++ case TV_STILL_FMT_PNG : str = "PNG"; break; + case TV_STILL_FMT_PPM : str = "PPM" ; break; + case TV_STILL_FMT_YUV : str = "YUV" ; break; + default : str = "" ; break; |