Class: TagLib::MPEG::File

Inherits:
File
  • Object
show all
Defined in:
docs/taglib/mpeg.rb

Overview

The file class for .mp3 and other MPEG files.

Examples:

Reading a title

title = TagLib::MPEG::File.open("file.mp3") do |file|
  tag = file.tag
  tag.title
end

Constant Summary collapse

NoTags =
0x0000
ID3v1 =
0x0001
ID3v2 =
0x0002
APE =
0x0004
AllTags =
0xffff

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from File

#close

Constructor Details

#initialize(filename, read_properties = true) ⇒ File

Load an MPEG file.

Parameters:

  • filename (String)
  • read_properties (Boolean) (defaults to: true)

    if audio properties should be read



32
33
# File 'docs/taglib/mpeg.rb', line 32

def initialize(filename, read_properties=true)
end

Class Method Details

.open(filename, read_properties = true) {|file| ... } ⇒ Object

Parameters:

  • filename (String)
  • read_properties (Boolean) (defaults to: true)

    if audio properties should be read

Yields:

Returns:

  • the return value of the block

Since:

  • 0.4.0



24
25
# File 'docs/taglib/mpeg.rb', line 24

def self.open(filename, read_properties=true)
end

Instance Method Details

#audio_propertiesTagLib::MPEG::Properties

Returns audio properties.



62
63
# File 'docs/taglib/mpeg.rb', line 62

def audio_properties
end

#id3v1_tag(create = false) ⇒ TagLib::ID3v1::Tag?

Returns the ID3v1 tag.

Parameters:

  • create (defaults to: false)

    if a new tag should be created when none exists

Returns:



48
49
# File 'docs/taglib/mpeg.rb', line 48

def id3v1_tag(create=false)
end

#id3v2_tag(create = false) ⇒ TagLib::ID3v2::Tag?

Returns the ID3v2 tag.

Parameters:

  • create (defaults to: false)

    if a new tag should be created when none exists

Returns:



56
57
# File 'docs/taglib/mpeg.rb', line 56

def id3v2_tag(create=false)
end

#save(tags = TagLib::MPEG::File::AllTags, strip_others = true) ⇒ Boolean

Save the file and the associated tags.

Parameters:

  • tags (Integer) (defaults to: TagLib::MPEG::File::AllTags)

    The tag types to save (see constants), e.g. ID3v2. To specify more than one tag type, or them together using |, e.g. TagLib::MPEG::File::ID3v1 | TagLib::MPEG::File::ID3v2.

  • strip_others (Boolean) (defaults to: true)

    true if tag types other than the specified ones should be stripped from the file

Returns:

  • (Boolean)

    whether saving was successful



76
77
# File 'docs/taglib/mpeg.rb', line 76

def save(tags=TagLib::MPEG::File::AllTags, strip_others=true)
end

#strip(tags = TagLib::MPEG::File::AllTags) ⇒ Boolean

Strip the specified tags from the file. Note that this directly updates the file, a call to save afterwards is not necessary (closing the file is necessary as always, though).

Parameters:

  • tags (Integer) (defaults to: TagLib::MPEG::File::AllTags)

    The tag types to strip (see constants), e.g. ID3v2. To specify more than one tag type, or them together using |, e.g. TagLib::MPEG::File::ID3v1 | TagLib::MPEG::File::ID3v2.

Returns:

  • (Boolean)

    whether stripping was successful



89
90
# File 'docs/taglib/mpeg.rb', line 89

def strip(tags=TagLib::MPEG::File::AllTags)
end

#tagTagLib::Tag?

Returns a tag that contains attributes from both the ID3v2 and ID3v1 tag, with ID3v2 attributes having precendence.

Returns:



40
41
# File 'docs/taglib/mpeg.rb', line 40

def tag
end