/*
* @(#)ColorTesterMain.java 1.0 2011-03-15
*
* Copyright (c) 2011 Werner Randelshofer, Goldau, Switzerland.
* All rights reserved.
*
* You may not use, copy or modify this file, except in compliance with the
* license agreement you entered into with Werner Randelshofer.
* For details see accompanying license terms.
*/
package org.monte.media.test;
import org.monte.media.VideoFormatKeys;
import org.monte.media.avi.AVIWriter;
import org.monte.media.color.Colors;
import org.monte.media.quicktime.QuickTimeWriter;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.image.BufferedImage;
import java.awt.image.DataBufferByte;
import java.io.File;
import java.io.IOException;
/**
* {@code ColorTesterMain}.
*
* @author Werner Randelshofer
* @version 1.0 2011-03-15 Created.
*/
public class ColorTesterMain {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
BufferedImage img1 = new BufferedImage(16, 16, BufferedImage.TYPE_BYTE_INDEXED, Colors.createMacColors());
byte[] data = ((DataBufferByte) img1.getRaster().getDataBuffer()).getData();
for (int i = 0; i < data.length; i++) {
data[i] = (byte) i;
}
BufferedImage img = new BufferedImage(256, 256, BufferedImage.TYPE_BYTE_INDEXED, Colors.createMacColors());
Graphics2D g = img.createGraphics();
g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_NEAREST_NEIGHBOR);
g.drawImage(img1, 0, 0, 256, 256, 0, 0, 16, 16, null);
g.dispose();
{
QuickTimeWriter w = new QuickTimeWriter(new File(System.getProperty("user.home") + File.separator + "Movies" + File.separator + "ColorTest.mov"));
w.addVideoTrack(VideoFormatKeys.ENCODING_QUICKTIME_RAW, VideoFormatKeys.COMPRESSOR_NAME_QUICKTIME_RAW, 600, img.getWidth(), img.getHeight(), 8, 0);
w.write(0, img, 600);
w.close();
}
AVIWriter w = new AVIWriter(new File(System.getProperty("user.home") + File.separator + "Movies" + File.separator + "ColorTest.avi"));
w.addVideoTrack(VideoFormatKeys.ENCODING_AVI_DIB, 600, 1, img.getWidth(), img.getHeight(), 8, 0);
w.write(0, img, 600);
w.close();
}
}