Tag Archive for buffer

Serve PDF file with PHP

// pdfString is the *contents* of a file.
// to serve a file that exists on the file system, use readfile() instead of print $pdfString

header('Content-Description: File Transfer');
header('Content-Type: application/pdf');
header('Content-Length: ' . strlen($pdfString));
header('Content-Disposition: attachment; filename=' . 'pdf_dynamic.pdf');
ob_clean();
flush();
print $pdfString;
exit;

source

Titlebar customization, file name displaying

(add-hook 'window-configuration-change-hook
(lambda ()
(setq frame-title-format
(concat
invocation-name "@" system-name ": "
(replace-regexp-in-string
(concat "/home/" user-login-name) "~"
(or buffer-file-name "%b"))))))

source

return output of function

function my_wp_plugin_buffer_func($funcname,$args = false) {
if (!$args) $args = array();
ob_start();
call_user_func_array($funcname,$args);
$output = ob_get_contents();
ob_end_clean();
return $output;
}

source

Java – Mini Lettore Wav

package Multimedia;

import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.plaf.metal.MetalLookAndFeel;

public class AudioSystem
{
public static void main(String[] args)
{
JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);

try
{
UIManager.setLookAndFeel(new MetalLookAndFeel());
}
catch(UnsupportedLookAndFeelException e)
{
e.printStackTrace();
}

new AudioGUI();
}
}


package Multimedia;

import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.io.File;

import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class AudioGUI extends JFrame implements WindowListener
{
public AudioGUI()
{
this.setTitle("AudioSystem");
this.setSize(240, 100);
this.setResizable(false);

this.addWindowListener(this);

Container gc = this.getContentPane();
gc.add(new AudioGUIPan());

this.setVisible(true);
}

public void windowOpened(WindowEvent e)
{

}

public void windowClosing(WindowEvent e)
{
System.exit(0);
}

public void windowClosed(WindowEvent e)
{

}

public void windowIconified(WindowEvent e)
{

}

public void windowDeiconified(WindowEvent e)
{

}

public void windowActivated(WindowEvent e)
{

}

public void windowDeactivated(WindowEvent e)
{

}
}

class AudioGUIPan extends JPanel implements ActionListener
{
private JButton play;
private JButton stop;
private JButton loop;
private JButton open;
private JButton close;

private JFileChooser jfc;

private String file;

private AudioDevice ad;

public AudioGUIPan()
{
play = new JButton("Play");
play.addActionListener(this);
stop = new JButton("Stop");
stop.addActionListener(this);
open = new JButton("Open");
open.addActionListener(this);
close = new JButton("Close");
close.addActionListener(this);

this.add(stop);
this.add(play);
this.add(open);
this.add(close);
}

public void actionPerformed(ActionEvent e)
{
if(e.getSource() == close)
{
System.exit(0);
}
else if(e.getSource() == open)
{
jfc = new JFileChooser();
jfc.setFileFilter(new AudioFilter());

if(jfc.showOpenDialog(this) != JFileChooser.CANCEL_OPTION)
{
file = jfc.getSelectedFile().getAbsolutePath();
ad = new AudioDevice(new File(file));
}
}
else if(e.getSource() == play)
{
if(ad != null)
ad.play();
}
else if(e.getSource() == stop)
{
if(ad != null)
ad.stop();
}
}
}


package Multimedia;
import java.io.File;

import javax.swing.filechooser.FileFilter;

public class AudioFilter extends FileFilter
{
public boolean accept(File f)
{
return f.getName().toLowerCase().endsWith(".wav") || f.isDirectory();
}

public String getDescription()
{
return "Audio File *.wav";
}
}


package Multimedia;

import java.applet.Applet;
import java.applet.AudioClip;
import java.io.File;
import java.net.MalformedURLException;

public class AudioDevice implements AudioClip
{
private AudioClip ac;
public AudioDevice(File f)
{
try
{
ac = Applet.newAudioClip(f.toURL());
}
catch(MalformedURLException e)
{
e.printStackTrace();
}
}

public void play()
{
ac.play();
}

public void stop()
{
ac.stop();
}

public void loop()
{

}
}

source

Java – Example Very Simple Player (JMF)

package org.jmf.example;

import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.plaf.metal.MetalLookAndFeel;

public class ExampleJMF
{
public static void main(String[] args)
{
JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);

try
{
UIManager.setLookAndFeel(new MetalLookAndFeel());
}
catch(UnsupportedLookAndFeelException e)
{
e.printStackTrace();
}

new exampleFrame();
}
}


package org.jmf.example;

import java.awt.Toolkit;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JFrame;

public class exampleFrame extends JFrame
{
private static final long serialVersionUID = 1L;

public exampleFrame()
{
super("JMF - Example...");

setSize(400, 300);
setLocation((Toolkit.getDefaultToolkit().getScreenSize().width - getWidth())/2, (Toolkit.getDefaultToolkit().getScreenSize().height - getHeight())/2);

addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent evt)
{
System.exit(0);
}
});

setContentPane(new examplePanel());
setVisible(true);
}
}


package org.jmf.example;

import java.awt.Component;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;

import javax.media.ControllerEvent;
import javax.media.ControllerListener;
import javax.media.Manager;
import javax.media.NoPlayerException;
import javax.media.Player;
import javax.media.RealizeCompleteEvent;
import javax.swing.JPanel;

public class examplePanel extends JPanel implements ActionListener, ControllerListener
{
private static final long serialVersionUID = 1L;

private Component visualComponent;
private Player player;

public examplePanel()
{
try
{
player = Manager.createPlayer(new URL("file:///tmp/a.mpg"));
player.addControllerListener(this);

player.start();
}
catch(NoPlayerException e)
{
e.printStackTrace();
}
catch(MalformedURLException e)
{
e.printStackTrace();
}
catch(IOException e)
{
e.printStackTrace();
}
}

public void paintComponent(Graphics g)
{
super.paintComponent(g);
}

public void actionPerformed(ActionEvent e)
{

}

public void controllerUpdate(ControllerEvent c)
{
if(player == null)
return;

if(c instanceof RealizeCompleteEvent)
{
if((visualComponent = player.getVisualComponent()) != null)
add(visualComponent);
}
}
}

source

Java – JMF Simple Filter

import java.awt.Dimension;

import javax.media.Buffer;
import javax.media.Effect;
import javax.media.Format;
import javax.media.ResourceUnavailableException;
import javax.media.format.RGBFormat;

public class SimpleFilter implements Effect
{
protected Format inputFormat = null;
protected Format outputFormat = null;

protected Format[] inputFormats = null;
protected Format[] outputFormats = null;

public AngelMotionCodec()
{
inputFormats = new Format[]{ new RGBFormat(null, Format.NOT_SPECIFIED, Format.byteArray, Format.NOT_SPECIFIED, 24, 3, 2, 1, 3, Format.NOT_SPECIFIED, Format.TRUE, Format.NOT_SPECIFIED) };
outputFormats = new Format[]{ new RGBFormat(null, Format.NOT_SPECIFIED, Format.byteArray, Format.NOT_SPECIFIED, 24, 3, 2, 1, 3, Format.NOT_SPECIFIED, Format.TRUE, Format.NOT_SPECIFIED) };
}

/****** Codec ******/
public Format[] getSupportedInputFormats()
{
return inputFormats;
}

public Format[] getSupportedOutputFormats(Format input)
{
if(input != null)
{
if(matches(input, inputFormats) != null)
return new Format[]{ outputFormats[0].intersects(input) };
else
return new Format[0];
}

return outputFormats;
}

public int process(Buffer input, Buffer output)
{
// Swap tra input & output
Object tmp = input.getData();

input.setData(output.getData());
output.setData(tmp);

return BUFFER_PROCESSED_OK;
}

public Format setInputFormat(Format input)
{
inputFormat = input;

return input;
}

public Format setOutputFormat(Format output)
{
if(output != null || matches(output, outputFormats) != null)
{
RGBFormat inRGB = (RGBFormat) output;

Dimension size = inRGB.getSize();
int maxDataLength = inRGB.getMaxDataLength();
int lineStride = inRGB.getLineStride();
int flipped = inRGB.getFlipped();

if(size == null)
return null;

if(maxDataLength < size.width*size.height*3)
maxDataLength = size.width*size.height*3;

if(lineStride < size.width*3)
lineStride = size.width*3;

if(flipped != Format.FALSE)
flipped = Format.FALSE;

outputFormat = outputFormats[0].intersects(new RGBFormat(size, maxDataLength, inRGB.getDataType(), inRGB.getFrameRate(), inRGB.getBitsPerPixel(), inRGB.getRedMask(), inRGB.getGreenMask(), inRGB.getBlueMask(), inRGB.getPixelStride(), lineStride, flipped, inRGB.getEndian()));

return outputFormat;
}

return null;
}
/****** Codec ******/

/****** PlugIn ******/
public void close()
{

}

public String getName()
{
return "Simple-Filter";
}

public void open() throws ResourceUnavailableException
{

}

public void reset()
{

}
/****** PlugIn ******/

/****** Controls ******/
public Object getControl(String controlType)
{
return null;
}

public Object[] getControls()
{
return null;
}
/****** Controls ******/

/****** Utility ******/
private Format matches(Format in, Format[] out)
{
if(in != null && out != null)
{
for(int i=0, cnt=out.length; i<cnt; i++)
{
if(in.matches(out[i]))
return out[i];
}
}

return null;
}
/****** Utility ******/
}

source

C – Example Buffer OverFlow

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
char *buffer1 = (char *)calloc(5, sizeof(char));
char *buffer2 = (char *)calloc(15, sizeof(char));
char *tmp;

strcpy(buffer2, "ls -a --color");
strcpy(buffer1, argv[1]);

// Indirizzi di memoria...
printf("%p <-- buffer1
", buffer1);
printf("%p <-- buffer2
", buffer2);
printf("

");

// Stampa indirizzi...
printf("Start code....
");
tmp=buffer1;
while(tmp<buffer2+15)
{
printf("%p: %c (0x%x)
", tmp, *tmp, *(unsigned int *)tmp);
tmp++;
}

printf("
");
system(buffer2);
return 0;
}

source

Buffer Protocol

@protocol BufferSaveFilterProtocol : NSObject
- (NSFileHandle*)buffer:(Buffer*)aBuffer willSaveFile:(NSFileHandle*)aFileHandle;
@end

source