Package org.opensourcephysics.media.gif
Class GifVideo
java.lang.Object
org.opensourcephysics.display.OSPRuntime.Supported
org.opensourcephysics.media.core.VideoAdapter
org.opensourcephysics.media.gif.GifVideo
- All Implemented Interfaces:
PropertyChangeListener
,EventListener
,Drawable
,Interactive
,Measurable
,DrawableImage
,InteractiveImage
,Trackable
,Video
This is a video that wraps an animated gif image.
- Version:
- 1.0
- Author:
- Douglas Brown
-
Field Summary
FieldsFields inherited from class org.opensourcephysics.media.core.VideoAdapter
aspects, baseDir, bufferedImage, clearRaster, coords, displayedSize, endFrameNumber, filteredImage, filterStack, frameCount, frameNumber, isMeasured, isValidFilteredImage, isValidImage, isValidMeasure, looping, maxX, maxY, minX, minY, mouseEnabled, playing, properties, rate, rawImage, size, startFrameNumber, startTimesMS, visible, widthDominates
Fields inherited from interface org.opensourcephysics.media.core.Trackable
PROPERTY_ADJUSTING
Fields inherited from interface org.opensourcephysics.media.core.Video
PROPERTY_VIDEO_COORDS, PROPERTY_VIDEO_ENDFRAME, PROPERTY_VIDEO_FILTERCHANGED, PROPERTY_VIDEO_FRAMENUMBER, PROPERTY_VIDEO_IMAGE, PROPERTY_VIDEO_LOOPING, PROPERTY_VIDEO_NEXTFRAME, PROPERTY_VIDEO_PLAYING, PROPERTY_VIDEO_RATE, PROPERTY_VIDEO_SIZE, PROPERTY_VIDEO_VIDEOVISIBLE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
draw
(DrawingPanel panel, Graphics g) Draws the video image on the panel.double
Gets the end time in milliseconds.double
Gets the duration of the video.static XML.ObjectLoader
Returns an XML.ObjectLoader to save and load GifVideo data.Returns the VideoType name of this video.protected void
Loads a gif image specified by name.void
play()
Plays the video at the current rate.void
setFrameNumber
(int n) Overrides ImageVideo setFrameNumber method.protected void
void
stop()
Stops the video.Methods inherited from class org.opensourcephysics.media.core.VideoAdapter
back, dispose, finalize, findInteractive, findMinMaxValues, getAbsolutePath, getAngle, getCoords, getEndFrameNumber, getFilterStack, getFrameCount, getFrameDuration, getFrameNumber, getFrameTime, getHeight, getImage, getImageSize, getProperty, getPropertyNames, getRate, getRawBufferedImage, getRelativeAspect, getStartFrameNumber, getStartTime, getWidth, getX, getXMax, getXMin, getY, getYMax, getYMin, goToEnd, goToStart, initialize, invalidateVideoAndFilter, isEnabled, isLooping, isMeasured, isPlaying, isVisible, notifyFrame, notifySize, propertyChange, refreshBufferedImage, reset, setAngle, setCoords, setEnabled, setEndFrameNumber, setEndTime, setFilterStack, setFrameAngle, setFrameCount, setFrameHeight, setFrameRelativeAspect, setFrameWidth, setFrameX, setFrameXY, setFrameY, setHeight, setLooping, setNotify, setPlaying, setProperty, setRate, setRelativeAspect, setStartFrameNumber, setStartTime, setVisible, setWidth, setX, setXY, setY, step, updateBufferedImage
Methods inherited from class org.opensourcephysics.display.OSPRuntime.Supported
addListeners, addPropertyChangeListener, addPropertyChangeListener, addPropertyChangeListenerSafely, dispose, firePropertyChange, firePropertyChange, removeListeners, removePropertyChangeListener, removePropertyChangeListener
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.opensourcephysics.display.Interactive
isInteractive
Methods inherited from interface org.opensourcephysics.media.core.Video
addListener, addPropertyChangeListener, addPropertyChangeListener, getAverageFrameDuration, getAverageFrameRate, getOutliers, isValid, removeListener, removePropertyChangeListener, removePropertyChangeListener
-
Field Details
-
decoder
-
-
Constructor Details
-
GifVideo
Creates a GifVideo and loads a gif image specified by name- Parameters:
gifName
- the name of the image file- Throws:
IOException
-
-
Method Details
-
draw
Draws the video image on the panel.- Specified by:
draw
in interfaceDrawable
- Overrides:
draw
in classVideoAdapter
- Parameters:
panel
- the drawing panel requesting the drawingg
- the graphics context on which to draw
-
play
public void play()Plays the video at the current rate. -
stop
public void stop()Stops the video. -
setFrameNumber
public void setFrameNumber(int n) Overrides ImageVideo setFrameNumber method.- Specified by:
setFrameNumber
in interfaceVideo
- Overrides:
setFrameNumber
in classVideoAdapter
- Parameters:
n
- the desired frame number- See Also:
-
getEndTime
public double getEndTime()Gets the end time in milliseconds.- Specified by:
getEndTime
in interfaceVideo
- Overrides:
getEndTime
in classVideoAdapter
- Returns:
- the end time in milliseconds, or -1 if not known
-
getFrameCountDurationMS
public double getFrameCountDurationMS()Gets the duration of the video.- Returns:
- the duration of the video in milliseconds, or -1 if not known
-
load
Loads a gif image specified by name.- Parameters:
gifName
- the gif image name- Throws:
IOException
-
setStartTimes
protected void setStartTimes()- Specified by:
setStartTimes
in classVideoAdapter
-
getLoader
Returns an XML.ObjectLoader to save and load GifVideo data.- Returns:
- the object loader
-
getTypeName
Description copied from interface:Video
Returns the VideoType name of this video.
-