Skip to main content

Validates IMSC documents against the IMSC HRM

Project description

IMSC Hypothetical Render Model (HRM) Validator

 __  _  _  ____   ___  _  _  ____  _  _ 
(  )( \/ )/ ___) / __)/ )( \(  _ \( \/ )
 )( / \/ \\___ \( (__ ) __ ( )   // \/ \
(__)\_)(_/(____/ \___)\_)(_/(__\_)\_)(_/

Introduction

imschrm validates IMSC documents against the IMSC Hypothetical Render Model (HRM), which constrains document complexity.

imschrm consists of a library and command line application written in pure Python, and uses ttconv.

Demo web app

A demo web app based on imschrm is available at https://hrm.sandflow.com/.

Quick start

Install the most recent development release:

    pip install imschrm --pre
    imschrm <input IMSC document>

Known issues

Issues are tracked at https://github.com/sandflow/imscHRM/issues.

Command line

cli.py [-h] [--itype {ttml,manifest}] input
  • input: input file
  • --itype: specifies whether the input file is a single IMSC document (ttml) (default) or a manifest (manifest) containing a list of IMSC documents.

The manifest is a JSON file that conforms to the schema at src/main/resources/json/manifest.json.schema.

EXAMPLE:

[
  {
    "begin": "12/24",
    "end": 1,
    "path": "doc001.ttml"
  },
  {
    "begin": 1,
    "end": null,
    "path": "doc002.ttml"
  }
]

Dependencies

General

The project uses pipenv to manage dependencies.

Runtime

Development

Development environment

  • run pipenv install --dev
  • set the PYTHONPATH environment variable to src/main/python, e.g. export PYTHONPATH=src/main/python
  • pipenv run can then be used

From the root directory of the project:

pipenv install --dev
mkdir build
export PYTHONPATH=src/main/python
pipenv run python src/main/python/imschrm/cli.py src/test/resources/ttml/fail001.ttml

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

imschrm-1.1.0.tar.gz (114.5 kB view details)

Uploaded Source

Built Distribution

imschrm-1.1.0-py3-none-any.whl (126.5 kB view details)

Uploaded Python 3

File details

Details for the file imschrm-1.1.0.tar.gz.

File metadata

  • Download URL: imschrm-1.1.0.tar.gz
  • Upload date:
  • Size: 114.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for imschrm-1.1.0.tar.gz
Algorithm Hash digest
SHA256 7811f9bf45ae86982b85c52f9345188b33898cb99aea266bf55059c604a06e78
MD5 ffbf50fd6f74ebe5676beb72168574ff
BLAKE2b-256 8485ae8298a56c7d62d21922d2e27e8eb1d02cf143c8e39593da15903ddf8709

See more details on using hashes here.

File details

Details for the file imschrm-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: imschrm-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 126.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for imschrm-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5c9358c44edc602b163ec1068ac7e4c3d5b03395f8cea47acc7595502aa9c155
MD5 c760c54fea0e1465b7e6c2dea7578847
BLAKE2b-256 314874a2bbef43b07affa4db977f7887f7f2ec9c021d01d54ef4851a6fe6cd50

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page