public class FFMpegWrapper extends Object
Constructor and Description |
---|
FFMpegWrapper(File file)
Creates a wrapper to run ffmpeg for the given video file.
|
FFMpegWrapper(File file,
File workingDir)
Creates a wrapper to run ffmpeg for the given video file.
|
Modifier and Type | Method and Description |
---|---|
static FFMpegWrapper |
fromProfile(File inputFile,
VideoProfile profile,
File workingDir)
Turns a video profile into a FFMpegWrapper.
|
File |
getClip(double startTime,
double endTime,
String mimeType)
Create clip from the video.
|
StringBuilder |
getFFMpegOutput() |
BufferedImage |
getFilmStrip(int frames,
int width) |
long |
getInputDuration() |
Dimension |
getInputSize() |
String |
getOutputExtension() |
String |
getOutputMimetype() |
Dimension |
getOutputSize() |
String |
getProfileName() |
String |
getRenditionSelector() |
BufferedImage[] |
getThumbnails(int thumbnails,
int start)
Create thumbnails from the video.
|
File |
join(File other,
String name) |
void |
setAudioBitrate(int audioBitrate) |
void |
setAudioChannels(int i) |
void |
setAudioCodec(String audioCodec) |
void |
setAudioSamplingRate(int audioSamplingRate) |
void |
setBitrate(int bitrate)
Sets the output video bitrate in kbits/second
|
void |
setBitrateTolerance(int i) |
void |
setClipDuration(long i) |
void |
setCropArea(Rectangle rectangle) |
void |
setCustomFlags(String[] flags) |
void |
setDuration(long duration) |
void |
setExecutableLocator(ExecutableLocator locator) |
void |
setFitInside() |
void |
setFitInside(boolean fitInside) |
void |
setFps(String fps) |
void |
setInput(File f) |
void |
setInputsize(Dimension inputsize) |
void |
setLetterbox() |
void |
setLetterbox(boolean letterbox) |
void |
setOutputExtension(String extension) |
void |
setOutputMimetype(String outputMimetype) |
void |
setOutputSize(Dimension dimension) |
void |
setPreset(String preset) |
void |
setProfileName(String profileName) |
void |
setRenditionSelector(String renditionSelector) |
void |
setStartTime(long i) |
void |
setTwoPass() |
void |
setTwoPass(boolean twoPass) |
void |
setVideoCodec(String videoCodec) |
File |
transcode() |
File |
transcode(String extension) |
File |
trim(String name) |
public FFMpegWrapper(File file)
file
- video file to call ffmpeg withpublic FFMpegWrapper(File file, File workingDir)
FFMpegWrapper
as
ffmpeg's temp file name in 2-pass encoding is hard coded in the ffmpeg
build, which causes problem while running simultaneous multiple
encodings. Even you use -passlogfile option, x264_2pass.log file name is
hard coded in the older ffmpeg builds. For more details please refer to
bug:42346.file
- video file to call ffmpeg withworkingDir
- a working directory for ffmpeg; if null
,
the current working directory of the JVM is usedpublic String getOutputExtension()
public void setOutputExtension(String extension)
public StringBuilder getFFMpegOutput()
public String getProfileName()
public void setProfileName(String profileName)
public String getRenditionSelector()
public void setRenditionSelector(String renditionSelector)
public String getOutputMimetype()
public void setOutputMimetype(String outputMimetype)
public void setTwoPass()
public void setTwoPass(boolean twoPass)
public void setPreset(String preset)
public void setAudioSamplingRate(int audioSamplingRate)
public void setAudioBitrate(int audioBitrate)
public void setVideoCodec(String videoCodec)
public void setAudioCodec(String audioCodec)
public void setBitrate(int bitrate)
bitrate
- The bitratepublic void setInput(File f)
public void setExecutableLocator(ExecutableLocator locator)
public void setOutputSize(Dimension dimension)
public Dimension getOutputSize()
public long getInputDuration()
public Dimension getInputSize()
public BufferedImage[] getThumbnails(int thumbnails, int start)
thumbnails
- The number of desired thumbnails.start
- The start position in seconds from where to take the first
thumbnail.public File getClip(double startTime, double endTime, String mimeType)
startTime
- startTime of the clip.endTime
- The end position in seconds of the clip.mimeType
- Mime type for the clip.public File join(File other, String name) throws IOException
IOException
public File trim(String name) throws IOException
IOException
public File transcode() throws IOException
IOException
public File transcode(String extension) throws IOException
IOException
public void setLetterbox()
public void setLetterbox(boolean letterbox)
public void setFitInside()
public void setFitInside(boolean fitInside)
public BufferedImage getFilmStrip(int frames, int width)
public void setFps(String fps)
public void setBitrateTolerance(int i)
public void setAudioChannels(int i)
public void setCustomFlags(String[] flags)
public void setStartTime(long i)
public void setClipDuration(long i)
public void setCropArea(Rectangle rectangle)
public void setInputsize(Dimension inputsize)
public void setDuration(long duration)
public static FFMpegWrapper fromProfile(File inputFile, VideoProfile profile, File workingDir)
inputFile
- property fileprofile
- can be the cq:Page or jcr:content node of a profile pageworkingDir
- working directory for ffmpegCopyright © 2010 - 2020 Adobe. All Rights Reserved