Class AudioAttributes

  • All Implemented Interfaces:
    java.io.Serializable

    public class AudioAttributes
    extends java.lang.Object
    implements java.io.Serializable
    Attributes controlling the audio encoding process.
    Author:
    Carlo Pelliccia
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String DIRECT_STREAM_COPY
      This value can be setted in the codec field to perform a direct stream copy, without re-encoding of the audio stream.
    • Constructor Summary

      Constructors 
      Constructor Description
      AudioAttributes()  
    • Method Summary

      Modifier and Type Method Description
      java.lang.Integer getQuality()  
      void setBitRate​(java.lang.Integer bitRate)
      Sets the bitrate value for the encoding process.
      void setChannels​(java.lang.Integer channels)
      Sets the channels value (1=mono, 2=stereo, 4=quad) for the encoding process.
      void setCodec​(java.lang.String codec)
      Sets the codec name for the encoding process.
      void setQuality​(java.lang.Integer quality)
      The audio quality value for the encoding process.
      void setSamplingRate​(java.lang.Integer samplingRate)
      Sets the samplingRate value for the encoding process.
      void setVolume​(java.lang.Integer volume)
      Sets the volume value for the encoding process.
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • DIRECT_STREAM_COPY

        public static final java.lang.String DIRECT_STREAM_COPY
        This value can be setted in the codec field to perform a direct stream copy, without re-encoding of the audio stream.
        See Also:
        Constant Field Values
    • Constructor Detail

      • AudioAttributes

        public AudioAttributes()
    • Method Detail

      • setCodec

        public void setCodec​(java.lang.String codec)
        Sets the codec name for the encoding process. If null or not specified the encoder will perform a direct stream copy. Be sure the supplied codec name is in the list returned by Encoder.getAudioEncoders(). A special value can be picked from DIRECT_STREAM_COPY.
        Parameters:
        codec - The codec name for the encoding process.
      • setBitRate

        public void setBitRate​(java.lang.Integer bitRate)
        Sets the bitrate value for the encoding process. If null or not specified a default value will be picked.
        Parameters:
        bitRate - The bitrate value for the encoding process.
      • setSamplingRate

        public void setSamplingRate​(java.lang.Integer samplingRate)
        Sets the samplingRate value for the encoding process. If null or not specified a default value will be picked.
        Parameters:
        samplingRate - The samplingRate value for the encoding process.
      • setChannels

        public void setChannels​(java.lang.Integer channels)
        Sets the channels value (1=mono, 2=stereo, 4=quad) for the encoding process. If null or not specified a default value will be picked.
        Parameters:
        channels - The channels value (1=mono, 2=stereo, 4=quad) for the encoding process.
      • setVolume

        public void setVolume​(java.lang.Integer volume)
        Sets the volume value for the encoding process. If null or not specified a default value will be picked. If 256 no volume change will be performed. volume is the "amplitude ratio" or "sound pressure level" ratio 2560 is volume=20dB The formula is dBnumber=20*lg(amplitude ratio) 128 means reducing by 50% 512 means doubling the volume
        Parameters:
        volume - The volume value for the encoding process.
      • getQuality

        public java.lang.Integer getQuality()
        Returns:
        the audio conversion quality
      • setQuality

        public void setQuality​(java.lang.Integer quality)
        The audio quality value for the encoding process. If null or not specified the ffmpeg default will be used The value depends on the choosen codec For mp3 you can see here: https://trac.ffmpeg.org/wiki/Encode/MP3 Or more general https://ffmpeg.org/ffmpeg-codecs.html
        Parameters:
        quality - the audio conversion quality to set
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object