libdcp
Classes | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
dcp::StereoPictureAssetWriter Class Reference

A helper class for writing to StereoPictureAssets. More...

#include <stereo_picture_asset_writer.h>

Inheritance diagram for dcp::StereoPictureAssetWriter:
dcp::PictureAssetWriter dcp::AssetWriter

Classes

struct  ASDCPState
 

Public Member Functions

FrameInfo write (uint8_t const *data, int size) override
 
void fake_write (int size) override
 
bool finalize () override
 
- Public Member Functions inherited from dcp::PictureAssetWriter
FrameInfo write (Data const &data)
 
- Public Member Functions inherited from dcp::AssetWriter
 AssetWriter (AssetWriter const &)=delete
 
AssetWriteroperator= (AssetWriter const &)=delete
 
int64_t frames_written () const
 

Private Member Functions

 StereoPictureAssetWriter (PictureAsset *, boost::filesystem::path file, bool)
 
void start (uint8_t const *, int)
 

Private Attributes

std::shared_ptr< ASDCPState > _state
 
dcp::Eye _next_eye = Eye::LEFT
 

Friends

class StereoPictureAsset
 

Additional Inherited Members

- Protected Member Functions inherited from dcp::PictureAssetWriter
 PictureAssetWriter (PictureAsset *, boost::filesystem::path, bool)
 
- Protected Member Functions inherited from dcp::AssetWriter
 AssetWriter (MXF *mxf, boost::filesystem::path file)
 
- Protected Attributes inherited from dcp::PictureAssetWriter
PictureAsset_picture_asset = nullptr
 
bool _overwrite = false
 
- Protected Attributes inherited from dcp::AssetWriter
MXF_mxf = nullptr
 
boost::filesystem::path _file
 
int64_t _frames_written = 0
 
bool _finalized = false
 
bool _started = false
 
std::shared_ptr< EncryptionContext_crypto_context
 

Detailed Description

A helper class for writing to StereoPictureAssets.

Objects of this class can only be created with StereoPictureAsset::start_write().

Frames can be written to the StereoPictureAsset by calling write() with a JPEG2000 image (a verbatim .j2c file). finalize() must be called after the last frame has been written. The action of finalize() can't be done in StereoPictureAssetWriter's destructor as it may throw an exception.

Definition at line 60 of file stereo_picture_asset_writer.h.

Member Function Documentation

◆ finalize()

bool StereoPictureAssetWriter::finalize ( )
overridevirtual
Returns
true if anything was written by this writer

Reimplemented from dcp::AssetWriter.

Definition at line 136 of file stereo_picture_asset_writer.cc.

◆ write()

FrameInfo StereoPictureAssetWriter::write ( uint8_t const *  data,
int  size 
)
overridevirtual

Write a frame for one eye. Frames must be written left, then right, then left etc.

Parameters
dataJPEG2000 data.
sizeSize of data.

Implements dcp::PictureAssetWriter.

Definition at line 80 of file stereo_picture_asset_writer.cc.


The documentation for this class was generated from the following files: