Skip to main content

OpenReviewIO Python API

Project description

/!\ Still in alpha stage and on its way to be stable. Every feedback is welcome!


OpenReviewIO is a standard that describes a format for sharing media (shots, animations...) review informations. It's main purpose is to guarantee review informations compatibility across media reviewing tools. Please read the specifications for more informations.

OpenReviewIO Python API is the main Python API for the ORIO standard, maintained by the designer of the standard.


The version of the API is related to the version of the standard.
API 1.x.y <=> Standard 1.x

In Alpha stage, the API is 0.x.y but related to 1.x Standard. Will become 1.x.y when first stable release.

Last standard version: 1.0


import openreviewio as orio

Create a media review

review = orio.MediaReview("/path/to/media.ext")

Create a note

note = orio.Note(author="Alice")

Create content

Contents are defined by the standard version

There is a naming convention about the contents:
- Comment means something related to the whole media.
- Annotation means something related to a specific frame and duration of the media.

Text comment
text_comment = orio.Content.TextComment(body="My text comment")
Text annotation
text_annotation = orio.Content.TextComment(
    body="My text comment",
Image comment
image = orio.Content.Image(path_to_image="/path/to/image_comment.png")
Image annotation
image_annotation = orio.Content.ImageAnnotation(

Add content to note

# Single content

# Several contents
note.add_content([text_annotation, image, image_annotation])

Add note to review


Write media review to disk

# Write next to the media

# Specifying a directory

Export/Import a note as zip

# Export
exported_note_path = note.export("/path/to/folder", compress=True)

# Import


From content to review

# Content
text = orio.Content.TextComment(body="Banana")

# Note
new_note = orio.Note("Michel", content=text)

# Review
review = orio.MediaReview("/path/to/media.ext", note=new_note)

Reply to a note

# Main note
text = orio.Content.TextComment(body="Make the logo bigger.")
main_note = orio.Note("Michel", content=text)

# Reply to the main note
reply = orio.Content.TextComment(body="Done, I'm waiting for my visibility payment.")
note_reply = orio.Note("Michel", content=reply, parent=main_note)

Add a reference image to an image annotation

Useful for keeping an image as reference of the drawing.

image_annotation = orio.Content.ImageAnnotation(
# Or
image_annotation.reference_image = "/path/to/reference_image.png"

Copyright 2020, Félix David ©

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

openreviewio-0.0.43.tar.gz (12.1 kB view hashes)

Uploaded source

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