JPEG or other lossy image compression library needed [closed] - c

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
I've incorporated LIBPNG and ZLIB into my C software for a microcontroller project due to their nicely liberal license which permits such use without requiring me to disclose any of my code (it's very similar to BSD/MIT/APACHE, but with no attribution requirement).
I'd like to look at using lossy image compression to save memory. The JPEG code I've found is either GPL, LGPL, or not C. I cannot use LGPL, because that still requires me to make it possible for users to replace the library with a newer or different version, which is not possible for this project.
I'm hoping you know of a suitable lossy image compression library. It doesn't have to be JPEG (I control both encoding and decoding) but it does have to be C, and at most BSD licensed or similar (attribution is fine).
-Adam

Try IJG (at ijg.org). It's high-quality JPEG code, written in C, with a BSD-style license. We've used it where I work, and are happy with it.

libjpeg ILJ at is C source and liberally licensed.
http://www.ijg.org/
"We are releasing this software for both noncommercial and commercial use.
Companies are welcome to use it as the basis for JPEG-related products.
We do not ask a royalty, although we do ask for an acknowledgement in
product literature ..."
Mike

+1 on the Independent JPEG Group library.
It's in C
Highly portable
Small footprint
Liberally licensed
Highly regarded
Widely used
Stable (the last release was over 10 years ago )
Both Firefox and IE use IJG code for JPEG browsers. You can't get much better than that.

Related

Are there any non-GPL libraries for decoding MPEG-4? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I'm looking for a non-(L)GPL library to decode MPEG-4 stream.
I don't mind it being commercial.
The price is as not important as code quality and support.
Any suggestions are welcome.
Your own experience is even better.
You can only try Commercial ones:
Elcard : http://www.elecard.com/en/download/products.html
Ligos : http://ligos.com/index.php/home/products/mediarig_encoder/
MainConcept : http://www.mainconcept.com/products/sdks/video.html
Rohzet (carbon coder) : http://www.rhozet.com/products.html
Flip factory : http://www.telestream.net/flipfactory/overview.htm
All of these are practically well used in broadcast productions and are of good grade.
The order doesn't reflect any preference. Most of them are either usable as SDK or independent application with dongle or otherwise.
However, your fear is rather fundamental, and fleeing DLL might not be possible to be prevented trivially.
I was under the impression that CoreAVC is by far the best performant H.264 codec. http://corecodec.com/products/coreavc
Depends what you mean by non-GPL. There are many that are LGPL (thus non-viral).
Like the most popular one libavcodec which is part of FFmpeg.
By contrast x264, which is GPL-ed, is only needed for encoding, not for decoding.
FFmpeg makes it clear how to compile it in non-viral way.
Are you going to require your own videocard drivers as well, or what happens if I use a video driver that does whatever I want with what your decoder sends me? Are you going to somehow force users to use only your video cables as well, and somehow destroy any video camera in the vicinity, and wipe clean the users' memories of what they see? Such madness! So what if you use a GPL library? You cannot lock down the Universe.

I need a licens for an opensource project, that specifies not free for comertial use [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I am developing a web based opensource project. I was considering the AGPL v3, but I explicitly want to prevent commercial use. Non-profit orgs are welcome to use it for free.
It seems to be a common thing in the software world, but I am looking for a pre-written license that I could use or adapt.
Any ideas where I can find such a thing? Are there accepted opensource licenses that fit this criteria?
It is not a good idea to use such a license, because it is sometimes very hard to draw the line between commercial and non-commercial, especially juridically.
However, you may check out Creative Commons licenses.
You won't find any open source licenses that prevent commercial use. That's against the spirit of open source and wouldn't fit into the definition of open source.
There cannot possibly be such a license. Forbidding the use of the source code is the exact opposite of open source. Ergo, there cannot ever possible be an open source license which has such a restriction, and a license which has such a restriction cannot ever possibly be an open source license.

Good SMTP + SSL/TLS Library for C? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
I apologize if this question has been asked before. I did a rather extensive search for similar questions, however all I could find were answers related to C++ or C#. I'm using GNU C.
I'm writing a daemon that needs to be able to send e-mail using SMTP. I need to be able to login to an external mail server, send the email and interpret any error codes. For various reasons, I can not use the system's sendmail facility (if even one is present).
The library should support at least OpenSSL. GNUTLS would be a perk, but not really needed.
Ideally, the library would be licensed LGPL2 (and later) or 3 clause BSD.
Any suggestions?
This answer is more for anyone reading this post after the fact, but it looks like as of version 7.20.0 libcurl supports SMTP, including SSL.
It looks like SASL support is planned, but maybe not released yet. I did find this patch however.
Tim,
Have you looked at CyaSSL? It supports all current industry standards up to TLS 1.2 (as well as some cool features such as stream ciphers), has an OpenSSL compatibility layer, and focuses on optimizing speed and size.
It's dual licensed under both GPLv2 and a commercial license (if you need support). I recently used it with some Android work I was doing and was very pleased.
http://yassl.com/yaSSL/Products_cyassl.html
Regards,
Chris

Good collection of libraries for C? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I'm looking for a good collection of libraries for ANSI-C, stuff for handling vectors, hash maps, binary tress, string processing, etc.
Try glib? It's used by GTK+, but it can also be used on other platforms. You can also try Apache APR, which is used by the Apache web server and some of their other C components, or NSPR, which is used by Mozilla projects in C.
gnu's glib collection. furthermore, it's portable for many platforms.
You might also find this question useful:
Container Class / Library for C
As well, this book might be interesting:
Mastering Algorithms with C
The full source code is on the CD and it has code for most of those data structures and algorithms.
check also gnulib's data structures. This library also provides many other features as well as portable layer to ANSI/non-ANSI compilers and POSIX/non-POSIX systems.
checkout http://www.invincibleideas.com/library.asp
GLUT OpenGL I can recommend for very flexible C (graphics) development

C Image Library [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
Can anyone recommend a decent C image library?
I'm after loaders for bmp, gif, jpg, png and tga.
I want to use this for programming my Sony Playstation Portable, so opensource would be very handy.
After some googleing I've found FreeImage and CImg, but both feel rather heavy, and CImg is C++ not C.
If you control the images you're loading, the lightest loader I know is Sean Barrett's awesome stb_image.c (direct link to single file source code!).
There are also other very worthwhile libraries on Sean's site such as a tiny TrueType rasterizer and Vorbis decompressor, btw.
If you need OpenGL image loading that uses stb_image, I'll humbly point you to SOILex...
ImageMagick has a C API to connect to its libraries. There's also what they call a "low-level interface" between C and the ImageMagick libraries.
I used FreeImage for PSP games in the past, but it was for pre-processing the data rather than in-game.
DevIL is often recommended. Whether or not it does what you want, I don't know.
I will second Thomas Owens's ImageMagick suggestion. It is mind-boggling just how comprehensive the library is, and how much time it saves you in the end.
Here is some code I wrote for handling images. It is in c++ ( not c ) but you should be able to easily extract the BMP and GIF load code. It's licensed LGPL.
I use the libpng and jpeglib for decompressing those formats.
For one of my project, I am using CImg Library. It's very useful to start with. Moreover, they also have a decent documentations.

Resources