int main() { QBOX_ACCESS_KEY = "<Please apply your access key>"; QBOX_SECRET_KEY = "<Dont send your secret key to anyone>"; put_blocks("up_demo.c"); /* Generate a file first which size is more than 4MB and name it as 'huge_file.txt' */ put_blocks("huge_file.txt"); QBox_Global_Cleanup(); return 0; }
static int hq_decode_mb(HQContext *c, AVFrame *pic, GetBitContext *gb, int x, int y) { int qgroup, flag; int i, ret; qgroup = get_bits(gb, 4); flag = get_bits1(gb); for (i = 0; i < 8; i++) { ret = hq_decode_block(c, gb, c->block[i], qgroup, i >= 4, 0); if (ret < 0) return ret; } put_blocks(c, pic, 0, x, y, flag, c->block[0], c->block[2]); put_blocks(c, pic, 0, x + 8, y, flag, c->block[1], c->block[3]); put_blocks(c, pic, 2, x >> 1, y, flag, c->block[4], c->block[5]); put_blocks(c, pic, 1, x >> 1, y, flag, c->block[6], c->block[7]); return 0; }
static int hqa_decode_mb(HQContext *c, AVFrame *pic, int qgroup, GetBitContext *gb, int x, int y) { int flag = 0; int i, ret, cbp; cbp = get_vlc2(gb, c->hqa_cbp_vlc.table, 5, 1); for (i = 0; i < 12; i++) memset(c->block[i], 0, sizeof(*c->block)); for (i = 0; i < 12; i++) c->block[i][0] = -128 * (1 << 6); if (cbp) { flag = get_bits1(gb); cbp |= cbp << 4; if (cbp & 0x3) cbp |= 0x500; if (cbp & 0xC) cbp |= 0xA00; for (i = 0; i < 12; i++) { if (!(cbp & (1 << i))) continue; ret = hq_decode_block(c, gb, c->block[i], qgroup, i >= 8, 1); if (ret < 0) return ret; } } put_blocks(c, pic, 3, x, y, flag, c->block[ 0], c->block[ 2]); put_blocks(c, pic, 3, x + 8, y, flag, c->block[ 1], c->block[ 3]); put_blocks(c, pic, 0, x, y, flag, c->block[ 4], c->block[ 6]); put_blocks(c, pic, 0, x + 8, y, flag, c->block[ 5], c->block[ 7]); put_blocks(c, pic, 2, x >> 1, y, flag, c->block[ 8], c->block[ 9]); put_blocks(c, pic, 1, x >> 1, y, flag, c->block[10], c->block[11]); return 0; }
int main(int argc, const char* argv[]) { char* fl = argv[1]; int n = -1; int m = -1; QBOX_ACCESS_KEY = "<Please apply your access key>"; QBOX_SECRET_KEY = "<Dont send your secret key to anyone>"; if (argc < 2) { printf("Usage: up_demo_resumable FILE [MIME] [ABORT_BLOCK_INDEX] [ABORT_CHUNK_BYTES]\n"); return 0; } if (argc > 2) { mimeType = argv[2]; } else { mimeType = "text/plain"; } if (argc > 3) { n = atoi(argv[3]); if (n < 0) { printf("ABORT_BLOCK_INDEX must be zero or positive numbers!\n"); return 0; } } if (argc > 4) { m = atoi(argv[4]); if (m < 0) { printf("ABORT_CHUNK_BYTES must be zero or positive numbers!\n"); return 0; } } put_blocks(fl, n, m); QBox_Global_Cleanup(); return 0; }