ffjpeg is a simple jpeg encoding and decoding implemention.
jpeg is the most popular image compress standard. for most people, it's just a .jpg picture, but for me and other software engineer, we want to understand how dose it working, how to compress image into jpeg format, and how to display a jpeg file on screen.
after studying related courses at university, maybe everyone known what's jpeg. many documents and books, also tell you how to do jpeg encoding or decoding, and how data are stored in jpeg files. but the most important thing is how to write code, how to debug, and finally make a correct code by your self, to decode and display a jpeg file on the screen. it's interesting but challenging.
maybe some one will say, there is no need to reinvent wheel. but i say, if you don't write code, you will never really know how it works, and how to optimize it. the jpeg standard is the most important standard, and also the foundation of image and video compression. if you want to study more about video compression, you should write a correct jpeg encoding/decoding code by you self first.
i was studied jpeg standard at my university period. but i spent lots of time to write a really correct code. after many years, someone ask me how to encoding and decoding jpeg. i rewrite all of my code, and put it on github. yes, it was ffjpeg library. i tried my best, to make code simple and easy to read. for your reference.
you need a mingw32 or linux gcc enviroment, then execute commmand: make
you will get ffjpeg.exe or (ffjpeg on linux) file.
ffjpeg -d test.jpg will decode test.jpg file into decode.bmp, you can use a picture viewer to watch it.
ffjpeg -e test.bmp will encode test.bmp file into encode.jpg, you can use a picture viewer to watch it.
want to learn more about ffjpeg, please visit our wiki. https://github.com/rockcarry/ffjpeg/wiki
2016-05-03 rockcarry