The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

AtomicParsley::Command - Interface to the Atomic Parsley command

VERSION

version 1.130410

SYNOPSIS

  my $ap = AtomicParsley::Command->new({
    ap => '/path/to/AtomicParsley', # will die if not found
    verbose => 1,
  });
  
  # read tags from a file
  my $tags = $ap->read_tags( '/path/to/mp4' );
  
  # write tags to a file
  my $path = $ap->write_tags( '/path/to/mp4', $tags, 1 );

DESCRIPTION

This is an interface to the AtomicParsley command.

AtomicParsley is a lightweight command line program for reading, parsing and setting metadata into MPEG-4 files. For more information see https://bitbucket.org/wez/atomicparsley.

METHODS

new ( %args )

Creates a new AtomicParsley::Command object. Takes the following arguments:

  • ap - the path to the AtomicParsley command. Defaults to 'AtomicParsley' (assumes its on your PATH).

  • verbose - runs verbosely. (TODO)

read_tags( $path )

Read the meta tags from a file and returns a AtomicParsley::Command::Tags object.

write_tags( $path, $tags, $replace )

Writes the tags to a mp4 file.

$tags is a AtomicParsley::Command::Tags object.

If $replace is true, the existing file will be replaced with the new, tagged file. Otherwise, the tagged file will be a temp file, with the existing file untouched.

Returns the path on success.

ISSUES

  • Doesn't run verbosely.

  • Doesn't load all the "advisory" values for an mp4 file.

  • The following tags have not been implemented:

      * artwork
      * compilation
      * podcastFlag
      * podcastURL
      * podcastGUID
      * purchaseDate
      * gapless

UPDATING

If you are updating, ensure you use the latest version of AtomicParsley from https://bitbucket.org/wez/atomicparsley.

SEE ALSO

AUTHOR

Andrew Jones <andrew@arjones.co.uk>

COPYRIGHT AND LICENSE

This software is copyright (c) 2013 by Andrew Jones.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.