From 13faaed4ec54b1611dcc1dd7aa796fe3649fdc6a Mon Sep 17 00:00:00 2001 From: TheTroll Date: Fri, 26 Feb 2010 14:47:14 +0100 Subject: Display ID3 tag if available for music --- includes/inc_audio.php | 17 ++++++++++------- includes/inc_files.php | 27 ++++++++++++++++++++++++++- 2 files changed, 36 insertions(+), 8 deletions(-) diff --git a/includes/inc_audio.php b/includes/inc_audio.php index f0e0046..2960aa5 100755 --- a/includes/inc_audio.php +++ b/includes/inc_audio.php @@ -51,9 +51,10 @@ if ($medianame_array[0]) sort($medianame_array); $count = count($medianame_array); + + // Directories for ($cnt=0; $cnt < $count; $cnt++) { - // Dirs if (mediagettype($mediapath .$subdir .$medianame_array[$cnt]) == 3) { $medianame2=addslashes($medianame_array[$cnt]); @@ -71,6 +72,8 @@ if ($medianame_array[0]) } } + + // Music files $idx = 1; for ($cnt=0; $cnt < $count; $cnt++) { @@ -95,19 +98,19 @@ if ($medianame_array[0]) print " \r\n"; - print " $idx{$medianame_array[$cnt]}\r\n"; + // Get song info + list($name, $duration) = mediagetmusicinfo($mediapath .$subdir .$medianame_array[$cnt]); + + print " $idx{$name}{$duration}\r\n"; print " \r\n"; print " \r\n"; $idx++; } } - - print(""); - } -else - print "\r\n"; + +print "\r\n"; $upsubdir = dirname($subdir); diff --git a/includes/inc_files.php b/includes/inc_files.php index 06a9cc0..3e9e90f 100755 --- a/includes/inc_files.php +++ b/includes/inc_files.php @@ -4,7 +4,6 @@ $audiotypes='mp3 aac wav '; function mediagetinfostream($stream = "") { - global $ffmpegpath; // Get info @@ -62,3 +61,29 @@ function mediadirhasaudio($dir) return 0; } + +function mediagetmusicinfo($file ="") +{ + // Get info + $getid3 = new getID3; + $fileinfo = $getid3->analyze($file); + + $name = $fileinfo['tags']['id3v1']['title'][0]; + if ($name == "") + { + $name = $fileinfo['tags']['id3v2']['title'][0]; + if ($name == "") + { + $name = $fileinfo['filename']; + if ($name == "") + $name = "unknown"; + } + } + + if (!is_utf8($name)) + $name = utf8_encode($name); + + $duration = $fileinfo['playtime_string']; + + return array ($name, $duration); +} -- cgit v1.2.3