Posts by DrTT

    Dear all,

    Not sure if anyone else has asked this, couldn't find anything in search.

    This topic has been brought up several times in the past, but mostly as a "Feature Request". The last discussion I can remember was thread reverse-scroll-button-direction-on-remote from more than two years ago.


    Great that this time Kemper/Hans shows some reaction; let's hope that it passes consideration and gets implemented.

    (Although I have to admit that Hans's argument about the button reachability is convincing...).


    Best regards

    DrTT

    Dear all,


    there is a scientific treatise on electric guitars done by a physic professor
    called Manfred Zollner called "Physics of the Electric Guitar".


    Unfortunately it is in German, but because it was done at a polytechnical
    university (in Regensburg, Germany), at least the draft version can be
    downloaded as Physik der Elektrogitarre.


    It is about 1200 pages, the introductory chapter is a parody on musical
    instrument journalism and can effectively be skipped, but the rest is physics
    at its best. Chapter 7 covers the influence of wood on the sound.


    Too bad that this guy doesn't do an English version, but the diagrams
    are themselves impressive.



    Best regards,


    DrTT

    Dear all,


    Well the issue may soon be "moo" (as Joey on Friends would say). I write software for my day job, and my inner nerd could not resist finding out how Rig Manager stores data - and how I could modify it with a simple little program....


    This has already been discussed 18 months ago at length in the Manipulation of RigManager Data Programmatically thread.


    Unfortunately - as mentioned there - it is not as easy as you think, because all the metadata (like e.g. the amp and cabinet names) is additionally embedded in a binary blob for the rig.


    There is also a pending feature request at Programmatic Access to Rig/Performance Data of RigManager for an API access to the rig manager (e.g. from python...).


    So please first check the forum before reopening discussions. A simple search for "sqlite" give 20 hits with threads covering several of your suggestions.


    Best regards


    Dr. TT

    Dear all,



    maybe I'm strange, but I find the direction of scroll buttons on the remote
    counterintuitive especially in the performance mode.


    Yes, the "v"-button scrolls down numerically and the "^"-button scrolls up,
    but when I imagine a list of performances like

    • First Song
    • Second Song
    • Third Song
    • ...

    I am thinking the other way: DOWN means incrementing the performance
    index and UP means decrementing.


    So in my opinion there should be an option to reverse the scroll direction
    of the remote cursor buttons. Did I miss that in the instructions?


    Funnily enough, I cannot remember how the buttons on the toaster work.
    In my opinion, the lower joypad button also increments, doesn't it?


    Am I the only one with that weird thinking?



    Best regards,


    Dr. TT

    Dear bigHF,


    to be honest I found your qualification »dangerous mixture of being curious, overconfident and childish« patronizing.
    In my initial post I absolutely warned that direct database modifications are last resort measures and I guess most
    posters here are quite aware of that risk.


    And we are not talking about a complex database schema in RM: two flat tables with no relation at all. So
    almost no risk that tricky integrity constraints may apply. The only complication comes from the fact that those
    tables are denormalized, because the blobs contain data redundantly (already available in other fields).


    Fine, this is Kemper's design decision, bad luck for us.


    You tell us that »this is not the proper way to overcome any current limitation in the RM«, but you leave
    open how to overcome those limitations, especially when the limitations often depend on the interests of the
    user. My solution has been a feature request for a simplistic API for the RigManager that maintains the
    integrity of the data.


    So what is your idea?


    Best regards,


    DrTT

    Dear all,



    in the private forum there has been a thread about accessing the contents of the RigManager database ("Manipulation of RigManager Data Programmatically...") to do some automated tasks.


    This has been discussed and refuted for apparent reasons of data integrity.


    Nevertheless some programmatic access to the RigManager rigs would be helpful. E.g.

    • a search could be done using more complex search criteria than in the RigManager (read access) or
    • tags could be automatically adapted to individual naming conventions (write access).


    When providing a functional interface the Rig Manager still has complete control on the data integrity. For Windows an ActiveX API should be fine, for Mac OSX the AppleEvents protocol could be used.


    A super-simple API could be for example:

    • connect (databasePathInRigManager : String)
    • getRowCount(tableName : String) : Integer
    • getFieldValue(tableName : String, id : Integer, fieldName : String) : String
    • setFieldValue(tableName : String, id : Integer, fieldName : String; newValue : String)
    • disconnect


    This is a crude and inefficient interface, but it would allow the desired access. But I am sure you are able to provide a much better one...



    Best regards,


    DrTT

    Hello GString,


    you wrote:

    we had this before. it resulted in tears and broken data. is it so difficult to accept that it is not a good idea to edit a database without knowing how it works?


    This was the reason why I had warned in my first post. It's fine that there is redundancy in the database; you can design your private tables in a way that is most efficient for your application.


    Nevertheless you seem to miss the point: the interest in database access by several people in the forum comes from the fact that some automated change of tags would be very helpful.


    Note that I am no kiddie trying to test its relational database abilities. I have more than twenty years of experience as an IT consultant and also did several data quality/data cleansing projects on databases orders of magnitude larger than even the Rig table of the rig exchange.


    My problem is that the tagging of the rigs is really inconsistent (although I can understand what legal boundary conditions lead to it). But I do neither want mangled or phantasy names on my Kemper nor being forced to do a manual change. Data cleansing is a job to be automated.


    Hence I have posted a feature request for a small API for the RigManager.


    Best regards,


    DrTT

    Hello Allenhuish,



    you wrote:

    Quote

    As far as I remember there is a large table in the kemper pdf (can't remember which one) which decodes all of the real names for the factory packs


    The list of factory names can be found at:
    http://www.kemper-amps.com/api/download/dlid/589
    But this only covers the factory presets; I am also talking about the rig exchange and there you only can use heuristics...


    Best regards,
    DrTT

    Hello Allenhuish,


    you wrote:

    So when I rig says 'Mars' update the names to 'Marshall'. I haven't thought about it in detail...as mentioned above, there is a character limit. I've also noticed quite a few JTM45 profiles use different names which makes it difficult when searching through all of the jtm45s. ditto for bassmans (bassmen?) and other popular amps.


    My approach here is to set the "Source Amp" to the manufacturer name. As you mentioned there is some heuristics necessary to get this right because there is a lot of creativity outside (e.g. by Andy from TAF). Or do you know what a "Calm Roamed" really is?
    The "Amp Model" also requires some search in the internet, but some automatic rules can be applied. So a 'Mars CM Eight-Hundred' might be an 'Source Amp' Marshall and an 'Amp Model' JCM800.
    Once you have the manufacturer and model filled, I set the "Amp Name" to a three character abbreviation of the manufacturer (via a mapping table) concatenated with the model. This normally fits into the length limited fields quite well.
    So the algorithm is clear, but possibly we need to establish some Kemperite secret code for the manufacturers and amp models. Otherwise it is guesswork.


    Best regards,


    DrTT

    Hello Skoczy,


    sorry, I was just joking, because of your example with "0 rows returned" from
    the effects table.


    As you mentioned there is really no table "Effects"; Rig manager does not look into the
    rig data: it is just one big binary object annotated with human readable tags.
    Only those tags are editable; rig manager has no concept of effects at all...


    Best regards,
    DrTT

    Hello Allenhuish,


    you wrote:

    Thank you. I was thinking about a few things that I'd like to do with raw access...for example update amp names from their 'pseudo' names in batch.


    Exactly. It is easy to enforce naming conventions via scripts. Because of the limited tag length I am thinking of using manufacturer abbreviations in the amp names as well as the model information.


    Best regards,


    DrTT

    Dear all,


    for those interested in topics around rig management that cannot be handled via RigManager: as already mentioned in other threads all data of the rig manager is stored in relational database files in SQLITE format.


    Rig Manager stores all data in Windows in the user directory "%LOCALAPPDATA%\Kemper Amps\RigManager", in MacOSX I assume it should be in "~/Library/Application\ Support/Kemper Amps/RigManager". In those directories you find the folder hierarchy of your Rig Manager and several db-files in SQLITE format.


    The databases have a very simple table structure:

    • Each "Rigs" table contains a row per rig with its tags and an embedded MIDI file blob that represents the associated profile and the settings.
    • Each "Performances" table contains a row per performance with a single MIDI file blob for the performance and five slot names, five top level amp and cabinet tags and slot enable flags. Note the single MIDI blob per performance: hence the performance stores the settings for all slots in one object; it does not reference any rig.

    The attribute names are straightforward: the English names of the tags are used (like e.g. "Name", "Author", "Amp Name", ...).


    Assuming you have some background in relational database manipulation: if you have a SQLITE editor or a programming language with sqlite support (e.g. python), you can read and also modify the data in the tables.


    E.g. you might standardize the tag settings for rig names, amp models or cabinet names programmatically. I am personally thinking about eliminating duplicate rigs that differ only in tagging, but not in the settings data.

    As always modification is at your own risk:
    modifying data from foreign applications might lead to unforeseen effects and might impair the integrity of application data...

    Michael Mellner wrote

    Quote

    sory for this offtopic


    Football is never off-topic.
    Even in this forum there had been some heated debates two years ago about e.g.
    unbeatable teams ;) . So you might have a look :rolleyes:


    Best regards,
    DrTT

    Dear schneidas,
    thanks for your prompt answer! No need to extend this to a lengthy debate. Sorry for the rude comment about "Spain as the best team ever makes me laugh".
    I am not too much into qualifying a team by just one match. This is what I meant with "Germany is neither divine nor pathetic" and "Spain is neither unbeatable nor Italy is a disaster".
    Let's see how it all works out in the next years.
    And now let's move on to our Kemper (or to sleep ;) ). Whatever you prefer...
    Best regards and Peace ;)
    DrTT

    Dear all, dear schneidas,


    sorry, this seems to get out of hand. I have no problem with your opinion that "Spain 2012 is the best team ever". But I am picky when you qualify my opinion as "invalid".
    Nevertheless let me answer your statements where we disagree most. Maybe just for the entertainment of the others ;)

    Quote from schneidas

    I was just replying as you obviously targeted an entire post at me. There's no rudeness intended in what I said. I was merely stating a fact.


    What "fact"? That the current Spanish team is the "most awesome team ever" or "unbeatable"?

    Quote from schneidas

    Btw, there was no smiley in your initial post - so what? Does this qualify you as rude? By your definition: yes!

    As far as I can tell there has been a smiley (where I stated that it might be a matter of personal opinion). So this should cover your requirement. And it also has signalled that I'm pissed but understand that there are different perspectives.

    Quote from schneidas

    Here's two examples of someone that could interpret you being rude:


    Both correct observations. I personally would qualify that as "sarcastic" ;) I'm a little disgusted by the hype on the Spanish team of 2012 considering the Euro tournament in total. I certainly applaud Spain for winning the championship, but I completely repudiate that they are "lightyears ahead" or "best ever".

    Quote from schneidas

    No one said this


    You did, "Clearly the most awesome team ever... unbeatable!". My point is that games of teams on this level are quite close and very often the physical fitness or plain luck decides those games. When Spain had lost in the penalties against Portugal would you still qualify them as the "most awesome team ever"?

    Quote from schneidas

    Let me know when your book gets published, as I will definitely be buying it.


    ;) ;)
    So provide some input!

    Quote from schneidas

    The teams you are listing next are valid. Although again your opinion is debatable.


    No problem with that, schneidas! As you can see I like controversies. But you didn't debate; you just stated that everything I said is invalid except that I said to have a different opinion.

    Quote from schneidas

    Exactly. *Your* personal opinion. Why are we even having this conversation?


    Because a forum is for discussing different opinions and maybe learn something from it. And not qualifying other opinions as "invalid". And you tell me that you do not care about my opinion, but then why are you presenting yours initially? Should I care or not?

    Quote from schneidas

    That being said, take any of the teams you mentioned and let them play against yesterday's Spain. I bet Spain would hold up or even win. But the discussion is pointless.


    You're right. It is impossible to compare the playing styles of different decades. For example the technical expertise of the Puzcas or Pele team was amazing, their athleticism was low compared to now.

    Quote from schneidas

    Maybe not to you. I'm not going to loose sleep over it.


    I was talking about the 2010 World Cup. But here we also disagree, fine.
    A lost chance of finding out the fundaments of our opinions.


    Best regards


    DrTT

    Dear all,


    Quote from schneidas

    This is the most important (and only valid) point of your post!


    I don't wanna start a personal vendetta. But there is no smiley here, hence I find that statement about invalidity of my arguments very rude! Obviously you think you're a certified football expert, don't you?

    Quote from schneidas

    I'm not going to comment on the rest of your post, as our perception of quality obviously differs greatly...


    Maybe. Unfortunately you did not give any facts to substantiate your opinion, whereas it is easy to back up mine. Well, let me take the World Cup 2010 as an example:

    • Group Phase:
      Germany: 4-0 (Australia) 0-1 (Serbia) 1-0 (Ghana)
      Spain: 0-1 (Switzerland) 2-0 (Honduras) 2-1 (Chile)
    • Knockout Stage:
      Germany: 4-1 (England) 4-0 (Argentina) 0-1 (Spain) 3-2 (Uruguay)
      Spain: 1-0 (Portugal) 1-0 (Paraguay) 1-0 (Germany) 1-0 (Netherlands)

    So altogether Spain scored 8 goals in 7 games, Germany did this in two. And e.g. Germany's match against Argentina has been coined by the international press as a "massacre" and "the best first six minutes the world has ever seen" while the match against Paraguay was considered "a bad play" even by coach Del Bosque.
    Sorry, of course, Paraguay was (at that time) FIFA ranked #31 and Argentina was only #7, so this easily explains the difference.
    Very convincing total domination by Spain throughout the WC tournament. Has there even been a single interesting game by the Spanish in the complete tournament?


    But sometimes arguments are hopeless against fuzzy sentiments.


    Best regards


    DrTT

    Dear all,


    schneidas wrote:

    Congrats Spain! Clearly the most awesome team ever... unbeatable!


    Some comments here are really hard to bear.
    Neither Spain is so unbeatable nor Italy is a disaster team. Germany is neither divine against Greece nor pathetic against Italy.
    I admit that Spain was absolutely furious against Italy in the final, but the 4-0 does not at all reflect the level of the squads correctly.
    Throughout the tournament Spain was mediocre, lucky (e.g. against Portugal and in the first game against Italy) and I find their tiki-taka-style extremely boring. It reminds me of handball.
    To be honest: there has been no really shining team in the whole tournament.
    And to say that the Spanish squad is the best team ever makes me laugh. Legendary or at least convincing squads are in my book:

    • 1954 Hungary
    • 1958-1970 Brazil
    • 1972-1976 Germany
    • 1984-1986 France
    • 1990 Germany
    • 1998 France
    • Germany until the semifinals 2006 and 2010
    • 2008 Spain


    And the Spanish squad of 2010 and 2012 is not.
    But this might be a matter of personal opinion ;)


    Best regards


    DrTT