Current version

v1.10.4 (stable)

Navigation

Main page
Archived news
Downloads
Documentation
   Capture
   Compiling
   Processing
   Crashes
Features
Filters
Plugin SDK
Knowledge base
Donate
Contact info
Forum
 
Other projects
   Altirra

Search

Archives

01 Dec - 31 Dec 2013
01 Oct - 31 Oct 2013
01 Aug - 31 Aug 2013
01 May - 31 May 2013
01 Mar - 31 Mar 2013
01 Feb - 29 Feb 2013
01 Dec - 31 Dec 2012
01 Nov - 30 Nov 2012
01 Oct - 31 Oct 2012
01 Sep - 30 Sep 2012
01 Aug - 31 Aug 2012
01 June - 30 June 2012
01 May - 31 May 2012
01 Apr - 30 Apr 2012
01 Dec - 31 Dec 2011
01 Nov - 30 Nov 2011
01 Oct - 31 Oct 2011
01 Sep - 30 Sep 2011
01 Aug - 31 Aug 2011
01 Jul - 31 Jul 2011
01 June - 30 June 2011
01 May - 31 May 2011
01 Apr - 30 Apr 2011
01 Mar - 31 Mar 2011
01 Feb - 29 Feb 2011
01 Jan - 31 Jan 2011
01 Dec - 31 Dec 2010
01 Nov - 30 Nov 2010
01 Oct - 31 Oct 2010
01 Sep - 30 Sep 2010
01 Aug - 31 Aug 2010
01 Jul - 31 Jul 2010
01 June - 30 June 2010
01 May - 31 May 2010
01 Apr - 30 Apr 2010
01 Mar - 31 Mar 2010
01 Feb - 29 Feb 2010
01 Jan - 31 Jan 2010
01 Dec - 31 Dec 2009
01 Nov - 30 Nov 2009
01 Oct - 31 Oct 2009
01 Sep - 30 Sep 2009
01 Aug - 31 Aug 2009
01 Jul - 31 Jul 2009
01 June - 30 June 2009
01 May - 31 May 2009
01 Apr - 30 Apr 2009
01 Mar - 31 Mar 2009
01 Feb - 29 Feb 2009
01 Jan - 31 Jan 2009
01 Dec - 31 Dec 2008
01 Nov - 30 Nov 2008
01 Oct - 31 Oct 2008
01 Sep - 30 Sep 2008
01 Aug - 31 Aug 2008
01 Jul - 31 Jul 2008
01 June - 30 June 2008
01 May - 31 May 2008
01 Apr - 30 Apr 2008
01 Mar - 31 Mar 2008
01 Feb - 29 Feb 2008
01 Jan - 31 Jan 2008
01 Dec - 31 Dec 2007
01 Nov - 30 Nov 2007
01 Oct - 31 Oct 2007
01 Sep - 30 Sep 2007
01 Aug - 31 Aug 2007
01 Jul - 31 Jul 2007
01 June - 30 June 2007
01 May - 31 May 2007
01 Apr - 30 Apr 2007
01 Mar - 31 Mar 2007
01 Feb - 29 Feb 2007
01 Jan - 31 Jan 2007
01 Dec - 31 Dec 2006
01 Nov - 30 Nov 2006
01 Oct - 31 Oct 2006
01 Sep - 30 Sep 2006
01 Aug - 31 Aug 2006
01 Jul - 31 Jul 2006
01 June - 30 June 2006
01 May - 31 May 2006
01 Apr - 30 Apr 2006
01 Mar - 31 Mar 2006
01 Feb - 29 Feb 2006
01 Jan - 31 Jan 2006
01 Dec - 31 Dec 2005
01 Nov - 30 Nov 2005
01 Oct - 31 Oct 2005
01 Sep - 30 Sep 2005
01 Aug - 31 Aug 2005
01 Jul - 31 Jul 2005
01 June - 30 June 2005
01 May - 31 May 2005
01 Apr - 30 Apr 2005
01 Mar - 31 Mar 2005
01 Feb - 29 Feb 2005
01 Jan - 31 Jan 2005
01 Dec - 31 Dec 2004
01 Nov - 30 Nov 2004
01 Oct - 31 Oct 2004
01 Sep - 30 Sep 2004
01 Aug - 31 Aug 2004

Stuff

Powered by Pivot  
XML: RSS feed 
XML: Atom feed 

§ Your video player is not awesome

I'm pissed.

I needed to install a third-party video player recently to diagnose a problem with paletted video, only to discover that it was really, fatally broken in that regard. Okay, I can't give too much crap for that, because I've broken paletted video plenty of times in VirtualDub. However, this is the first time that I've seen a decoder broken not only such that it uses the wrong stride to decode the video, but that the stride used depends on the size of the window. At that point I decided that getting a paletted video stream to work in this player was useless, and decided to uninstall it.

That's when I found out how much damage that this player had done to my system.

You see, this player is so awesome that it automatically decided to silently register itself as the default player for ALL video types, including AVI, MPEG, and ASF. Hey, it plays Flash video too, so why not take SWF? People store MPEG video in DAT files, so let's take that too, since nobody would ever use .DAT for anything else, right? And while we're at it, we'll take the .AVS Avisynth extension, because obviously if you're using an Avisynth script it's because you just want to play the result. The File menu in Explorer is a bit lonely too, so we'll add half a dozen menu entries just for whatever you'd want to do with this wonderful player.

Okay, I've been through this before... just reassociate the files with the One True Player(tm) (i.e. Media Player Classic) and go on. Or not. You see, this player also decided to register all new file types in Explorer, changing every single multimedia file type to use its own icon and label, so that instead of "Video file" for .AVI, it would show up as FOO - Video File, even if the type was changed back to use a different player than FOO. Which made me very unhappy as I then had to use Registry Editor to manually fix each and every single file type that had been farked up by this stupid player application, and thus ensuring that this player stays permanently on my Do Not Install shiatlist.

Don't encourage programmers who do selfish things like this.

Comments

Comments posted:


A name ! We need a name ! : )

ParkerLewis - 22 05 10 - 21:11


Burn the witch! ;)

Leak - 22 05 10 - 21:34


At least it didn't install a toolbar in Internet Explorer(!) Having switched to Ubuntu as my main OS a few years ago, I have to say I don't miss this shit at all.

Joseph - 22 05 10 - 21:42


Wouldn't have System Restore helped in that case? Usually you get a restore point directly before installations.

Johannes - 22 05 10 - 22:26


Is this Drastic Preview? If not, well, don't install that one either!

nine - 22 05 10 - 23:04


.torrent files are another popular target for this. I ended up setting ACLs to deny myself write access to the registry keys.

Dagger - 22 05 10 - 23:18


Almost reads as malware...
But name would be definitely be good - so we all can avoid it.

Klimax - 22 05 10 - 23:57


I have switched to using "Default Programs", it is available since XP SPsomething and does not need any registry hacking, one click and all the file associations are set/restored, no need to mess with those keys under HKCR. Programs can change them as they want, there will be no effect.

Gabest - 23 05 10 - 00:02


And this is why you always install weird software in a virtual machine.

File associations is not hard to do right, and the users will love you for it. Sigh.

Niels (link) - 23 05 10 - 01:33


This MUST have been the Nero player, right?

ggn - 23 05 10 - 04:04


No, it's not Nero or Drastic Preview. (Never heard of the latter.)

Normally, I would use a VM, except that video acceleration support is usually insufficient to test a video player. Winamp 5, for instance, doesn't seem to work at all.

Phaeron - 23 05 10 - 05:26


We can't avoid this awful program if you don't tell us what it is. =(

James - 23 05 10 - 05:41


...Sounded like "bad old" Xing Player me...

Jam_One - 23 05 10 - 06:31


Is this the KMPlayer?

Jeff - 23 05 10 - 06:33


God damn... I had the same problem with PowerDVD 7 some years ago which stole lots of file association (e.g. jpg) every time I started it - which occurred only twice... ;)

Cornfed - 23 05 10 - 06:44


In fact, Raymond Chen has an article about this:
http://blogs.msdn.com/oldnewthing/archiv..

Yuhong Bao (link) - 23 05 10 - 07:30


As irksome as magical file associations and explorer extensions may be, it -is- the result of some 'usability gurus' stating that the user should not be presented with too much choice.
Compare e.g. a local mom&pop restaurant serving 200 different dishes vs a 4-star+ thing where you're lucky to get a choice between 5 different meals.

Presenting the user with the option "Add explorer extensions" is just going to make the average user go "wuh?" - and one typically can't expect them to go google it. File and media associations are even worse - especially when you're dealing with a full-blown media handling application. You're installing it, presumably that means you want to use it. But what do you want to use it for? Just your JPG photos - or AVIs, too? How about CDs and DVDs? How about TIF, PNG, TGA, BMP, PCX, HDR, EXR, etc.? (see the IrfanView installer vs e.g. Picasa - thankfully, they target different audiences and IrfanView users tend to know what's what).
The only way to reduce the options is by making assumptions - and with those assumptions, you're bound to impact some people in a negative - to them - manner. I.e. if you reduce the options for all the image formats to 'Still images', you're still going to get people complaining that they really just wanted to use it for JPGs because they use TIF files as their non-lossy format when editing with Photoshop.

Ultimately, this is a pitfall of Windows' design. As Yuhong Bao's link points out, a more proper 'file association' is to register your app in the 'open with...' menu. But that still leaves your app out as the actual default - so if the user just double-clicks the file, they're still going to get the old associated application, and will be left wondering why the application they just installed isn't being used. Ideally, no app would be allowed to 'associate' itself with particular media. The 'open with' list would be authoritative, with the user being prompted which app to use whenever that list has been modified in a way that may impact the expected behavior (i.e. a new app added, or the currently 'associated' app being removed) - with the option of 'always use this application' to make an extension-app 'association' at the user's discretion, rather than the app's.

That said.. even given the irksome behavior of magical associations and the like, the -real- nasty bit here is the uninstaller of the application. It's one thing for an application to go and change file associations (see above) - but the uninstaller -should- at least restore things to the previous state where applicable (i.e. if the state hasn't been changed since installation, otherwise a false restoration may occur).
If this was a manual uninstallation (find folder, delete folder+contents, delete start menu entry and worry about ARP some other rainy day), I'd say you may have brought this unto yourself. If you ran the application's supposed uninstaller, the installer/uninstaller authors should be ashamed of themselves.

Richard - 23 05 10 - 13:06


That's what happens with you install without InCTRL5...

lwc - 23 05 10 - 22:57


It's too bad windows hasn't a more sophisticated system for managing extensions/verbs etc. It's bad enough that we rely on installers to do this work, associating icons, and extensions, but even if they improve it I doubt it will catch on within ten years. I doubt anyone would have designed such a system fifteen years later.

Ben L - 24 05 10 - 04:07


> It's one thing for an application to go and change file associations (see above) - but the uninstaller -should- at least restore things to the previous state where applicable

IMHO, it shouldn't try to do this - instead the uninstaller should just remove the association, since it has no way of knowing if the previously associated application is even still installed.

ender - 27 05 10 - 18:54


> IMHO, it shouldn't try to do this - instead the uninstaller should just remove the association, since it has no way of knowing if the previously associated application is even still installed.

I'd agree for the file type to application, since Windows will prompt the user to choose a new default, but I'd have to disagree for the extension to file type association, i.e. .avi -> avifile. It's best not to redefine those to begin with, but if they do get modified, the uninstaller should at least fix it, because applications often expect those default associations to exist and the UI for that in Explorer is klunky.

Phaeron - 27 05 10 - 19:14


> > It's one thing for an application to go and change file associations (see above) - but the uninstaller -should- at least restore things to the previous state where applicable

> IMHO, it shouldn't try to do this - instead the uninstaller should just remove the association, since it has no way of knowing if the previously associated application is even still installed.

I respectfully disagree.. just because the vast majority of installer/uninstaller authors don't make any effort to check this, doesn't mean they can't. Just as Explorer uses the registry to find an associated application's location, so can an installer/uninstaller product. Push comes to shove, you re-associate with a known default application (i.e. for anything that even remotely resembles a flat text file, even if it's really an ini file or xml file: notepad)

Does that still leave room for problems? Certainly; but no graver an error than simply removing the association altogether.

A lot of people are sick of this song, but the lyrics "nobody said it was easy, no-one ever said it would be this hard - oh take me back to the start" very much apply here. When I first started writing installers and uninstallers, I knew that nobody said doing anything beyond the 'wizard' style installer would be easy, but looking back I realize no-one ever said it would be as hard as it is either - and I certainly do wish we-that-is-Microsoft could go 'back to the start' and do this right.
Instead, they have fragmented the problem even further by introducing the 'default programs' option (SPAD) in the add/remove programs control panel applet, which only offers choices for web browser, mail, media, messaging and java of all things (fallout from a legal skirmish, I suppose) - which does nothing to address the underlying problem -or- other media / filetype 'associations'.

Richard - 27 05 10 - 23:09


@Richard:

The problem is that the user could have installed (and uninstalled) three other programs after the one that modified the association in the meantime.

So, what if the user has installed another program and decided they like it? Your uninstaller is going to piss them off if you kill the other program's associations by "restoring" them to what you think it is right.

In my opinion, the best approach is to do the following:

- Change ".avi" default key from "avifile" to "MyAwesomeAppAVIFile" and create the corresponding key with the icon/context menu entries/etc.

- When uninstalling your program, check if ".avi" default key is still "MyAwesomeAppAVIFile".

- If it is, then change ".avi" default key back to "avifile" or whatever it was before your program got installed, and delete "MyAwesomeAppAVIFile" key.

If it is not (meaning that the user has made some changes in the meantime), then DO NOT change ".avi" default key back to "avifile" -- just delete your "MyAwesomeAppAVIFile" key.

Way too many programs fail to do this right.

The worst offenders in my opinion are those who don't even offfer you the option to chose which file types to handle, and even worse ones are those who pretend that you are in control, but do their bidding anyway like Windows Media Player setup does.

http://levicki.net/articles/rants/2008/0..

@Avery:

I have a .reg file with all important file associations set up like I want them. When some program messes them up I just click on the .reg file and they are restored. Here is an example for .AVI files:

;
; .avi
;
[HKEY_CLASSES_ROOT\.avi]
@="avifile"
"PerceivedType"="video"
"Content Type"="video/avi"

[HKEY_CLASSES_ROOT\avifile\shell]
@="preview"

[HKEY_CLASSES_ROOT\avifile\shell\edit]
@="&Open (VirtualDub)"

[HKEY_CLASSES_ROOT\avifile\shell\edit\command]
@="\"C:\\PROGRAMS\\VirtualDub\\VirtualDub.exe\" \"%L\""

[HKEY_CLASSES_ROOT\avifile\shell\preview]
@="&Preview (VLC)"

[HKEY_CLASSES_ROOT\avifile\shell\preview\command]
@="C:\\PROGRAMS\\VLC\\VLC.exe \"%L\""

I also have a .reg file which deletes keys -- you just add '-' before the key name like this:

[-HKEY_CLASSES_ROOT\SystemFileAssociations\.avi\shellex\ContextMenuHandlers]

Very usefull for deleting junk left by rogue programs.

Igor Levicki (link) - 29 05 10 - 00:49


SPlayer? again, if not, avoid it at all costs anyway, breaking all the thumbnails is its favorite trick :/

Carbon6 - 30 05 10 - 11:15


KMPlayer.
This is the worst my experience with 'file associations' since 1990.

Misha - 02 06 10 - 17:53


I'm not sure Avery refer to which player. But to me, the player name is "SMPlayer" (front-end of MPlayer), it associate video automatically, the very funny thing is -- it provide an option to associate which extension, but when you "associate none" and apply, it automatically re-associate some extensions.

johnsonlam - 02 06 10 - 20:29


had a similar problem... stupid associations

Jean - 05 06 10 - 04:04


@Igor

That was my point - uninstallers should check if the current registry key value is that which its associated installer had set. If it isn't, that key should simply not be touched (if a separate key with handler information was created, then sure - go ahead and delete that).

The problem isn't so much when your app -isn't- the handler anymore.. it's when it is, but you overwrote the settings for another third party application.. and that application is no longer present on the system.

I.e.
Let's say that the system default is..
avi = WMP
Then the user installs WinAmp..
avi = WinAmp
Then the user installs MyApp..
avi = MyApp
Then the user uninstalls WinAmp. Per the above rules, WinAmp would notice that avi != WinAmp, and so leaves that key be. All good and well.
Now the user uninstalls MyApp. Per the above rules, MyApp sees that avi == MyApp, and thus reverts to..
avi = WinAmp.

And it is therein that a problem pops up.. WinAmp no longer exists on the system. So the next time the user tries to launch an AVI file, they'll get the "I can't open the program associated with this file type." error dialog - if the user is lucky, Windows will recommend some other media players that registered themselves under the 'Open With' keys.. if they're unlucky, they'll get a whole list of applications that includes e.g. Notepad.

Depending on the school of thought, you're either okay with that (and the user will just have to figure out what to do to select an appropriate application), or you're going to associate with an appropriate application yourself as a default fallback (and if that's not the option the user would have chosen, the user would then have to figure out how to re-associate with the app they -would- have picked).

Again, though, this is largely a Windows issue and could have been handled so much cleaner; but that doesn't excuse installer/uninstaller authors from at least trying - let alone having their software exhibit the behavior described in Phaeron's post

Richard - 17 06 10 - 13:40


@Richard: Regarding choice vs simplicity: "Custom Install"/"Quick Install".

@Phaeron: Sandboxie.

shae - 16 10 10 - 10:27


http://sourceforge.net/projects/mpc-hc/

MPC-HC is the only good, reliable media player, continuing from where the old abandoned MPC left off.

HC - 27 11 10 - 13:46


Thanks for you comments on DrasticPreview. We have fixed it, and it no longer takes over any of the file types under Windows (or OS-X for that matter). Everything is fully manual, and contained within one directory (no DLL Hell)

Infinitebuzz (link) - 06 06 13 - 14:52

Comment form


Please keep comments on-topic for this entry. If you have unrelated comments about VirtualDub, the forum is a better place to post them.
Name:  
Remember personal info?

Email (Optional):
Your email address is only revealed to the blog owner and is not shown to the public.
URL (Optional):
Comment: /

An authentication dialog may appear when you click Post Comment. Simply type in "post" as the user and "now" as the password. I have had to do this to stop automated comment spam.



Small print: All html tags except <b> and <i> will be removed from your comment. You can make links by just typing the url or mail-address.