# ffmpeg-learn **Repository Path**: haixuanwo/ffmpeg-learn ## Basic Information - **Project Name**: ffmpeg-learn - **Description**: ffmpeg开源库学习示例代码 - **Primary Language**: C - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-11-28 - **Last Updated**: 2022-11-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 1、Architecture Platform x86_64 Ubuntu Linux # 2、FFmpeg version FFmpeg 5.1 commit c8e9cc8d2096abda1bce99915ec1fdeff18f2fe2 (HEAD -> master, origin/master, origin/HEAD) Author: Andreas Rheinhardt Date: Sat Nov 19 03:32:26 2022 +0100 # 3、编译安装FFmpeg 安装了SDL2才会编译ffplay * sudo apt-get install libsdl2-dev yasm -y * mkdir FFmpeg-install * git clone https://github.com/FFmpeg/FFmpeg.git * cd FFmpeg * ./configure --prefix=../FFmpeg-install * make -j20 * make install FFmpeg-install$ tree . ├── bin │   ├── ffmpeg │   ├── ffplay │   └── ffprobe ├── include │   ├── libavcodec │   │   ├── ac3_parser.h │   │   ├── adts_parser.h │   │   ├── avcodec.h │   │   ├── avdct.h │   │   ├── avfft.h │   │   ├── bsf.h │   │   ├── codec_desc.h │   │   ├── codec.h │   │   ├── codec_id.h │   │   ├── codec_par.h │   │   ├── d3d11va.h │   │   ├── defs.h │   │   ├── dirac.h │   │   ├── dv_profile.h │   │   ├── dxva2.h │   │   ├── jni.h │   │   ├── mediacodec.h │   │   ├── packet.h │   │   ├── qsv.h │   │   ├── vdpau.h │   │   ├── version.h │   │   ├── version_major.h │   │   ├── videotoolbox.h │   │   ├── vorbis_parser.h │   │   └── xvmc.h │   ├── libavdevice │   │   ├── avdevice.h │   │   ├── version.h │   │   └── version_major.h │   ├── libavfilter │   │   ├── avfilter.h │   │   ├── buffersink.h │   │   ├── buffersrc.h │   │   ├── version.h │   │   └── version_major.h │   ├── libavformat │   │   ├── avformat.h │   │   ├── avio.h │   │   ├── version.h │   │   └── version_major.h │   ├── libavutil │   │   ├── adler32.h │   │   ├── aes_ctr.h │   │   ├── aes.h │   │   ├── attributes.h │   │   ├── audio_fifo.h │   │   ├── avassert.h │   │   ├── avconfig.h │   │   ├── avstring.h │   │   ├── avutil.h │   │   ├── base64.h │   │   ├── blowfish.h │   │   ├── bprint.h │   │   ├── bswap.h │   │   ├── buffer.h │   │   ├── camellia.h │   │   ├── cast5.h │   │   ├── channel_layout.h │   │   ├── common.h │   │   ├── cpu.h │   │   ├── crc.h │   │   ├── csp.h │   │   ├── des.h │   │   ├── detection_bbox.h │   │   ├── dict.h │   │   ├── display.h │   │   ├── dovi_meta.h │   │   ├── downmix_info.h │   │   ├── encryption_info.h │   │   ├── error.h │   │   ├── eval.h │   │   ├── ffversion.h │   │   ├── fifo.h │   │   ├── file.h │   │   ├── film_grain_params.h │   │   ├── frame.h │   │   ├── hash.h │   │   ├── hdr_dynamic_metadata.h │   │   ├── hdr_dynamic_vivid_metadata.h │   │   ├── hmac.h │   │   ├── hwcontext_cuda.h │   │   ├── hwcontext_d3d11va.h │   │   ├── hwcontext_drm.h │   │   ├── hwcontext_dxva2.h │   │   ├── hwcontext.h │   │   ├── hwcontext_mediacodec.h │   │   ├── hwcontext_opencl.h │   │   ├── hwcontext_qsv.h │   │   ├── hwcontext_vaapi.h │   │   ├── hwcontext_vdpau.h │   │   ├── hwcontext_videotoolbox.h │   │   ├── hwcontext_vulkan.h │   │   ├── imgutils.h │   │   ├── intfloat.h │   │   ├── intreadwrite.h │   │   ├── lfg.h │   │   ├── log.h │   │   ├── lzo.h │   │   ├── macros.h │   │   ├── mastering_display_metadata.h │   │   ├── mathematics.h │   │   ├── md5.h │   │   ├── mem.h │   │   ├── motion_vector.h │   │   ├── murmur3.h │   │   ├── opt.h │   │   ├── parseutils.h │   │   ├── pixdesc.h │   │   ├── pixelutils.h │   │   ├── pixfmt.h │   │   ├── random_seed.h │   │   ├── rational.h │   │   ├── rc4.h │   │   ├── replaygain.h │   │   ├── ripemd.h │   │   ├── samplefmt.h │   │   ├── sha512.h │   │   ├── sha.h │   │   ├── spherical.h │   │   ├── stereo3d.h │   │   ├── tea.h │   │   ├── threadmessage.h │   │   ├── timecode.h │   │   ├── time.h │   │   ├── timestamp.h │   │   ├── tree.h │   │   ├── twofish.h │   │   ├── tx.h │   │   ├── uuid.h │   │   ├── version.h │   │   ├── video_enc_params.h │   │   └── xtea.h │   ├── libswresample │   │   ├── swresample.h │   │   ├── version.h │   │   └── version_major.h │   └── libswscale │   ├── swscale.h │   ├── version.h │   └── version_major.h ├── lib │   ├── libavcodec.a │   ├── libavdevice.a │   ├── libavfilter.a │   ├── libavformat.a │   ├── libavutil.a │   ├── libswresample.a │   ├── libswscale.a │   └── pkgconfig │   ├── libavcodec.pc │   ├── libavdevice.pc │   ├── libavfilter.pc │   ├── libavformat.pc │   ├── libavutil.pc │   ├── libswresample.pc │   └── libswscale.pc └── share ├── ffmpeg │   ├── examples │   │   ├── avio_list_dir.c │   │   ├── avio_reading.c │   │   ├── decode_audio.c │   │   ├── decode_video.c │   │   ├── demuxing_decoding.c │   │   ├── encode_audio.c │   │   ├── encode_video.c │   │   ├── extract_mvs.c │   │   ├── filter_audio.c │   │   ├── filtering_audio.c │   │   ├── filtering_video.c │   │   ├── http_multiclient.c │   │   ├── hw_decode.c │   │   ├── Makefile │   │   ├── metadata.c │   │   ├── muxing.c │   │   ├── qsvdec.c │   │   ├── qsv_transcode.c │   │   ├── README │   │   ├── remuxing.c │   │   ├── resampling_audio.c │   │   ├── scaling_video.c │   │   ├── transcode_aac.c │   │   ├── transcoding.c │   │   ├── vaapi_encode.c │   │   └── vaapi_transcode.c │   ├── ffprobe.xsd │   ├── libvpx-1080p50_60.ffpreset │   ├── libvpx-1080p.ffpreset │   ├── libvpx-360p.ffpreset │   ├── libvpx-720p50_60.ffpreset │   └── libvpx-720p.ffpreset └── man ├── man1 │   ├── ffmpeg.1 │   ├── ffmpeg-all.1 │   ├── ffmpeg-bitstream-filters.1 │   ├── ffmpeg-codecs.1 │   ├── ffmpeg-devices.1 │   ├── ffmpeg-filters.1 │   ├── ffmpeg-formats.1 │   ├── ffmpeg-protocols.1 │   ├── ffmpeg-resampler.1 │   ├── ffmpeg-scaler.1 │   ├── ffmpeg-utils.1 │   ├── ffplay.1 │   ├── ffplay-all.1 │   ├── ffprobe.1 │   └── ffprobe-all.1 └── man3 ├── libavcodec.3 ├── libavdevice.3 ├── libavfilter.3 ├── libavformat.3 ├── libavutil.3 ├── libswresample.3 └── libswscale.3