Main > Free Download Search >

Free id3v2 0.9708 software for linux

id3v2 0.9708

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 76
MP3::Tag::ID3v2 0.9708

MP3::Tag::ID3v2 0.9708


MP3::Tag::ID3v2 is a Read / Write ID3v2.x.y tags from mp3 audio files. more>>
MP3::Tag::ID3v2 is a Read / Write ID3v2.x.y tags from mp3 audio files.

SYNOPSIS

MP3::Tag::ID3v2 supports * Reading of ID3v2.2.0 and ID3v2.3.0 tags (some ID3v2.4.0 frames too) * Writing of ID3v2.3.0 tags

MP3::Tag::ID3v2 is designed to be called from the MP3::Tag module.

use MP3::Tag;
$mp3 = MP3::Tag->new($filename);

# read an existing tag
$mp3->get_tags();
$id3v2 = $mp3->{ID3v2} if exists $mp3->{ID3v2};

# or create a new tag
$id3v2 = $mp3->new_tag("ID3v2");

See MP3::Tag for information on the above used functions.

* Reading a tag

$frameIDs_hash = $id3v2->get_frame_ids(truename);

foreach my $frame (keys %$frameIDs_hash) {
my ($name, @info) = $id3v2->get_frame($frame);
for my $info (@info) {
if (ref $info) {
print "$name ($frame):n";
while(my ($key,$val)=each %$info) {
print " * $key => $valn";
}
} else {
print "$name: $infon";
}
}
}
* Adding / Changing / Removing / Writing a tag
$id3v2->add_frame("TIT2", "Title of the song");
$id3v2->change_frame("TALB","Greatest Album");
$id3v2->remove_frame("TLAN");
$id3v2->write_tag();
* Removing the whole tag
$id3v2->remove_tag();
* Get information about supported frames
%tags = $id3v2->supported_frames();
while (($fname, $longname) = each %tags) {
print "$fname $longname: ",
join(", ", @{$id3v2->what_data($fname)}), "n";
}

<<less
Download (0.17MB)
Added: 2006-11-07 License: Perl Artistic License Price:
1091 downloads
Kid3 0.9

Kid3 0.9


Kid3 is a program for easily tag multiple MP3 files. more>>
If you want to easily tag multiple MP3 files (e.g. full albums) without typing the same information again and again and have control over both ID3v1 and ID3v2 tags, then Kid3 is the program you are looking for.
Main features:
- Edit ID3v1.1 tags
- Edit all ID3v2.3 frames
- Convert between ID3v1.1 and ID3v2.3 tags
- Edit tags of multiple files, e.g. the artist, album, year and genre of all files of an album typically have the same values and can be set together.
- Generate tags from filenames
- Generate filenames from tags
- Rename and create directories from tags
- Generate playlist files
- Automatically convert upper and lower case and replace strings
- Import from freedb.org and other sources of album data
<<less
Download (0.20MB)
Added: 2007-06-13 License: GPL (GNU General Public License) Price:
865 downloads
MP3::Tag::ID3v2-Data 0.9708

MP3::Tag::ID3v2-Data 0.9708


MP3::Tag::ID3v2-Data can get_frame() data format and supported frames. more>>
MP3::Tag::ID3v2-Data can get_frame() data format and supported frames.

SYNOPSIS

$mp3 = MP3::Tag->new($filename);
$mp3->get_tags();
$id3v2 = $mp3->{ID3v2} if exists $mp3->{id3v2};

($info, $long) = $id3v2->get_frame($id); # or

($info, $long) = $id3v2->get_frame($id, raw);

This document describes how to use the results of the get_frame function of MP3::Tag::ID3v2, thus the data format of frames retrieved with MP3::Tag::ID3v2::get_frame().

It contains also a list of all supported ID3v2-Frames.

get_frame()
($info, $long) = $id3v2->get_frame($id); # or

($info, $long) = $id3v2->get_frame($id, raw);

$id has to be a name of a frame like "APIC". See also L .

The names of all frames found in a tag can be retrieved with the L function.

<<less
Download (0.17MB)
Added: 2006-06-22 License: GPL (GNU General Public License) Price:
1219 downloads
MPEG::ID3v2Tag 0.37

MPEG::ID3v2Tag 0.37


MPEG::ID3v2Tag is a Perl module that parses and creates ID3v2 Tags for MPEG audio files. more>>
MPEG::ID3v2Tag is a Perl module that parses and creates ID3v2 Tags for MPEG audio files.

SYNOPSIS

use MPEG::ID3v2Tag ;
use IO::File ;

# create a tag
$tag = MPEG::ID3v2Tag->new() ;
$tag->add_frame("TIT2", "Happy Little Song") ; # one step
$frame = MPEG::ID3Frame::TALB->new("Happy little album") ;
$tag->add_frame($frame) ; # two steps
$tag->add_frame("WCOM", "http://www.mp3.com") ;
$tag->add_frame("APIC", -picture_type => 0, -file => "happy_little_song.gif");
.....
$tag->set_padding_size(256) ;
print OUTFILE $tag->as_string() ;

# read a tag from a file and dump out some data.
$fh = IO::File->new(" binmode $fh;
$tag = MPEG::ID3v2Tag->parse($fh) ;
foreach $frame ($tag->frames()) {
print $frame->frameid(), "n" ; # prints TALB, TIT2, WCOM, etc.
if ($frame->flag_read_only()) {
print " read onlyn" ;
}
if ($frame->fully_parsed() && $frame->frameid =~ /^T.../) {
print " frame text is ", $frame->text(), "n" ;
}
if ($frame->fully_parsed() && $frame->frameid =~ /^W.../) {
print " url is ", $frame->url(), "n" ;
}
}

MPEG::ID3v2Tag is a class capable of parsing and creating ID3v2 revision 3 tags. While not all frames are fully supported, its easy to add support for more.
The object doesnt (currently) support modification of .mp3 files; the caller has to handle the mechanics of prepending the tag to the file.

<<less
Download (1.6MB)
Added: 2006-11-16 License: Perl Artistic License Price:
1074 downloads
ID3iconv 0.2.1

ID3iconv 0.2.1


ID3iconv is a little Java command line tool to convert ID3 tags in mp3 files from whatever machine encoding you have to Unicode. more>>
ID3iconv is a little Java command line tool to convert ID3 tags in mp3 files from whatever machine encoding you have to Unicode. It convert both ID3v1 tags and ID3v2 tags to Unicode-encoded ID3v2 (v2.3 or v2.4). This is sometimes useful because:
ID3v1 or v2 dont really supports multi-byte encodings such as GBK or Big5. Most existing files falsely pretend they are ISO-8859-1 encoded. This means the softwares handle them in all kinds of weird ways.
Even if the user can force the encoding in some players, it is then impossible to display tags of several international languages at the same time if files are so encoded.
I wrote this to convert all my mp3 files with Chinese (both simplified and traditional Chinese) tags to Unicode and play them using Rhythmbox under Linux. This is after much struggle with XMMS and other players that either cannot handle the large charsets GBK/GB18030 or cannot handle Chinese at all.
CAUTION: The tool updates mp3 files in place. You have to do a backup if you dont want to lose your precious music.
Enhancements:
- Bug fix: Under windows, cannot rename the output temp file to the original file name
- Bug fix: Conversion from v2 tag is using different encoding (big-endian UTF-16) from conversion from v1. Now both using little-endian UTF-16 for better compatibility.
- Added option to force using id3v1 tag even if v2 tag exists
- Added option to remove v1 tag after convertion
<<less
Download (0.038MB)
Added: 2006-08-02 License: GPL (GNU General Public License) Price:
1184 downloads
audio_rename 0.9708

audio_rename 0.9708


audio_rename can rename an audio file via information got via MP3::Tag. more>>
audio_rename can rename an audio file via information got via MP3::Tag.

SYNOPSIS

audio_rename -csR -@p "@a/@l/@02n_@t" .

renames all the audio files in this directory and its subdirectories into a 3-level directory structure given by Artist_Name/Album/Filename, with the basename of Filename being the 2-digit track number separated from the title by underscore.

audio_rename -KD *.wav

Reports how it would rename the *.wav files in this directory according to the default -p rule, but without protectiing "funny" characters. Will not do actual renaming.

audio_rename -sc *.mp3

Rename the *.mp3 files in this directory according to the default -p rule, translating cyrillic characters into Latin "equivalents", shortening the names of long components, and protecting "funny" characters.

audio_rename -p %a/%{d0}/%B -G */*.mp3

Assuming one-level subdirectory structure dir/filename.ext, finds files with extension .mp3, and "sorts" them into a two-level subdirectory structure; toplevel directory is based on the "artist" field, the remaing level is preserved.

audio_rename -p %a/%{d0}/%B -R .

Likewise, but does not suppose any particular depth of the current directory structure; only the filename and the most internal directory name are preserved.

audio_rename -p %a/%N -R .

Likewise, but all directory names (inside the current directory) are preserved.

The script takes a list of files (or, with -R option, directories) and renames the given files (or audio files in the directories) according to the rules specified through the command line options. File extensions are preserved (by default).

Some "companion" files (i.e., file with the same basename, and with an extension from a certain list) may be renamed together with audio files. A lot of care is taken to make the resulting file names as portable as possible: e.g., "funny" characters in file names are dumbed down (unless requested otherwise), long filename components may be shortened to certain limits.

A care is taken so that renaming will not overwrite existing files; however, on OSes which allow rename() to overwrite files, race conditions can ruin the best intentions. E.g., do not run several "overlapping" rename procedures simultaneously!

<<less
Download (0.17MB)
Added: 2006-06-22 License: Perl Artistic License Price:
1221 downloads
Waif 0.59.7

Waif 0.59.7


Waif is a console audio unfrontend. more>>
Waif is a console audio unfrontend. That means that between the business of choosing the files to listen to and listening to them, there is no interface to hijack a controlling terminal, hog up screen space, or waste a perfectly good xterm.

It also ends the hassle of restarting a player moving from one display to another. Waif works all its magic in the background leaving you free to do more important work.

Waif is flexible and robust, supporting a wide number of file formats (MP3, Ogg, WAV, RealPlayer, MIDI, audio CD, and more) and a wide number of helper applications including mpg123, mpg321, ogg123, freeamp, and xmms.

Whats New in This Release:

ID3v2 is now supported with the ~/.waifrc configuration file entry:

id3v2=1

Id3lib and id3v2 are required for id3v2 support.

CD tracks listed in show output that have CDDB information will be aligned now, e.g.,

* Now Playing *
[ 1] (CD Track 2) Eric Clapton - Bad Boy
* show format : 9 - 10 *
[ 9] (CD Track 10) Eric Clapton - Dont Know Why
[10] (CD Track 11) Eric Clapton - Let It Rain

Are there any more show cases where alignment needs to be fixed?

<<less
Download (0.060MB)
Added: 2006-05-12 License: Artistic License Price:
1261 downloads
MP3::Tag 0.9709

MP3::Tag 0.9709


MP3::Tag is a Perl module for reading tags of MP3 audio files. more>>
MP3::Tag is a Perl module for reading tags of MP3 audio files.

SYNOPSIS

use MP3::Tag;

$mp3 = MP3::Tag->new($filename);

# get some information about the file in the easiest way
($title, $track, $artist, $album, $comment, $year, $genre) = $mp3->autoinfo();
$comment = $mp3->comment();

# or have a closer look on the tags

# scan file for existing tags
$mp3->get_tags;

if (exists $mp3->{ID3v1}) {
# read some information from the tag
$id3v1 = $mp3->{ID3v1}; # $id3v1 is only a shortcut for $mp3->{ID3v1}
print $id3v1->title;

# change the tag contents
$id3v1->all("Song","Artist","Album",2001,"Comment",10,"Top 40");
$id3v1->write_tag;
}

if (exists $mp3->{ID3v2}) {
# read some information from the tag
($name, $info) = $mp3->{ID3v2}->get_frame("TIT2");
# delete the tag completely from the file
$mp3->{ID3v2}->remove_tag;
} else {
# create a new tag
$mp3->new_tag("ID3v2");
$mp3->{ID3v2}->add_frame("TALB", "Album title");
$mp3->{ID3v2}->write_tag;
}

$mp3->close();

<<less
Download (0.17MB)
Added: 2007-07-12 License: Perl Artistic License Price:
839 downloads
MP3::Tag::Inf 0.9708

MP3::Tag::Inf 0.9708


MP3::Tag::Inf is a Perl module for parsing .inf files associated with music tracks. more>>
MP3::Tag::Inf is a Perl module for parsing .inf files associated with music tracks.

SYNOPSIS

my $mp3inf = MP3::Tag::Inf->new($filename); # Name of MP3 or .INF file
# or an MP3::Tag::File object

($title, $artist, $album, $year, $comment, $track) = $mp3inf->parse();
see MP3::Tag

MP3::Tag::Inf is designed to be called from the MP3::Tag module.
It parses the content of .inf file (created, e.g., by cdda2wav).

parse()
($title, $artist, $album, $year, $comment, $track) =
$mp3inf->parse($what);

parse_filename() extracts information about artist, title, track number, album and year from the .inf file. $what is optional; it maybe title, track, artist, album, year or comment. If $what is defined parse() will return only this element.

As a side effect of this call, $mp3inf->{info} is set to the hash reference with the content of particular elements of the .inf file. Typically present are the following fields:

CDINDEX_DISCID
CDDB_DISCID
MCN
ISRC
Albumperformer
Performer
Albumtitle
Tracktitle
Tracknumber
Trackstart
Tracklength
Pre-emphasis
Channels
Copy_permitted
Endianess
Index
The following fields are also recognized:
Year
Trackcomment

<<less
Download (0.17MB)
Added: 2006-11-09 License: Perl Artistic License Price:
1079 downloads
MP3val 0.1.7

MP3val 0.1.7


MP3val is a tool for MPEG audio files validation and (optionally) fixing problems. more>>
MP3val is a tool for MPEG audio files validation and (optionally) fixing problems.
It was primarily designed for MPEG 1 Layer III (MP3) files, but supports also other MPEG versions and layers.
MP3val can be useful for finding corrupted files (e.g. incompletely downloaded).
MP3val supports:
- MPEG-1, 2, 2.5; Layers I, II, III
- ID3v1 tags (must be at the very end of the file)
- ID3v2 tags (must be at the very beginning of the file)
- APEv2 tags
Enhancements:
- More precise report about CRC.
- A new option added to keep file timestamps.
- Added more accurate handling of write errors (Debian #413946).
- Attributes are now correctly preserved.
<<less
Download (0.018MB)
Added: 2007-04-27 License: GPL (GNU General Public License) Price:
912 downloads
ID3 mass tagger 0.78

ID3 mass tagger 0.78


ID3 mass tagger is a portable command-line mass tagger for audio files. more>>
ID3 mass tagger is a portable command-line mass tagger for audio files.
ID3 mass tagger is designed for non-interactively adding, updating or removing meta-information in a number of files with a single command.
It can generate tag fields from the filename and rename files using an intuitive syntax. It currently supports ID3 (1.1) and ID3v2 (2.0, 3.0) tags.
Exemple:
Here are some examples of using id3:
id3 -a "Stallman" -t "Free Software Song" fs_song.mp3"
Add a simple tag to a file.
id3 -d *.mp3
Removes all ID3v1 tags from all mp3s
id3 -g "psych rock" *.mp3
Sets genre to "Psychedelic Rock" all mp3s
id3 -2 -1 -u "*.mp3"
Copy ID3v2 tag to ID3v1 tag in all files.
id3 -a "TAFKAT" -n "%1" -t "%+2" "*. *.mp3"
Update tag fields similar to this;
id3 -a "TAFKAT" -n "01" -t "My Song" "01. my_song.mp3"
id3 -a "TAFKAT" -n "02" -t "Untitled" "02. untitled.mp3"
id3 -2 -f "%a - %t.mp3" blaet.mp3
Rename file to a standard "Artist - Title" format, using ID3v2 values.
id3 -g "alt rock" -a "The Author" -l %1 -n %2 -t %3 "Author - */(*) *.mp3"
Process multiple directories at once.
id3 -g "alt rock" -a "The Author" -m "Author - %l/(%n) %t.mp3"
Shorthand for the previous example.
id3 -a %t -t %a "*.mp3"
Swap artist and title fields in all mp3s.
id3 -D source.mp3 -1 -2 dest.mp3
Copy ID3v1 and ID3v2 tags of source.mp3 to dest.mp3
id3 -D source.mp3 -1u -2u dest.mp3
As above, but only replaces the non-standard or blank fields in dest.mp3 by data from source.mp3.
id3 -2 -rAPIC -s 0 *.mp3
Removes embedded images and padding from all mp3s.
id3 -2 -rAPIC -s 0 -R "*.mp3" "/my documents"
As above, but works recursively on all mp3s in the directory tree starting at /my documents
id3 -2 -q "%| %a - %|Untitled|t || %t || %1 |?" "*.mp3"
Generate a playlist, using the best possible text
id3 -2 -c "Was: %_f" -f "%a - %|Untitled (%#x)|t.mp3" "*.mp3"
Advanced rename. Saves previous filename in the comment field, and renames files without proper tags to;
Unknown - Untitled (01).mp3
Unknown - Untitled (02).mp3
... etc
Enhancements:
- This release adds support for Lyrics3 tags.
<<less
Download (0.066MB)
Added: 2006-03-21 License: GPL (GNU General Public License) Price:
1317 downloads
getID3() 2.0.0b4

getID3() 2.0.0b4


getID3() is a PHP4 script that extracts useful information from MP3s & other multimedia file formats. more>>
getID3() is a PHP4 script that extracts useful information from MP3s & other multimedia file formats:
Tag formats:
- ID3v1 (v1.0 & v1.1)
- ID3v2 (v2.2, v2.3 & v2.4)
- APE tags (v1 & v2)
- (Ogg) VorbisComment
- Lyrics3 (v1 & v2)
Lossy Audio-only formats:
- MP3, MP2, MP1 (MPEG-1, layer III/II/I audio, including Fraunhofer, Xing and LAME VBR/CBR headers)
- Ogg Vorbis
- Musepack / MPEGplus
- AAC & MP4
- AC-3
- RealAudio
- VQF
- Speex
Lossless Audio-only formats:
- WAV (including extended chunks such as BWF and CART)
- AIFF (Audio Interchange File Format)
- Monkeys Audio
- FLAC & OggFLAC
- LA (Lossless Audio)
- OptimFROG
- WavPack
- TTA
- LPAC (Lossless Predictive Audio Compressor)
- Bonk
- LiteWave
- Shorten
- RKAU
- Apple Lossless Audio Codec
- RealAudio Lossless
- CD-audio (*.cda)
- NeXT/Sun .au
- Creative .voc
- AVR (Audio Visual Research)
- MIDI
Audio-Video formats:
- AVI
- ASF (ASF, Windows Media Audio, Windows Media Video)
- MPEG-1 & MPEG-2
- Quicktime
- RealVideo
- NSV (Nullsoft Streaming Video)
Graphic formats:
- JPG
- PNG
- GIF
- BMP (Windows & OS/2)
- TIFF
- SWF (Flash)
- PhotoCD
Data formats:
- ZIP
- TAR
- GZIP
- ISO 9660 (CD-ROM image)
- SZIP
getID3() can write:
- ID3v1 (v1 & v1.1)
- ID3v2 (v2.3, v2.4)
- APE (v2)
- Ogg Vorbis comments
- FLAC comments
Whats New in 1.7.7 Stable Release:
- All 1.x bugfixes have been ported from getID3() 1.7.2 to 1.7.7
<<less
Download (0.35MB)
Added: 2007-02-13 License: GPL (GNU General Public License) Price:
987 downloads
MP3::Tag::File 0.9708

MP3::Tag::File 0.9708


MP3::Tag::File is a Perl module for reading / writing files. more>>
MP3::Tag::File is a Perl module for reading / writing files.

SYNOPSIS

my $mp3 = MP3::Tag->new($filename);

($title, $artist, $no, $album, $year) = $mp3->parse_filename();
see MP3::Tag

MP3::Tag::File is designed to be called from the MP3::Tag module.
It offers possibilities to read/write data from files via read(), write(), truncate(), seek(), tell(), open(), close(); one can find the filename via the filename() method.
parse_filename()

($title, $artist, $no, $album, $year) = $mp3->parse_filename($what, $filename);

parse_filename() tries to extract information about artist, title, track number, album and year from the filename. (For backward compatibility it may be also called by deprecated name read_filename().)

This is likely to fail for a lot of filenames, especially the album will be often wrongly guessed, as the name of the parent directory is taken as album name.

$what and $filename are optional. $what maybe title, track, artist, album or year. If $what is defined parse_filename() will return only this element.

If $filename is defined this filename will be used and not the real filename which was set by MP3::Tag with MP3::Tag-new($filename)>. Otherwise the actual filename is used (subject to configuration variable decode_encoding_filename).

Following formats will be hopefully recognized:

- album name/artist name - song name.mp3
- album_name/artist_name-song_name.mp3
- album.name/artist.name_song.name.mp3
- album name/(artist name) song name.mp3
- album name/01. artist name - song name.mp3
- album name/artist name - 01 - song.name.mp3

If artist or title end in (NUMBER) with 4-digit NUMBER, it is considered the year.
title()

$title = $mp3->title($filename);

Returns the title, guessed from the filename. See also parse_filename(). (For backward compatibility, can be called by deprecated name song().)

$filename is optional and will be used instead of the real filename if defined.

artist()

$artist = $mp3->artist($filename);

Returns the artist name, guessed from the filename. See also parse_filename()

$filename is optional and will be used instead of the real filename if defined.

track()

$track = $mp3->track($filename);

Returns the track number, guessed from the filename. See also parse_filename()

$filename is optional and will be used instead of the real filename if defined.

year()

$year = $mp3->year($filename);

Returns the year, guessed from the filename. See also parse_filename()

$filename is optional and will be used instead of the real filename if defined.

album()

$album = $mp3->album($filename);

Returns the album name, guessed from the filename. See also parse_filename() The album name is guessed from the parent directory, so it is very likely to fail.

$filename is optional and will be used instead of the real filename if defined.
comment()

$comment = $mp3->comment($filename); # Always undef

genre()

$genre = $mp3->genre($filename); # Always undef

<<less
Download (0.17MB)
Added: 2006-11-08 License: Perl Artistic License Price:
1080 downloads
id3lib 3.8.3-2

id3lib 3.8.3-2


id3lib is an ID3v1/ID3v2 tagging library. more>>
id3lib project is an open-source, cross-platform software development library for reading, writing, and manipulating meta-information in digital audio files.
Currently id3lib supports reading and writing of ID3v1 and ID3v2 tags, as well as reading of Lyrics3, Lyrics3 v2.00, and MusicMatch tags. id3lib is written in C++, but provides both C and COM interfaces to the library.
Main features:
Powerful
- id3lib automatically handles most of the low-level details involved with manipulating ID3v1 and ID3v2 tags in digital audio files. It provides support for several tasks associated with manipulating such tags, such as conversion between tagging formats, identifying valid tags, converting sizes, synchronisation, compression, and padding.
Standards-compliant
- While many digital audio libraries and applications provide minimal support for basic ID3v1 tagging, few provide the same level of support for the up-and-coming ID3v2 standard like id3lib. The developers of id3lib work closely with the ID3v2 specification and go to great effort to ensure the library correctly handles all its nuances. By using id3lib for both your ID3v1 and ID3v2 tagging needs, you can be assured that your application produces tags that comply with the standard now and in the future.
Cross-platform
- A primary goal for id3lib is cross-platform compatibility. The library is developed primarily on the GNU/Linux operating system but has been compiled and tested on other Unix-like OSs as well as Windows NT.
Multi-language
- id3lib aspires to provide interfaces for multiple programming languages, and currently fully supports both C and C++. A COM wrapper (id3com) is also supplied allowing VB, VBA, VBScript and other COM-enabled languages to use the library.
Enhancements:
- This version corresponds to 3.8.3-1 + patch_id3lib_3.8.3_UTF16_writing_bug.diff file.
<<less
Download (0.92MB)
Added: 2007-04-01 License: LGPL (GNU Lesser General Public License) Price:
937 downloads
MP3FS 0.07

MP3FS 0.07


MP3FS is A read-only FUSE filesystem which transcodes audio formats (currently FLAC) to MP3 on the fly when opened and read. more>>
&MP3FS is A read-only FUSE filesystem which transcodes audio formats (currently FLAC) to MP3 on the fly when opened and read. This was written to enable me to use my FLAC collection with software and/or hardware which only understands MP3. e.g. gmediaserver to a netgear MP101 mp3 player.
MP3FS is also a novel alternative to traditional mp3 encoder applications. Just use your favorite file browser to select the files you want encoded and copy them somewhere!
How it Works:
When a file is opened, the decoder and encoder are initialised and the file metadata is read. At this time the final filesize can be determined as we only support constant bitrate mp3s.
ID3v2 tags are created from the vorbis comments in the flac file. They are located at the start of the file. As such, an application scanning a directory to read tags should not cause too much of a performance hit as the actual encoder does not need to be invoked (depending on how much data the read asks for).
A special exception to this is when an application tries to read the very last block first. Many applications do this to look for an id3v1 tag (stored in the last 128 bytes of the file). When this is detected, the filesystem simply return zeros (I dont support id3v1 tags). This dramatically speeds up applications, however it could potentially lead to corrupt mp3 files if the zeros are still in kernel cache when the application comes back to read the actual audio sequentially. In my experimentation this has not happened, I always get another read for the final block.
As the file is read, it is transcoded into an internal per-file buffer. This buffer continues to grow while the file is being read until the whole file is transcoded in memory. The memory is freed only when the file is closed. This simplifies the implementation.
Seeking within a file will cause the file to be transcoded up to the seek point (if not already done). This is not usually a problem since most programs will read a file from start to finish. Future enhancements may provide true random seeking.
For build instructions see INSTALL
Usage:
mount your filesystem like this: (you will probably have to be root)
mp3fs musicdir bitrate mountpoint [-o fuse_options]
e.g.:
mp3fs /mnt/music 256 /mnt/mp3 -o allow_other,ro
Here are the original files:
dave@bender:~/mp3fs$ ls -l /mnt/music/Smashing Pumpkins/Pisces Iscariot/
total 345732
-rw-r--r-- 1 mythtv mythtv 10267876 2005-06-19 18:36 01 - Soothe.flac
-rw-r--r-- 1 mythtv mythtv 23512276 2005-06-19 18:36 02 - Frail And Bedazzled.flac
-rw-r--r-- 1 mythtv mythtv 23332187 2005-06-19 18:36 03 - Plum.flac
-rw-r--r-- 1 mythtv mythtv 26402936 2005-06-19 18:36 04 - Whir.flac
-rw-r--r-- 1 mythtv mythtv 21591252 2005-06-19 18:36 05 - Blew Away.flac
-rw-r--r-- 1 mythtv mythtv 16719855 2005-06-19 18:36 06 - Pissant.flac
-rw-r--r-- 1 mythtv mythtv 33454889 2005-06-19 18:36 07 - Hello Kitty Kat.flac
-rw-r--r-- 1 mythtv mythtv 32073747 2005-06-19 18:36 08 - Obscured.flac
-rw-r--r-- 1 mythtv mythtv 17614217 2005-06-19 18:36 09 - Landslide.flac
-rw-r--r-- 1 mythtv mythtv 65406696 2005-06-19 18:36 10 - Starla.flac
-rw-r--r-- 1 mythtv mythtv 18651734 2005-06-19 18:36 11 - Blue.flac
-rw-r--r-- 1 mythtv mythtv 25055200 2005-06-19 18:36 12 - Girl Named Sandoz.flac
-rw-r--r-- 1 mythtv mythtv 28060023 2005-06-19 18:36 13 - La Dolly Vita.flac
-rw-r--r-- 1 mythtv mythtv 11432008 2005-06-19 18:36 14 - Spaced.flac
And now you can use the (virtual) mp3 files from the MP3FS mountpoint:
dave@bender:~/mp3fs$ ls -l /mnt/mp3/Smashing Pumpkins/Pisces Iscariot/
total 345732
-rw-r--r-- 1 mythtv mythtv 2446849 2005-06-19 18:36 01 - Soothe.mp3
-rw-r--r-- 1 mythtv mythtv 3197934 2005-06-19 18:36 02 - Frail And Bedazzled.mp3
-rw-r--r-- 1 mythtv mythtv 3467503 2005-06-19 18:36 03 - Plum.mp3
-rw-r--r-- 1 mythtv mythtv 4003745 2005-06-19 18:36 04 - Whir.mp3
-rw-r--r-- 1 mythtv mythtv 3414845 2005-06-19 18:36 05 - Blew Away.mp3
-rw-r--r-- 1 mythtv mythtv 2413413 2005-06-19 18:36 06 - Pissant.mp3
-rw-r--r-- 1 mythtv mythtv 4348572 2005-06-19 18:36 07 - Hello Kitty Kat.mp3
-rw-r--r-- 1 mythtv mythtv 5132656 2005-06-19 18:36 08 - Obscured.mp3
-rw-r--r-- 1 mythtv mythtv 3099704 2005-06-19 18:36 09 - Landslide.mp3
-rw-r--r-- 1 mythtv mythtv 10542719 2005-06-19 18:36 10 - Starla.mp3
-rw-r--r-- 1 mythtv mythtv 3210041 2005-06-19 18:36 11 - Blue.mp3
-rw-r--r-- 1 mythtv mythtv 3449127 2005-06-19 18:36 12 - Girl Named Sandoz.mp3
-rw-r--r-- 1 mythtv mythtv 4098213 2005-06-19 18:36 13 - La Dolly Vita.mp3
-rw-r--r-- 1 mythtv mythtv 2337344 2005-06-19 18:36 14 - Spaced.mp3
dave@bender:~/mp3fs$ id3info /mnt/mp3/Smashing Pumpkins/Pisces Iscariot/01 - Soothe.mp3
*** Tag information for /mnt/mp3/Smashing Pumpkins/Pisces Iscariot/01 - Soothe.mp3
=== TSSE (Software/Hardware and settings used for encoding): LAME v3.96.1
=== TIT2 (Title/songname/content description): Soothe
=== TPE1 (Lead performer(s)/Soloist(s)): Smashing Pumpkins
=== TALB (Album/Movie/Show title): Pisces Iscariot
=== TRCK (Track number/Position in set): 1
*** mp3 info
MPEG1/layer III
Bitrate: 128KBps
Frequency: 44KHz
dave@bender:~/mp3fs$ time cp /mnt/mp3/Smashing Pumpkins/Pisces Iscariot/01 - Soothe.mp3 /tmp/
real 0m12.917s
user 0m0.004s
sys 0m0.020s
dave@bender:~/mp3fs$ xmms /mnt/mp3/Smashing Pumpkins/Pisces Iscariot/*
Enhancements:
- A segfault and several memory leaks were fixed.
<<less
Download (0.32MB)
Added: 2007-04-09 License: GPL (GNU General Public License) Price:
932 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5