ImDaFrEaK said:
Yes I do feel like that is a waste of time to change one element at a time but too bad your reader can't perform as well as mine. I also have implemented fly methods that retrieve and write information overloaded with arguments that can be passed as an array to save time. Maybe I need to share the entire length of my readers abilitys and maybe not. I have it working so well I completely removed any error handling statements to try and get an error. None thus far has occurred.
Hangon while I review my posts to see if I can find anything in them that indicates I'm trying to get into a contest with you over who can spit farthest...
As far as I can see, there isnt, but then I dont know you, or have access to evidence on how you perceive the world, how old you are, etc.
I dont doubt your reader performs better than mine, given that the source for mine is on a CD I archived 7 years ago. I wrote it as a teaching point while i was at university, random file access in java. I dont currently have any need to use it given that I already use an incredibly efficient tagging software written by a friend. I dont recall making any performance claims that need disputing, but I'll hold my opinion that 7 random access writes to a file where one will do is not preferable. It's good to know that you have an overloaded method(s) that allow the entire tag to be written at once, and yes, too, you should be more verbose about the feature set in future; if you use my response for nothing else, you could consider that you need to more effectively advertise the features of the software you write.
It's a great achievement to write software that works flawlessly, and I know from my own experience that even something as simple as appending 128 bytes to a file could potentially be an operation that a programmer doesnt get right first time. Congratulations!
Also, my reader is performing backup work to help maintain the players resources and still read and write out hundreds of files in seconds.
was this in response to something i wrote?
And if your trying to beat me up over the 1.1 merge then whatever. Don't be ignorant.
If you take my presenting you with logic that has been fixed for the last 9 years (yes, that's how old id3 1.1 is - it's a well trodden path too, im sure you know) as me beating you up for not sticking to spec, then it's an issue for your perception. As for my ignorance; again, i wrote a program nearly 8 years ago that does what your library does today. Does knowing the format of an ID3 tag for (possibly) longer than you've been programming make me ignorant? That's a strange definition..
My TagReader DOES WORK with ANY program and WILL not cause an error. I simply force character 30 to read as a track. Then at run time if your user dosn't like the track number, that is if they are still playing an mp3 with v1.0, then they can change it.
yes, but why would they? What i was questioning was:
The logic of deciding whether a tag is 1.0 or 1.1 is simple and easy to implement transparently to the user. Why would you not do that?
Instead of answering my question, you claim I'm belittling you and launch straight back into me. Fortunately (as there is no limit to my patience in situations such as thsi) I can operate in ignorance of this.
I have a well engineered tagreader and it's very efficient requiring minumum resources. I am very pleased with it and it's currently being tested with close to 200 beta testers.
I can tell youre pleased with it, but the way you respond to questions posed over the logic that you've indicated it possesses possibly indicates youre more pleased with yourself for implementing this particular wheel.
NO ONE has had a problem with it thus far and I don't think they will.
As you may state, generally, there is a compelling reason to move to 1.1 globally, and yes.. so many years have passed since the standard became defacto, that its likely all v1 tags are 1.1, but it's a dangerous assumption to make when the safety check is so simple. Would you expect a car manufacturer to say "oh, we've never had one of our cars throw a wheel off in the first 1000 miles so we are taking the 'check all wheel bolts are tight' out of the running-in service check' "
ALso, I have been using it primarily with my own collection of 4k songs along with my wife and friends and don't allow anything else to be used on my pc to perform testing. NO PROBLEMS YET>
Sir, writing 128 bytes to the end of a file is such a simple, atomic operation that it would be hard to see how it could be gotten wrong. In all the time i've been using taggers, i've only seen one break an ID3 v1.1 tag (mp3Tag something or other by analogX software) and I cant even remember what the bug was. Something to do with putting a null byte on the end of every field, or not putting the null in comment[28]. It's a little self-conflagellating to say that you wont allow anyone elses software to be used on your PC, but i can understand how youre proud of your library
I don't appreciate you dogging what I am doing.
If asking you questions about your adherence or not, to a defacto standard, is dogging then I'd rue the day I had you as a technical document writer in my company. If you fly off the handle every time a programmer asks you a thought provoking question, or seeks an answer to a missing part of the puzzle, i wouldnt expect you to persist very long in a professional environment.
I am glad you write your own crap so stay outta mine. I freaking bought 1 tagreader and downloaded about 5 other popular ones that all glitched on me and my users from time to time. This one so far has not glitched, if and when it does I will know how to fix it.
It's perhaps the motivation in every programmer to write his own software - there's just too many cowboys making too many assumptions out there, isnt there? I wrote my own because I just couldnt find one that I really liked. Not so much in writing and reading the tag, but the accessory facilities - facilities of the UI, getting the tag from the name etc.. I had some really neat features there that I havent seen anywhere else and if I were ever to re-implement the UI in .net then I'd probably use a tagging lib such as yours to avoid reinventing that particular wheel. In light of this, I thought I'd ask you some questions about your lib, see if you knew what you were talking about etc etc. The response was appreciated, even if it was a little rude..
Forcing 1.0 into 1.1 is not a bad thing. I fear your angry for not having done so yourself.
You dont need to worry about my feelings as to the evolution of the ID3v1 standard; it died when ID3v2 came along, and I mean that in a de-facto way. Try to find a player that is v1 only. Try to find a player that prefers v1 over v2 - Its usually the other way round. 8 years ago, ID3v2 was starting to appear, there really was no sense in arguing about v1 in internet forums, no sense in forcing 1.1 over 1.0, no sense in pushing v1 instead of v2. 8 years on, that hasnt changed - there's just a collective of old programmers who prefer v1 for their own reasons, and they are a diminishing minority in a sea of coders who dont actually care because someone else already wrote the libraries to save them reinventing all the wheels
I freakin don't know much but when you jump my case over what I have accomplished then your stepping on the wrong dude. With what I do know I am the best at it and it will stay that way.
You dont know much, but I'm the ignorant one? Sorry to bring that up again, but you levelled it at me and it was a little harsh. As noted above, i didnt feel I'd stepped on you, but I have seen similar responses from other people when I start asking them questions. I'll nudge a reality check in here, that to be the best at something you have to doubt that you are. Nothing else will drive you to improve. If you finish and pat yourself on the back and congratulate yourself for being the best there is, then you wont be very flexible or open to criticism on it. You wont even be very good to talk to about it. I would say i'd love to see you appreciate what i'm saying here, but you already proved unapproachable in that regard. I wish you luck with being the best and staying that way - there's a lot of room for complacency in such a statement, and bigger men than all of us have thought the same only to fall harder than we ever will.
I love what I do and I understand what I do. I have a long way to go. To share some resourcful critism would be appriciated but to clunder my achievement and logic with no evidence and or purpose in mind ticks me off.
So it would appear. I personally felt that nothing in my comments would illicit this reaction; i was merely asking you to explain the modus operandi you had chosen. I was attempting to satisfy myself that your code would be worth using. I'm actually satisfied of something else.
I don't duplicate code, I better it, if not why would i even build a music player to start with?
I see nothing in my comments that accuse you of plagiarism, if that's what youre defending here.. As to why you'd build a music player - yes.. why would you? With over a hundred such apps, what does yours bring? What compelling reason is there for using your app over WMP, iTunes, Winamp, Deliplayer, Apollo, Foobar2000 (in reverse order of quality)? Will you even answer this question without launching into me for deriding your software?
I really do appreciate all the help I have recvieved on this site and in the forums but this is the first I've been beatin up on and for somthing so stupid. We know 1.0 uses 30 bytes and 1.1 uses 28, null 1, then 1 for track. What's really so bad about forcing the null byte and setting the track number? Give me a break man, whatever.
I progressively ask you questions, you progressively beat yourself up til it culminates in having a go at me, and you complain that youre beat up.. ? I apologise if it really was my doing; i havent seen how it is thus.
Nothing's really so bad about forcing the null and setting the track - youre thus saying that your tagger is only capable of read/writing 1.1. I ask why you would program it in such a restrictive fashion when the unrestricted mode is so easy to code in, and you explode. And it's my fault? How rude!