Quantcast
Channel: beginners - openFrameworks
Viewing all articles
Browse latest Browse all 4929

Deleting images from a vector

$
0
0

@jelissab wrote:

Hi, I'm very new to openframeworks but have to do a project in which every time I replay a video (by pressing a button), certain frames are deleted so that it's like it's missing a clip.

I've tried capturing frames and placing them into a vector than using .erase to remove the frames but I keep getting EXC_BAD_ACCESS.

This is my code for deleting the parts of my image vector:
vector buff;

Buffer(){}

Buffer(int width, int height, ofImageType imgType, int size){

    head = 0;

    w = width;
    h = height;

    type = imgType;

    init = false;
    length = size;


    for(int i = 0; i< length; i++){

        buff.push_back(ofImage());
        buff[i].allocate(w,h,type);

    }

}

void addFrame(ofPixels p){

    buff[head].setFromPixels(p);

    head = (head + 1)%length;

    if (head == length - 1 && init == false){
        init = true;
    }

}



void deleteFrame(int x, int y, int width, int height){

    if(init == true){
        buff.erase(buff.begin()+5, buff.begin()+10);
        buff[head].draw(x, y, width, height);
    }
}

In "ofApp.cpp" I have this:

void ofApp::setup(){

ofBackground(0,0,0);

video.load("oldvid.mp4");

video.setLoopState(OF_LOOP_NONE);

video.getTotalNumFrames();


video.play();

remember = Button(750,330,234,58);

remember.onImage("rembutton.jpg");

buff = Buffer(600, 400, OF_IMAGE_COLOR, 600); }

void ofApp::update(){

video.update();
    if(video.isFrameNew()){
        buff.addFrame(video.getPixels());
    }

}

void ofApp::draw(){

remember.draw();

video.draw(60, 150, 600, 400);

if(remember.clicked == false){

}else{
    buff.deleteFrame(60, 150, 600, 400);
}


}

Logically, it makes sense to me. But it just crashes in the end after I press the button because of the EXC_BAD_ACCESS error.

So after the 5th frame, that is when the exception happens. But I don't know why!!! All I want to do is delete a few frames and then show the video after.

It also says that it is "drawing an unallocated texture" so whatever that means.

Posts: 2

Participants: 1

Read full topic


Viewing all articles
Browse latest Browse all 4929

Trending Articles