PDA

View Full Version : MP3 PRE dzsbot Annouce Question


DJZacharia
02-03-2013, 05:03 AM
Hello.
(Hopefully I'm posting this in the correct section.)

Whenever I PRE MP3's my dzsbot only displays directory name, file count and file size.
Is there a way to have it show id3 tags (such as genre, artist, etc.), similar to when a directory is being FXPed ("raced")?

I'm guessing there is a setting within nxtools to get this working. Any help would be greatly appreciated.

Thanks in advance.

Yil
02-03-2013, 12:02 PM
You probably want to check out ioNiNJA's bot options/settings as I think that's a modified version of dzsbot. If there isn't something obvious, look at the ioftpd.log file when an mp3 dir is uploaded and you should be able to see the events like new dir, mp3 info, race, etc. If the information you want to display is shown in the logfile then all you might need to do is tweak the theme to show it or enable an option somewhere. On the other hand if it doesn't show up in the logfile then your best bet is to request the feature. I haven't looked at mp3 stuff much at all but I think it's in the logfile and so you'll probably just need to tweak the theme to show it.

DJZacharia
02-03-2013, 02:02 PM
Thanks for the reply, Yil. I'm currently using ioNINJA's version of dzsbot.
I looked at the ioFTPD.log and it says:
02-03-2013 05:50:29 PRE: "/PODCASTS/0203/DJZacharia_PODCAST_Feb_1_2013" "DJZ" "DJZacharia" "DJZ" "PODCASTS" "2" "100431" "0"

Whereas, nxtools should identify that it's an mp3 (lines 627 through 641 in nxpre.tcl:

set isMP3 0
set mp3info [vfs chattr $destRealPath 55]

# Attempt to parse every MP3 file until successful.
if {$mp3info != ""} {
lassign $mp3info mp3(artist) mp3(album) mp3(title) mp3(bitrate) mp3(version) mp3(layer) mp3(mode) mp3(genre) mp3(year) mp3(srate) mp3(lame) mp3(lamepreset) mp3(original) mp3(padding) mp3(duration) mp3(nr) mp3(vbroldnew) mp3(type)
set codec [format "MPEG %.1f Layer %d" $mp3(version) $mp3(layer)]
iputs "|------------------------------------------------------------------------|"
iputs [format "| Artist : %-60s |" $mp3(artist)]
iputs [format "| Album : %-60s |" $mp3(album)]
iputs [format "| Genre : %-16s Year: %-11s Bitrate: %-16s |" $mp3(genre) $mp3(year) "$mp3(bitrate) Kbit"]
iputs [format "| Channel : %-16s Type: %-11s Codec: %-18s |" $mp3(mode) $mp3(type) $codec]
iputs [format "| Lame : %-16s Preset: %-9s VBR: %-20s |" $mp3(lame) $mp3(lamepreset) $mp3(vbroldnew)]
set isMP3 1
}

and (lines 691 through 700):


set line [expr {$isMP3 ? "PRE-MP3" : "PRE"}]
append line ": \"$destVirtualPath\" \"$preGroup\" \"$user\" \"$group\" \"$area\" \"$files\" \"$totalSize\" \"$diskCount\""
if {$isMP3} {append line " \"$mp3(artist)\" \"$mp3(album)\" \"$mp3(genre)\" \"$mp3(year)\" \"$mp3(bitrate)\" \"$mp3(type)\""}
putlog $line

if {![catch {DbOpenFile [namespace current]::PreDb "Pres.db"} error]} {
PreDb eval {INSERT INTO Pres(TimeStamp,UserName,GroupName,Area,Release,Fil es,Size)
VALUES($preTime,$user,$preGroup,$area,$release,$fi les,$totalSize)}
PreDb close
} else {ErrorLog PreDb $error}


However, for some reason it's not parsing the MP3s and thus not logging the PREd MP3s as "PRE-MP3" (with relevant id3 tag info).

Yil
02-03-2013, 11:00 PM
You know, I missed the fact that this was a PRE event completely! You're probably right that it's nxTools that should be handling this differently...

DJZacharia
02-04-2013, 11:05 AM
After doing a bit of research, I discovered that there is an error with nxTools MP3 parsing--which causes ioFPTD.exe to crash (C++ runtime error). A temp fix was created to bypass this error, however MP3 PREs aren't logged as "PRE-MP3," rather they are logged as a normal "PRE" (without any id3 info). Thus, there is no fix for this issue.

As an alternative, I tried ioA's PRE last night, which works great. However, the issue with that was getting releases I pred with ioA to be added to the nxTools dupe.db--which I was unable to figure out how to do.

Yil
02-04-2013, 07:10 PM
nxTools has a helper C/C++ dll that it loads via TCL and uses for a variety of things and it's broken in a number of ways. Most of the issues are not really it's fault, but due to the fact that the TCL version is was written against is very old now and ioFTPD uses a newer TCL library and internally some things have changed and nxTools wasn't updated/re-compiled. I wonder if just re-compiling it (the source was released) against the newer TCL headers might not fix things...

Yil
02-04-2013, 07:11 PM
Oh, as a temp fix you might also look at the fact that you don't really care how the info gets output so long as the line does. ioNinja uses some helper .exe's to extract info from mp3's etc and you could drop part of that logic into nxTools...

Hans_
12-16-2013, 07:54 AM
Oh, as a temp fix you might also look at the fact that you don't really care how the info gets output so long as the line does. ioNinja uses some helper .exe's to extract info from mp3's etc and you could drop part of that logic into nxTools...

hey all,

one other thing is noticed on this topic (pre with neoxed)(i have applied the fix so atleast its possable to pre mp3 =) ):

so after preeing a mp3 rls you see for ex.
200-.-[Pre]------------------------------------------------------------------.
[2] 200-| Area : MP3 |
[2] 200-| Release : somerls.by.some-GRP |
[2] 200-| Files : 16F Size: 75.1MB CDs: 0 |
[2] 200-|------------------------------------------------------------------------|
[2] 200-| User | Group | Ratio | Files | Amount | Credits |
[2] 200-|------------------------------------------------------------------------|
[2] 200-| some1 | iND | 1:3 | 15F | 75.1MB | 225.3MB |
[2] 200-'------------------------------------------------------------------------'

for one it says 16F and for the other one 15F (wich is correct amount of files)...

on irc the wrong amount get announced:
[7PRE] /MP3/xxxx/somerls.by.some-GRP > 16f/75MB

as it looks like this is a general "problem" with pre in neoxed script what i can see..can some1 confirm this behaviour?

any chance on a quick fix? i will try to study nxpre.tcl later on...

EDiT:

if any1 cares, i fixed the problem myself ^^:

1) open up nxpre.tcl
2) go to following paragraph and change/add the bold part:

set line [expr {$isMP3 ? "PRE-MP3" : "PRE"}]
append line ": \"$destVirtualPath\" \"$preGroup\" \"$user\" \"$group\" \"$area\" \"$prefiles($userName)\" \"$totalSize\" \"$diskCount\""
if {$isMP3} {append line " \"$mp3(artist)\" \"$mp3(album)\" \"$mp3(genre)\" \"$mp3(year)\" \"$mp3(bitrate)\" \"$mp3(type)\""}
putlog $line

EDiT2:

had to remove 2nd part due to not writing correctly in to pre db..so just cosmetics for irc announce, better than nothing :\