View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005197 | JEDI VCL | 00 JVCL Components | public | 2010-03-15 23:40 | 2011-06-10 16:09 |
Reporter | wilstyx | Assigned To | AHUser | ||
Priority | normal | Severity | trivial | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | 3.38 | ||||
Target Version | Fixed in Version | 3.40 | |||
Summary | 0005197: JVID3V2 and BPM tags | ||||
Description | I had ran into a problem with tags written by several other tagging programs and realized that since BPM can have a decimal then it can not be a Cardinal Value. A quick search of the source code and a couple of line changes and it was pretty simple to fix ! Although this would break somebody elses use of it ! Thought it might be better to make it a second property of BPMString or something just to keep it backward compatable. I have a set of files that I created that torture any tagging library to show its weakness! I could not find any tagging library (that supported BPM as many do not ) that used an integer (Cardinal) value. I looked up the definition on the ID3V2 Web Site and it says : BPM Defined as ( ) The 'BPM' frame contains the number of beats per minute in the main part of the audio. The BPM is an integer and represented as a numerical string. Even the official site says its an integer ? ? ? Mixmeister and Winamp writes the TBPM Frame with the unicode byte order mark ( I can't think of what else it would be 01 FF FE ? ) and then a numerical string ( with zero's in it ) ie 31 00 32 00 30 00 2e 00 35 00 35 The GetText pulls the value right out ! When the SetText routine fires it writes the BPM string as it a simple numeric string ie 31 32 30 2E 35 35 ( 120.55 ) ! Now sure what you would want to do with this but here it is ! Thanx for a great set of components. below find the changes I made to use the component in my project. Changes to JvID3V2Base.pas line # 1288 -- TJvID3TextFrame, { fiBPM } { was NumberFrame changed 03/15/10 DW } Changes to JVID3V2.pas // this changed from Cardinal and GetNumber SetNumber 03/15/10 dw 71 -- property BPM: WideString index fiBPM read GetText write SetText stored False; | ||||
Additional Information | Thanks for the quick fix on Access Violation JVID3V2Demo.exe issue # 5165 obones! I knew it was simple just could not see it ! | ||||
Tags | No tags attached. | ||||
Date Modified | Username | Field | Change |
---|---|---|---|
2010-03-15 23:40 | wilstyx | New Issue | |
2010-04-02 13:11 | AHUser | Note Added: 0017343 | |
2010-04-02 13:11 | AHUser | Status | new => resolved |
2010-04-02 13:11 | AHUser | Fixed in Version | => Daily / SVN |
2010-04-02 13:11 | AHUser | Resolution | open => fixed |
2010-04-02 13:11 | AHUser | Assigned To | => AHUser |
2011-06-10 16:09 | obones | Fixed in Version | Daily / SVN => 3.40 |