removed rgb2rbg
This commit is contained in:
1 parent
5650d675aa
commit
e85c331c7f
4 files changed
+7
-89
No files matched your search
+6
-5
@@ -366,7 +366,6 @@ CONFIG_COMPAT_BINFMT_ELF=y
|
||||
CONFIG_COMPAT_OLD_SIGACTION=y
|
||||
CONFIG_COMPAT=y
|
||||
CONFIG_CONFIGFS_FS=y
|
||||
CONFIG_CONSOLE_TRANSLATIONS=y
|
||||
CONFIG_CONTEXT_TRACKING_IDLE=y
|
||||
CONFIG_CONTEXT_TRACKING=y
|
||||
CONFIG_CONTIG_ALLOC=y
|
||||
@@ -488,7 +487,6 @@ CONFIG_DST_CACHE=y
|
||||
CONFIG_DT_IDLE_GENPD=y
|
||||
CONFIG_DT_IDLE_STATES=y
|
||||
CONFIG_DTC=y
|
||||
CONFIG_DUMMY_CONSOLE=y
|
||||
CONFIG_EDAC_SUPPORT=y
|
||||
CONFIG_ELF_CORE=y
|
||||
CONFIG_EXCLUSIVE_SYSTEM_RAM=y
|
||||
@@ -984,9 +982,6 @@ CONFIG_VLAN_8021Q_GVRP=y
|
||||
CONFIG_VLAN_8021Q_MVRP=y
|
||||
CONFIG_VM_EVENT_COUNTERS=y
|
||||
CONFIG_VMAP_STACK=y
|
||||
CONFIG_VT_CONSOLE=y
|
||||
CONFIG_VT_HW_CONSOLE_BINDING=y
|
||||
CONFIG_VT=y
|
||||
CONFIG_WANT_DEV_COREDUMP=y
|
||||
CONFIG_WATCHDOG_CORE=y
|
||||
CONFIG_WATCHDOG_SYSFS=y
|
||||
@@ -1008,3 +1003,9 @@ CONFIG_ZONE_DMA32=y
|
||||
CONFIG_ZSTD_COMMON=y
|
||||
CONFIG_ZSTD_COMPRESS=y
|
||||
CONFIG_ZSTD_DECOMPRESS=y
|
||||
|
||||
# CONFIG_VT is not set
|
||||
# CONFIG_VT_CONSOLE is not set
|
||||
# CONFIG_VT_HW_CONSOLE_BINDING is not set
|
||||
# CONFIG_DUMMY_CONSOLE is not set
|
||||
# CONFIG_CONSOLE_TRANSLATIONS is not set
|
||||
@@ -46,7 +46,7 @@ define Device/generic-mf68e
|
||||
FILESYSTEMS := squashfs
|
||||
DEVICE_PACKAGES := configs-mf68e wpad-basic-wolfssl rmtfs uci-usb-gadget \
|
||||
block-mount f2fs-tools prepare-rootfs-data \
|
||||
msm-firmware-dumper power-button-daemon kmod-fbtft-gc9107 rgb2rbg
|
||||
msm-firmware-dumper power-button-daemon kmod-fbtft-gc9107
|
||||
endef
|
||||
TARGET_DEVICES += generic-mf68e
|
||||
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=rgb2rbg
|
||||
PKG_RELEASE:=1
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/rgb2rbg
|
||||
SECTION:=utils
|
||||
CATEGORY:=Utilities
|
||||
TITLE:=RGB565 to RBG converter
|
||||
endef
|
||||
|
||||
define Package/rgb2rbg/description
|
||||
Converts RGB565 to RBG (swaps Green and Blue channels).
|
||||
endef
|
||||
|
||||
define Build/Prepare
|
||||
mkdir -p $(PKG_BUILD_DIR)
|
||||
$(CP) ./src/* $(PKG_BUILD_DIR)/
|
||||
endef
|
||||
|
||||
define Build/Configure
|
||||
endef
|
||||
|
||||
define Build/Compile
|
||||
$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) \
|
||||
-O3 -fomit-frame-pointer -funroll-loops \
|
||||
-o $(PKG_BUILD_DIR)/rgb2rbg \
|
||||
$(PKG_BUILD_DIR)/rgb2rbg.c
|
||||
# $(TARGET_STRIP) $(PKG_BUILD_DIR)/rgb2rbg
|
||||
endef
|
||||
|
||||
define Build/Install
|
||||
endef
|
||||
|
||||
define Package/rgb2rbg/install
|
||||
$(INSTALL_DIR) $(1)/usr/bin
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/rgb2rbg $(1)/usr/bin/
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,rgb2rbg))
|
||||
@@ -1,41 +0,0 @@
|
||||
/*
|
||||
* rgb2rbg.c - RGB565 to RBG565 converter (CORRECTO)
|
||||
* Swaps Green and Blue channels with proper bit conversion
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#define BUFFER_SIZE 8192
|
||||
|
||||
static inline uint16_t rgb_to_rbg(uint16_t pixel) {
|
||||
// Extraer componentes RGB565
|
||||
uint16_t r = (pixel >> 11) & 0x1F; // Rojo: 5 bits
|
||||
uint16_t g = (pixel >> 5) & 0x3F; // Verde: 6 bits
|
||||
uint16_t b = pixel & 0x1F; // Azul: 5 bits
|
||||
|
||||
// Convertir para RBG565:
|
||||
// - Rojo mantiene 5 bits
|
||||
// - Verde (6 bits) va a posición de Azul (que también usa 6 bits en el panel)
|
||||
// - Azul (5 bits) va a posición de Verde, expandir a 6 bits
|
||||
|
||||
uint16_t b_expanded = (b << 1) | (b >> 4); // Expandir B de 5 a 6 bits
|
||||
|
||||
// RBG565: RRRRR GGGGGG BBBBB donde G y B están swapeados
|
||||
// Pero en realidad el panel espera: RRRRR BBBBBB GGGGG (6 bits para ambos)
|
||||
return (r << 11) | (g << 5) | b_expanded;
|
||||
}
|
||||
|
||||
int main(void) {
|
||||
uint16_t buffer[BUFFER_SIZE];
|
||||
size_t n;
|
||||
|
||||
while ((n = fread(buffer, sizeof(uint16_t), BUFFER_SIZE, stdin)) > 0) {
|
||||
for (size_t i = 0; i < n; i++) {
|
||||
buffer[i] = rgb_to_rbg(buffer[i]);
|
||||
}
|
||||
fwrite(buffer, sizeof(uint16_t), n, stdout);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in new issue
Block a user