-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathffmpeg-pi-zero2w
More file actions
40 lines (33 loc) · 6.4 KB
/
Copy pathffmpeg-pi-zero2w
File metadata and controls
40 lines (33 loc) · 6.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
sudo apt build-dep ffmpeg
sudo apt install libdrm-dev libgbm-dev libepoxy-dev libudev-dev libgles2-mesa-dev libegl1-mesa-dev libass-dev libmp3lame-dev libopus-dev libsoxr-dev libfreetype6-dev libharfbuzz-dev libfribidi-dev libgnutls28-dev libxml2-dev libflac-dev libsrt-openssl-dev glslang-dev libvulkan-dev
TMPDIR=/home/spook/tmp PKG_CONFIG_PATH="/usr/lib/arm-linux-gnueabihf/pkgconfig" \
./configure \
--prefix=/usr \
--libdir=/usr/lib/arm-linux-gnueabihf \
--incdir=/usr/include/arm-linux-gnueabihf \
--extra-version=ultra-pi3-armhf-jc-final-minimal \
--arch=arm --target-os=linux --cpu=cortex-a53 \
--extra-cflags='-I/usr/include/libdrm -I/usr/include/gbm -mcpu=cortex-a53 -Ofast -pipe -ftree-vectorize -fno-semantic-interposition -falign-functions=32 -Wno-stringop-overflow' \
--extra-ldflags='-L/usr/lib/arm-linux-gnueabihf -lgbm -ldrm -latomic -Wl,-O2 -Ofast -Wl,-rpath,/usr/lib/arm-linux-gnueabihf -Wl,--as-needed' \
--extra-libs='-lgbm -ldrm -lepoxy -lEGL -lGLESv2 -lfftw3 -lgnutls -lxml2 -lmp3lame -lFLAC -lopus -lass -lsoxr -lz -lsrt -ldvdnav -lgcrypt -lstdc++ -lpthread -lm -lrt -ldl' \
--disable-everything --disable-hwaccels --enable-libdvdnav --enable-libdvdread \
--enable-ffmpeg --enable-ffprobe --enable-ffplay --enable-sdl2 --enable-shared --disable-static --disable-debug --enable-stripping --enable-hardcoded-tables --enable-pic --enable-pthreads --enable-gpl --disable-nonfree --enable-lto --enable-avcodec --enable-avformat --enable-avfilter --enable-swresample --enable-swscale --enable-avdevice \
--enable-libxml2 --enable-v4l2-m2m --enable-v4l2-request --enable-sand --enable-libdrm --enable-epoxy --enable-libudev --enable-vout-egl --enable-vout-drm --enable-opengl \
--disable-vulkan --disable-libshaderc --disable-libplacebo \
--enable-hwaccel=hevc_v4l2request \
--enable-libass --enable-libmp3lame --enable-libopus --enable-libsrt --enable-libsoxr --enable-libfreetype --enable-libharfbuzz --enable-libfribidi --enable-ladspa --enable-lv2 --enable-librubberband --enable-alsa --disable-libpulse --disable-mmal --enable-libjack --enable-network --enable-gnutls --enable-gcrypt --enable-asm --enable-inline-asm --enable-neon --enable-runtime-cpudetect \
--enable-protocol='pipe,file,fd,tcp,udp,rtp,rtsp,http,https,tls,rtmp,rtmpt,rtmpe,rtmps,ffrtmpcrypt,hls,dash,libsrt,unix,cache,crypto,concat' \
--enable-bsf='aac_adtstoasc,dca_core,extract_extradata,h264_metadata,h264_mp4toannexb,hevc_metadata,hevc_mp4toannexb,mjpeg2jpeg,mpeg2_metadata,mpeg4_unpack_bframes,null,opus_metadata,pcm_rechunk,truehd_core,vp9_metadata,vp9_superframe' \
--enable-filter='adelay,extrastereo,unsand,format,acopy,copy,anull,framestep,settb,anullsink,anullsrc,null,nullsink,nullsrc,firequalizer,realtime,latency,colorspace,colormatrix,colorlevels,scale_v4l2m2m,deinterlace_v4l2m2m,hwmap,hwupload,hwdownload,scale,fps,setdar,setpts,asettb,asetpts,concat,aresample,aformat,volume,loudnorm,equalizer,bass,treble,crystalizer,ladspa,lv2,rubberband,afifo,asplit,amix,anequalizer,surround,stereowiden,overlay,drawtext,pad,pan,yadif,crop,aevalsrc,smptebars,testsrc,testsrc2' \
--enable-decoder='jpeg2000,ape,apng,mjpegb,jpegls,mjpeg,png,wavpack,wrapped_avframe,h263_v4l2m2m,h264_v4l2m2m,hevc_v4l2m2m,mpeg1_v4l2m2m,mpeg2_v4l2m2m,mpeg4_v4l2m2m,vp8_v4l2m2m,vp9_v4l2m2m,hevc_v4l2request,h264,hevc,mpeg1video,mpeg2video,mpeg4,mjpeg,h263,h263p,opus,aac,ac3,eac3,mp3,mpegaudio,flac,vorbis,ass,srt,pcm_bluray,pcm_dvd,pcm_f16le,pcm_f24le,pcm_f32be,pcm_f32le,pcm_f64be,pcm_f64le,pcm_lxf,pcm_mulaw,pcm_s16be,pcm_s16be_planar,pcm_s16le,pcm_s16le_planar,pcm_s24be,pcm_s24daud,pcm_s24le,pcm_s24le_planar,pcm_s32be,pcm_s32le,pcm_s32le_planar,pcm_s64be,pcm_s64le,pcm_s8,pcm_s8_planar,pcm_u16be,pcm_u16le,pcm_u24be,pcm_u24le,pcm_u32be,pcm_u32le,pcm_u8,pcm_vidc,h263dsp,mpegvideodec,qpeldsp,mov_text,dvdsub,dvbsub,rawvideo,adpcm_ms,adpcm_ima_wav,adpcm_ima_qt' \
--enable-encoder='jpeg2000,apng,jpegls,mjpeg,png,wrapped_avframe,h263_v4l2m2m,h264_v4l2m2m,hevc_v4l2m2m,mpeg4_v4l2m2m,vp8_v4l2m2m,libmp3lame,wavpack,libopus,flac,ass,srt,pcm_bluray,pcm_dvd,pcm_f32be,pcm_f32le,pcm_f64be,pcm_f64le,pcm_mulaw,pcm_s16be,pcm_s16be_planar,pcm_s16le,pcm_s16le_planar,pcm_s24be,pcm_s24daud,pcm_s24le,pcm_s24le_planar,pcm_s32be,pcm_s32le,pcm_s32le_planar,pcm_s64be,pcm_s64le,pcm_s8,pcm_s8_planar,pcm_u16be,pcm_u16le,pcm_u24be,pcm_u24le,pcm_u32be,pcm_u32le,pcm_u8,pcm_vidc,mov_text,rawvideo' \
--enable-demuxer='image2,image2pipe,image_bmp_pipe,image_jpeg_pipe,image_png_pipe,wavpack,aac,ac3,ac4,adpcm_ima_qt,adpcm_ima_wav,adpcm_ms,aiff,asf,asf_o,avi,caf,concat,dash,dts,dtshd,dv,dvbsub,dvdvideo,eac3,flac,flv,h264,hevc,hls,image2,image2pipe,image_bmp_pipe,image_jpeg_pipe,image_png_pipe,image_webp_pipe,matroska,mjpeg,mov,mp3,mpegps,mpegts,mpegvideo,null,ogg,opus,pcm_alaw,pcm_f32be,pcm_f32le,pcm_f64be,pcm_f64le,pcm_mulaw,pcm_s16be,pcm_s16le,pcm_s24be,pcm_s24le,pcm_s32be,pcm_s32le,pcm_s8,pcm_u16be,pcm_u16le,pcm_u24be,pcm_u24le,pcm_u32be,pcm_u32le,pcm_u8,pcm_vidc,rawvideo,rm,rtp,rtsp,sdp,srt,truehd,vobsub,wav,webm_dash_manifest,yuv4mpegpipe' \
--enable-muxer='image2,image2pipe,image_bmp_pipe,image_jpeg_pipe,image_png_pipe,wavpack,aac,ac3,adts,adx,aiff,amr,apng,asf,ass,avi,caf,dash,dts,dv,dvd,eac3,f4v,flac,flv,g722,gif,h264,hevc,hls,image2,ismv,matroska,matroska_audio,mjpeg,mkvtimestamp_v2,mov,mp2,mp3,mp4,mpeg1system,mpeg1vcd,mpeg1video,mpeg2dvd,mpeg2svcd,mpeg2video,mpeg2vob,mpegts,mpjpeg,null,ogg,oma,opus,pcm_alaw,pcm_f32be,pcm_f32le,pcm_f64be,pcm_f64le,pcm_mulaw,pcm_s16be,pcm_s16le,pcm_s24be,pcm_s24le,pcm_s32be,pcm_s32le,pcm_s8,pcm_u16be,pcm_u16le,pcm_u24be,pcm_u24le,pcm_u32be,pcm_u32le,pcm_u8,pcm_vidc,psp,rawvideo,rtmp,rtmpt,rtp,rtp_mpegts,rtsp,sap,segment,smoothstreaming,spdif,srt,swf,tee,truehd,tta,wav,webm,webm_chunk,webm_dash_manifest,webp,webvtt,yuv4mpegpipe' \
--enable-parser='jpeg2000,jpegxl,png,dvd_nav,webp,vp8,vp9,aac_latm,aac,ac3,eac3,dca,mpegaudio,mp3,vorbis,opus,flac,h264,hevc,mpegvideo,mpeg4video,mjpeg,h263,mpeg1video' \
--disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-sndio \
--disable-cuda --disable-nvenc --disable-cuda-llvm --disable-nvdec --disable-cuvid --disable-libnpp --disable-ffnvcodec --disable-cuda-nvcc \
--disable-libx264 --disable-libx265 --disable-omx --disable-omx-rpi --disable-vdpau --disable-vaapi \
--disable-indev=pulse,oss --disable-outdev=pulse,oss --disable-libpulse \
--disable-avx --disable-avx2 --disable-avx512 --disable-fma3 --disable-fma4 --disable-xop
TMPDIR=/home/spook/tmp make -j2
sudo make install