Class DirectRenderMediaPlayerPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- adams.gui.core.BasePanel
-
- adams.gui.visualization.video.vlcjplayer.DirectRenderMediaPlayerPanel
-
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
public class DirectRenderMediaPlayerPanel extends adams.gui.core.BasePanel
A panel that is a self contained Direct rendering video player.- Author:
- sjb90
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
-
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
-
Field Summary
Fields Modifier and Type Field Description protected uk.co.caprica.vlcj.player.direct.BufferFormatCallback
m_BufferFormatCallback
protected BufferedImage
m_Image
an image to fill with the video frameprotected uk.co.caprica.vlcj.component.DirectMediaPlayerComponent
m_MediaComponent
Media component for playing the videoprotected int
m_VideoHeight
The height of the videoprotected int
m_VideoWidth
The width of the video-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
-
Constructor Summary
Constructors Constructor Description DirectRenderMediaPlayerPanel()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addMediaPlayerEventListener(uk.co.caprica.vlcj.player.MediaPlayerEventListener mediaPlayerEventListener)
adds a media player event listener to our media playerprotected void
finishInit()
long
getLength()
Gets the length of the mediafloat
getPosition()
a getter for the current position in the video playbackfloat
getRate()
A getter for the playback ratelong
getTime()
Returns the current playback timeprotected void
initGUI()
protected void
initialize()
boolean
isMute()
checks to see if the player is mutedboolean
isPlaying()
A getter for the playing state of the playervoid
mute()
mutes the playervoid
open(String fileName)
opens a file for playingvoid
paint(Graphics g)
void
pause()
Pauses the video playbackvoid
play()
Plays the current mediavoid
prepareMedia(String absolutePath)
Pre prepares a media file for playingvoid
release()
releases the media player to clean up memory usagevoid
setPosition(float v)
Sets the position in the videovoid
setRate(float rate)
Sets the playback ratevoid
stop()
Stops playbackvoid
unmute()
unmutes the player-
Methods inherited from class adams.gui.core.BasePanel
afterHide, afterShow, beforeHide, beforeShow, closeParent, getParentChild, getParentDialog, getParentFrame, getParentInternalFrame, getParentTitle, initFileChooser, main, printErrorMessage, printException, saveComponent, setEnabledCascade, setEnabledCascade, setParentTitle, setVisible
-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
m_VideoWidth
protected int m_VideoWidth
The width of the video
-
m_VideoHeight
protected int m_VideoHeight
The height of the video
-
m_MediaComponent
protected uk.co.caprica.vlcj.component.DirectMediaPlayerComponent m_MediaComponent
Media component for playing the video
-
m_Image
protected BufferedImage m_Image
an image to fill with the video frame
-
m_BufferFormatCallback
protected uk.co.caprica.vlcj.player.direct.BufferFormatCallback m_BufferFormatCallback
-
-
Method Detail
-
initGUI
protected void initGUI()
- Overrides:
initGUI
in classadams.gui.core.BasePanel
-
initialize
protected void initialize()
- Overrides:
initialize
in classadams.gui.core.BasePanel
-
finishInit
protected void finishInit()
- Overrides:
finishInit
in classadams.gui.core.BasePanel
-
paint
public void paint(Graphics g)
- Overrides:
paint
in classJComponent
-
open
public void open(String fileName)
opens a file for playing- Parameters:
fileName
- the file to be played
-
setRate
public void setRate(float rate)
Sets the playback rate- Parameters:
rate
- the rate play back at
-
setPosition
public void setPosition(float v)
Sets the position in the video- Parameters:
v
- the position to go to
-
getRate
public float getRate()
A getter for the playback rate- Returns:
- the current playback rate
-
isMute
public boolean isMute()
checks to see if the player is muted- Returns:
- true if the player is muted, false otherwise
-
getPosition
public float getPosition()
a getter for the current position in the video playback- Returns:
- the current position
-
getTime
public long getTime()
Returns the current playback time- Returns:
- the current playback time
-
getLength
public long getLength()
Gets the length of the media- Returns:
- the length
-
addMediaPlayerEventListener
public void addMediaPlayerEventListener(uk.co.caprica.vlcj.player.MediaPlayerEventListener mediaPlayerEventListener)
adds a media player event listener to our media player- Parameters:
mediaPlayerEventListener
- the listener to add
-
pause
public void pause()
Pauses the video playback
-
play
public void play()
Plays the current media
-
stop
public void stop()
Stops playback
-
mute
public void mute()
mutes the player
-
unmute
public void unmute()
unmutes the player
-
prepareMedia
public void prepareMedia(String absolutePath)
Pre prepares a media file for playing- Parameters:
absolutePath
- the file name and path to prepare
-
release
public void release()
releases the media player to clean up memory usage
-
isPlaying
public boolean isPlaying()
A getter for the playing state of the player- Returns:
- true if the media is playing
-
-