INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 2 3 4 5 [6]   Go Down

Author Topic: pscriptor.pl: a general purpose scriptable MC field manipulator + utility  (Read 96704 times)

jmone

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 14265
  • I won! I won!

Also... Have you seen these guys? - http://chapterdb.org/

BD, DVD chapter marks and names with a user submitted GUI and Website listing + API.  Their meta data is much better than the others, eg have a look at the Adele on, it lists all the chapters including the "speaking" parts.  Their timecodes seem to match mine as well.  Not perfect as some BD's are not on their yet, and some have been uploaded without chapter names but overall pretty good.

I had a look a couple of years ago when first looking for a solution to this and at that time there was not much on the site but it has really grown (I'll grab an account and have a play with the GUI - but it may be a service that can be used to pull (and push to) a bit like YADB.
Logged
JRiver CEO Elect

jmone

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 14265
  • I won! I won!

When you save the file it does two things
1) Submits it to the ChapterDb Database and
2) Saves a txt file out (attached)

So I'd say this is the best source of Meta Data out there at present and if an entry is not available it is easy to create one.  So, this gives us another options:
- Create particles based on the lookup from ChapterDb --> http://chapterdb.org/browse/112983 either by scraping the website using the same method that you first wrote for Discogs Release ID / AMG Album ID, but know you have a ChapterDb ID (or the unique Hash created for each MPLS).  If an item is not their the user would need to use their GUI to first fill it out, or
- Have the users create the text files (attached) using their GUI and then parse that to create the particles
- Use their API for the website to get and sumbit the details as well.

Some things I don't like is you have to have a Google, Facebook, Yahoo account to create your account and get a unique database id that is used by their GUI (and if you want to make direct API calls).

Thanks
Nathan

Note: I had to add ".TXT" to the chapter file to attach it, the file as saved is "Sex Pistols - Never Mind The Bollocks (Pure Audio).chapters"
Logged
JRiver CEO Elect

MrC

  • Citizen of the Universe
  • *****
  • Posts: 10462
  • Your life is short. Give me your money.

Got one that fails - Amy Winehouse Back to Black BD Pure Audio.  It is authored differently with a separate M2TS file for each of the 11 Songs.  While MC/LAV present them as chapters, Media Info presents then as different Videos (#1 to 11) with only 1 chapter in it's output.

For this disc, MC shows them as individual chapters, with the correct durations, etc.?  So there's nothing to be done here?
Logged
The opinions I express represent my own folly.

jmone

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 14265
  • I won! I won!

On this disk the MPLS points one of each of it's chapters to a different M2TS file (instead of one).  So in MC you play the BD and each song is still present as a chapter with a playback range as normal, so it still needs to be broken up by particle.  Unfortunatly, MediaInfo does not report these chapters (only those associated with the first m2ts).  

Likewise the other fail has one MPLS with 30 chatpers, half point to the first M2TS and the rest to a second.  MediaInfo shows the chapter info for the first half only.  I this is just a bug in MediaInfo as other progs have no problem with pulling all the chapter info (I'll ask the Q on sourceforge).

These are the ones I attached the directry sttruction and MPLS

edit - posted the bug? report for Media Info - https://sourceforge.net/p/mediainfo/discussion/297610/thread/e781b09e/
Logged
JRiver CEO Elect

arin

  • Junior Woodchuck
  • **
  • Posts: 97

Hi MrC,
here I am again!

I was trying the GetCoverArtSize scriplet and after installing the Image::ExifTool I was getting nowhere…

I go:
$ perl pscriptor.pl -E GetCoverArtSize -f comment -v

and always get something like:
File: /Volumes/Server10/iTunes Media/Music/A Girl Called Eddy/Tears All Over Town/01 Heartache.m4a
   in(comment): ''
   old=new(comment): <unknown>   field(comment) UNCHANGED: null value returned from script


Can you please tell me what I am missing?
Logged

MrC

  • Citizen of the Universe
  • *****
  • Posts: 10462
  • Your life is short. Give me your money.

Is the cover art inside the media file (embedded)?

Never mind.  I see the same with m4a files.  I'll take a look.
Logged
The opinions I express represent my own folly.

arin

  • Junior Woodchuck
  • **
  • Posts: 97

Yes it is!
Logged

MrC

  • Citizen of the Universe
  • *****
  • Posts: 10462
  • Your life is short. Give me your money.

Attached an updated GetCoverArtSize that supports m4a.  Unzip and place the .pm file in your Scriptlets folder.  Thanks for reporting this.
Logged
The opinions I express represent my own folly.

arin

  • Junior Woodchuck
  • **
  • Posts: 97

Thanx a lot!
I will try it in the next few days and let you know.
Logged

MrC

  • Citizen of the Universe
  • *****
  • Posts: 10462
  • Your life is short. Give me your money.

I've posted version 1.15.  Big update, that includes the ability to make chapter particles out of Blu-ray discs.  User jmone has offered to write up a workflow and usage HowTo.

Version 1.15
    - Fix: problem double utf8 encoding the Filename value being passed to MCWS.
    - New: option --filekey allows using the FileKey() value instead of the Filename.  This is
      useful when you are setting values for non-file backed MC entries such as particles.  To use
      this, add a file list expression column named Filekey and use the expression Filekey() as the
      expression value.
    - New: scriptlet MakeBDChapters creates particle-based chapters from a Blu-ray mpls file.  This
      scriptlet uses the ChapterDB site for disc lookup (either automatically or from a ChapterDB
      browse ID for the selected mpls playlist file).  If the MD5 lookup fails, MakeBDChapters will
      fallback to using the MediaInfo utility if installed to pull chapter information (this is not
      always reliable).  MakeBDChapters will create some necessary dummy files, imports them into MC,
      and then call the Particlize scriplet do do the particlization.  Read the comments at the top
      of the script, and the top of hte Particlize script for configuration requirements and view
      setup.  See the important Notes.
    - New: scriptlet Particlize creates particles out of dummy files which were created by amg.pl,
      discogs.pl and MakeBDChapters.  This allows you to create chapters or virtual splits in long
      media files, based on title and duration information found on amg or discogs. The scriptlet
      deletes the dummy files upon exit, leaving only the particles in place.
    - New: a scriptlet's do_preprocessing routine can now return a reference to a modified
      tracklist.  This allows, for example, winnowing or sorting the tracklist.
    - Fix: produce error and die on scriptlet name typos.
    - Fix: GetCoverArtSize failed to get the artwork size for m4a files.
    - Internal: MCUtils/MPL module now being used, replacing older MPL writing code.
    - Internal: HTTP page pulls are now handled by the MCUtils/HTTP.pm module.
Logged
The opinions I express represent my own folly.

MrC

  • Citizen of the Universe
  • *****
  • Posts: 10462
  • Your life is short. Give me your money.

A quick update to fix a bug when using MakeDBChapters:

Version 1.16
    - Fix: track Name entries that were double quoted were being incorrectly encoded in the
      saved XML, causing those entries to inherit the generic "Chapter #" name.
    - Internal: moved HTML decoding out of shared MCUtils/MCWS.pm module.
Logged
The opinions I express represent my own folly.

MrC

  • Citizen of the Universe
  • *****
  • Posts: 10462
  • Your life is short. Give me your money.

I've posted Version 1.17, which adds a couple new options to MakeBDChapters, and better parses MediaInfo output for certain BDs.

Version 1.17
    - New: scriplet MakeBDChapters has two new options 'check' and 'submit', supplied via -a.
    - Fix: scriplet MakeBDChapters better handles pulling chapter data from MediaInfo.
    - Internal: mention HTTP page get failures only in verbose mode (MCUtils/HTTP.pm).
    - Internal: mention chapterdb lookup failures only in verbose mode.
Logged
The opinions I express represent my own folly.

audiocrazy

  • Recent member
  • *
  • Posts: 15

There is no MakeBDChapters.bat file in Pscriptor_1_17 install. Where do I get it.
I tried all downloads and none of them contains MakeBDChapters.bat file.
Where do I download MakeBDChapters.bat?

I run this command perl pscriptor.pl -E MakeBDChapters -f "dummyfield" -v --filekey -a check
But since MakeBDChapters.bat is missing it get this message

"File: 384269: F:\Video\Chris Botti In Boston\CHRIS_BOTTI_IN_BOSTON\BDMV\PLAYLIST\00003.mpls
        in(dummyfield): ''
        old=new(dummyfield): <unknown>  field(dummyfield) UNCHANGED: null value returned from script"
Logged

jmone

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 14265
  • I won! I won!
Re: pscriptor.pl: a general purpose scriptable MC field manipulator + utility
« Reply #263 on: September 26, 2015, 07:33:34 pm »

This thread has been locked and while it contains useful additional info, the script utility has been removed and is now superseded with the single MCUtils script package
Logged
JRiver CEO Elect
Pages: 1 2 3 4 5 [6]   Go Up