public class ImageSequenceWriter extends Object implements MovieWriter
ImageSequenceWriter.| Constructor and Description |
|---|
ImageSequenceWriter() |
| Modifier and Type | Method and Description |
|---|---|
int |
addTrack(Format format)
Adds a track to the writer for a suggested input format.
|
int |
addVideoTrack(File dir,
String filenameFormatter,
int width,
int height)
Adds a video track.
|
void |
close()
Closes the writer.
|
Rational |
getDuration(int track)
Returns the sampleDuration of the track in seconds.
|
Format |
getFileFormat()
Returns the file format.
|
Format |
getFormat(int track)
Returns the media format of the specified track.
|
int |
getTrackCount()
Returns the number of tracks.
|
boolean |
isDataLimitReached()
Returns true if the limit for media data has been reached.
|
boolean |
isEmpty(int track)
Returns true if the specified track has no samples.
|
boolean |
isVFRSupported() |
void |
write(int track,
Buffer buf)
Writes a sample into the specified track.
|
void |
write(int track,
BufferedImage image,
long duration) |
void |
writeSample(int track,
byte[] data,
int off,
int len,
long duration,
boolean isSync) |
void |
writeSamples(int track,
int sampleCount,
byte[] data,
int off,
int len,
long sampleDuration,
boolean isSync) |
public int addTrack(Format format) throws IOException
MovieWriter
The format should at least specify the desired FormatKeys.MediaType.
The actual input format is a refined version of the suggested format. For
example, if a MovieWriter only supports fixed frame rate video, then the
MovieWriter will extend the format with that information.
If the suggested input format is not compatible, then an IOException is thrown. For example, if a MovieWriter only supports fixed frame rate video, but a format with variable frame rate was requested.
addTrack in interface MovieWriterformat - The desired input format of the track. The actual input
format may be a refined version of the specified format.IOExceptionpublic Format getFileFormat() throws IOException
MovieWritergetFileFormat in interface MovieWriterIOExceptionpublic int getTrackCount()
MovieWritergetTrackCount in interface MovieWriterpublic Format getFormat(int track)
MovieWriterMovieWriter.addTrack(org.monte.media.Format).getFormat in interface MovieWritertrack - Track number.public int addVideoTrack(File dir, String filenameFormatter, int width, int height)
dir - The output directory.filenameFormatter - a format string for a filename with a number,
for example "frame_%d0000$.png";width - the image widthheight - the image heightIllegalArgumentException - if the width or the height is smaller
than 1.public void write(int track,
BufferedImage image,
long duration)
throws IOException
IOExceptionpublic void write(int track,
Buffer buf)
throws IOException
MovieWriterwrite in interface MovieWriterwrite in interface Multiplexertrack - The track number.buf - The buffer containing the sample data.IOExceptionpublic void writeSample(int track,
byte[] data,
int off,
int len,
long duration,
boolean isSync)
throws IOException
IOExceptionpublic void writeSamples(int track,
int sampleCount,
byte[] data,
int off,
int len,
long sampleDuration,
boolean isSync)
throws IOException
IOExceptionpublic void close()
throws IOException
MovieWriterclose in interface MovieWriterclose in interface MultiplexerIOExceptionpublic boolean isVFRSupported()
public boolean isDataLimitReached()
MovieWriterThis limit is imposed by data structures of the movie file which will overflow if more samples are added to the movie.
FIXME - Maybe replace by getCapacity():long.
isDataLimitReached in interface MovieWriterpublic Rational getDuration(int track)
getDuration in interface MovieWriterpublic boolean isEmpty(int track)
MovieWriterisEmpty in interface MovieWriterCopyright © 2014. All Rights Reserved.