INTERACT FORUM

Windows => Plug-in Development => Topic started by: sonata31 on February 28, 2013, 11:36:39 am

Title: Import from DVD Profiler
Post by: sonata31 on February 28, 2013, 11:36:39 am
Hello

JRiver enables up-to-date information on movies and series from My Movies
I use DVD Profiler that does not use JRiver

I could see if I can develop a plugin for DVD Profiler from the xml file it can create

From what I have to start interface
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 02, 2013, 12:18:12 pm
Nobody for help ?
Title: Re: Import from DVD Profiler
Post by: MrC on March 02, 2013, 02:23:44 pm
Can you send me an XML file, or attach a zip'd copy here?
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 02, 2013, 03:41:51 pm
I would do that Tuesday night, I'm traveling.
Thank you in advance
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 05, 2013, 06:47:05 am
Can you send me an XML file, or attach a zip'd copy here?

http://dialou.fr/elve/Collection.zip (http://dialou.fr/elve/Collection.zip)

Thank you in advance
Title: Re: Import from DVD Profiler
Post by: MrC on March 05, 2013, 10:52:42 am
I'll take a look this week...
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 05, 2013, 02:00:53 pm
I'll take a look this week...

Hello

For another product (elve: http://www.codecoretechnologies.com), I wrote a driver in C# code that parses it, if it can be used I can give you the code
Title: Re: Import from DVD Profiler
Post by: MrC on March 05, 2013, 02:24:12 pm
It appears the XML data for a DVD does not contain the full file path to a ripped movie.  I haven't tested, but it might be sufficient to place the converted XML file in the ripped movie directory at the appropriate location and name, and import.

Other than that, for supported fields, the conversion of the XML file to an MC sidecar XML file is pretty straightforward.  Fields that don't exist would be ignored.  Fields that translate to different MC field names are easy enough to convert (e.g. Actor FirstName, MiddleName, LastName would map to a combined single value in the Actors list).
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 05, 2013, 04:11:44 pm
The full path to a ripped movie exists when it exists :

Code: [Select]
<Disc>
        <DescriptionSideA>File</DescriptionSideA>
        <DescriptionSideB/>
        <DiscIDSideA/>
        <DiscIDSideB/>
        <LabelSideA/>
        <LabelSideB/>
        <DualLayeredSideA>false</DualLayeredSideA>
        <DualLayeredSideB>false</DualLayeredSideB>
        <DualSided>false</DualSided>
        <Location>&quot;D:\films\hcsrv1\Possession\Possession.mkv&quot;</Location>
        <Slot/>
</Disc>
Title: Re: Import from DVD Profiler
Post by: MrC on March 05, 2013, 05:54:02 pm
Ah, perfect.  Then it should be easy to create a converter.  I don't know that you need to learn how to create an MC plug-in to do this, but I suppose you could.

The easiest way to figure out what needs to be done is to import an mkv file, write out the tags so that MC creates a sidecar file, examine the structure of the XML file, and create a converter to go from the DVD Profiler to MC XML sidecar file.

Once the converted sidecar file is available, you can have MC Update library (from tags) to read the file.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 06, 2013, 12:38:58 am
What is the structure of an MC XML sidecar file ?
From the code I wrote I should be able to write a converter to go from xml DVD profiler to MC XML sidecar file
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 07, 2013, 04:13:57 am
What I want to do is to have the information on to movies in the Theater view: cover, summary, cast, file path, ...
Title: Re: Import from DVD Profiler
Post by: Ekpen on March 07, 2013, 08:32:50 pm
Greetings:
I do use Dvd Profiler to catalogue my BD movies. I currently use a Sony Mega changer.
I have been looking for ways to load DVD profiler  database or cover arts within MC-18. At times when I tried to load the dvd utility, it takes forever to load due to the grahics or logo screen.
The XML file if created, was wondering how to interface with MC. I am not ripping, and at the moment, I have no interest in ripping.
Can your program be modified to use from within MC, or whatever MrC is doing now to help, will it be possible to include direct disc read with no ripping.
I wish Matt el all could come out with a BD player utility that will scan the appliance either via IP, network, or Rs-232  then pull out the the info by directly reading in the discs.
I am almost 90%-95% ready with my HTPC, to test if my sony 400 disc changer will be scanned by MC when connected via serial interface.

Thanks to you, and MrC.
Ekpen.
Title: Re: Import from DVD Profiler
Post by: MrC on March 08, 2013, 02:31:31 pm
What I want to do is to have the information on to movies in the Theater view: cover, summary, cast, file path, ...

Ok, do me a favor.  Take a look at your Collection.xml file, and create for me a mapping of the fields you see there to MC's fields.  For example:

DVD Pro --> MC
Regions --> Region
Released --> Date
Studios --> Studios
Audio:AudioTrack --> Comments
Rating --> MPAA Rating
Title --> Name
OriginalTitle --> Original Title
...

If you want several fields merged, for example, into Comments, just map them to comments.  I'll add them in the order you list them.  I'll ignore fields you don't specifically indicate.

The MC field list is here:

   http://wiki.jriver.com/index.php/File_Properties_%28tags%29#Fields (http://wiki.jriver.com/index.php/File_Properties_%28tags%29#Fields)

Title: Re: Import from DVD Profiler
Post by: sonata31 on March 10, 2013, 08:48:17 am
I'm doing this list

Would it be possible to have the file structure of Sidecar.xml created by My Movies?
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 10, 2013, 09:06:23 am
Here is a list of correspondence between DVD Profiler and JRiver

It is not complete, because I do not always understand the use of all fields of JRiver
Title: Re: Import from DVD Profiler
Post by: MrC on March 11, 2013, 05:31:56 am
Update.  I have your entire 35 meg DVD Profiler collection file parsing and converted to MC's sidecar format.

There are 1358 actual files (969 vob, 381 mkv, 8 avi).

I can have the program output a single large mpl file which I believe can be imported in one shot (I haven't tested this yet), or create individual sidecar files that can replace the existing ones in the same directory as the current sidecar.  Either way, MC will update tag information.

Probably it makes sense to try a couple to see that the field mappings are what you want.  I'll post them later today.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 11, 2013, 09:17:36 am
Ok, thank you in advance
Title: Re: Import from DVD Profiler
Post by: MrC on March 11, 2013, 08:58:39 pm
Ok, I have good news.  The script is complete and I've been able to import your entire 1674-entry Collections.xml into MC from the converted MC .mpl file (see attached screenie).  So this means the conversion can be done in one shot, and you can import with a single Import operation.  It was pretty fast on my system, both the conversion and the import, both taking less than 10 seconds.

Even the entries with no real files were imported.

I've mapped the fields above as per your request, with some changes, additions, omissions:

MC Fields
---------
Director and Artist: Dual mapped, from Credits::Credit::CreditSubtype="Director".
Channels: currently there are several channel mappings, one per language.  Which language should be used?
Credits: Where MC has specific fields (Director, Composer, Screenwriter), I've mapped to those fields and did not dual-map to Credits.
Description: Mapped from Overview
Name: Mapped from Title
MPAA Rating: Mapped from DVD::Rating
MPAA Rating Description: Mapped from DVD::RatingSystem
Media Type: Must be mapped to Video for MC

Critic Rating: Not mapped - I don't see a rating value (this is a rating like 4 stars, or rotten tomatoes 90%)

Date Created: Not mapped - this is an MC calculated field from the filesystem date info - it can be mapped.
Date Imported: Not mapped - this is an MC calculated field, when MC first created the record for the entry - it can be mapped.
Date Modified: Not mapped - this is an MC calculated field from the filesystem date info - it can be mapped, but will keep changing.
Dimensions: Not mapped - auto-calculated
Duration: Not mapped - auto-calculated  Mapped in next release.
Image File: Not mapped - this is an internal MC field used to indicate image file location.  Mapped in next release (may not work).
Date Recorded: No mapping specified.
Custom*: No mapping specified.
Disc#: No mapping specified.
Episode: No mapping specified.
Season: No mapping specified.
Sequel: No mapping specified.
Series: No mapping specified.
Series Description: No mapping specified.

The script requires ActivePerl (http://www.activestate.com/activeperl/downloads).  Its free, safe, easy, and non-invasive to install.  Get the 32- or 64- bit installer for your version of Windows.

I'll attach the script in a follow-up post, with instructions.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 12, 2013, 01:41:32 am
This is very good news, I am eager to test it on my last update of xml file generated by DVD Profiler

thank you again
Title: Re: Import from DVD Profiler
Post by: MrC on March 12, 2013, 01:54:47 am
Here it is, unzip the attached script, save it where you want, and run it as follows:

1) Install ActivePerl
2) Open a Windows command shell
3) Run the command below (change Perl64 to Perl if you installed the 32-bit ActivePerl):

      C:\Perl64\bin\perl.exe path\to\dvdprofiler2mc.pl path\to\DVDProfilerCollection.xml > path\to\converted.mpl

   where converted.mpl is the output the conversion script will create.

4) Backup your library
5) From MC, File > Import Playlist and select converted.mpl.

MC will import the playlist content, and you should now have your data.

Examine the data, and feel free to suggest changes you'd like to see.  Mappings are trivial.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 12, 2013, 04:09:41 am
I will test it this weekend

thank you again
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 12, 2013, 04:31:51 am
I just did a quick test in the office, the file collection.mpl does not seem created, it does not appear in the directory specified

I'm in Seven 64bit, I opened a command window as administrator
Title: Re: Import from DVD Profiler
Post by: MrC on March 12, 2013, 11:59:34 am
Run it without the "> path\to\collection.mpl" to see what is happening and report back.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 13, 2013, 01:37:16 am
Sorry, it's my fault, I did not see the redirection character ">" I thought the script writing directly to a file

The file is created

Sorry
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 13, 2013, 02:12:25 am
First tests

It seems that all the movies have a file (specified in Location) were not created in the file mpl
How would it be possible to manage the series?
How to get the jacket? The corresponding file is created from the ID:
Front: Images \ ID + "f.jpg"
Back: Images \ ID + "b.jpg"
If the file does not exist it will: Images \ ImageNotFound.jpg
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 13, 2013, 02:34:00 am
Missing:
Duration = RunningTime
? = CollectionNumber
Title: Re: Import from DVD Profiler
Post by: Ekpen on March 13, 2013, 07:45:29 am
Hello

JRiver enables up-to-date information on movies and series from My Movies
I use DVD Profiler that does not use JRiver

I could see if I can develop a plugin for DVD Profiler from the xml file it can create

From what I have to start interface


If What MrC did, works well, will you still want to develop a plug in for MC?
I will appreciate it.

Thanks.
Ekpen.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 13, 2013, 07:51:11 am
Why develop a plugin, if the script works well ?
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 13, 2013, 08:20:17 am
First tests

It seems that all the movies have a file (specified in Location) were not created in the file mpl
How would it be possible to manage the series?
How to get the jacket? The corresponding file is created from the ID:
Front: Images \ ID + "f.jpg"
Back: Images \ ID + "b.jpg"
If the file does not exist it will: Images \ ImageNotFound.jpg

They exist in the mpl file but do not appear in JRiver
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 13, 2013, 09:56:44 am
AspectRatio is in the mpl file but is not displayed in JRiver
Title: Re: Import from DVD Profiler
Post by: Ekpen on March 13, 2013, 10:12:01 am
Why develop a plugin, if the script works well ?
But the script seems to be unigue to your specific set up. Anyway someone else can use it ?
I am just about to finish  putting my server together, then will load or re install dvd profiler, then try to intergrade my dvd profiler with MC.

Ekpen.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 13, 2013, 10:15:14 am
The script must be able to handle all the fields that we will submit
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 14, 2013, 01:53:03 am
How to have an organization:
Serie_name> Saison_Number> Episode_Number-Name
What should be the structure of the mpl file for this?
Title: Re: Import from DVD Profiler
Post by: MrC on March 14, 2013, 02:09:04 am
I've had some family matters to attend to.  I'll update shortly.  Keep the feedback coming.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 14, 2013, 03:16:24 am
No problem
Title: Re: Import from DVD Profiler
Post by: Ekpen on March 14, 2013, 10:36:28 am
The script must be able to handle all the fields that we will submit
.

I used to like dvd profiler, but the author did not want to develop an Android version, so I lost interest in it.
With your help in making dvd profiler more useable with MC, I am really interested in it now. I store my BDs in mega changer. I just want to try to interface the Sony changer with MC if it will work with its RS232. The server I am building with have a  pair of legacy rs232 port.
If all fields are in your  utility, then it will be adequate for others to use.
Again, I do appreciate your help and MrC  for time spent developing the xml interface.

At the moment, I do not have a working server yet, for me to see the practicality of what I am trying to do. I am still using an old notebook, that does not have much power. So all interfacing all these 3rd party utilities with MC 18 is just imaginary.

Thanks.
Ekpen.
Title: Re: Import from DVD Profiler
Post by: MrC on March 14, 2013, 12:58:38 pm
I've fixed:

- Duration
- Aspect Ratio (was missing the space between the t and the R).
- Added the front cover art via the ID.  MC only tracks one art file, but you can keep others in the folder.  MC might see/use the {ID}f.jpg file if it is assigned to Image File, but I'll have to test when I return.

DVD Profiler groups all files related to a DVD set, whereas MC is file-based.   So I'll have to create a higher level container to track multiple files, and this will have to wait until I return.

As for your CollectionNumber, I'm not sure how this number is used and how you want it mapped.  It appears to be your numeric tracking ID for a DVD set.  Should this number be mapped to the group (as per above) and so pertain to multiple MC entries?  If you want to use an existing MC field, let me know which one.  If you want to use your own field ID, that's no problem, just create a new user field in MC, probably of type Integer.  Creating a mapping in the script is simple - there's a table that drives simple mappings, so we can just add this field.  If there is enough call, I can add a mapping mechanism that is either command line based, or configuration-based.
Title: Re: Import from DVD Profiler
Post by: MrC on March 14, 2013, 01:03:52 pm
Ekpen,

The script is essentially a generic XML transformation script - it takes the XML produced by DVD Profiler, and converts it into a format that MC can consume.  It isn't specific to sonata31's usage.

To convert it to another language would require writing or using existing libraries that do:

  - XML parsing (in an event-oriented fashion)
  - Date manipulation and range calculation
  - HTML entities encoding/decoding
  - regular expressions

so it might be a little work, or a lot.  The script is only 165 lines currently, so isn't difficult.  It is compact because it uses the strengths of perl, and is likely to bloat in another language.
Title: Re: Import from DVD Profiler
Post by: JimH on March 14, 2013, 01:05:04 pm
Thanks for all your work on this, MrC.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 15, 2013, 02:34:22 am
MrC

Another big thank you for this work

For CollectionNumber I would create a field "Collection Number"
This is a number that I assigned to my DVD, Bluray for storage by purchase order and thus find

The movies with a file (specified in Location) exist in the mpl file but do not appear in JRiver
Title: Re: Import from DVD Profiler
Post by: MrC on March 16, 2013, 06:20:34 pm
I now have the multiple Filename work done.

A question - in the Credits and Actors, there are sometimes Dividers that sometimes break credits/actors into groups by episode, and sometimes not.  There is no real pattern to the Caption value in the <Divider> tag, so I can't reliably determine which grouping goes with a given episode (i.e. Filename).  So I'm just collecting all Actors and all Credits into each MC entry, so the information, while present, is not accurate anymore (in other words, the Credits and Actors are for ALL episodes, not any given episode).  And this is also causing the same name to be included multiple times.  I can eliminate the duplicates if you want.  Is this all OK?

Finally, there are parent references to top-level box set entries.  Without changing the entire parsing structure, and reading the entire file into memory, these references are going to be lost and the box set entries useless.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 16, 2013, 06:58:40 pm
I now have the multiple Filename work done.

A question - in the Credits and Actors, there are sometimes Dividers that sometimes break credits/actors into groups by episode, and sometimes not.  There is no real pattern to the Caption value in the <Divider> tag, so I can't reliably determine which grouping goes with a given episode (i.e. Filename).  So I'm just collecting all Actors and all Credits into each MC entry, so the information, while present, is not accurate anymore (in other words, the Credits and Actors are for ALL episodes, not any given episode).  And this is also causing the same name to be included multiple times.  I can eliminated the duplicates if you want.  Is this all OK?
Yes

Finally, there are parent references to top-level box set entries.  Without changing the entire parsing structure, and reading the entire file into memory, these references are going to be lost and the box set entries useless.
Yes, unfortunately
Title: Re: Import from DVD Profiler
Post by: MrC on March 16, 2013, 07:22:41 pm
Here's a new version to test out.  It also includes your Collection Number.  Be sure to define the field in MC.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 17, 2013, 09:17:57 am
Again, thank you for working on this script

I think there is confusion between artist and producer

In Theater view, there is no grouping Series - Season, each episode is seen as a movie

If I scan directly by JRiver the series folder on my hard drive, there is this grouping
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 17, 2013, 09:21:47 am
...

In Theater view, there is no grouping Series - Season, each episode is seen as a movie

If I scan directly by JRiver the series folder on my hard drive, there is this grouping

I think this requires a Media Sub Type = TV Show
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 17, 2013, 09:27:48 am
I think this requires a Media Sub Type = TV Show

And fields Season and Series exist
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 17, 2013, 09:34:31 am
When you create this field:

<field Name="Image File"> 3333973145407.8f.jpg </ Field>

Which is supposed to find the image file?
Title: Re: Import from DVD Profiler
Post by: MrC on March 17, 2013, 02:31:38 pm
I think there is confusion between artist and producer

Do you mean Artist and Director?  If so, I mentioned above that I've dual-mapped Director to Artist.  See:

   http://wiki.jriver.com/index.php/File_Properties_%28tags%29#Artist (http://wiki.jriver.com/index.php/File_Properties_%28tags%29#Artist)

Let me know if you don't want this dual mapping.

I think this requires a Media Sub Type = TV Show
...
If I scan directly by JRiver the series folder on my hard drive, there is this grouping

How can I know how to map Media Sub Type from the XML data available?

I'm not scanning your folders, so don't have this information.

And fields Season and Series exist

Where is this information reliably stored?  I don't see anything that is consistent.  I mentioned above a number of fields are not mapped, because the data is not there (at least, I don't see how to reverse map it, from free-form formatting to a Series or Season).  You need to help me here.

When you create this field:

<field Name="Image File"> 3333973145407.8f.jpg </ Field>

Which is supposed to find the image file?

When the file exists in the same directory as the media files, it should be found when you perform the import.  I tested it with an mpg file.

I've fixed an issue where only the first Credit was being included.  Grab the new (1.2) version here.
Title: Re: Import from DVD Profiler
Post by: MrC on March 17, 2013, 02:43:34 pm
I should add... if you want to use existing file names and folder locations to drive Series, Episode lookups, you'll want to Import the media first with MC's auto-import so that Carnac can run and pull the information from the paths and file names.  There's no sense in me reinventing the wheel here.  Once imported via auto-import, you can then do the manual import of the MPL file to pull the additional information.  You might or might not want Media Sub Type set in this case.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 18, 2013, 06:02:46 am
Do you mean Artist and Director?  If so, I mentioned above that I've dual-mapped Director to Artist.  See:

   http://wiki.jriver.com/index.php/File_Properties_%28tags%29#Artist (http://wiki.jriver.com/index.php/File_Properties_%28tags%29#Artist)

Let me know if you don't want this dual mapping.
Yes

How can I know how to map Media Sub Type from the XML data available?

I'm not scanning your folders, so don't have this information.

Where is this information reliably stored?  I don't see anything that is consistent.  I mentioned above a number of fields are not mapped, because the data is not there (at least, I don't see how to reverse map it, from free-form formatting to a Series or Season).  You need to help me here.
Is it possible to use the Tag field of DVD Profiler?
Tag = Series
Tag = Season x

See attached file


When the file exists in the same directory as the media files, it should be found when you perform the import.  I tested it with an mpg file.

I've fixed an issue where only the first Credit was being included.  Grab the new (1.2) version here.
Title: Re: Import from DVD Profiler
Post by: MrC on March 18, 2013, 12:38:41 pm
Is it possible to use the Tag field of DVD Profiler?
Tag = Series
Tag = Season x

This should be sufficient for Series and Season.

I don't see any values in your XML file  Edit: I was looking at the old Collection.xml file:

    <Tags>
      <Tag Name="Season 1" FullName="Season 1"/>
      <Tag Name="Series" FullName="Series"/>
    </Tags>

I presume you have not added them.
 I'll need sample data.
Title: Re: Import from DVD Profiler
Post by: MrC on March 18, 2013, 12:50:57 pm
In looking at your file paths, it seems your files use two forms to include season/episode:

   " - S05E01 - "
   "-S05E01-"

It would be no problem to grab the season and episode from this if it exists.  If you want me to use all the stuff before it to be the Series name, I can do that too.
Title: Re: Import from DVD Profiler
Post by: MrC on March 18, 2013, 01:42:21 pm
I went ahead and made the changes:

 - Removed dual mapping of Director to Artist
 - Pull Series, Season, and Episode from Location file path using above criteria
 - Set Media Sub Type to TV Show when above match is found

See if this version (1.3) works for you.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 18, 2013, 05:04:27 pm
In looking at your file paths, it seems your files use two forms to include season/episode:

   " - S05E01 - "
   "-S05E01-"

It would be no problem to grab the season and episode from this if it exists.  If you want me to use all the stuff before it to be the Series name, I can do that too.

The problem is the series only available on DVD or BluRay without disk file
Hence the use of tags
Title: Re: Import from DVD Profiler
Post by: MrC on March 18, 2013, 08:12:07 pm
The problem is the series only available on DVD or BluRay without disk file
Hence the use of tags

Whatever you want to use is fine with me.  I am however, confused by your statement about the series being only available ... without disk file.  Doesn't this disc file in the Location field include the Series name, Season and Episode?

        <Location>D:\series\hcsrv1\Dexter\Saison 1\Dexter - S01E01 - Dexter.vob</Location>

Your example tags above do not include an Episode number.  There would have to be multiple tags, each clearly associated with a specific Location (Filename).  How do you propose to do that?  If you don't care about this, then Season and Series values are fine anywhere in the <DVD> ... </DVD> container.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 19, 2013, 01:53:41 am
I have DVD and BluRay I have not ripped to hard disk, those have not corresponding file
Hence the use of tags
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 19, 2013, 03:30:25 am
When I import the collection.mpl file created with the latest version of the script, nothing is displayed in JRiver
Title: Re: Import from DVD Profiler
Post by: MrC on March 19, 2013, 03:42:16 am
I'll check it out in the morning.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 19, 2013, 08:27:45 am
Why in JRiver, when importing the file mpl every item with the specified Filename field, are not imported?
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 19, 2013, 09:52:01 am
Why in JRiver, when importing the file mpl every item with the specified Filename field, are not imported?

It seems that at the time of import, JRiver sees the file on disk, and that it is a valid video file
Title: Re: Import from DVD Profiler
Post by: MrC on March 19, 2013, 02:03:56 pm
It seems that at the time of import, JRiver sees the file on disk, and that it is a valid video file

MC looks to see if the file exists.

I've added a new command line option (-a) that will export items that do not have an actual backing file (no Location entry).  By default, only entries with a Location are exported.

I still need some valid sample data for your Tags if you are going to use them.  All I have is:

 <Tags>
      <Tag Name="Season 1" FullName="Season 1"/>
      <Tag Name="Series" FullName="Series"/>
 </Tags>

I can't tell from this example if Name indicates the tag type, or if it always matches FullName.  Ideally, they would look like:

 <Tags>
      <Tag Series="some series name" Season="1"/>
 </Tags>

or if you can't change the name of the attributes:

 <Tags>
      <Tag Name="Season" FullName="1"/>
      <Tag Name="Series" FullName="some series name"/>
 </Tags>

In your example above, I can't know which one is the series Tag, since I assume it doesn't say Series once actual data is included:

 <Tags>
      <Tag Name="Season 1" FullName="Season 1"/>
      <Tag Name="some series name" FullName="some series name"/>
 </Tags>
some series name
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 20, 2013, 01:29:16 am
See the attached file
Title: Re: Import from DVD Profiler
Post by: MrC on March 20, 2013, 02:18:26 pm
Attached is version 1.4, which includes the following changes:

 - Uses the Tag values to set Series and Season (Path/filename patterns "Series Name- S##E## - " will override)
 - added -a option to also export DVD entries without a Location (i.e Filename) value (these are not output by default)
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 21, 2013, 01:21:04 am
I tested it as soon as possible

thank you again
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 21, 2013, 10:17:20 am
A priori it works well

It remains to map from DVD Profiler :
ProductionYear: is it Date? How is this calculated?

Does JRiver could manage sagas like the series:
Example:
Saga: Terminator
Episode 1: The Terminator
Episode 2: Terminator 2
Episode 3: Terminator 3
Title: Re: Import from DVD Profiler
Post by: MrC on March 21, 2013, 10:30:33 am
Production Year gets mapped to Date (this is what you specified in your DVD_Profiler_to JRiver.rtf file).  The value stored in the Date field in the mpl is the number of days between the MC date epoch which is 1899/12/31 and the Production Year from the xml file.  If you want another field to be used, that's fine.

Many folks use Series for "saga".  You could create your own Saga field and use it for the grouping.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 21, 2013, 12:33:35 pm
Production Year gets mapped to Date (this is what you specified in your DVD_Profiler_to JRiver.rtf file).  The value stored in the Date field in the mpl is the number of days between the MC date epoch which is 1899/12/31 and the Production Year from the xml file.  If you want another field to be used, that's fine.
Map is ok
For example, for 2000, taking January 1 or December 31?


Many folks use Series for "saga".  You could create your own Saga field and use it for the grouping.
Title: Re: Import from DVD Profiler
Post by: MrC on March 21, 2013, 12:48:50 pm
Year-only dates will be Jan 1.

If you have examples that aren't working, let me know which entries and I'll take a look.  The conversion may not be perfect.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 21, 2013, 06:50:52 pm
I would look in detail each field

Again thank you for this great job
Title: Re: Import from DVD Profiler
Post by: MrC on March 21, 2013, 07:18:56 pm
Great, glad its working so far.

Some food for thought - since you have much data that isn't currently being collected/stored, it could be combined into MC's comments field.  At least that way, you have it internally, and it can be pulled piecemeal into other fields rather easily.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 22, 2013, 12:55:39 pm
Great, glad its working so far.

Some food for thought - since you have much data that isn't currently being collected/stored, it could be combined into MC's comments field.  At least that way, you have it internally, and it can be pulled piecemeal into other fields rather easily.

An example ?
Title: Re: Import from DVD Profiler
Post by: MrC on March 22, 2013, 05:47:14 pm
Oh, there are things like:

CaseType>Keep Case</CaseType
<CollectionType>Owned</CollectionType>
<UPC>0-044005-374926</UPC>
<MediaTypes>
        <DVD>true</DVD>
        <HDDVD>false</HDDVD>
        <BluRay>false</BluRay>

etc.

I don't know what data you and others care about.  So, if you want this imported in to MC, it just has to be mapped.

For simple mappings like a string or list from one XML field to an MC field, you can add to the @path_to_MC_field array in the program.  The format is trival: the first column is the DVD Profiler XML path, the second column is the MC field name (stock, or your own), and the third column is a  reference to one of the two functions add_list_item() or add_single_item().

Code: [Select]
my @path_to_MC_field = (
    # list types
    [ 'Collection::DVD::CountryOfOrigin',                       'Country',                      \&add_list_item ],
    [ 'Collection::DVD::Genres::Genre',                         'Genre',                        \&add_list_item ],
    [ 'Collection::DVD::Audio::AudioTrack::AudioContent',       'Language',                     \&add_list_item ],
    [ 'Collection::DVD::Studios::Studio',                       'Studios',                      \&add_list_item ],

    # single value
    [ 'Collection::DVD::Format::FormatAspectRatio',             'Aspect Ratio',                 \&add_single_item ],
    [ 'Collection::DVD::Format::FormatVideoStandard',           'Video Standard',               \&add_single_item ],
    [ 'Collection::DVD::OriginalTitle',                         'Original Title',               \&add_single_item ],
    [ 'Collection::DVD::Rating',                                'MPAA Rating',                  \&add_single_item ],
    [ 'Collection::DVD::RatingSystem',                          'MPAA Rating Description',      \&add_single_item ],
    [ 'Collection::DVD::Title',                                 'Name',                         \&add_single_item ],
    [ 'Collection::DVD::Overview',                              'Description',                  \&add_single_item ],
    [ 'Collection::DVD::RunningTime',                           'Duration',                     \&add_single_item ],

Separate code routines are required to handle transformations to any data, or to handle values that are stored in XML attributes.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 23, 2013, 06:27:58 am
For mediatypes we can create the field Media Support
UPC -> UPC
OriginalTitle -> Original Title
CountryOfOrigine -> Country
Subtitles.Subtitle -> Subtitles (field created)
Events.EvenType -> Watched (field created = Yes if Watched)
Title: Re: Import from DVD Profiler
Post by: MrC on March 23, 2013, 11:27:37 pm
This new version 1.5 maps the above requested fields.  UPC, OriginalTitle, and CountryOfOrigin were already mapped in previous versions.

I've also added the channel mappings using the table below (5.1 was the only one being set in previous versions). Let me know if any of these need correcting.

        'Mono'                     => 1
        '2-Channel Stereo'    => 2
        '3.1'                        => 4
        '5.0'                        => 5
        'Dolby Surround'      => 5
        '5.1'                        => 6
        '5.1 (Matrixed 6.1)'   => 7
        '6.1 (Discrete)'         => 7
        '7.1'                        => 8

We're still not dealing with the multiple AudioTracks (currently only the first-found is used).

It is about 1/3 faster too.  The path_to_MC_field structure has changed (to a hash instead of an array), but the change is trivial and self-explanatory.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 25, 2013, 02:14:12 am
What is the mapping of "MPA Rating Description"
Ok for channel mapping

For Media Support : one only is saved
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 25, 2013, 07:05:35 am
With Language : Exemple
French (Dolby Digital 5.1);English (DTS-HD Master Audio 5.1)
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 25, 2013, 09:15:35 am
What is the difference between "Composer" and "Music By"
Title: Re: Import from DVD Profiler
Post by: MrC on March 25, 2013, 12:51:01 pm
What is the difference between "Composer" and "Music By"

Composer might be Mozart, but Music By would be the person who compiled, scored, or re-arranged the soundtrack.  These types of single value properties break down easily, and are to be used for your own needs, not pedantic categorization.  They are currently mapped as the same (via the dual mapping mentioned previously).

What is the mapping of "MPA Rating Description"

This is mentioned above.

With Language : Exemple
French (Dolby Digital 5.1);English (DTS-HD Master Audio 5.1)

You're saying you want to include the AudioFormat and AudioChannels with respective AudioContent (i.e. language) into the Langauge mapping per language?

For Media Support : one only is saved

There are three possibilities DVD, HDDVD, BluRay.  I only saw one set to "true" for a single DVD entry; the remaining ones are "false".  Are there entries where more than a single value is True?

Title: Re: Import from DVD Profiler
Post by: sonata31 on March 25, 2013, 01:11:19 pm
Composer might be Mozart, but Music By would be the person who compiled, scored, or re-arranged the soundtrack.  These types of single value properties break down easily, and are to be used for your own needs, not pedantic categorization.  They are currently mapped as the same (via the dual mapping mentioned previously).

This is mentioned above.

You're saying you want to include the AudioFormat and AudioChannels with respective AudioContent (i.e. language) into the Langauge mapping per language?
Yes

There are three possibilities DVD, HDDVD, BluRay.  I only saw one set to "true" for a single DVD entry; the remaining ones are "false".  Are there entries where more than a single value is True?
Yes


Title: Re: Import from DVD Profiler
Post by: MrC on March 25, 2013, 02:41:09 pm
Here is version 1.6.

Changes:
    - AudioFormat and AudioChannels are now included in Language.
    - For Media Support, the following combinations were found; all combinations are now handled, including the CustomMediaType value:

      <Field Name="Media Support">BluRay; HD Disk</Field>
      <Field Name="Media Support">BluRay</Field>
      <Field Name="Media Support">DVD; BluRay; HD Disk</Field>
      <Field Name="Media Support">DVD; HD Disk</Field>
      <Field Name="Media Support">DVD; HDDVD</Field>
      <Field Name="Media Support">DVD</Field>
      <Field Name="Media Support">HD Disk</Field>
      <Field Name="Media Support">HDDVD; HD Disk</Field>

How did you define the Media Support type in MC (a list or a single value?)

Title: Re: Import from DVD Profiler
Post by: sonata31 on March 26, 2013, 01:31:13 am
I defined "Media Support" as a string
What would be the advantage of defining such a list?
Title: Re: Import from DVD Profiler
Post by: MrC on March 26, 2013, 01:50:11 am
As a list type, you can add/delete individual items with list checkboxes, and in panes or categories views, items are automatically separated.  It's no big deal either way.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 26, 2013, 01:59:20 am
For Actor : Example
Jennifer Garner (Sydney Bristow);....
Title: Re: Import from DVD Profiler
Post by: MrC on March 26, 2013, 02:13:08 am
I'll give these to you as:

   Jennifer Garner=Sydney Bristow; ...

This way, you can separate them more easily in MC for lists, etc..  Is that OK?  If so, the change is done.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 26, 2013, 04:37:00 am
I'll give these to you as:

   Jennifer Garner=Sydney Bristow; ...

This way, you can separate them more easily in MC for lists, etc. much more easily.  Is that OK?  If so, the change is done.

It's OK
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 26, 2013, 05:39:38 am
For the saga to be grouped under Theater View we have to manage them as the series
In the Theater view they appear with the series, then they should be with movies

How do I change this behavior?
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 26, 2013, 06:02:10 am
Before an up-to-date of the library (import of a new file mpl) we must make a clear of the library to avoid double
The problem is that this empty all : audio, images and video
How to avoid this?
Title: Re: Import from DVD Profiler
Post by: MrC on March 26, 2013, 07:57:26 pm
Here's version 1.7:

Changes:
1. Include charcter name with each Actor.
2. Some internal cleanups.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 27, 2013, 01:46:25 am
Great, we can recover most of the information
The only problems remaining are those mentioned in my two previous posts
Title: Re: Import from DVD Profiler
Post by: MrC on March 27, 2013, 12:12:16 pm
Before an up-to-date of the library (import of a new file mpl) we must make a clear of the library to avoid double
The problem is that this empty all : audio, images and video
How to avoid this?

It depends. 

If you are using DVD Profiler as your management tool, then you could delete all the video entries that were imported from DVD Profiler.  Detection of these records could be facilitated by adding a value such as "Converted to MC MPL from DVD Profiler XML on <date>" to some tag such as Comment.

I haven't checked, but didn't think MC would duplicate records for entries where Filename exists.  I thought the duplicates were only for those where no Filename exists.

If you're wanting to do a one-time import, and no longer use DVD Profiler, this shouldn't be an issue generally.
Title: Re: Import from DVD Profiler
Post by: MrC on March 27, 2013, 12:13:20 pm
For the saga to be grouped under Theater View we have to manage them as the series
In the Theater view they appear with the series, then they should be with movies

How do I change this behavior?

Probably this question belongs in an MC 18 thread, where others can help you define views that suit your needs.  There will be more eyes there, and it won't pollute the essence of this DVD Profiler thread.
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 28, 2013, 01:35:39 am
It depends. 

If you are using DVD Profiler as your management tool, then you could delete all the video entries that were imported from DVD Profiler.  Detection of these records could be facilitated by adding a value such as "Converted to MC MPL from DVD Profiler XML on <date>" to some tag such as Comment.
I do not really understand how?

I haven't checked, but didn't think MC would duplicate records for entries where Filename exists.  I thought the duplicates were only for those where no Filename exists.

If you're wanting to do a one-time import, and no longer use DVD Profiler, this shouldn't be an issue generally.

I always use DVD Profiler to manage my movies, this for the following reasons:
- This is the only way to manage the movies that do not have a file on disk
- This is the only way to manage Collection Number

On the other hand my library is synced with my iPad, which allows me to prepare a session even if JRiver is not active
Title: Re: Import from DVD Profiler
Post by: sonata31 on March 28, 2013, 02:00:41 am
It depends. 

If you are using DVD Profiler as your management tool, then you could delete all the video entries that were imported from DVD Profiler.  Detection of these records could be facilitated by adding a value such as "Converted to MC MPL from DVD Profiler XML on <date>" to some tag such as Comment.

I haven't checked, but didn't think MC would duplicate records for entries where Filename exists.  I thought the duplicates were only for those where no Filename exists.
I checked, that is what behavior

If you're wanting to do a one-time import, and no longer use DVD Profiler, this shouldn't be an issue generally.
Title: Re: Import from DVD Profiler
Post by: Mikkel on August 01, 2013, 07:59:01 am
Hi MrC,

I was wondering if this neat tool works for any person who has DVDProfiler and would like to merge it with the JRiver video collection?


Best regards,
Mikkel
Title: Re: Import from DVD Profiler
Post by: MrC on August 01, 2013, 11:50:44 am
It will read your DVD Profiler XML file* and create a file that MC can import.  This will update the entries in MC for the files that exist in both DVD Profiler and in MC, or import them if they do not already exist in MC.

DVD Profiler has a higher-level abstraction than MC.  It manages collections of things (such as multi-disc sets), whereas MC is file-oriented.  So the import will be somewhat lossy, but I tried to grab and use as much useful information as possible to store in the MCs records.

It would be useful to read through this thread, so you can understand what can and can't be done, and how to use the tool.

* Note: I do not use DVD Profiler, so don't know how the XML file is created.  It might be DVD Profiler's database file, or it might be that you need to export it.  So you'll have to follow-up on that.
Title: Re: Import from DVD Profiler
Post by: gschaben1 on November 02, 2013, 11:17:47 am
MrC,
 This looks like it will do exactly what I've been hoping for (populating aspect ratio, cinematographer, editor, etc. fields), if I can get it work. When running the PERL script from a DVD Profiler .xml file of about 100 titles, the .mpl file is created, but is empty, except for
                 <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
                 <MPL Version="2.0" Title="JRSidecar">
                </MPL>
So, no titles. Any ideas?
Thanks for all your work on this by the way.
Title: Re: Import from DVD Profiler
Post by: MrC on November 02, 2013, 12:29:12 pm
I'm not sure what is going wrong, but you are correct, not titles are being output.  Can you PM me a zip'd XML file?
Title: Re: Import from DVD Profiler
Post by: gschaben1 on November 02, 2013, 12:52:56 pm
MrC,
 I don't seem to be able to add the attachment to PM, so I have attached it to this reply. Let me know if you need any further information.
Title: Re: Import from DVD Profiler
Post by: MrC on November 02, 2013, 01:02:47 pm
That's fine, thanks.  See reply #61:

    http://yabb.jriver.com/interact/index.php?topic=78625.msg538482#msg538482 (http://yabb.jriver.com/interact/index.php?topic=78625.msg538482#msg538482)

Use -a.
Title: Re: Import from DVD Profiler
Post by: gschaben1 on November 02, 2013, 02:36:52 pm
MrC,
 That's got it. But now I have a question about importing the info into MC. The File > Import Playlist worked, but, because I had previously imported some of the titles from .iso files on attached hard drives, there are now duplicate entries. I could remove the imported .iso files from the library first and then run the playlist import, but then I wouldn't be able to play them using MCs player because they would have no file location. I also tried clearing the library, running the playlist import, and then importing the files from the hard drive again, but again got duplicates. Will I need to add the file location manually to titles imported via the DVD Profiler playlist file?
Title: Re: Import from DVD Profiler
Post by: MrC on November 02, 2013, 02:55:14 pm
The two entries, one created from the imported ISO and the other from the DVD Profiler import are currently distinct from MC's perspective.  If you want to tie the existing ISO entry to the metadata imported by the MPL file, you'll need to have the MPL file's Filename field match your ISO entries Filename field.  When Filename exists, MC will overwrite the metadata for that track (rather than create a new one).  I'm not sure how this can be managed automatically.

Generally MC works on a one entry = one physical file basis.

There is a Copy and Paste Tags functionality, where you could copy the tags from the imported MPL and paste them to the entries for which there are actual files.

If you can think of a reliable way to relate your current entries Filename field with those in the MPL, then maybe a Filename field entry could be written before import so that your current entries are updated.

Makes sense?
Title: Re: Import from DVD Profiler
Post by: gschaben1 on November 03, 2013, 10:11:02 am
MrC,
The two entries, one created from the imported ISO and the other from the DVD Profiler import are currently distinct from MC's perspective.  If you want to tie the existing ISO entry to the metadata imported by the MPL file, you'll need to have the MPL file's Filename field match your ISO entries Filename field. When Filename exists, MC will overwrite the metadata for that track (rather than create a new one).

Which means the MC Filename containing the .iso folder information will be lost anyway, since it's not in the .mpl import file. So matching the current entries' Filenames to those in the .mpl file wouldn't make any difference.

There is a Copy and Paste Tags functionality, where you could copy the tags from the imported MPL and paste them to the entries for which there are actual files.

But this looks like it will work fine. Pasting the tags to the .iso entries doesn't overwrite the Filename or the Image. I only have about 100 files I would like to update, and they'll be easy to identify. Then I'll just need to remove the imported .mpl entries, which should be easy enough.
Now I can start adding the field mapping entries I want to the dvdprofiler2mc file. Thanks again.

Title: Re: Import from DVD Profiler
Post by: MrC on November 03, 2013, 11:24:20 am
Sounds like a good solution.
Title: Re: Import from DVD Profiler
Post by: gschaben1 on November 03, 2013, 01:38:29 pm
MrC,
 Done! I added numerous Credit and DVD fields and created the matching MC custom fields. All show up in the coverted.mpl file and get imported correctly into MC. The only fields I wasn't sure about were the AudioTrack fields, but then I saw you had mapped them to the existing Language field. Nice! It's only about an hour's work to copy and paste the tags to existing .iso entries and remove the imported .mpl entries. And using the Tag Action Window means I can see every tag that has a value in one window without scrolling. Only one last question: is it possible to widen the Field Name pane in the Tag Action Window to see some of the longer tag names completely?
I hope there are more DVD Profiler users that will make use of this, it's great.