Skip to content

Releases: Netflix/photon

Added functionality to create an IMP with a provided CPL, instead of generating it with CPLBuilder.

20 Jan 07:01
c5a78a7
Compare
Choose a tag to compare

This release expands the recently added functionality of creating an IMP with a provided CPL. Now, trackFileMetadata and trackFileInfo can both be used as a parameter for IMPBuilder's methods.

Photon v4.8.1

20 Jan 03:50
83e8099
Compare
Choose a tag to compare

This release contains several changes implemented since August 31, 2020.

  • Several Gradle Wrapper Updates to the current version (7.6).
  • Removal of JAXB-generated classes.
  • Added pictureEssenceCoding validation: This change added a new layer of validation to check the existence of the pictureEssenceCoding element in a CPL. If the element is not present, Photon will highlight an error while parsing the essenceDescriptors. This change has made Photon more restrictive.
  • Fixed possible generation of mismatching sourceEncoding and essenceDescriptor IDs.
  • Provided functionality to build a new IMP with a provided CPL, rather than always build the CPL from scratch. Up to this point, creating a new IMP has always implied generating a new CPL with its own UUID. However, there may be a scenario where, in a redelivery, a studio delivers a CPL that already references all previously delivered essence files (.mxf). In that case, a client could end up with two identical CPLs (the one delivered by the studio and the one generated by Photon's IMPBuilder.buildIMP_201X method.) that have different UUIDs.
    This release adds a functionality where a client can pass in a CPL to be used when building the new IMP. This way, the original UUID can be retained.

If you experience any issues following these changes, please reach out to @danielhdz13-netflix or @fschleich.

Add IMF 2020 Spec Update Support

31 Aug 17:42
3f4677e
Compare
Choose a tag to compare

This release adds support for the updated 2020 version of the IMF specification.
New generated classes were created, for updated schemas.
Core Constraints version was decoupled from the CompositionPlaylist version where possible. This resulted in a bit of refactoring to existing logic.

Minor Release Fixing Track Duration Bug

10 Jun 20:29
0ad382f
Compare
Choose a tag to compare

This minor release fixes incorrect duration reported by VirtualTracks other than MainImageSequence and MainAudioSequence. Previously IAB audio tracks and subtitle tracks would report a duration of zero.

Support for Descriptive Metadata and other fixes

06 Mar 01:47
cd5d637
Compare
Choose a tag to compare

This release adds support for Descriptive Metadata, in order to parse GenericStreamTextBasedSet and extract data from associated GenericStreamPartitions.
It also adds validations of ID of the CPL and MXF files with IDs used in the AssetMap

Minor release to enable exposing language for Immersive Audio Bitstream applications

20 Feb 23:51
cafae80
Compare
Choose a tag to compare
Merge pull request #269 from Netflix/iab_language

expose language for IAB files

Minor release for use of Photon for Immersive Audio Bitstream applications

05 Feb 00:18
c65c18a
Compare
Choose a tag to compare
Merge pull request #267 from Netflix/iab_get_descriptor

add getIABEssenceDescriptor method

Immersive Audio Bitstream and ACES

15 Nov 21:29
6d646f2
Compare
Choose a tag to compare

Adds support for SMPTE IAB in IMF ST2067-201
Adds support for ACES
some minor fixes (CDCI descriptors, marker tracks)

SMPTE Register update

22 Feb 19:41
aa80dc8
Compare
Choose a tag to compare

Registers are updated to SMPTE draft v81.
RegXMLLib is updated to version 1.1.3 to support latest registers.

Patch release

28 Aug 22:49
22f8017
Compare
Choose a tag to compare

Fix essence descriptor homogeneity check

  • The check is based on an include list instead of an ignore list

  • Fields specified in App#2 and App#2e homogenous essence specifications are included by default

  • Additional fields to include in the homogeneity check can be passed during the construction of a composition

  • List of fields included by default in the homogeneity check
    CDCIDescriptor/RGBADescriptor:
    +StoredWidth
    +StoredHeight
    +FrameLayout
    +SampleRate
    +ColorPrimaries
    +TransferCharacteristic
    +PictureCompression
    +ComponentMaxRef
    +ComponentMinRef

    RGBADescriptor:
    +PixelLayout:
    ++RGBAComponent:
    +++Code
    +++ComponentSize

    CDCIDescriptor:
    +CodingEquations
    +BlackRefLevel
    +WhiteRefLevel
    +ColorRange
    +ColorSiting
    +ComponentDepth
    +HorizontalSubsampling
    +VerticalSubsampling

    JPEG2000SubDescriptor:
    +Xsiz
    +Ysiz
    +Csiz
    +J2CLayout:
    ++RGBAComponent:
    +++Code
    +++ComponentSize
    +PictureComponentSizing:
    ++J2KComponentSizing:
    +++Ssiz
    +++XRSiz
    +++YRSiz

    WAVEPCMDescriptor:
    +AudioSampleRate
    +QuantizationBits