Minor correction
[melted] / mlt++ / src / MltFrame.cpp
index 0595a68..546220d 100644 (file)
  */
 
 #include "MltFrame.h"
+#include "MltProducer.h"
 using namespace Mlt;
 
 Frame::Frame( mlt_frame frame ) :
-       destroy( true ),
        instance( frame )
 {
+       inc_ref( );
 }
 
 Frame::Frame( Frame &frame ) :
-       destroy( false ),
        instance( frame.get_frame( ) )
 {
+       inc_ref( );
 }
 
 Frame::~Frame( )
 {
-       if ( destroy )
-               mlt_frame_close( instance );
+       mlt_frame_close( instance );
 }
 
 mlt_frame Frame::get_frame( )
@@ -78,4 +78,12 @@ int16_t *Frame::get_audio( mlt_audio_format &format, int &frequency, int &channe
        return audio;
 }
 
+unsigned char *Frame::get_waveform( int w, int h )
+{
+       return mlt_frame_get_waveform( get_frame( ), w, h );
+}
 
+Producer *Frame::get_original_producer( )
+{
+       return new Producer( mlt_frame_get_original_producer( get_frame( ) ) );
+}