LINUXsecure_LOGO
Issues on Linux and Security
 
-->
 
 
 
 
 
 
 
home
button Other --> F2html.pl
 

mp3riot (formerly known as f2html.pl)

News:

I decided to rename f2html.pl into mp3riot. the reason is, that the name f2html.pl does not clearly indicate, for what the program is best suited for. Because the program has grown so much (and because the the name should be more attractive to get more users), a renaming seems to be a must to me.

There are some important news about mp3riot / f2htmlpl. Please see the NEWS for further details.

About:

Mp3riot (formerly known as f2html.pl) is a command line utility that searches recursively through directories, builds a file list (with additional file information), and generates html files, plylists, etc. The output can be controlled, links can be corrected, and more. The script is mainly desigend to create Web pages, playlists, and databases for mp3-files, but can also used for other purposes.

Read the manual for further details.

Main Features:

  • supports playlists in m3u, pls, and xml format
  • supports sql output
  • creates html pages, templates can be used
  • supports advanced grouping methods
  • supports slection by date ranges, file extensions, and by random
  • supports renaming of mp3 files using id3tag information, templates or guessing can be used
  • advanced string manipulation methods
  • and much more ...

Download:

Latest version: mp3riot-1.3.zip

Older versions of mp3riot / f2html.pl:

For Windows-Users:

You can also download a windows executable compiled with perl2exe. Then you need not to install perl. But I have not testet the functionality of the executable in detail. So it is best to use perl and the source of mp3riot!

Windows binaries of mp3riot:

Usage:

perl mp3riot [options]
Options:

  • -h, --help: Show this screen and exit
  • -k, --mkconf:Use an assistant to write a config file
  • -o, --os win/unix: Default "unix", otherwise windows
  • -Q, --sortby value: Default is NAME (the filename). You can sort the filelist by the following criteria: URLNAME, SHOWNAME, DIR, NAME, TITLE, ARTIST, ALBUM, YEAR, COMMENT, GENRE, TRACKNUM, SIZE, MODTIME, VBR, BITRATE, FREQUENCY, MINUTES, SECONDS, FIRSTCHAR
  • -n, --doublicates: Check for doublicates of files by their filename
  • -D, --md5doublicates: Check for doublicates of files by their MD5 sum
  • -V, --seekvalues <n,+-n,n>: Three values that have to be seperated by ",". This is an useful option for --md5doublicates. The first one is the offset in bytes, the second is the number of bytes to seek (and the direction), and the last value tells the program where to start from (1 means to start from the begining of a file, 2 means to start from the end of a file. So, a combination of 1000,-1128,2 tells the programm to start 1128 bytes before the file ends (id3v1 tag is 128 bytes long!) and use 1000 bytes for calculation of md5 sums.
  • -b, --dbfile file: Write database to a file for searching it
  • -m --m3u file: Write a m3u playlist file. Directory and filename or GROUPPATH for writing m3u files for groups.
  • -X --xml file: Write a xml playlist file. Directory and filename or GROUPPATH for writing xml files for groups.
  • -L --pls file: Write a pls playlist file. Directory and filename or GROUPPATH for writing pls files for groups.
  • -W, --b4s file: Write a b4s playlist file. Directory and filename or GROUPPATH for writing b4s files for groups.
  • -t, --html file: Write a html file. Directory and filename or GROUPPATH for writing html files for groups.
  • -a, --http name: Define the http address for url
  • -r, --remove: Remove id3tags (do you know what you are doing?)
  • -i, --mp3info: Use mp3/ogg info for html output
  • -e, --ext: Remove file extensions in html output
  • -f, --filesize: Use filesize for html output
  • -c, --check ext: Select files by their extension(s) (e.g. mp3). For every extension use a seperate flag!
  • -z, --skip number: Skip n elements of mount/directories/names
  • -p, --conf file: Use a config file
  • -w, --utf8 file: File with UTF-8 code for replacements in links
  • -q, --nocs: Do sorting not case sensitive
  • -j, --statfile file: Write statistics to file
  • -d, --dir directory: Define the (multiple) directory(ies) the mp3s are stored in. For every directory use a seperate flag!
  • -g, --sql file: Filename to store sql table in (only for mp3 and ogg!)
  • -y, --replace file: Name of replacement file; in the file use <string_1>=<string_2> to transform <string_1> into <string_2>; special characters like a backslash have to be preceeded by a backslash "\\" (used for directories)
  • -s, --seperate path: Write seperate html files for every character
  • -R, --rename: Renames mp3 and ogg file using their id3tag. The use of rename_template in the configfile is optional. If rename_template is not used, the program tries to create a filename like: ARTIST - ALBUM - TRACKNUMBER - TITLE by using the id3tag. It assumes, that the filenames have a similar format and tries to guess, whether the id3tag has enough information to create a better filename. Old and new filenames are stored in RENAME.bak
  • -B, --renameback: Renames files back using the file RENAME.bak
  • -T, --templatesHtml templates are used. They have to be defined in the conmfig file using the commands html_head, html_change, html_body, html_footer, html_sep_head. See the README for avalable templates!
  • -G, --groupfile file: Filename for grouping information: <groupname1>=<TYPE>=<string1>,<string2>,...
    Prossible types are: EQUAL, NAME, DIR, TITLE, ARTIST, ALBUM, YEAR, COMMENT, GENRE, TRACKNUM, SIZE, MODTIME, VBR, BITRATE, FREQUENCY, MM, SS, FIRSTCHAR
  • -P, --grouppath path: The path, where to write the html files for group
  • -O, --older number: Only files are selected, having a modification time higher than the specified days
  • -Y, --younger number: Only files are selected, having a modification time less than the specified days
  • -I, --id3tag: Use the id3 tag to get infos
  • -S, --random number: Percentage of file to select randomly (e.g. 50 to select 50% of files/every second file)
You can use nearly all commands in a config file (and it is the best to do it this way!). The syntax then changes sligthly, so that, for example, --dir changes to dir=
Additionally, in the config file it is possible to use the commands:
  • exec= param: Execute system command. This command can be used multiple times
  • rename_template=string:string with templates for renaming files by their id3tag (to be used together with --rename)
    The following rename templates are available: **TITLE**, **ARTIST**, **ALBUM**, **YEAR**, **COMMENT**, **GENRE**. **TRACKNUM**
  • html_head= string: Html code for the head
  • html_change= string: Html code if the first character between two file names change
  • html_body= string: Html code for each filename
  • html_footer= string: Html code for the foot
  • html_sep_head= string: Html code for the head seperate html files by first character
    The following html templates are available: **SUMOFFILES**, **SUMOFMEGS**, **DATE**, **URLNAME**, **SHOWNAME**, **DIR**, **NAME**, **TITLE**, **ARTIST**, **ALBUM**, **YEAR**, **COMMENT**, **GENRE**, **TRACKNUM**, **SIZE**, **MODTIME**, **VBR**, **BITRATE**, **FREQUENCY**, **MINUTES**, **SECONDS**, **HTMLINDEX**, **FIRSTCHAR**

History:

mp3riot 1.3-20041220

  • extended grouping fuction for all playlistfiles
  • renaming of special characters for filenames og groups
  • support of b4s playlistformat
  • sorting of filelist by various criterias of id3tag, mp3 and
  • file information (e.g. ARTIST, BITRATE etc.)
  • extended output of doublicate function by diretory names
  • added FIRSTCHAR as a value for grouping

mp3riot 1.2-20041007

  • Fixed bug in sql output
  • Flexible search for doublicate files using md5 sums
  • search for doublicates by filenames seperated from search function
  • fixed bug in xml output
  • filesize in html output is now rouded
  • replaced progress bar by counter in percentage
  • added counter for collected files
  • fixed bug in index in html output
  • fixed bug in html output for grouping
  • extended grouping function by new type EQUAL
  • bugfix in pls output

mp3riot 1.1-20030728

  • Renamed f2html.pl into mp3riot
  • Fixed output of playlist in M3U format, so that the M3U file is now containing full information
  • Fixed bug for retreaving the TITLE of an id3tag
  • Added output of playlist in XML format
  • Added output of playlist in PLS format
  • Added random fileselection for random playlists
  • Added the tracknumber for sql output
  • Added **TRACKNUM** (tracknumber) and as a template variable for html output
  • Added TRACKNUM (tracknumber) as a variable for groupings
  • Added tracknumber and comment for db output
  • Fixed bug in renaming function when special characters are present in the id3tag
  • Added rename_template to do renaming of files using their id3tag in a flexible way
  • Fixed a bug in renameback

f2html.pl 1.0-20030319

  • Fixed some smaller bugs
  • Rebuild the internal data structure completely
  • Removed option for fast sorting (not necessary any more)
  • Implemented selection of files by their modification time (younger and/or older than days from now)
  • Implemented grouping of files by string matching between group defninitions by various types
  • Implemented variable html-code dsefinitions and templates
  • Changed definition for string replacement
  • f2html.pl now comes with a new version of Info.pm from MP3-Info-1.02 by Chris Nandor
  • The use of the id3tag for sql and html output is now optional
  • Manpage is not supported any more.

f2html.pl 0.9-20030313

  • Fixed a commandline parameter bug where the parameters were handled non case sensitive. Now there are handled case sensitive. As a result the functions RENAME and RENAMEBACK did not work when called with the short command line argument.
  • Fixed a commandline parameter bug that occured with Perl 5.8.0 and Getopt::Long 2.32. The -s flag in line 1 of the perl script causes the program to count the command line parameters in an usual way, so that command line parameters got disturbed and did not work any more.

f2html.pl 0.8-20021105

  • Some changes in the documentation.
  • New option to rename files using their id3tag.
  • New option to rename files back.
  • Some code fixes.
  • Usage of the replace option has changed.

f2html.pl 0.7-20021016

  • Bug for the option "check" in config file and configuration wizard fixed
  • Bug for the check of the mp3 extension when mp3info was enabled fixed.
  • Bug of sum of megs in html output fixed.
  • Bug in mp3table.sql fixed.
  • Basic ogg vorbis support implemented (thanks to Jens Burkal).

f2html.pl 0.6-20020718

  • New method (experimental) for faster sorting. Useful for indexing huge number of files or mp3 files with additional information.
  • New option for checking for dublicates of filenames.
  • Now f2html.pl comes wioth a new version of Info.pm from MP3-Info-1.01 by Chris Nandor.

f2html.pl 0.5-20020626

  • Fixed problem with sql data output when files contain the charakter " ' ".
  • Name of option "hex" changed to "utf8".
  • Implemeted progress bar for prepating html files.
  • More information about what the program is doing.

f2html.pl 0.4-20011127

  • Now f2html comes with a new version of Info.pm from MP3-Info-0.91 by Chris Nandor.
  • Minor Bugfixes.
  • New option to create sql database.
  • New option to create a config file.

f2html.pl 0.3-20010628

  • Some checks and corrections for pathnames.
  • Only existing characters are written out at the top of a html file.
  • Rewrite of sum of files and sizes. Important for writing seperate html files for every character.
  • The option -q has been implemented and allows for doing the procedures in a non case sensitive way.
  • The option -j has been implemented. A html file with statistics can be written out.

f2html.pl 0.2-20010117

  • The manual has been updated.
  • The option -c has been updated. Now this option can be used more than only one time. So one is able to select file by different extensions.

f2html.pl 0.1-20001127

  • Initial release.


back to top

button Whats New
[2005-02-18] mp3riot version 1.3 released
[2004-10-08] mp3riot version 1.2 is out.
[2004-04-30] Added section Bridging
[2004-01-09] working progress on mp3riot version 1.2
The version 1.6.0 releases of the Wayland display manager and Weston compositor are available. Wayland improvements include better error handling and an improved self-testing infrastructure. On the Weston side, they have made a number of xdg-shell protocol changes ("Yes, we broke it again since 1.5.0"), some keyboard repeat improvements, a switch to libinput by default, and more.
Wayland and Weston 1.6.0 released

Debianhas updated apt(regression in previous security update). Fedorahas updated apache-poi(F20: two XML handling flaws), asterisk(F20; F19: denial of service), haproxy(F20: unspecified vulnerabilities), kernel(F20: three vulnerabilities), pdns-recursor(F20; F19: denial of service), polkit-qt(F20; F19: authorization bypass), and ReviewBoard(F19: two vulnerabilities). openSUSEhas updated lua(code execution) and squid(denial of service).
Friday's security advisories

A new organization to "make security easy and fun"has announced itselfin a blog post entitled "Why Hello, World!". Simply Secureis targeting the usability of security solutions: "If privacy and security aren?t easy and intuitive, they don?t work. Usability is key."The organization was started by Google and Dropbox; it also has the Open Technology Fundas one of its partners. "To build trust and ensure quality outcomes, one core component of our work will be public audits of interfaces and code. This will help validate the security and usability claims of the efforts we support. More generally, we aim to take a page from the open-source community and make as much of our work transparent and widely-accessible as possible. This means that as we get into the nitty-gritty of learning how to build collaborations around usably secure software, we will share our developing methodologies and expertise publicly. Over time, this will build a body of community resources that will allow all projects in this space to become more usable and more secure."
Simply Secure announces itself

Debianhas updated icedove(two vulnerabilities) and libav(multiple unspecified vulnerabilities). openSUSEhas updated curl(13.1, 12.3: two cookie-handling vulnerabilities). Oraclehas updated automake(OL5: code execution from 2012), bind97(OL5: three vulnerabilities, two from 2013), conga(OL5: multiple vulnerabilities some going back to 2012), krb5(OL5: code execution), krb5(OL5: multiple vulnerabilities, two from 2013), and nss, nspr(multiple vulnerabilities, one from 2013). SUSEhas updated squid3(SLE11SP3: denial of service).
Thursday's security advisories

The LWN.net Weekly Edition for September 18, 2014 is available.
[$] LWN.net Weekly Edition for September 18, 2014

Greg Kroah-Hartman has made some progress on the stable patch backlog with the release of 3.16.3, 3.14.19, and 3.10.55.
Some stable kernel updates

[Keith Packard]In a talk entitled "SteamOS Magic", longtime X developer Keith Packard looked at the new Linux "distribution"and the effort to turn the Linux desktop into a gaming console. It turns out that, with a fairly small amount of code, Steam and SteamOS creator, Valve, was able to take the existing X-based desktop and turn it into a "living-room experience". Click below (subscribers only) for the full report from LinuxCon North America.
[$] X and SteamOS

Debianhas updated apt(multiple vulnerabilities) and dbus(multiple vulnerabilities). Red Hathas updated krb5(RHEL5: code execution). SUSEhas updated procmail(SLE11 SP3: code execution) and kernel(SLES11 SP1: multiple vulnerabilities). Ubuntuhas updated apt(multiple vulnerabilities), libav(12.04: code execution), and openjdk-7(14.04: updates for arm64 and ppc64el).
Security advisories for Wednesday

Matthew Garrett writes about the challengesfaced by the developers working on ACPI-based ARM systems. "Somebody is going to need to take responsibility for tracking ACPI behaviour and incrementing the exported interface whenever it changes, and we need to know who that's going to be before any of these systems start shipping. The alternative is a sea of ARM devices that only run specific kernel versions, which is exactly the scenario that ACPI was supposed to be fixing."
Garrett: ACPI, kernels and contracts with firmware

The OpenSSLproject is widely known due to its broad adoption as the SSL/TLS library of choice for open-source software—though, in April, it also became widely known because of a particularly vicious security vulnerability. To a large degree, the project weathered the storm, but the project has also undertaken some changes in the wake of the incident. The most recent is the adoption of a public security policydescribing how issues of various kinds will be dealt with.
[$] OpenSSL's new security policy

SUSE's parent entity, the Attachmate Group has entered into an agreement to merge with Micro Focus, prompting some to wonder about how that might affect openSUSE. SUSE's President and General Manager, Nils Brauckmann has contacted the openSUSE Board with a reassuring message. "Business as Usual: There are no changes planned for the SUSE business structure and leadership."
openSUSE statement on the recent Merger announcement

The Register reportsthat SUSE Linux owner Attachmate Group is being purchased by Micro Focus International. "Micro Focus is taking Attachmate Group in exchange for 86.60 million shares, in a deal described as a merger. The combined companies will create a ?leading global infrastructure software company? with revenue of $1.4bn, Micro Focus said. The deal is expected to close in November."
SUSE Linux owner Attachmate gobbled by Micro Focus for $2.3bn (The Register)

Andrew Tanenbaum has announced the release of MINIX 3.3.0, a major new release of the OS. "It is based on a tiny (13 KLoC) microkernel with the operating system running as a set of protected user-mode processes. Each device driver is also a separate process. If a driver fails, it is automatically and transparently restarted without rebooting and without applications even noticing, making the system self-healing. In addition to the x86, the ARM Cortex A8 is now supported, with ports to the BeagleBoard and BeagleBone available. Finally, the entire userland has been redone to make it NetBSD compatible, with thousands of NetBSDpackages available out of the box."
New MINIX release for x86 and ARM is BSD compatible

CentOShas updated axis(C6; C5: SSL hostname verification bypass). openSUSEhas updated php5(13.1, 12.3: multiple vulnerabilities), ppp(13.1, 12.3: privilege escalation), python-django(13.1, 12.3: multiple vulnerabilities), and flash-player(11.4: multiple vulnerabilities). Oraclehas updated axis(OL6; OL5: SSL hostname verification bypass). Red Hathas updated automake(RHEL5: code execution), bind97(RHEL5: denial of service), conga(RHEL5: multiple vulnerabilities), krb5(RHEL5: multiple vulnerabilities), and nss, nspr(RHEL5: multiple vulnerabilities). Scientific Linuxhas updated axis(SL5&6: SSL hostname verification bypass). SUSEhas updated glibc(SLES10 SP3; SLES11 SP2: multiple vulnerabilities). Ubuntuhas updated python-django(multiple vulnerabilities).
Tuesday's security updates

The Rust Programming Language Blog has an article describing recent changes to the languageand what remains to be done for the eventual 1.0 release. "The key to all these changes has been a focus on the core concepts of ownership and borrowing. Initially, we introduced ownership as a means of transferring data safely and efficiently between tasks, but over time we have realized that the same mechanism allows us to move all sorts of things out of the language and into libraries. The resulting design is not only simpler to learn, but it is also much 'closer to the metal' than we ever thought possible before. All Rust language constructs have a very direct mapping to machine operations, and Rust has no required runtime or external dependencies."
The road to Rust 1.0

Multiple IBM DB2 Products CVE-2012-4826 Remote Stack Buffer Overflow Vulnerability
Vuln: Multiple IBM DB2 Products CVE-2012-4826 Remote Stack Buffer Overflow Vulnerability

IBM DB2 and DB2 Connect CVE-2013-4033 Multiple Unauthorized Access Vulnerabilities
Vuln: IBM DB2 and DB2 Connect CVE-2013-4033 Multiple Unauthorized Access Vulnerabilities

IBM DB2 and DB2 Connect CVE-2013-5466 Remote Denial of Service Vulnerability
Vuln: IBM DB2 and DB2 Connect CVE-2013-5466 Remote Denial of Service Vulnerability

IBM DB2 Multiple File Disclosure Security Bypass and Stack Buffer Overflow Vulnerabilities
Vuln: IBM DB2 Multiple File Disclosure Security Bypass and Stack Buffer Overflow Vulnerabilities

Re: Multiple Vulnerabilities with Aztech Modem Routers
Bugtraq: Re: Multiple Vulnerabilities with Aztech Modem Routers

[SECURITY] [DSA 3025-2] apt regression update
Bugtraq: [SECURITY] [DSA 3025-2] apt regression update

AST-2014-010: Remote crash when handling out of call message in certain dialplan configurations
Bugtraq: AST-2014-010: Remote crash when handling out of call message in certain dialplan configurations

AST-2014-009: Remote crash based on malformed SIP subscription requests
Bugtraq: AST-2014-009: Remote crash based on malformed SIP subscription requests

News, Infocus, Columns, Vulnerabilities, Bugtraq ...
More rss feeds from SecurityFocus

-->