MP3-Tag

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

  Use %{mP} instead of `Audio' in the -x output.
  Make -x=output of MP3-related data conditional on its presence (still wrong
    since MP3::Info can return such data for non-MP3 files too XXX)

typeset_audio_dir:
	new option -r
	Make haveLyrics/haveAPIC symbols take less space
	Macroize pre/postSectionSkip, make it and \columnsep font-size dependent
	Slightly more docs in the generated code on grid/non-grid typesetting
	Slightly more docs

Release Name: 1.11
====================

ImageExifTool.pm: new handler (a very minimal implementation).

Tag.pm: support for ImageExifTool.pm
  (problems: deleting frames is not noticed by ExifTool, so the field can be
     "revived" by update_tags(), so we disable id3 in ExifTool [XXX: must be
     made conditional on the list of  handlers]; genre-->None massaged to '')
             'NumColors' => 'Use BitDepth'???  
  rename aspect() to aspect_ratio() (undocumented)
  new function aspect_ratio3() rounds to 3 decimals in the fractional part
  map %{aR} to aspect_ratio3()  [instead of aspect()]
  new method bit_depth() (for images; exact semantic [8 or 24?!] not clear)  (undocumented)
  new interpolation %{bD} for bit_depth
  new method _duration() (for very few formats only???) (undocumented)
  caching MP3::Info data avoid extraneous calls
  Make duration-fetch methods try _duration() too.
  mpeg_layer_roman(), frames_padded_YN(), is_copyrighted_YN() now may return ''
    if MP3::Info fails.
  Allow for the rest of 1-char escapes NvLrqQSmsCpouMH to be conditioned and
    %=X-ed.
  //o-ptimise RExes.

ID3v2.pm: could modify config('default_language').

mp3info2: make MP3-specific fields optional
  emit %wx%h for images and video (and append bit_depth if present)

Release Name: 1.10
====================

Bump the version number to 1.10 to sync with mp3info2.

Tag.pm: allow %=n to match against 1 if %n is 01.
  new methods extension_is(), can_write(), can_write_or_die(), die_cant_write(),
    writable_by_extension().
  new methods (require Image::Size) width(), height(), img_type(), mime_type(),
    aspect(). (undocumented)
  new interpolation escapes %w %h %{iT} %{mT} %{aR} for these methods.
  new configuration variables: `is_writable' defaults to writable_by_extension
    (older versions behaved as if it is 1);  `writable_extensions' to
       mp3 mp2 id3 tag ogg mpg mpeg mp4 aiff flac ape ram mpc
  update_tags() checks for can_write().

cddb.tmp was omitted from distribution (==> test failure).

ID3v2.pm: the code to treat compressed fields was completely busted.
	  (Still not tested a lot...)
  Now always write UTF-16 as `UTF-16LE with BOM' to cowtow to M$'s bugs
	(must disable: triggers unsync...; set $ENV{MP3TAG_USE_UTF_16LE}
	 to TRUE to enable).

Music_Fields.pm: could give `uninitialized' warning in presence of
	one-word person names in the tables.

ImageSize.pm: new handler.

mp3info2: -d was busted by the repeated-option logic.
  allow a repeated -u to force update.

typeset_audio_dir: if one of the arguments was 0, -e could fail.
  Decrease default min-gap before [year] from 0.75em to 0.65em (looks better).

Release Name: 1.00
====================

Bump all the version numbers to 1.00 (except Normalize::Text::Music_Fields).

Move code to a ./lib subdirectory.  (Allows auto-install of transliterate_cp1251.)

Music_Normalize_Fields.pm: renamed to Normalize::Text::Music_Fields.pm
  Now check environment variable MUSIC_FIELDS_PATH and/or ~/.music_fields/*.
  name_for_field_normalization method is used to choose "composer name".

CDDB_File.pm: minor changes to the docs.

Cue.pm: new sub-module.

Tag.pm: allow access to Cue, and customization of the corresponding encoding.
  Allow conditional interpolation on user variables (check emptiness) %{U1:\n}.
  New configuration variable and method `name_for_field_normalization'.

typeset_audio_dir: Major simplification of user interface, better docs.
  Can generate short+long-type listings itself (two-pass so far...).
  More consistent ornaments in the generated files.
  Auto-generate the file *_titles.tex (used as the title of the listing).
  Move common code to file *_common.tex.
  New options -N, -P, -F.
  Document option -L.
  Directory list defaults to ".".
  Indicator of presence of APIC frames.
  Lyrics symbols explanation emitted correctly.
  Allow duplication of comment-like info and a part of the main record title
    (emphasizes this part of the title).
  Document known possible problems during typesetting.

mp3info2:
  Since Normalize::Text::Music_Fields is always loadable now, one
    uses a different trigger sequence to load this module (environment
    variable and a directory ~/.music_fields are checked).
  With -e N, N in 1..3, do not translate the non-option ARGV
    (could conflict with interation with filesystems).
  New bit 0x4 of -e N used to influence translation of non-option ARGV.
  When @ARGV is re-encoded: translate back to 8-bit whatever is possible.

ID3v2.pm: when ordering frames in generated tags, sort APIC frames
  at the end (since the simplest reason for unsync-related bugs in other
  programs is misparse of APIC frames, and it is the *consequent* frames
  which are busted, no non-APIC frames would be affected.  (This is



( run in 1.178 second using v1.01-cache-2.11-cpan-39bf76dae61 )