lmp88959 / pal-crt Goto Github PK
View Code? Open in Web Editor NEWPAL encoding/decoding in C89 using only integers and fixed point math. Supports NES decoding. Can be used as an image filter for games or real-time applications.
License: Other
PAL encoding/decoding in C89 using only integers and fixed point math. Supports NES decoding. Can be used as an image filter for games or real-time applications.
License: Other
This time too you did a great job, I started to integrate the filter except that there are some things I would like to ask you. First, I have the same warnings I had with NTSC-CRT, could you take a look at it?
Second, using pal.c the output image I get is "deformed" as if it were stretched, look at the screenshot I attached to understand better, could it depend on the input image which has a size of 256x240? I would solve the problem using pal_nes.c (the output image is perfect) only I would lose the possibility of using the palette that the user can change in the video settings because in this mode the color of each pixel is calculated by decoding the 'pixel 6-bit or 9-bit NES. Wouldn't it be possible to use the palette color as in PAL_SYSTEM_PAL mode?
I cannot seem to get it to compile, no matter what I try whether I'm using Linux (as in Linux Mint) or Windows (Windows 10).
(output from Linux Mint)
[ 14%] Building C object CMakeFiles/pal.dir/pal_core.c.o
[ 28%] Building C object CMakeFiles/pal.dir/pal.c.o
[ 42%] Building C object CMakeFiles/pal.dir/pal_nes.c.o
[ 57%] Building C object CMakeFiles/pal.dir/pal_main.c.o
/home/repellantmold/Desktop/PAL-CRT/pal_main.c: In function ‘main’:
/home/repellantmold/Desktop/PAL-CRT/pal_main.c:231:53: warning: passing argument 5 of ‘pal_init’ from incompatible pointer type [-Wincompatible-pointer-types]
231 | pal_init(&crt, outw, outh, PAL_PIX_FORMAT_BGRA, output);
| ^~~~~~
| |
| int *
In file included from /home/repellantmold/Desktop/PAL-CRT/pal_main.c:19:
/home/repellantmold/Desktop/PAL-CRT/pal_core.h:93:77: note: expected ‘unsigned char *’ but argument is of type ‘int *’
93 | extern void pal_init(struct PAL_CRT *v, int w, int h, int f, unsigned char *out);
| ~~~~~~~~~~~~~~~^~~
/home/repellantmold/Desktop/PAL-CRT/pal_main.c:233:14: warning: assignment to ‘const unsigned char *’ from incompatible pointer type ‘int *’ [-Wincompatible-pointer-types]
233 | pal.data = img;
| ^
/home/repellantmold/Desktop/PAL-CRT/pal_main.c:237:8: error: ‘struct PAL_SETTINGS’ has no member named ‘as_color’
237 | pal.as_color = docolor;
| ^
/home/repellantmold/Desktop/PAL-CRT/pal_main.c:238:8: error: ‘struct PAL_SETTINGS’ has no member named ‘field’
238 | pal.field = field;
| ^
/home/repellantmold/Desktop/PAL-CRT/pal_main.c:239:8: error: ‘struct PAL_SETTINGS’ has no member named ‘raw’
239 | pal.raw = raw;
| ^
/home/repellantmold/Desktop/PAL-CRT/pal_main.c:241:8: error: ‘struct PAL_SETTINGS’ has no member named ‘color_phase_error’
241 | pal.color_phase_error = phase_error;
| ^
/home/repellantmold/Desktop/PAL-CRT/pal_main.c:256:16: error: ‘struct PAL_SETTINGS’ has no member named ‘field’
256 | pal.field++;
| ^
/home/repellantmold/Desktop/PAL-CRT/pal_main.c: In function ‘promptoverwrite’:
/home/repellantmold/Desktop/PAL-CRT/pal_main.c:137:13: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
137 | scanf(" %c", &c);
| ^~~~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/pal.dir/build.make:118: CMakeFiles/pal.dir/pal_main.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/pal.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
Hello! You have done a very hard and interesting job! But your demodulator can only be used with a modulator, which is not very natural. it would be much more interesting to have a sequence of analog signal samples at the output of the modulator. And the demodulator would only require it for input. Can you give advice on how to adapt this project for this? I would really like to make the modulator and demodulator independent of each other
Hello!
I ported your library over to frei0r and it's now able to be used within Kdenlive.
The only problem is that I can't release it because of the license on this repository that is not compatible with the GPL-3.0 (frei0r is licensed under the GPL).
I know this is a lot to ask, but is there maybe a possibility that the license of the repository could be changed to something that is compatible with the GPL?
I'd completely understand if you don't want to do this, then I'll just keep this port for myself.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.