FFmpeg http://ffmpeg.org/
OpenCv https://docs.opencv.org/
OpenGL http://www.opengl.cn/
WebRtc http://sites.google.com.sixxs.org/site/webrtc/home
示例1,OpenCv的项目组建:
cmake -D CMAKE_BUILD_TYPE=Release -DBUILD_TESTS=OFF -DBUILD_opencv_xfeatures2d=OFF -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=/home/sk95120/Downloads/opencv_contrib-4.4.0/modules ..
sudo cp -r ./opencv-4.2.0/modules/features2d ./opencv-4.2.0/buildopencv-4.2.0
示例2,C文件的编译命令:
gcc decode_av.c -o decode_av2 -I/usr/local/include -L/usr/local/lib -lavformat -lavcodec -lavdevice -lavfilter -lavutil -lswscale -lswresample -lavutil -lm -lz
示例3,C++文件的编译命令:
g++ ffmpeg_demo.cpp -o ffmpeg_demo2 -I/usr/local/include -L/usr/local/lib -lavformat -lavcodec -lavdevice -lavfilter -lavutil -lswscale -lswresample -lavutil -lm -lz
示例4,一处FFMPEG调用:
./configure --enable-shared --enable-static --enable-gpl --enable-libx264 --enable-libfreetype --prefix=/usr/local/ffmpeg
ret = avcodec_send_packet(dec_ctx, pkt);
I working at a company about online meeting software. After some real project practice. I can make that media encode/decode skilled at Android machine. Also camera preview and video data draws.
For a long time, I confused that how meida data processing. I read book and search solvtion and see public codes.
FFmpeg is a basic media project. OpenCv is a basic project that process picture. OpenGL is a basic hardware rendering language. I speed my night time and "free time" what practices above codes.