7void Frame::Plane::setSize(uint32_t iw, uint32_t ih) {
8 uint32_t w16 = ((iw+15)/16)*16;
9 uint32_t h16 = ((ih+15)/16)*16;
18 const uint8_t* d = dat.data();
20 for(uint32_t y=0; y<8; ++y) {
21 for(uint32_t x=0; x<8; ++x) {
22 out[x+y*8] = d[(x+rx) + (y+ry)*strd];
28 getPixels8x8(bx*8,by*8,out);
32 uint8_t* d = dat.data();
34 for(uint32_t y=0; y<8; ++y) {
35 for(uint32_t x=0; x<8; ++x) {
36 d[(x+bx*8) + (y+by*8)*strd] = in[x+y*8];
42 uint8_t* d = dat.data();
43 for(uint32_t y=0; y<16; ++y) {
45 for(uint32_t x=0; x<16; ++x) {
46 d[(x+bx*8) + (y+by*8)*strd] = in[(x/2)+y2*8];
52 std::memset(dat.data(),v,dat.size());
56 return dat[x + y*strd];
68void Frame::setSize(uint32_t w, uint32_t h) {
69 planes[0].setSize(w,h);
70 planes[1].setSize(w/2,h/2);
71 planes[2].setSize(w/2,h/2);
72 planes[3].setSize(w,h);
75void Frame::setAudioChannels(uint8_t count) {
void putScaledBlock(uint32_t x, uint32_t y, const uint8_t *in)
void getPixels8x8(uint32_t rx, uint32_t ry, uint8_t *out) const
void getBlock8x8(uint32_t x, uint32_t y, uint8_t *out) const
void putBlock8x8(uint32_t x, uint32_t y, const uint8_t *in)
uint8_t at(uint32_t x, uint32_t y) const
const Audio & audio(uint8_t id) const