In order to more easily edit various pieces of metadata in DVR-MS files, I put a simple tool together and have posted it online for download. If anyone's interested, you can get it at:http://blogs.msdn.com/toub/archive/2005/05/12/416874.aspx. Right now it only supports adding and editing metadata (you can't delete), and you can't manipulate metadata fields that contain binary blobs.
-Stephen
Cool thanks!
Hey Stephen, any chance you could help in getting Closed Caption information from DVR-MS to an MPEG file?
Would be a godsend.
re: http://www.thegreenbutton.com/community/shwmessage.aspx?ForumID=26&MessageID=107644
Thanks,
Randy
Awesome, Steven. I was going to write one based on your kit. I was 70% done. Saved me the trouble :-)
Alothough I noticed the changes where not reflected in media Center when I went into Recorded Tv
I changed the title with your tool, then loaded media center and it still had the old data! How do you get it to reflect the change?
-Rich
Move the file out of the watched directory and back in again, before MCE will read the updates
I have the same probelm with recoridng dvr-ms files outside of MCE, I create them in another directory, update the attributes and then move into the recorded tv directory
Cheers
Fuzzy Logic
MCE caches the attributes into recordings.xml and also into memory while its running.
Moving the file will update the recordings.xml file but with limitations not all attrbutes are re-read, normally only the filename, unless the title of the show is not found in recordings.xml when it will read all the attrbutes.
Rebooting MCE will just reuse the recordings.xml file
killing ehrec/ehsched will cause recordings.xml not be be written correctly on shutdown and it is then rebuilt on startup. From what I can work out recordings.xml contains the recording schedule and what has been recorded so stuff doesn't get recorded twice. It also links the files to the schedule entry that recorded it. How much of this is kept if the recordings.xml is rebuilt? I have had problems forcing recordings.xml to be rebuilt, links to the schedule are lost, which can cause mutiple recordings of the same show. Have you found a way round this problem?
I ended up with a different answer. I found a way to update attributes in memory and let MCE write recordings.xml. I currently only update the ATSC and DTV attributes because I use those for firewire recording. Probably the mechanism can be used for any attribute.
Tim,
Can you explain what you did?
Cheers,Andy
I poked through the various dlls and found ehiproxy.dll, load it into visual studio, you will find it interesting. I would suggest you start with a vb project, its the easest to pull in unknown com objects.
Bit more detail if you are interested, if you load ehiproxy.dll into a vb project and look at it with the object browser, look for IRecordingScheduleItem, this has properties for all the info in recordings.xml for a recording. I haven't tried all the properties but I have noticed atsc and dtv properties do not cause the memory cache to be writen to recordings.xml, however, expecteddeletedate does so I change this property to itself if I want to write out recordings.xml.
To find IRecordingScheduleItem I use ItemWithID on IRecordingScheduleItems using the ScheduleItemID attribute out of the dvr-ms file.
To start you can new the ResourceMgr object and work to the IRecordingScheduleItems object. Of course since none of this is documented, you need to be careful using it, since it could change at any minute but I haven't found a better way to do it.
Wonderful Utilty thankyou for making it! It works perfectly. Just have to use the KISS method.
I found that just renaming the file is enough to cause Media Center to refresh the meta data it has cached. I just updated meta data on about 20 files this way. Here is the method I am using.
Close Media Centerchange metadatarename file/sRun Media CenterWait about a minute for media center to refreshAfter I see the screen reload I hit Sort by Title, then Sort by Date. And voila it is there. Clap hands with glee
Hope that helps.
This is an awesome program and thanks for creating it. I'm not that good with metadata and I was wondering if you could possibly tell me what I need to edit to achieve what I am needing to do?
I recorded a TV show a while back and I cut the show into seperate dvr-ms files using Dcut. I then deleted the original show because it was taking up too much space. Now I have a whole bunch of files that are still maintaining the metadata from the original show that no longer exist on my harddrive. I have placed all of the seperate dvr-ms files into the "My Videos" folder so I can watch them when I feel like it.
Now here is my problem. Because the metadata matches on all of these files, if I start MCE 2005 and go to "My Videos" and select the Video3 segment and watch it and then decide to switch to Video1 or any other segment, it doesn't change the video because it thinks it is already playing it.
I used the tool "Edit DVR-MS Metadata" and changed the name and wiped the value of the ProgramID and it still did not make any changes to the way it behaves. Do you know what field I need to edit to make each dvr-ms file a standalone, playable video so they do not think they are the same file? Currently for me to switch to different video files that are originally from the same recorded TV show diced up, I have to watch one, go to Live TV or play a DVD and then I can go back and choose another one. The reason I used Dcut is because I did not want to convert the video because I do not want to lose any quality in it do to re-compression, transcoding, etc.
Does Media Centre use a piece of Metadata (other than title) to decide which recordings are part of the same series?
I recorded all the episodes of one series, then, because the program that replaced it was also one I wanted to record, I simply changed the title for the series in the scheduled series. This appeared to be ok as in the sort by date list, the episodes have the correct title, but in the sort by name list, in the alphabetic position for the first series, is the name of the second series, and when I select more, all episodes of both series are shown.
I had edited each individual episode with dvredit, and given the episodes meaningful sub-titles.
In the hope that it would resolve the problem, I copies all episodes out of the recorded directory, then back in. The problem is still there, AND the sub-titles have gone back to the original channel and time, even though the metadata is unchanged.
Any ideas anyone?
Smiffy