Sha256: 8c747f1598271dd9694d84bfc630e7a4744eab26faf961ec5617fac0cc93d778

Contents?: true

Size: 1.13 KB

Versions: 25

Compression:

Stored size: 1.13 KB

Contents

module FormatParser
  class Audio
    include FormatParser::AttributesJSON

    NATURE = :audio

    # Title of the audio
    attr_accessor :title

    # Album of the audio
    attr_accessor :album

    # Artist of the audio
    attr_accessor :artist

    # Type of the file (e.g :mp3)
    attr_accessor :format

    # The number of audio channels for sound files that are muxed
    # and for video files with embedded sound
    attr_accessor :num_audio_channels

    # The sample rate of the audio file in hertz, as an Integer
    attr_accessor :audio_sample_rate_hz

    # Duration of the media object (be it audio or video)
    # in seconds, as a Float
    attr_accessor :media_duration_seconds

    # Duration of the media object in addressable frames or samples,
    # as an Integer
    attr_accessor :media_duration_frames

    # If a parser wants to provide any extra information to the caller
    # it can be placed here
    attr_accessor :intrinsics

    # Only permits assignments via defined accessors
    def initialize(**attributes)
      attributes.map { |(k, v)| public_send("#{k}=", v) }
    end

    def nature
      NATURE
    end
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
format_parser-0.26.0 lib/audio.rb
format_parser-0.25.6 lib/audio.rb
format_parser-0.25.5 lib/audio.rb
format_parser-0.25.4 lib/audio.rb
format_parser-0.25.3 lib/audio.rb
format_parser-0.25.2 lib/audio.rb
format_parser-0.25.1 lib/audio.rb
format_parser-0.25.0 lib/audio.rb
format_parser-0.24.2 lib/audio.rb
format_parser-0.24.1 lib/audio.rb
format_parser-0.24.0 lib/audio.rb
format_parser-0.23.1 lib/audio.rb
format_parser-0.23.0 lib/audio.rb
format_parser-0.22.1 lib/audio.rb
format_parser-0.22.0 lib/audio.rb
format_parser-0.21.1 lib/audio.rb
format_parser-0.21.0 lib/audio.rb
format_parser-0.20.1 lib/audio.rb
format_parser-0.20.0 lib/audio.rb
format_parser-0.19.0 lib/audio.rb