Package net.bramp.ffmpeg.builder
Class FFmpegOutputBuilder
- java.lang.Object
-
- net.bramp.ffmpeg.builder.AbstractFFmpegStreamBuilder<FFmpegOutputBuilder>
-
- net.bramp.ffmpeg.builder.FFmpegOutputBuilder
-
public class FFmpegOutputBuilder extends AbstractFFmpegStreamBuilder<FFmpegOutputBuilder>
Builds a representation of a single output/encoding setting
-
-
Field Summary
Fields Modifier and Type Field Description longaudio_bit_rateStringaudio_bit_stream_filterStringaudio_filterDoubleaudio_qualityStringaudio_sample_formatDoubleconstantRateFactorlongvideo_bit_rateStringvideo_bit_stream_filterStringvideo_filterStringvideo_presetDoublevideo_quality-
Fields inherited from class net.bramp.ffmpeg.builder.AbstractFFmpegStreamBuilder
audio_channels, audio_codec, audio_enabled, audio_preset, audio_sample_rate, duration, extra_args, filename, format, meta_tags, pass_padding_bitrate, preset, presetFilename, startOffset, strict, subtitle_enabled, subtitle_preset, targetSize, throwWarnings, uri, video_codec, video_copyinkf, video_enabled, video_frame_rate, video_frames, video_height, video_movflags, video_pixel_format, video_size, video_width
-
-
Constructor Summary
Constructors Modifier Constructor Description FFmpegOutputBuilder()protectedFFmpegOutputBuilder(FFmpegBuilder parent, String filename)protectedFFmpegOutputBuilder(FFmpegBuilder parent, URI uri)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected voidaddAudioFlags(com.google.common.collect.ImmutableList.Builder<String> args)protected voidaddGlobalFlags(FFmpegBuilder parent, com.google.common.collect.ImmutableList.Builder<String> args)protected voidaddVideoFlags(FFmpegBuilder parent, com.google.common.collect.ImmutableList.Builder<String> args)protected List<String>build(int pass)protected List<String>build(FFmpegBuilder parent, int pass)Builds the argumentsEncodingOptionsbuildOptions()Returns a representation of this Builder that can be safely serialised.protected static StringformatDecimalInteger(double d)Returns a double formatted as a string.protected FFmpegOutputBuildergetThis()FFmpegOutputBuildersetAudioBitDepth(String bit_depth)Deprecated.usesetAudioSampleFormat(java.lang.String)instead.FFmpegOutputBuildersetAudioBitRate(long bit_rate)Sets the Audio bit rateFFmpegOutputBuildersetAudioBitStreamFilter(String filter)FFmpegOutputBuildersetAudioFilter(String filter)Sets Audio FilterFFmpegOutputBuildersetAudioQuality(double quality)FFmpegOutputBuildersetAudioSampleFormat(String sample_format)Sets the audio sample format.FFmpegOutputBuildersetConstantRateFactor(double factor)FFmpegOutputBuildersetVideoBitRate(long bit_rate)FFmpegOutputBuildersetVideoBitStreamFilter(String filter)FFmpegOutputBuildersetVideoFilter(String filter)Sets Video FilterFFmpegOutputBuildersetVideoPreset(String preset)Sets a video preset to use.FFmpegOutputBuildersetVideoQuality(double quality)-
Methods inherited from class net.bramp.ffmpeg.builder.AbstractFFmpegStreamBuilder
addExtraArgs, addMetaTag, addMetaTag, disableAudio, disableSubtitle, disableVideo, done, getFilename, getUri, isValidSize, setAudioChannels, setAudioCodec, setAudioPreset, setAudioSampleRate, setDuration, setFilename, setFormat, setFrames, setPassPaddingBitrate, setPreset, setPresetFilename, setStartOffset, setStrict, setSubtitlePreset, setTargetSize, setUri, setVideoCodec, setVideoCopyInkf, setVideoFrameRate, setVideoFrameRate, setVideoFrameRate, setVideoHeight, setVideoMovFlags, setVideoPixelFormat, setVideoResolution, setVideoResolution, setVideoWidth, useOptions, useOptions, useOptions, useOptions
-
-
-
-
Field Detail
-
constantRateFactor
public Double constantRateFactor
-
audio_sample_format
public String audio_sample_format
-
audio_bit_rate
public long audio_bit_rate
-
audio_quality
public Double audio_quality
-
audio_bit_stream_filter
public String audio_bit_stream_filter
-
audio_filter
public String audio_filter
-
video_bit_rate
public long video_bit_rate
-
video_quality
public Double video_quality
-
video_preset
public String video_preset
-
video_filter
public String video_filter
-
video_bit_stream_filter
public String video_bit_stream_filter
-
-
Constructor Detail
-
FFmpegOutputBuilder
public FFmpegOutputBuilder()
-
FFmpegOutputBuilder
protected FFmpegOutputBuilder(FFmpegBuilder parent, String filename)
-
FFmpegOutputBuilder
protected FFmpegOutputBuilder(FFmpegBuilder parent, URI uri)
-
-
Method Detail
-
setConstantRateFactor
public FFmpegOutputBuilder setConstantRateFactor(double factor)
-
setVideoBitRate
public FFmpegOutputBuilder setVideoBitRate(long bit_rate)
-
setVideoQuality
public FFmpegOutputBuilder setVideoQuality(double quality)
-
setVideoBitStreamFilter
public FFmpegOutputBuilder setVideoBitStreamFilter(String filter)
-
setVideoPreset
public FFmpegOutputBuilder setVideoPreset(String preset)
Sets a video preset to use.Uses `-vpre`.
- Parameters:
preset- the preset- Returns:
- this
-
setVideoFilter
public FFmpegOutputBuilder setVideoFilter(String filter)
Sets Video FilterTODO Build a fluent Filter builder
- Parameters:
filter- The video filter.- Returns:
- this
-
setAudioBitDepth
@Deprecated public FFmpegOutputBuilder setAudioBitDepth(String bit_depth)
Deprecated.usesetAudioSampleFormat(java.lang.String)instead.Sets the audio bit depth.- Parameters:
bit_depth- The sample format, one of the net.bramp.ffmpeg.FFmpeg#AUDIO_DEPTH_* constants.- Returns:
- this
- See Also:
FFmpeg.AUDIO_DEPTH_U8,FFmpeg.AUDIO_DEPTH_S16,FFmpeg.AUDIO_DEPTH_S32,FFmpeg.AUDIO_DEPTH_FLT,FFmpeg.AUDIO_DEPTH_DBL
-
setAudioSampleFormat
public FFmpegOutputBuilder setAudioSampleFormat(String sample_format)
Sets the audio sample format.- Parameters:
sample_format- The sample format, one of the net.bramp.ffmpeg.FFmpeg#AUDIO_FORMAT_* constants.- Returns:
- this
- See Also:
FFmpeg.AUDIO_FORMAT_U8,FFmpeg.AUDIO_FORMAT_S16,FFmpeg.AUDIO_FORMAT_S32,FFmpeg.AUDIO_FORMAT_FLT,FFmpeg.AUDIO_FORMAT_DBL
-
setAudioBitRate
public FFmpegOutputBuilder setAudioBitRate(long bit_rate)
Sets the Audio bit rate- Parameters:
bit_rate- Audio bitrate in bits per second.- Returns:
- this
-
setAudioQuality
public FFmpegOutputBuilder setAudioQuality(double quality)
-
setAudioBitStreamFilter
public FFmpegOutputBuilder setAudioBitStreamFilter(String filter)
-
setAudioFilter
public FFmpegOutputBuilder setAudioFilter(String filter)
Sets Audio FilterTODO Build a fluent Filter builder
- Parameters:
filter- The audio filter.- Returns:
- this
-
buildOptions
@CheckReturnValue public EncodingOptions buildOptions()
Returns a representation of this Builder that can be safely serialised.NOTE: This method is horribly out of date, and its use should be rethought.
- Specified by:
buildOptionsin classAbstractFFmpegStreamBuilder<FFmpegOutputBuilder>- Returns:
- A new EncodingOptions capturing this Builder's state
-
build
@CheckReturnValue protected List<String> build(int pass)
- Overrides:
buildin classAbstractFFmpegStreamBuilder<FFmpegOutputBuilder>
-
build
@CheckReturnValue protected List<String> build(FFmpegBuilder parent, int pass)
Builds the arguments- Overrides:
buildin classAbstractFFmpegStreamBuilder<FFmpegOutputBuilder>- Parameters:
parent- The parent FFmpegBuilderpass- The particular pass. For one-pass this value will be zero, for multi-pass, it will be 1 for the first pass, 2 for the second, and so on.- Returns:
- The arguments
-
formatDecimalInteger
protected static String formatDecimalInteger(double d)
Returns a double formatted as a string. If the double is an integer, then trailing zeros are striped.- Parameters:
d- the double to format.- Returns:
- The formatted double.
-
addGlobalFlags
protected void addGlobalFlags(FFmpegBuilder parent, com.google.common.collect.ImmutableList.Builder<String> args)
- Overrides:
addGlobalFlagsin classAbstractFFmpegStreamBuilder<FFmpegOutputBuilder>
-
addVideoFlags
protected void addVideoFlags(FFmpegBuilder parent, com.google.common.collect.ImmutableList.Builder<String> args)
- Overrides:
addVideoFlagsin classAbstractFFmpegStreamBuilder<FFmpegOutputBuilder>
-
addAudioFlags
protected void addAudioFlags(com.google.common.collect.ImmutableList.Builder<String> args)
- Overrides:
addAudioFlagsin classAbstractFFmpegStreamBuilder<FFmpegOutputBuilder>
-
getThis
@CheckReturnValue protected FFmpegOutputBuilder getThis()
- Specified by:
getThisin classAbstractFFmpegStreamBuilder<FFmpegOutputBuilder>
-
-