*/
-#ifndef LIBDCP_PICTURE_ASSET_H
-#define LIBDCP_PICTURE_ASSET_H
+#ifndef LIBDCP_J2K_PICTURE_ASSET_H
+#define LIBDCP_J2K_PICTURE_ASSET_H
#include "mxf.h"
-#include "util.h"
#include "metadata.h"
+#include "picture_asset.h"
+#include "util.h"
namespace ASDCP {
/** @class J2KPictureAsset
* @brief An asset made up of JPEG2000 data
*/
-class J2KPictureAsset : public Asset, public MXF
+class J2KPictureAsset : public PictureAsset
{
public:
/** Load a J2KPictureAsset from a file */
Behaviour behaviour
) = 0;
- Size size () const {
- return _size;
- }
-
- void set_size (Size s) {
- _size = s;
- }
-
- Fraction frame_rate () const {
- return _frame_rate;
- }
-
- void set_frame_rate (Fraction r) {
- _frame_rate = r;
- }
-
- Fraction screen_aspect_ratio () const {
- return _screen_aspect_ratio;
- }
-
- void set_screen_aspect_ratio (Fraction r) {
- _screen_aspect_ratio = r;
- }
-
- Fraction edit_rate () const {
- return _edit_rate;
- }
-
- int64_t intrinsic_duration () const {
- return _intrinsic_duration;
- }
-
static std::string static_pkl_type (Standard standard);
protected:
void read_picture_descriptor (ASDCP::JP2K::PictureDescriptor const &);
- Fraction _edit_rate;
- /** The total length of this content in video frames. The amount of
- * content presented may be less than this.
- */
- int64_t _intrinsic_duration = 0;
- /** picture size in pixels */
- Size _size;
- Fraction _frame_rate;
- Fraction _screen_aspect_ratio;
-
private:
std::string pkl_type (Standard standard) const override;
};