Skip to main content

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

Metadata

Release files for imschrm 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for imschrm 1.1.0
File Size Uploaded
imschrm-1.1.0.tar.gz 114.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for imschrm 1.1.0
File Interpreter ABI Platform
imschrm-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 241.0 kB

Release files / imschrm-1.1.0.tar.gz

Download URL imschrm-1.1.0.tar.gz
Size 114.5 kB
Tags Source
SHA-256 checksum
How to use checksums
7811f9bf45ae86982b85c52f9345188b33898cb99aea266bf55059c604a06e78
BLAKE2b-256 checksum
How to use checksums
8485ae8298a56c7d62d21922d2e27e8eb1d02cf143c8e39593da15903ddf8709
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.12.0

Release files / imschrm-1.1.0-py3-none-any.whl

Download URL imschrm-1.1.0-py3-none-any.whl
Size 126.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5c9358c44edc602b163ec1068ac7e4c3d5b03395f8cea47acc7595502aa9c155
BLAKE2b-256 checksum
How to use checksums
314874a2bbef43b07affa4db977f7887f7f2ec9c021d01d54ef4851a6fe6cd50
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.12.0
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page