I wasted today and in the past months a lot of time on solving a problem that is actually very simple and if you would believe the advertisements than there shouldn’t be a problem at all or a simple solution right around the corner. Well, that is obviously not the case.
Lets start with an explanation of what am I trying to accomplish.
Part 1. The Simple Idea
I have multiple computers in a home network. They all see each other and permission are set that each computer can access resources and data on each of the other ones.
I also have a lot of media data. Music, Videos, Clip arts, Foley Sounds, Video Snippets etc. I converted most of my 300+ CDs to MP3’s, but only converted a fraction of my 200+ DVDs for several reasons. Anyhow, what I already have is a lot and nothing that I could copy from A to B with a thumb drive or USB stick. I also don’t want to have all those GB of data on each computer (which would not fit and does not make sense).
No problem, you can buy for a fair price something called Network-Attached Storage Devices, which are basically hard drives in a smart external casing that allows not only access to them via USB 2.0 or Fire-wire, but to hook them up into the network and make them visible via network share to any other computer in the same SUB-C class network, if it authenticates itself properly. Well done, now I have a nice network storage and all the data on it. I can browse it and play individual stuff.
Now I wanted to do the easy part (so I thought), creating a library with all that stuff in it. Nicely updated with the Meta Data that are already in the files themselves or from one of the large media databases on the Internet. Get the Album art for great looks, categorize stuff and can apply nice filters like “Show me all songs from artist XYZ that I have” or “Show me all the movies by director ABC”.
Part 2. It Smells Like Trouble
Okay, there was one tricky part that I was aware of, the various video formats and also the increasing number of audio formats that compete with MP3. While the “Codec” world is still a mess, is it still possible to get a solution. I was able to manage to teach my computer to play back virtually any media format that I threw at it. It took some searching and digging sometimes, but it is out there.
There are various players that work great, but only few offer a good library option. Most are limited to play-lists. Well, some developers rather spend time on the ability to change the “skin” and every single optical aspect of the player by the user than provide stuff that is actually useful, but there is obviously a market out there that proves them right and that this is the way were money is to be made (at least from a financial point of view).
If you start adding DRM protected content to the mix or live streaming, the options regarding players which can play back everything and also offers a decent library feature is becoming rather small.
Actually it seems that it is almost impossible to get stuff to work without Windows Media player being involved at some point. The latest installment is Version 11 and the only improvement that I found so far is the looks of it. In almost any other aspect did the user lose something that wasn’t trivial, but very important, only not used on a daily basis. With Microsoft Vista is only WMP 11 available and for XP users is it also getting harder and harder not to be forced to an upgrade from version 9 or 10 up to 11.
Well, lets say that I am stuck at this point with Media Player 11 and try ever since I started my project to make things work, only with marginal success to this date, unfortunately. I learned a lot of crap that I don’t care about and didn’t wanted to know about either, because it did not have to do with my problem and what I tried to accomplish. Only because you want to watch a European movie on your American TV, do you not know and learn what FPS, the unit of frequency that is equal to one cycle per second (Hertz), number of DOTs on the screen and stuff like that, right? I mean you just want to watch the freaking movie that you heard about or saw during your last trip to Europe and a friends house or movie theatre. Oh, if you want to know though, be my guest.
Lets start talking about the issues one by one.
Part 3. It Does Not Only Smell like … It Actually Is …
1st WMP 11 does not like network shares very much, also not the ones that are mapped to a local drive letter and reconnected to again, every time the computer is started. With XP is it possible to specify a mapped drive as path and WMP 11 automatically changes the drive letter to the path using the network share instead.
For example “Z:\My-Media\” on “Computer-A”, which is share “Shared-Music” on “Computer-B” mapped as “Z:” will be changed to “\\Computer-B\Shared-Music\My-Media\”.
This does not work so well under Vista from what I have heard and the solution some guys came up with sounded very similar to the one that I came up with myself for different reasons. More to that in a second. Okay, WMP 11 on Windows XP is always indexing your stuff using the network share. This might be better, if you do not map the share all the time to your computer, because Media Player would still be able to access the files from your library, as long as it can see the other computer in the network, but you cannot move the storage locations around or change the name of it, even if you mapped the drive to the same local drive letter and have the exact same file structure as on the previous storage location. The option to use either or would be the best for not only this simple reason, but others as well, which are much more severe.
The problem with WMP storing the network location instead of the local drive letter are that in some cases WMP can’t playback videos with certain codec over the network share (\\share\) and in other cases is it able to play back, but the “seeking” does not work (WMV files). Both of those type of video files play back fine in WMP, if I browse to them via Windows Explorer and say “play with” and select Media Player, because it uses in that case the drive letters where I mapped the network shares to.
I found this MS Knowledge base article regarding this issue with the Intel Indeo video codec, which is the most severe, because the play back via opening it with a network path as reference does not work at all, WMP shows an error that does not make sense and that’s it.
However I got also other issues with videos that were encoded with TMPGEnc MPEG-1 video codec and MPEG-1 Audio Layer 2 audio codec for example. The “seek” function does not work, but it works fine again, when opened via browsing the mapped drive and opening it from there.
Lets start talking about the issues one by one.
Part 4. A Solution that Creates Another Problem, Thanks You
Microsoft’s recommendation is to not use a network drive (which is out of the question) or to convert all those videos to a different format using a codec that does not have these kind of issues. Fine, I would like to do that in one afternoon or over night in a batch job. So give me the list with all videos that were encoded with those codecs and I will use a converter that I bought in a bundle with other nice tools to convert it to something of your liking. Oh, you can’t tell me… that’s … “inconvenient”. No, I did not look through the library one by one yet, because I also have other things to do than sorting data by hand in an excel spread sheet. Oh, Excel has a sort and a filter option.. sorry guys, nothing against you (today).
So I thought to myself what happens, if I can get Media Player somehow to index files with the local drive letter instead of the network path. The add to library interface converts automatically local letters to network paths, but what happens if I change it back to the letters where Media Player stores to remember the paths it should crawl and check for new media files.
Part 5. You can’t Trust … Didn’t Do Yourself
I found something. Search the registry (click “start”, “run” and enter “Regedit.exe” , then press CTRL-F or F3) for “TrackFoldersDirectories” (it’s different in Vista. See comments of users at this forum thread for details and info)
It should find a match like this (note: the search might run a while, depending on your computer and what you have on it).
HKEY_USERS\[s-some big numbers-dashes]\
(line-break added for editorial reasons)
That value should contain as data a simple number. This number should be the number of folders that you configured to be scanned by WMP minus 1. So if you told WMP to check 10 directory locations where it should look for files, the data for “TrackFoldersDirectories” should say “9”. There are circumstances where it does not match and shows a larger number, but that is nothing to get worried about.
Under the same key “Preferences” should you also find Values like TrackFoldersDirectories0, TrackFoldersDirectories1, TrackFoldersDirectories2 …. TrackFoldersDirectoriesXX. Each of them should be string and have as data one of the directory locations the library should check. If there are some that are empty, this would explain why the data for TrackFoldersDirectories shows a higher figure than the number of directories that you actually specified. “TrackFoldersDirectories” simply states what the highest value is for X as in “TrackFoldersDirectoriesX”. It starts with “0”, which explains why the number is less than the actual directory count. It seems that Media Player expects to find values from 0 to the data value of “TrackFoldersDirectories” in the registry. TrackFoldersDirectories = 4 would mean that you have to have entries for:
TrackFoldersDirectories0 = C:\DIR1
TrackFoldersDirectories1 = C:\DIR2
TrackFoldersDirectories5 = \\computer\share\DIR3
Even if you only have 3 directories specified as in my example, but TrackFoldersDirectories shows 4 (=5 records), all 5 records must be there, even if they have no value. Just as a heads up, if you are going to mess with them as I did. I did exactly that, changed all paths etc. and WMP started indexing nicely files with z:\ etc.
Part 6. WTF?
Then it started to fall back to the same old behavior again and the network share names started to appear again. When I removed the files that were wrong (and for the most part duplicate) I killed (or WMP did) too much entries and lost some good ones. Media Player won’t index some of the files for the sake of it, even though I specified that it should re-add files that were previously removed. I guess only a full rebuild will work. See: Rebuilding your Library after WMP 11 f*cked it up.
The odd thing is that when I click on “Add Folders” to see if WMP changed my z:\ settings back to the \\share one is that it still shows z:\ for the folder destinations to search in.
I contacted Microsoft about all this, but they didn’t even know what I am talking about and played stupid. I even sent them illustrations and a step by step explanation of the problem with links to their various own articles that point out some of the issues, but offer no solution (convert stuff, don’t create a centralized media archive with a network storage in a local network to be shared between your computers at home… yeah right).
Part 7. Enough is Enough
What ticks me of the most is the lack of the basic option to say “Add THIS file to my god damn library .. NOW!” Here is the Genre, Artist, Composer, Release year or whatever.. just go and add it. If I could do that with multiple files that would even be better or how about the content of a play-list? There it takes the local drive path all by itself, if loaded from the mapped drive via Windows Explorer. It stores the Network path, if you add it with Explorer from a network path. tsts. Well, this issue is still unsolved, but I was getting new ones during my quest to create centralized library.
I found this post, which explains how to get WMP 11 to create its library files on a removable storage device.
Now I got the idea that I want to move my library to the network as well to avoid the need that each computer has to index and monitor the same stuff. All have the same network shares mapped to the same drive = all paths are the same, but I am not so certain yet, what WMP says if he (maybe) realizes that his library files reside on a network share that is mapped to local drive letter Z:
Part 8. Drops of Water in the Desert
I got my Media-player to be able to play back .MOV and .FLV files what made me very happy. You can find links with details and downloads at the end of this post.
Now I have the problem how I can tell this stupid Library to add them to itself, because it still thinks that it cannot do anything with it… the player does, but the two do not seem to talk to each other very often or at least not very clearly.
Part 9. Swiped by a Sandstorm
You cannot backup DRM licences with WMP11, which is also great. I had to reinstall my laptop because of some other Windows “features” and could not save the licences. I did fortunately not buy anything from Google Video, my vendor is still in business, however, I can now go and contact him to get licences again for every single file. I think its two vendors, but I will find out once I played all files at least once to see who I have to contact because of a missing licence that I bought 2 years ago on some website.
Part 10. Radical Changes are in Order
I am seriously looking for practical alternatives to WMP, something that can handle large amounts of audio and video (I own a lot and converted all into digital format and mostly purchase stuff only in digital format now), it also must support the various video formats or must be expandable to add the support via plug in (AVI, MP3, MPEG, WMV, ASF, MOV, FLI, DIVX, WMA, WAV and now also the new RAT format) and last but not least be able to handle all this DRM bs. I started to look for unprotected versions of my stuff to be able to actually use it without the need to contact people, convince (proof) to them that I actually purchased the stuff to them get the honor again to watch or listen to what I actually paid for.
This is unacceptable and big time bull!
I started 16 years ago with MS DOS 5.0 and after all those years am I hearing that things get easier. This is simply not true. Back then I could fix stuff myself. This is today impossible, even as advanced user. It’s a full time job to keep up with everything that can go wrong. The booming video/audio space is worse than most others and the current workarounds and tricks used by manufacturer to make it somewhat work is to sacrifice security and broadcast all your stuff virtually publicly to anybody who knocks on the door and asks for it. If you are “lucky” then they even let anybody “in” and take a stroll across your network and peek into your stuff on your computers.
Part 11. I Did NOT Trade Satan for the Devil
p.s. I use XP and and did not switch to the heap of bugs and junk called Vista, so the share your videos does not work.. well I can share with anybody but myself, because WMP 11 on XP is unable to access other shares. That works “great” if you have three computers with Windows XP pro and WMP 11 on them.. doesn’t it.
Part 12. Apologies
Sorry for the rant. It feels much better now. I just had it. I spent obviously too much time on trying to find a solution for a relatively simple issue. The non-existence has nothing to do with “too complicated” or “too exotic”, the Internet is full of forum threads that end nowhere a real solution. The missing options are because of greed and to protect businesses from “pirates”.. the irony with that is that it only makes paying customers mad and turn to pirates to get fixes for the things that were artificially broken.
Part 13. Some Band-Aid for the Open Wounds
Okay, I will finish this (looong) post with something good, a list of very useful tools and resources to windows, codecs and windows media player.
- Windows Media Player Resources collection from Microsoft’s website on Google Docs & Spreadsheets
- RAT-DVD Tools, Encoder and Decoder. The new revolutionary tool that lets you convert DVD’s to a video file that has only 20-25% of the size, without noticeable quality loss. It’s free and also has a plug-in for Media Player to play back the RAT DVD’s there.
- Combined Community Codec Pack Project, a free codec pack with tools and a very good support infrastructure, resources and guides, such as this very detailed troubleshooting guide.
- FourCC (Four Character Code Codecs) list for a complete list of available .AVI video and audio codecs.
- Sherlock Codec Detective (actual download like, short .EXE file), a free powerful tool that shows you all codecs that are installed in your system and their status.
- GraphEdit (7zip compressed) draws the entire filter chain for you to look at. Only recommended for more experienced users.
- Free FLVSplitter (7zip compressed), which is a Flash Video codec. The archive contains “FLVSplitter.ax” and no install program. To install it, copy the file to “C:\Windows\System32\” and register it to Windows via “Start”, “Run”, “Regsvr32 c:\windows\system32\FLVSplitter.ax”.
Alternative: How to play FLV files Guide at Afterdawn.com.
- How to play .MOV (Apple Quicktime) files Guide at Afterdawn.com.
- How to get WMP 11 to create its library files on a removable storage device?
- Rebuilding your Library after WMP 11 f*cked it up.
- SolveigMM WMP Trimmer Plugin, is a nice plug-in that lets you cut and save parts of a movie from within media player. No need to fire up an external cutter tool while you are watching a movie and see a scene you want to cut out for other purposes. It cost $20 or so, but you can test it out for 30 days, free of charge (trial version download).
- Windows Media Player News Group at Microsoft’s Windows XP Newsgroup. I guess I will pay those folks over there a visit and point them to my post here.
- Also nice to have handy, the list of Microsoft OEMs, computer manufacturers who deliver their PC’s with a pre-installed Windows system (who doesn’t?) May be they have some help available for your own issues, if you yell at them hehe.
Carsten aka Roy/SAC
Update 2/16/2008: I started working on the move of the Media Player library to a network location and share it between my computers. I found out the hard way, that there is by default no reference anywhere, including the registry, about the location of the media library. Media Player must look for the hard coded location
"(User Directory*)\Local Settings\Application Data\Microsoft\Media Player\CurrentDatabase_360.wmdb". The user directory is usually
"c:\documents and settings\(username)"“.
I found this interesting thread at a user forum, which first started to talk about how to speed up media player, but then became a discussion about the media player library in general. Along the way did I learn about a useful tool called Link Magic to create so called “Junctions” in NTFS (basically mounting a directory to another directoy). I also learned that you can (and how) create Mount Points instead of Junctions to get a similar effect from the disk manager of windows itself.
All that was not a good thing to mess around with when it came to moving the library to a network share.I already feared to reach another dead end, but then came the posr that saved my day. You can change the path of the library by adding an undocumented string value to the Windows Registry.
Open RegEdit and go to
Create a new String Value called “
LibraryDatabasePath” and then open it to specify the location of the library. I simply entered the local drive, which is a mapped network share on the machine and sub directory that I created for the shared libary. I copied into that folder the local Media Player library of another computer and moved my local one to somewhere else to make sure that Media Player cannot find it.
When I started Media Player, it did really load the library from the network drive. Now I have to check how it behaves if I do the same with a second and later on a third computer. Multiple people accessing the same library might cause issues. To keep the potential problems to a minimum I will probably disable the check for new media files on all but one of the machines who will be designated as the sole indexer of new content for the library and then take it from there.
great post! i finally got my shared drive to play on my xbox 360 thanks to this.
This worked for me…..nice post
Here is a link that help me set my samba share correctly to upload my media library for Vista.
I use SWAT, so I set
map archive to “NO”
map hidden to “NO”
map readonly to “Permissions”
I can load from my M: all the sub folders.
Enjoyed the Rant…I too agree and need to take a long pause every so often. 6 Billion $$$ of crap.
Thanks for the comments, but I never had a problem with folders flagged as system, because I wanted to move everything out of the local user folders (which have usually the system and hidden attribute set).
None of the solution that I tried was stable enough for practical use. Something always didn’t work or Media Player simply destroyed its own library files. One issue that I could not solve was that Media Player opens the libary files exclusively. If Two computers share one library and you open Media Player on both machines, all kinds of things can happen. It starts with errors and ends with crashes of the player and corrupt library DB files.
What I do at the moment is the following. I convert all videos to .AVI (DivX, XVID) or .WMV, but keeping some high quality .MP4 files as well. I also had to make sure that .MOV and .M4V files are still played by MP, because that is the format of some video podcasts I subscribed to.
The files to index are located on a shared storage, all computers in the network have identical mappings. One computer became my MP library master and is configured for indexing. Indexing is pretty much disabled on all other machines.
I update the library on the master computer and sync it from time to time with a copy on my network storage and then sync the other computers with that copy. I am using GoodSync for the synchronization. It always copies all library files, because they all change constantly, but what does not change all the time are the album art images (which are in my case several ten thousand images).
I cannot update ratings on all machines or do any other library updates, because those changes would be overwritten by the next sync, which sucks. I didn’t see the feature to store ratings within the files work properly and are also not so sure about Media Players ability to update its library for already indexed media files, if the Meta Tags (e.g. ID3 tags in MP3) changed in the actual file itself. I used some tools like abcAVI Tag Editor (for .AVI files) and TagMagic (for .WMV files) to update some meta date in video files itself to save time and headaches in the case of the need to re-index video files (for example after I moved them from one directory to another).
I am not happy with this solution, but that’s the one I am currently living with.. still looking for alternatives though.
Here are some additional links to helpful tools that I mentioned.
1. TagMagic download at ZNet (free)
2. abcAVI Editor Download (also free)
3. GoodSync homepage (commercial, but I am sure that there are also freeware tools available to do the same trick, I just had the software for other purposes anyway)
p.s. MP seems to update the library if meta data change in .WMV files, but this does not seem to happen with meta data in .AVI files.
p.s. 2 No, I did not automatically scheduled the sync of the library files on the master with the storage nor the sync of the other computers with the storage. I do it manually. Why? Because if the sync job runs and you open MP while its syncing, you get a problem. Also if you forget to close WP before the sync starts (which you could take care of with a script that kills MP), you get the same issue. MP is so sensible that it even gets issues, if it has the library open and locked and another app tries to change it (and fails of course).
I also have to add to my “what I hate about media player list”, the issue that MP does not remember sorting or filter settings that were applied to a listing, at least not in most cases (it does do it in some odd cases). You sort stuff and play a video or song and when its over and you go back, the sorting is reset.
Another thing that I noticed is that I have now in many cases a major lag in load time of videos in my library. I am still puzzled by it. Is it the network? The codec? MP? The network storage HD? I don’t have that same lag with other more simple players, which makes be believe that the issue is again MP related.
LOVE YOU. I’ve been trying to get my Linksys Media Center Extender to play my music (which most of it is from iTunes and AAC).
I used MCE Tunes to import the iTunes library, but couldn’t get the extender to see the library.
I found your post how to change the library location.
I changed the library location to the “MCX1″ user and it now sees all my music.
I’ve been working on this for over 2 weeks trying to get this to work.
Now I’m much happier and can get more sleep.
The only drawback is I have to reboot the Linksys to see the new music…but MUCH better that the old workaround of lots of manual copying.
My Pleasure.. Be careful though. Make sure that you do not open two Media Players at the same time or Media Player after another application locked the library files, because Media Player does not like that at all, crashes and often takes the database along with it.
I bookmarked this page. Thank you for given this useful post…
Thank you for the best writeup. This actually had been a entertainment bank account them. Peek difficult in order to extra provided acceptable from you! On the other hand, precisely how could possibly many of us converse?