Sha256: 39d81ba7cc8e871a594ce2e5a0724d30efa789b023f57dce4bcf2d0dc9f471e6

Contents?: true

Size: 1.02 KB

Versions: 1

Compression:

Stored size: 1.02 KB

Contents

require 'mxfinfo.so'
require 'mxfinfo/version.rb'

module MXFInfo
  def self.scan(path)
    io = IO.new(2)
    stderr = io.dup
    io.reopen(IO::NULL)
    InfoObject.new path
  rescue => e
    io.reopen stderr
    stderr.close
    raise e
  end

  class InfoObject
    alias_method :videotracks, :num_video_tracks
    alias_method :v_tracks, :num_video_tracks
    alias_method :video_tracks, :num_video_tracks
    alias_method :audiotracks, :num_audio_tracks
    alias_method :audio_tracks, :num_audio_tracks
    alias_method :a_tracks, :num_audio_tracks
    alias_method :clip_created_at, :clip_created
    alias_method :essence_label, :essence_container_label
    alias_method :t_number, :track_number
    alias_method :tracknumber, :track_number
    alias_method :channelcount, :channel_count
    alias_method :c_count, :channel_count
    alias_method :file_package_uid, :file_source_package_uid
    alias_method :clip_edit_rate, :project_edit_rate

    def render_file?
      physical_package_name == "Precompute Source Mob"
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mxfinfo-0.1.2 lib/mxfinfo.rb