#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/mman.h>
#include <sys/stat.h>
#include "common.h"
#define DEBUG 0
#if DEBUG
#endif
int display_jpeg(char *filename, fb_info fb_inf)
{
fb_info jpeg_inf;
u8_t *buf24 = decode_jpeg(filename, &jpeg_inf);
u8_t * scale_buf = scale24(buf24, fb_inf, jpeg_inf);
u32_t *buf32 = rgb24to32(scale_buf, fb_inf);
int i, j;
for(i = 0; i < fb_inf.w; ++i){
for (j = 0; j < fb_inf.h; ++j){
fb_pixel(fb_inf, i, j, buf32[i + j * fb_inf.w]);
}
//usleep(5000);
}
free(buf24);
free(scale_buf);
free(buf32);
return 0;
}
int display_eff0(char *filename, fb_info fb_inf)
{
fb_info jpeg_inf;
u8_t *buf24 = decode_jpeg(filename, &jpeg_inf);
u8_t * scale_buf = scale24(buf24, fb_inf, jpeg_inf);
u32_t *buf32 = rgb24to32(scale_buf, fb_inf);
int i, j;
for(i = 0; i < fb_inf.w/2; ++i){
for (j = 0; j < fb_inf.h/2; j = ++j){
fb_pixel(fb_inf, i, j, buf32[i + j * fb_inf.w]);
}
}usleep(1000000);
for(i =fb_inf.w/2; i < fb_inf.w; ++i){
for (j = fb_inf.h/2; j < fb_inf.h; j = ++j){
fb_pixel(fb_inf, i, j, buf32[i + j * fb_inf.w]);
}
}usleep(1000000);
for(i = 0; i < fb_inf.h/2; ++i){
for (j = fb_inf.w/2; j < fb_inf.w; j = ++j){
fb_pixel(fb_inf, j, i, buf32[j + i * fb_inf.w]);
}
}usleep(1000000);
for(i = fb_inf.h/2; i < fb_inf.h; ++i){
for (j = 0; j < fb_inf.w/2; j =++j){
fb_pixel(fb_inf, j, i, buf32[j + i * fb_inf.w]);
}
}usleep(1000000);
free(buf24);
free(scale_buf);
free(buf32);
return 0;
}
int display_eff1(char *filename, fb_info fb_inf)
{
fb_info jpeg_inf;
u8_t *buf24 = decode_jpeg(filename, &jpeg_inf);
u8_t * scale_buf = scale24(buf24, fb_inf, jpeg_inf);
u32_t *buf32 = rgb24to32(scale_buf, fb_inf);
int i, j;
for(i = 0; i < fb_inf.h; ++i){
for (j = 0; j < fb_inf.w; ++j){
fb_pixel(fb_inf, j, i, buf32[j + i * fb_inf.w]);
}
}
free(buf24);
free(scale_buf);
free(buf32);
return 0;
}
int display_eff2(char *filename, fb_info fb_inf)
{
fb_info jpeg_inf;
u8_t *buf24 = decode_jpeg(filename, &jpeg_inf);
u8_t * scale_buf = scale24(buf24, fb_inf, jpeg_inf);
u32_t *buf32 = rgb24to32(scale_buf, fb_inf);
int i, j;
for(i = 0; i < fb_inf.w; ++i){
for (j = 0; j < fb_inf.h; j = j + 3){
fb_pixel(fb_inf, i, j, buf32[i + j * fb_inf.w]);
}
usleep(500);
}
for(i = 0; i < fb_inf.w; ++i){
for (j = 1; j < fb_inf.h; j = j + 3){
fb_pixel(fb_inf, i, j, buf32[i + j * fb_inf.w]);
}
usleep(500);
}
for(i = 0; i < fb_inf.w; ++i){
for (j = 2; j < fb_inf.h; j = j + 3){
fb_pixel(fb_inf, i, j, buf32[i + j * fb_inf.w]);
}
usleep(500);
}
free(buf24);
free(scale_buf);
free(buf32);
return 0;
}
int display_444(char *filename, fb_info fb_inf)
{
fb_info jpeg_inf;
u8_t *buf24 = decode_jpeg(filename, &jpeg_inf);
u8_t * scale_buf = scale24(buf24, fb_inf, jpeg_inf);
u32_t *buf32 = rgb24to32(scale_buf, fb_inf);
int i, j,m,n;
for(i = 0; i < 1500; ++i){
for (j = 0; j < 2000; ++j){
m=rand()%1024,n=rand()%768;
fb_pixel(fb_inf, m, n, buf32[m + n * fb_inf.w]);
}
}
for(i = 0; i < fb_inf.h; ++i){
for (j = 0; j < fb_inf.w; ++j){
fb_pixel(fb_inf, j, i, buf32[j + i * fb_inf.w]);
}
}
free(buf24);
free(scale_buf);
free(buf32);
return 0;
}
int display_443(char *filename, fb_info fb_inf)
{
fb_info jpeg_inf;
u8_t *buf24 = decode_jpeg(filename, &jpeg_inf);
u8_t * scale_buf = scale24(buf24, fb_inf, jpeg_inf);
u32_t *buf32 = rgb24to32(scale_buf, fb_inf);
int i, j;
for(i = fb_inf.h*2/5; i < fb_inf.h*3/5; ++i){
for (j =fb_inf.w*2/5; j < fb_inf.w*3/5; ++j){
fb_pixel(fb_inf, j, i, buf32[j +i * fb_inf.w]);
}
}usleep(500000);
for(i = fb_inf.h/5; i < fb_inf.h*4/5; ++i){
for (j =fb_inf.w*2/5; j < fb_inf.w*4/5; ++j){
fb_pixel(fb_inf, j, i, buf32[j +i * fb_inf.w]);
}
}usleep(500000);
for(i = 0; i < fb_inf.h; ++i){
for (j = 0; j < fb_inf.w; ++j){
fb_pixel(fb_inf, j, i, buf32[j + i * fb_inf.w]);
}
}usleep(500000);
free(buf24);
free(scale_buf);
free(buf32);
return 0;
}
int display_442(char *filename, fb_info fb_inf)
{
fb_info jpeg_inf;
u8_t *buf24 = decode_jpeg(filename, &jpeg_inf);
u8_t * scale_buf = scale24(buf24, fb_inf, jpeg_inf);
u32_t *buf32 = rgb24to32(scale_buf, fb_inf);
int i,j,r,R;
R=(int)sqrt(fb_inf.w/2*fb_inf.w/2+fb_inf.h/2*fb_inf.h/2);
for(r=0; r<R; r++) {
for(j=fb_inf.h/2-r; j<fb_inf.h/2+r; j++) {
if(j<0||j>=fb_inf.h) continue;
for(i=fb_inf.w/2-r;i<fb_inf.w/2+r;i++) {
if(i<0||i>=fb_inf.w) continue;
if( sqrt((j-fb_inf.h/2)*(j-fb_inf.h/2)+(i-fb_inf.w/2)*(i-fb_inf.w/2))<r)
fb_pixel(fb_inf, i, j, buf32[i + j * fb_inf.w]);}
}
}
free(buf24);
free(scale_buf);
free(buf32);
return 0;
}
int display_440(char *filename, fb_info fb_inf)
{
fb_info jpeg_inf;
u8_t *buf24 = decode_jpeg(filename, &jpeg_inf);
u8_t * scale_buf = scale24(buf24, fb_inf, jpeg_inf);
u32_t *buf32 = rgb24to32(scale_buf, fb_inf);
int i,j,m;
for(m=1; m<6; m++) {
for(i=fb_inf.h/2-fb_inf.h*m/10; i<fb_inf.h/2+fb_inf.h*m/10; ++i) {
for(j=fb_inf.w/2-fb_inf.w*m/10;j<fb_inf.w/2+fb_inf.w*m/10;++j){
fb_pixel(fb_inf, j, i, buf32[j + i * fb_inf.w]);}
}usleep(200000);
}
free(buf24);
free(scale_buf);
free(buf32);
return 0;
}
int display_1(char *filename, fb_info fb_inf)
{
fb_info jpeg_inf;
u8_t *buf24 = decode_jpeg(filename, &jpeg_inf);
u8_t * scale_buf = scale24(buf24, fb_inf, jpeg_inf);
u32_t *buf32 = rgb24to32(scale_buf, fb_inf);
int i,j,r,R;
R=(int)sqrt(fb_inf.w/2*fb_inf.w/2+fb_inf.h/2*fb_inf.h/2);
for(r=R; r>0; r--) {
for(j=fb_inf.h/2+r; j>0; j--) {
if(j<0||j>=fb_inf.h) continue;
for(i=fb_inf.w/2+r;i>0;i--) {
if(i<0||i>=fb_inf.w) continue;
if( sqrt((j-fb_inf.h/2)*(j-fb_inf.h/2)+(i-fb_inf.w/2)*(i-fb_inf.w/2))>=r)
fb_pixel(fb_inf, i, j, buf32[i + j * fb_inf.w]);}
}
}
free(buf24);
free(scale_buf);
free(buf32);
return 0;
}
int display_2(char *file, fb_info fb_inf)
{
fb_info jpeg_inf;
u8_t *buf24 = decode_jpeg(file, &jpeg_inf);
u8_t * scale_buf = scale24(buf24, fb_inf, jpeg_inf);
u32_t *buf32 = rgb24to32(scale_buf, fb_inf);
int i, j;
for (j = 0; j < fb_inf.w; j++){
for(i = 0; i<fb_inf.h/2; ++i){
fb_pixel(fb_inf, j, i, buf32[j + i * fb_inf.w]);
}usleep(20);
}
usleep(100000);
for (j = fb_inf.w; j>0; j--){
for(i =fb_inf.h/2 ; i<fb_inf.h; ++i) {
fb_pixel(fb_inf, j, i, buf32[j + i * fb_inf.w]);
}usleep(20);
}
usleep(100000);
usleep(1000000);
free(buf24);
free(scale_buf);
free(buf32);
return 0;
}
int display_441(char *filename, fb_info fb_inf)
{
fb_info jpeg_inf;
u8_t *buf24 = decode_jpeg(filename, &jpeg_inf);
u8_t * scale_buf = scale24(buf24, fb_inf, jpeg_inf);
u32_t *buf32 = rgb24to32(scale_buf, fb_inf);
int i, j;
int x = fb_inf.w;
for(j = 0; j < fb_inf.w/2; ++j){
for (i = 0; i < fb_inf.h; ++i){
fb_pixel(fb_inf, j, i, buf32[j + i * fb_inf.w]);
x=j+fb_inf.w/2;
fb_pixel(fb_inf, x, i, buf32[x + i * fb_inf.w]);
}
usleep(5000);
}
free(buf24);
free(scale_buf);
free(buf32);
return 0;
}
int display_3(char *filename, fb_info fb_inf)//菱形扩张
{
fb_info jpeg_inf;
u8_t *buf24 = decode_jpeg(filename, &jpeg_inf);
u8_t * scale_buf = scale24(buf24, fb_inf, jpeg_inf);
u32_t *buf32 = rgb24to32(scale_buf, fb_inf);
//int i, j;
int r,j,i;
for(r=0;r<fb_inf.w;r+=20)
{
for (j = 0; j < fb_inf.h; j++){
for(i = 0; i < fb_inf.w; i++){
if(abs(j-fb_inf.h/2)+abs(i-fb_inf.w/2)<=r)
fb_pixel(f
dzxk.rar_linux 电子相框_电子相框
版权申诉
115 浏览量
2022-09-21
17:46:16
上传
评论
收藏 7.23MB RAR 举报
钱亚锋
- 粉丝: 86
- 资源: 1万+
最新资源
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- Highlight Plus v20.0.1
- 基于MIC+NE555光敏电阻的声光控电路Multisim仿真原理图
- python tkinter-08-盒子模型.ev4.rar
- Doozy UI Manager 2023
- 基于matlab实现夜间车牌识别程序(1).rar
- 基于matlab实现无线传感器网络无需测距定位算法matlab源代码 包括apit,dv-hop,amorphous在内的共7个
- 基于python的yolov5实现的旋转目标检测
- 基于matlab实现无线传感器网络 CAB定位仿真程序 这是无线传感器节点定位CAB算法的仿真程序,由matlab完成.rar
- 基于matlab实现图像处理,本程序使用背景差分法对来往车辆进行检测和跟踪.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论0