public class FFmpegFrameGrabber extends FrameGrabber
FrameGrabber.Array, FrameGrabber.Exception, FrameGrabber.ImageMode, FrameGrabber.PropertyEditor, FrameGrabber.SampleModeaspectRatio, audioBitrate, audioChannels, audioCodec, audioMetadata, audioOptions, audioStream, bpp, deinterlace, format, frameNumber, frameRate, gamma, imageHeight, imageMode, imageWidth, list, maxDelay, metadata, numBuffers, options, pixelFormat, sampleFormat, sampleMode, sampleRate, SENSOR_PATTERN_BGGR, SENSOR_PATTERN_GBRG, SENSOR_PATTERN_GRBG, SENSOR_PATTERN_RGGB, sensorPattern, timeout, timestamp, triggerMode, videoBitrate, videoCodec, videoMetadata, videoOptions, videoStream| Constructor and Description |
|---|
FFmpegFrameGrabber(File file) |
FFmpegFrameGrabber(InputStream inputStream) |
FFmpegFrameGrabber(String filename) |
| Modifier and Type | Method and Description |
|---|---|
static FFmpegFrameGrabber |
createDefault(File deviceFile) |
static FFmpegFrameGrabber |
createDefault(int deviceNumber) |
static FFmpegFrameGrabber |
createDefault(String devicePath) |
protected void |
finalize() |
double |
getAspectRatio() |
int |
getAudioBitrate() |
int |
getAudioChannels() |
int |
getAudioCodec() |
double |
getAudioFrameRate()
Estimation of audio frames per second
|
String |
getAudioMetadata(String key) |
static String[] |
getDeviceDescriptions() |
String |
getFormat() |
avformat.AVFormatContext |
getFormatContext() |
double |
getFrameRate()
Returns
getVideoFrameRate() |
double |
getGamma() |
int |
getImageHeight() |
int |
getImageWidth() |
int |
getLengthInAudioFrames() |
int |
getLengthInFrames()
Returns
getLengthInVideoFrames() |
long |
getLengthInTime() |
int |
getLengthInVideoFrames()
Returns
(int) Math.round(getLengthInTime() * getFrameRate() / 1000000L), which is an approximation in general. |
String |
getMetadata(String key) |
int |
getPixelFormat() |
int |
getSampleFormat() |
int |
getSampleRate() |
int |
getVideoBitrate() |
int |
getVideoCodec() |
double |
getVideoFrameRate() |
String |
getVideoMetadata(String key) |
Frame |
grab()
Each call to grab stores the new image in the memory address for the previously returned frame.
|
Frame |
grabFrame(boolean doAudio,
boolean doVideo,
boolean doProcessing,
boolean keyFrames) |
Frame |
grabImage() |
Frame |
grabKeyFrame() |
avcodec.AVPacket |
grabPacket() |
Frame |
grabSamples() |
boolean |
hasAudio()
Is there an audio stream?
|
boolean |
hasVideo()
Is there a video stream?
|
void |
release() |
void |
setAudioFrameNumber(int frameNumber)
if there is audio stream tries to seek to audio frame with corresponding timestamp
ignoring otherwise
|
void |
setAudioTimestamp(long timestamp)
setTimestamp with resulting audio frame type
|
void |
setFrameNumber(int frameNumber)
default override of super.setFrameNumber implies setting
of a video frame having that number
|
void |
setTimestamp(long timestamp)
setTimestamp with disregard of the resulting frame type, video or audio
|
void |
setVideoFrameNumber(int frameNumber)
if there is video stream tries to seek to video frame with corresponding timestamp
otherwise sets super.frameNumber only because frameRate==0 if there is no video stream
|
void |
setVideoTimestamp(long timestamp)
setTimestamp with resulting video frame type
|
void |
start() |
void |
stop() |
void |
trigger() |
static void |
tryLoad() |
close, create, create, create, create, createArray, delayedGrab, flush, get, getAudioMetadata, getAudioOption, getAudioOptions, getAudioStream, getBitsPerPixel, getDefault, getDelayedFrame, getDelayedTime, getFrameNumber, getImageMode, getMaxDelay, getMetadata, getNumBuffers, getOption, getOptions, getSampleMode, getSensorPattern, getTimeout, getTimestamp, getVideoMetadata, getVideoOption, getVideoOptions, getVideoStream, grabFrame, init, isDeinterlace, isTriggerMode, restart, setAspectRatio, setAudioBitrate, setAudioChannels, setAudioCodec, setAudioMetadata, setAudioMetadata, setAudioOption, setAudioOptions, setAudioStream, setBitsPerPixel, setDeinterlace, setFormat, setFrameRate, setGamma, setImageHeight, setImageMode, setImageWidth, setMaxDelay, setMetadata, setMetadata, setNumBuffers, setOption, setOptions, setPixelFormat, setSampleFormat, setSampleMode, setSampleRate, setSensorPattern, setTimeout, setTriggerMode, setVideoBitrate, setVideoCodec, setVideoMetadata, setVideoMetadata, setVideoOption, setVideoOptions, setVideoStreampublic FFmpegFrameGrabber(File file)
public FFmpegFrameGrabber(String filename)
public FFmpegFrameGrabber(InputStream inputStream)
public static String[] getDeviceDescriptions() throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic static FFmpegFrameGrabber createDefault(File deviceFile) throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic static FFmpegFrameGrabber createDefault(String devicePath) throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic static FFmpegFrameGrabber createDefault(int deviceNumber) throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic static void tryLoad()
throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic void release()
throws FrameGrabber.Exception
release in class FrameGrabberFrameGrabber.Exceptionprotected void finalize()
throws Throwable
public boolean hasVideo()
video_st!=null;public boolean hasAudio()
audio_st!=null;public double getGamma()
getGamma in class FrameGrabberpublic String getFormat()
getFormat in class FrameGrabberpublic int getImageWidth()
getImageWidth in class FrameGrabberpublic int getImageHeight()
getImageHeight in class FrameGrabberpublic int getAudioChannels()
getAudioChannels in class FrameGrabberpublic int getPixelFormat()
getPixelFormat in class FrameGrabberpublic int getVideoCodec()
getVideoCodec in class FrameGrabberpublic int getVideoBitrate()
getVideoBitrate in class FrameGrabberpublic double getAspectRatio()
getAspectRatio in class FrameGrabberpublic double getFrameRate()
getVideoFrameRate()getFrameRate in class FrameGrabberpublic double getAudioFrameRate()
public double getVideoFrameRate()
public int getAudioCodec()
getAudioCodec in class FrameGrabberpublic int getAudioBitrate()
getAudioBitrate in class FrameGrabberpublic int getSampleFormat()
getSampleFormat in class FrameGrabberpublic int getSampleRate()
getSampleRate in class FrameGrabberpublic String getMetadata(String key)
getMetadata in class FrameGrabberpublic String getVideoMetadata(String key)
getVideoMetadata in class FrameGrabberpublic String getAudioMetadata(String key)
getAudioMetadata in class FrameGrabberpublic void setFrameNumber(int frameNumber)
throws FrameGrabber.Exception
setFrameNumber in class FrameGrabberFrameGrabber.Exceptionpublic void setVideoFrameNumber(int frameNumber)
throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic void setAudioFrameNumber(int frameNumber)
throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic void setTimestamp(long timestamp)
throws FrameGrabber.Exception
setTimestamp in class FrameGrabberFrameGrabber.Exceptionpublic void setVideoTimestamp(long timestamp)
throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic void setAudioTimestamp(long timestamp)
throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic int getLengthInFrames()
getLengthInVideoFrames()getLengthInFrames in class FrameGrabberpublic long getLengthInTime()
getLengthInTime in class FrameGrabberpublic int getLengthInVideoFrames()
(int) Math.round(getLengthInTime() * getFrameRate() / 1000000L), which is an approximation in general.public int getLengthInAudioFrames()
public avformat.AVFormatContext getFormatContext()
public void start()
throws FrameGrabber.Exception
start in class FrameGrabberFrameGrabber.Exceptionpublic void stop()
throws FrameGrabber.Exception
stop in class FrameGrabberFrameGrabber.Exceptionpublic void trigger()
throws FrameGrabber.Exception
trigger in class FrameGrabberFrameGrabber.Exceptionpublic Frame grab() throws FrameGrabber.Exception
FrameGrabber
grabber.grab() == grabber.grab()
Frame.clone() the
returned frame as the next call to grab will overwrite your existing image's memory.
grab in class FrameGrabberFrameGrabber.Exceptionpublic Frame grabImage() throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic Frame grabSamples() throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic Frame grabKeyFrame() throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic Frame grabFrame(boolean doAudio, boolean doVideo, boolean doProcessing, boolean keyFrames) throws FrameGrabber.Exception
FrameGrabber.Exceptionpublic avcodec.AVPacket grabPacket() throws FrameGrabber.Exception
FrameGrabber.ExceptionCopyright © 2018. All rights reserved.