linux packaging

this taught me a bit about how:
https://gist.github.com/faleev/3435377

sudo checkinstall –pkgname=x264 –pkgversion=”3:$(./version.sh | \
awk -F'[” ]’ ‘/POINT/{print $4″+git”$5}’)” –backup=no –deldoc=yes \
–fstrans=no –default

Trying this for libvpx. When I try to uninstall it also wants to uninstall a bunch of programs I need.
The following packages will be REMOVED:
colord colord-sensor-argyll gphoto2 gstreamer1.0-plugins-good hplip kamera libgd-tools libgd3 libgphoto2-6 libgraphviz-dev libgvc6
libgvc6-plugins-gtk libmagick++-6.q16-dev libmagick++-dev libmagickcore-6.q16-dev libmagickwand-6.q16-dev libsane libvpx libvpx3
libzbar-dev printer-driver-postscript-hp sane-utils

checkinstall –pkgname=libvpx –pkgversion=”4.1.0″ –backup=no –deldoc=yes \
–fstrans=no –default
checkinstall –pkgname=libvpx3 –pkgversion=”4.1.0″ –backup=no –deldoc=yes \
–fstrans=no –default
apt-get install libmagick++-6.q16-dev libmagick++-dev libmagickcore-6.q16-dev

**** November 2018

needed a new one

just removed the old one and installed the latest for 16.04.5 and it gave me vp9

apache redirect http to https

notes 2021-01-13:
the firewall forwards ALL port 80 to a0 apache
apache only accepts and allows to

commands:
/home/phomlish/certbot/venv3/bin/certbot renew –dry-run
/home/phomlish/certbot/venv3/bin/certbot certonly –webroot -w /usr3/web/http -d homlish.net –dry-run
/home/phomlish/certbot/venv3/bin/certbot certonly –webroot -w /usr3/web/http -d matomo.homlish.net –dry-run
/home/phomlish/certbot/venv3/bin/certbot certonly –webroot -w /usr3/web/http -d matomo.homlish.net –dry-run

root@a0:/usr/local/apache2/conf# ls -1 /etc/letsencrypt/live/
homlish.net
images.homlish.net
joesfigtrees.com
madbuffaloproductions.com
matomo.homlish.net
mydelawaretv.com
mydetv.com
README
secure.homlish.net

root@a0:/usr/local/apache2/conf# cat /etc/letsencrypt/renewal/homlish.net.conf
# renew_before_expiry = 30 days
version = 0.31.0
archive_dir = /etc/letsencrypt/archive/homlish.net
cert = /etc/letsencrypt/live/homlish.net/cert.pem
privkey = /etc/letsencrypt/live/homlish.net/privkey.pem
chain = /etc/letsencrypt/live/homlish.net/chain.pem
fullchain = /etc/letsencrypt/live/homlish.net/fullchain.pem

# Options used in the renewal process
[renewalparams]
account = 143fcb98d222c080f3639f5de51ee07a
server = https://acme-v02.api.letsencrypt.org/directory
authenticator = webroot
rsa_key_size = 4096
[[webroot_map]]
homlish.net = /usr3/web/http
mail.homlish.net = /usr3/web/http
www.homlish.net = /usr3/web/http
www.joesfigtrees.com = /usr3/web/http
blog.homlish.net = /usr3/web/http
mail.joesfigtrees.com = /usr3/web/http
joesfigtrees.com = /usr3/web/http
recipes.homlish.net = /usr3/web/http
pjhiii.homlish.net = /usr3/web/http

and this is all I needed:
root@a0:/usr/local/apache2/conf# cat httpd.conf.80
Listen 10.11.1.200:80


RewriteEngine On
RewriteCond %{REQUEST_URI} !^/.well-known/acme-challenge [NC]
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}/$1
CustomLog “logs/homlish.net” combinedvhost

Continue reading “apache redirect http to https”

webm – opus

trying to get rid of the opus garbled sound when sending from the v4l2 capture card

started here:
ffmpeg \
-f alsa -thread_queue_size 2048 -channels 2 -channel_layout stereo -i default:CARD=DVC100 \
-c:a libopus -ac 2 -b:a 48k \
-vn -f rtp rtp://10.11.1.96:5118
ffmpeg \
-f alsa -thread_queue_size 2048 -channels 2 -channel_layout stereo -i default:CARD=DVC100 \
-c:a libopus -ac 2 -b:a 48k -vbr off -compression_level 5 \
-vn -f rtp rtp://10.11.1.96:5122
and a gazillion permutations of that

ffmpeg -h encoder=libopus
Encoder libopus [libopus Opus]:
General capabilities: delay small
Threading capabilities: none
Supported sample rates: 48000 24000 16000 12000 8000
Supported sample formats: s16 flt
libopus AVOptions:
-application E…A… Intended application type (from 2048 to 2051) (default audio)
voip E…A… Favor improved speech intelligibility
audio E…A… Favor faithfulness to the input
lowdelay E…A… Restrict to only the lowest delay modes
-frame_duration E…A… Duration of a frame in milliseconds (from 2.5 to 60) (default 20)
-packet_loss E…A… Expected packet loss percentage (from 0 to 100) (default 0)
-vbr E…A… Variable bit rate mode (from 0 to 2) (default on)
off E…A… Use constant bit rate
on E…A… Use variable bit rate
constrained E…A… Use constrained VBR
-mapping_family E…A… Channel Mapping Family (from -1 to 255) (default -1)

Lorenzo told me to try this, but how does it work?
opusrtp – encapsulate Opus audio in RTP
Docs are very light.

our actual goal will be to record a high quality file for making a dvd. Perhaps we can do that and send it as it is being created

starting with low quality:
ffmpeg -re -f alsa -thread_queue_size 2048 -channels 2 -channel_layout stereo -i default:CARD=DVC100 -c:a libopus -ac 2 -vn -f webm 2.webm

ffmpeg -f alsa -thread_queue_size 2048 -channels 2 -channel_layout stereo -i 2.webm -c:a libopus -ac 2 -b:a 48k -vbr off -compression_level 10 -vn -f rtp rtp://10.11.1.96:5118

ffmpeg -i 2.webm \
-vn -f rtp rtp://10.11.1.96:5118

ffmpeg -f alsa -i default:CARD=DVC100 -acodec libopus -ac 2 -b:a 48k -vbr on -compression_level 10 -y out.webm

also bad:
/usr/local/bin/gst-launch-1.0 videotestsrc ! jpegenc ! rtpjpegpay ! udpsink host=10.11.1.96 port=5122

/usr/local/bin/gst-launch-1.0 videotestsrc ! jpegenc ! rtpjpegpay ! udpsink host=10.11.1.96 port=5122

https://github.com/GStreamer/gst-plugins-good/blob/master/tests/examples/rtp/client-VP8-OPUS.sh
[swarm mydetv channel 0]
type = rtp
id = 11
description = swarm mydetv channel 0 remote
audio = yes
video = yes
audioport = 5018
audiopt = 111
audiortpmap = opus/48000/2
videoport = 5020
videopt = 100
videortpmap = vp8/90000

#!/bin/sh
#
# A simple RTP receiver
#

VIDEO_CAPS=”application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)VP8″
AUDIO_CAPS=”application/x-rtp,media=(string)audio,clock-rate=(int)48000,encoding-name=(string)OPUS”

SRC=localhost
DEST=localhost

VIDEO_DEC=”rtpvp8depay ! vp8dec”
AUDIO_DEC=”rtpopusdepay ! opusdec”

VIDEO_SINK=”videoconvert ! autovideosink”
AUDIO_SINK=”audioconvert ! audioresample ! autoaudiosink”

LATENCY=100

gst-launch-1.0 -v rtpbin name=rtpbin latency=$LATENCY \
udpsrc caps=$VIDEO_CAPS address=$SRC port=5000 ! rtpbin.recv_rtp_sink_0 \
rtpbin. ! $VIDEO_DEC ! $VIDEO_SINK \
udpsrc address=$SRC port=5001 ! rtpbin.recv_rtcp_sink_0 \
rtpbin.send_rtcp_src_0 ! udpsink host=$DEST port=5005 sync=false async=false \
udpsrc caps=$AUDIO_CAPS address=$SRC port=5002 ! rtpbin.recv_rtp_sink_1 \
rtpbin. ! $AUDIO_DEC ! $AUDIO_SINK \
udpsrc address=$SRC port=5003 ! rtpbin.recv_rtcp_sink_1 \
rtpbin.send_rtcp_src_1 ! udpsink host=$DEST port=5007 sync=false async=false

WHAT DOES THAT MEAN? and how do we make it work for our dvc?

gst-launch-1.0 -v rtpbin name=rtpbin latency=$LATENCY \
udpsrc caps=$VIDEO_CAPS address=$SRC port=5000 \
! rtpbin.recv_rtp_sink_0 rtpbin. \
! $VIDEO_DEC \
! $VIDEO_SINK udpsrc address=$SRC port=5001 \
! rtpbin.recv_rtcp_sink_0 rtpbin.send_rtcp_src_0 \
! udpsink host=$DEST port=5005 sync=false async=false udpsrc caps=$AUDIO_CAPS address=$SRC port=5002 \
! rtpbin.recv_rtp_sink_1 rtpbin. \
! $AUDIO_DEC \
! $AUDIO_SINK udpsrc address=$SRC port=5003 \
! rtpbin.recv_rtcp_sink_1 rtpbin.send_rtcp_src_1 \
! udpsink host=$DEST port=5007 sync=false async=false

Oh yeah, there is also this completely undocumented script:
#!/bin/sh
#
# A simple RTP server
#

SRC=localhost
DEST=localhost
VCAPS=”video/x-raw,width=352,height=288,framerate=15/1″

gst-launch-1.0 -v rtpbin name=rtpbin \
videotestsrc ! $VCAPS ! vp8enc ! rtpvp8pay ! rtpbin.send_rtp_sink_0 \
rtpbin.send_rtp_src_0 ! udpsink host=$DEST port=5000 \
rtpbin.send_rtcp_src_0 ! udpsink host=$DEST port=5001 sync=false async=false \
udpsrc address=$SRC port=5005 ! rtpbin.recv_rtcp_sink_0 \
audiotestsrc ! opusenc ! rtpopuspay ! rtpbin.send_rtp_sink_1 \
rtpbin.send_rtp_src_1 ! udpsink host=$DEST port=5002 \
rtpbin.send_rtcp_src_1 ! udpsink host=$DEST port=5003 sync=false async=false \
udpsrc address=$SRC port=5007 ! rtpbin.recv_rtcp_sink_1

and we keep googling
gst-launch-1.0 audiotestsrc ! audioconvert ! audioresample !opusenc ! rtpopuspay !udpsink host=reciver port=5122

ios facetime camera

ffmpeg -f avfoundation -list_devices true -i “”
ffmpeg version 3.3.4 Copyright (c) 2000-2017 the FFmpeg developers
built with Apple LLVM version 8.1.0 (clang-802.0.42)
configuration: –prefix=/usr/local/Cellar/ffmpeg/3.3.4 –enable-shared –enable-pthreads –enable-gpl –enable-version3 –enable-hardcoded-tables –enable-avresample –cc=clang –host-cflags= –host-ldflags= –enable-libass –enable-libmp3lame –enable-libopus –enable-libtheora –enable-libvorbis –enable-libvpx –enable-libx264 –enable-libxvid –enable-opencl –enable-videotoolbox –enable-openssl –disable-lzma –enable-nonfree –enable-vda
libavutil 55. 58.100 / 55. 58.100
libavcodec 57. 89.100 / 57. 89.100
libavformat 57. 71.100 / 57. 71.100
libavdevice 57. 6.100 / 57. 6.100
libavfilter 6. 82.100 / 6. 82.100
libavresample 3. 5. 0 / 3. 5. 0
libswscale 4. 6.100 / 4. 6.100
libswresample 2. 7.100 / 2. 7.100
libpostproc 54. 5.100 / 54. 5.100
[AVFoundation input device @ 0x7f93ae40ee80] AVFoundation video devices:
[AVFoundation input device @ 0x7f93ae40ee80] [0] FaceTime HD Camera (Built-in)
[AVFoundation input device @ 0x7f93ae40ee80] [1] Capture screen 0
[AVFoundation input device @ 0x7f93ae40ee80] AVFoundation audio devices:
[AVFoundation input device @ 0x7f93ae40ee80] [0] Built-in Microphone

# worked for audio and video
ffmpeg -f avfoundation -i “0:0” -y cqm.mov

ffmpeg -f avfoundation -i “0:0” \
-c:v libvpx -crf 10 -b:v 256K \
-an -f rtp rtp://10.11.1.96:5122 \
-c:a libopus -b:a 64k -vbr on -compression_level 10 \
-vn -f rtp rtp://10.11.1.96:5120
Overriding selected pixel format to use uyvy422 instead.

ffmpeg -f avfoundation -i “0:0” -framerate 25 -pix_fmt yuv420p \
-c:v libvpx -crf 40 -b:v 256K \
-an -f rtp rtp://10.11.1.96:5122 \
-c:a libopus -b:a 64k \
-vn -f rtp rtp://10.11.1.96:5118

# never did get any joy

cpan

install CPAN; reload CPAN
install Term::ReadLine::Perl YAML Term::ReadKey Log::Log4perl
upgrade /(.*)/

ffmpeg compile from git

Mac
use brew

https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu

Debian 10.8

apt-get update -qq && sudo apt-get -y install \
autoconf \
automake \
build-essential \
cmake \
git-core \
libass-dev \
libfreetype6-dev \
libgnutls28-dev \
libsdl2-dev \
libtool \
libva-dev \
libvdpau-dev \
libvorbis-dev \
libxcb1-dev \
libxcb-shm0-dev \
libxcb-xfixes0-dev \
meson \
ninja-build \
pkg-config \
texinfo \
wget \
yasm \
zlib1g-dev

./configure \
–prefix=/opt/ffmpeg \
–enable-shared \
–enable-static \
–enable-gpl \
–enable-libmp3lame \
–enable-libopencore-amrnb \
–enable-libopencore-amrwb \
–enable-libtheora \
–enable-libvorbis \
–enable-libvpx \
–enable-libx264 \
–enable-libx265 \
–enable-libopus \
–enable-nonfree \
–enable-version3 \
–enable-pthreads \
–enable-postproc \
–enable-pic

make
make install

Debian 9.9
apt-get install build-essential checkinstall git libgpac-dev \
libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev \
librtmp-dev libsdl1.2-dev libtheora-dev libva-dev libvdpau-dev libvorbis-dev \
libx11-dev libxfixes-dev pkg-config texi2html yasm zlib1g-dev

apt-get install libx264-dev libx265-dev zlib1g-dev libasound2-dev libopus-dev libfdk-aac-dev \
libvpx-dev checkinstall libavdevice-dev

./configure \
–prefix=/opt/ffmpeg \
–enable-shared \
–enable-static \
–enable-gpl \
–enable-libmp3lame \
–enable-libopencore-amrnb \
–enable-libopencore-amrwb \
–enable-libtheora \
–enable-libvorbis \
–enable-libvpx \
–enable-libx264 \
–enable-libx265 \
–enable-libopus \
–enable-nonfree \
–enable-version3 \
–enable-pthreads \
–enable-postproc \
–enable-pic

Debian 9.8

apt-get install build-essential checkinstall git libfaac-dev libgpac-dev \
libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev \
librtmp-dev libsdl1.2-dev libtheora-dev libva-dev libvdpau-dev libvorbis-dev \
libx11-dev libxfixes-dev pkg-config texi2html yasm zlib1g-dev

apt-get install libx264-dev libx265-dev zlib1g-dev libasound2-dev libopus-dev libfdk-aac-dev \
libvpx-dev checkinstall libavdevice-dev

./configure \
–enable-shared \
–enable-static \
–enable-gpl \
–enable-libmp3lame \
–enable-libopencore-amrnb \
–enable-libopencore-amrwb \
–enable-libtheora \
–enable-libvorbis \
–enable-libvpx \
–enable-libx264 \
–enable-libopus \
–enable-nonfree \
–enable-version3 \
–enable-pthreads \
–enable-postproc \
–enable-pic

export PKG_CONFIG_PATH=/opt/gstreamer/lib/pkgconfig:/opt/ffmpeg/lib/pkgconfig/

sudo checkinstall –pkgname=ffmpeg –pkgversion=”5:$(date +%Y%m%d%H%M)-git” –backup=no \
–deldoc=yes –fstrans=no –default

Ubuntu 16.04.3 LTS
a6
I like this guys package commands:
https://gist.github.com/faleev/3435377

but here is the official:
https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu

./configure \
–enable-gpl \
–enable-libfdk-aac \
–enable-libmp3lame \
–enable-libopencore-amrnb \
–enable-libopencore-amrwb \
–enable-librtmp \
–enable-libtheora \
–enable-libvorbis \
–enable-libvpx \
–enable-libx264 \
–enable-libx265 \
–enable-libopus \
–enable-nonfree \
–enable-version3 \
–enable-pic

install prefix /usr/local
source path .
C compiler gcc
C library glibc
ARCH x86 (generic)
big-endian no
runtime cpu detection yes
standalone assembly yes
x86 assembler nasm
MMX enabled yes
MMXEXT enabled yes
3DNow! enabled yes
3DNow! extended enabled yes
SSE enabled yes
SSSE3 enabled yes
AESNI enabled yes
AVX enabled yes
AVX2 enabled yes
XOP enabled yes
FMA3 enabled yes
FMA4 enabled yes
i686 features enabled yes
CMOV is fast yes
EBX available yes
EBP available yes
debug symbols yes
strip symbols yes
optimize for size no
optimizations yes
static yes
shared no
postprocessing support yes
network support yes
threading support pthreads
safe bitstream reader yes
texi2html enabled no
perl enabled yes
pod2man enabled yes
makeinfo enabled yes
makeinfo supports HTML yes

External libraries:
alsa libmp3lame librtmp libvpx libxcb libxcb_xfixes sndio
bzlib libopencore_amrnb libtheora libx264 libxcb_shape lzma xlib
iconv libopencore_amrwb libvorbis libx265 libxcb_shm sdl2 zlib
libfdk_aac libopus

External libraries providing hardware acceleration:
cuda cuvid nvdec nvenc v4l2_m2m vaapi vdpau

Libraries:
avcodec avfilter avformat avutil postproc swresample swscale
avdevice

Programs:
ffmpeg ffplay ffprobe ffserver

Enabled decoders:
aac atrac3al eightbps libfdk_aac paf_audio realtext v210x
aac_fixed atrac3p eightsvx_exp libopencore_amrnb paf_video rl2 v308
aac_latm atrac3pal eightsvx_fib libopencore_amrwb pam roq v408
aasc aura escape124 libopus pbm roq_dpcm v410
ac3 aura2 escape130 libvorbis pcm_alaw rpza vb
ac3_fixed avrn evrc libvpx_vp8 pcm_bluray rscc vble
adpcm_4xm avrp exr loco pcm_dvd rv10 vc1
adpcm_adx avs ffv1 m101 pcm_f16le rv20 vc1_cuvid
adpcm_afc avui ffvhuff mace3 pcm_f24le rv30 vc1_v4l2m2m
adpcm_aica ayuv ffwavesynth mace6 pcm_f32be rv40 vc1image
adpcm_ct bethsoftvid fic magicyuv pcm_f32le s302m vcr1
adpcm_dtk bfi fits mdec pcm_f64be sami vmdaudio
adpcm_ea bink flac metasound pcm_f64le sanm vmdvideo
adpcm_ea_maxis_xa binkaudio_dct flashsv microdvd pcm_lxf scpr vmnc
adpcm_ea_r1 binkaudio_rdft flashsv2 mimic pcm_mulaw screenpresso vorbis
adpcm_ea_r2 bintext flic mjpeg pcm_s16be sdx2_dpcm vp3
adpcm_ea_r3 bitpacked flv mjpeg_cuvid pcm_s16be_planar sgi vp5
adpcm_ea_xas bmp fmvc mjpegb pcm_s16le sgirle vp6
adpcm_g722 bmv_audio fourxm mlp pcm_s16le_planar sheervideo vp6a
adpcm_g726 bmv_video fraps mmvideo pcm_s24be shorten vp6f
adpcm_g726le brender_pix frwu motionpixels pcm_s24daud sipr vp7
adpcm_ima_amv c93 g2m movtext pcm_s24le smackaud vp8
adpcm_ima_apc cavs g723_1 mp1 pcm_s24le_planar smacker vp8_cuvid
adpcm_ima_dat4 ccaption g729 mp1float pcm_s32be smc vp8_v4l2m2m
adpcm_ima_dk3 cdgraphics gdv mp2 pcm_s32le smvjpeg vp9
adpcm_ima_dk4 cdxl gif mp2float pcm_s32le_planar snow vp9_cuvid
adpcm_ima_ea_eacs cfhd gremlin_dpcm mp3 pcm_s64be sol_dpcm vplayer
adpcm_ima_ea_sead cinepak gsm mp3adu pcm_s64le sonic vqa
adpcm_ima_iss clearvideo gsm_ms mp3adufloat pcm_s8 sp5x wavpack
adpcm_ima_oki cljr h261 mp3float pcm_s8_planar speedhq webp
adpcm_ima_qt cllc h263 mp3on4 pcm_u16be srgc webvtt
adpcm_ima_rad comfortnoise h263_v4l2m2m mp3on4float pcm_u16le srt wmalossless
adpcm_ima_smjpeg cook h263i mpc7 pcm_u24be ssa wmapro
adpcm_ima_wav cpia h263p mpc8 pcm_u24le stl wmav1
adpcm_ima_ws cscd h264 mpeg1_cuvid pcm_u32be subrip wmav2
adpcm_ms cyuv h264_cuvid mpeg1_v4l2m2m pcm_u32le subviewer wmavoice
adpcm_mtaf dca h264_v4l2m2m mpeg1video pcm_u8 subviewer1 wmv1
adpcm_psx dds hap mpeg2_cuvid pcm_zork sunrast wmv2
adpcm_sbpro_2 dfa hevc mpeg2_v4l2m2m pcx svq1 wmv3
adpcm_sbpro_3 dirac hevc_cuvid mpeg2video pgm svq3 wmv3image
adpcm_sbpro_4 dnxhd hnm4_video mpeg4 pgmyuv tak wnv1
adpcm_swf dolby_e hq_hqa mpeg4_cuvid pgssub targa wrapped_avframe
adpcm_thp dpx hqx mpeg4_v4l2m2m pictor targa_y216 ws_snd1
adpcm_thp_le dsd_lsbf huffyuv mpegvideo pixlet tdsc xan_dpcm
adpcm_vima dsd_lsbf_planar iac mpl2 pjs text xan_wc3
adpcm_xa dsd_msbf idcin msa1 png theora xan_wc4
adpcm_yamaha dsd_msbf_planar idf mscc ppm thp xbin
aic dsicinaudio iff_ilbm msmpeg4v1 prores tiertexseqvideo xbm
alac dsicinvideo imc msmpeg4v2 prores_lgpl tiff xface
alias_pix dss_sp indeo2 msmpeg4v3 psd tmv xl
als dst indeo3 msrle ptx truehd xma1
amrnb dvaudio indeo4 mss1 qcelp truemotion1 xma2
amrwb dvbsub indeo5 mss2 qdm2 truemotion2 xpm
amv dvdsub interplay_acm msvideo1 qdmc truemotion2rt xsub
anm dvvideo interplay_dpcm mszh qdraw truespeech xwd
ansi dxa interplay_video mts2 qpeg tscc y41p
ape dxtory jacosub mvc1 qtrle tscc2 ylc
apng dxv jpeg2000 mvc2 r10k tta yop
aptx eac3 jpegls mxpeg r210 twinvq yuv4
ass eacmv jv nellymoser ra_144 txd zero12v
asv1 eamad kgv1 nuv ra_288 ulti zerocodec
asv2 eatgq kmvc on2avc ralf utvideo zlib
atrac1 eatgv lagarith opus rawvideo v210 zmbv
atrac3 eatqi

Enabled encoders:
a64multi bmp h264_v4l2m2m mpeg1video pcm_s24be prores_ks utvideo
a64multi5 cinepak h264_vaapi mpeg2_vaapi pcm_s24daud qtrle v210
aac cljr hevc_nvenc mpeg2video pcm_s24le r10k v308
ac3 comfortnoise hevc_vaapi mpeg4 pcm_s24le_planar r210 v408
ac3_fixed dca huffyuv mpeg4_v4l2m2m pcm_s32be ra_144 v410
adpcm_adx dnxhd jpeg2000 msmpeg4v2 pcm_s32le rawvideo vc2
adpcm_g722 dpx jpegls msmpeg4v3 pcm_s32le_planar roq vorbis
adpcm_g726 dvbsub libfdk_aac msvideo1 pcm_s64be roq_dpcm vp8_v4l2m2m
adpcm_g726le dvdsub libmp3lame nellymoser pcm_s64le rv10 vp8_vaapi
adpcm_ima_qt dvvideo libopencore_amrnb nvenc pcm_s8 rv20 wavpack
adpcm_ima_wav eac3 libopus nvenc_h264 pcm_s8_planar s302m webvtt
adpcm_ms ffv1 libtheora nvenc_hevc pcm_u16be sgi wmav1
adpcm_swf ffvhuff libvorbis opus pcm_u16le snow wmav2
adpcm_yamaha fits libvpx_vp8 pam pcm_u24be sonic wmv1
alac flac libx264 pbm pcm_u24le sonic_ls wmv2
alias_pix flashsv libx264rgb pcm_alaw pcm_u32be srt wrapped_avframe
amv flashsv2 libx265 pcm_f32be pcm_u32le ssa xbm
apng flv ljpeg pcm_f32le pcm_u8 subrip xface
aptx g723_1 magicyuv pcm_f64be pcx sunrast xsub
ass gif mjpeg pcm_f64le pgm svq1 xwd
asv1 h261 mjpeg_vaapi pcm_mulaw pgmyuv targa y41p
asv2 h263 mlp pcm_s16be png text yuv4
avrp h263_v4l2m2m movtext pcminstall prefix /usr/local
source path .
C compiler gcc
C library glibc
ARCH x86 (generic)
big-endian no
runtime cpu detection yes
standalone assembly yes
x86 assembler nasm
MMX enabled yes
MMXEXT enabled yes
3DNow! enabled yes
3DNow! extended enabled yes
SSE enabled yes
SSSE3 enabled yes
AESNI enabled yes
AVX enabled yes
AVX2 enabled yes
XOP enabled yes
FMA3 enabled yes
FMA4 enabled yes
i686 features enabled yes
CMOV is fast yes
EBX available yes
EBP available yes
debug symbols yes
strip symbols yes
optimize for size no
optimizations yes
static yes
shared no
postprocessing support yes
network support yes
threading support pthreads
safe bitstream reader yes
texi2html enabled no
perl enabled yes
pod2man enabled yes
makeinfo enabled yes
makeinfo supports HTML yes

External libraries:
alsa libmp3lame librtmp libvpx libxcb libxcb_xfixes sndio
bzlib libopencore_amrnb libtheora libx264 libxcb_shape lzma xlib
iconv libopencore_amrwb libvorbis libx265 libxcb_shm sdl2 zlib
libfdk_aac libopus

External libraries providing hardware acceleration:
cuda cuvid nvdec nvenc v4l2_m2m vaapi vdpau

Libraries:
avcodec avfilter avformat avutil postproc swresample swscale
avdevice

Programs:
ffmpeg ffplay ffprobe ffserver

Enabled decoders:
aac atrac3al eightbps libfdk_aac paf_audio realtext v210x
aac_fixed atrac3p eightsvx_exp libopencore_amrnb paf_video rl2 v308
aac_latm atrac3pal eightsvx_fib libopencore_amrwb pam roq v408
aasc aura escape124 libopus pbm roq_dpcm v410
ac3 aura2 escape130 libvorbis pcm_alaw rpza vb
ac3_fixed avrn evrc libvpx_vp8 pcm_bluray rscc vble
adpcm_4xm avrp exr loco pcm_dvd rv10 vc1
adpcm_adx avs ffv1 m101 pcm_f16le rv20 vc1_cuvid
adpcm_afc avui ffvhuff mace3 pcm_f24le rv30 vc1_v4l2m2m
adpcm_aica ayuv ffwavesynth mace6 pcm_f32be rv40 vc1image
adpcm_ct bethsoftvid fic magicyuv pcm_f32le s302m vcr1
adpcm_dtk bfi fits mdec pcm_f64be sami vmdaudio
adpcm_ea bink flac metasound pcm_f64le sanm vmdvideo
adpcm_ea_maxis_xa binkaudio_dct flashsv microdvd pcm_lxf scpr vmnc
adpcm_ea_r1 binkaudio_rdft flashsv2 mimic pcm_mulaw screenpresso vorbis
adpcm_ea_r2 bintext flic mjpeg pcm_s16be sdx2_dpcm vp3
adpcm_ea_r3 bitpacked flv mjpeg_cuvid pcm_s16be_planar sgi vp5
adpcm_ea_xas bmp fmvc mjpegb pcm_s16le sgirle vp6
adpcm_g722 bmv_audio fourxm mlp pcm_s16le_planar sheervideo vp6a
adpcm_g726 bmv_video fraps mmvideo pcm_s24be shorten vp6f
adpcm_g726le brender_pix frwu motionpixels pcm_s24daud sipr vp7
adpcm_ima_amv c93 g2m movtext pcm_s24le smackaud vp8
adpcm_ima_apc cavs g723_1 mp1 pcm_s24le_planar smacker vp8_cuvid
adpcm_ima_dat4 ccaption g729 mp1float pcm_s32be smc vp8_v4l2m2m
adpcm_ima_dk3 cdgraphics gdv mp2 pcm_s32le smvjpeg vp9
adpcm_ima_dk4 cdxl gif mp2float pcm_s32le_planar snow vp9_cuvid
adpcm_ima_ea_eacs cfhd gremlin_dpcm mp3 pcm_s64be sol_dpcm vplayer
adpcm_ima_ea_sead cinepak gsm mp3adu pcm_s64le sonic vqa
adpcm_ima_iss clearvideo gsm_ms mp3adufloat pcm_s8 sp5x wavpack
adpcm_ima_oki cljr h261 mp3float pcm_s8_planar speedhq webp
adpcm_ima_qt cllc h263 mp3on4 pcm_u16be srgc webvtt
adpcm_ima_rad comfortnoise h263_v4l2m2m mp3on4float pcm_u16le srt wmalossless
adpcm_ima_smjpeg cook h263i mpc7 pcm_u24be ssa wmapro
adpcm_ima_wav cpia h263p mpc8 pcm_u24le stl wmav1
adpcm_ima_ws cscd h264 mpeg1_cuvid pcm_u32be subrip wmav2
adpcm_ms cyuv h264_cuvid mpeg1_v4l2m2m pcm_u32le subviewer wmavoice
adpcm_mtaf dca h264_v4l2m2m mpeg1video pcm_u8 subviewer1 wmv1
adpcm_psx dds hap mpeg2_cuvid pcm_zork sunrast wmv2
adpcm_sbpro_2 dfa hevc mpeg2_v4l2m2m pcx svq1 wmv3
adpcm_sbpro_3 dirac hevc_cuvid mpeg2video pgm svq3 wmv3image
adpcm_sbpro_4 dnxhd hnm4_video mpeg4 pgmyuv tak wnv1
adpcm_swf dolby_e hq_hqa mpeg4_cuvid pgssub targa wrapped_avframe
adpcm_thp dpx hqx mpeg4_v4l2m2m pictor targa_y216 ws_snd1
adpcm_thp_le dsd_lsbf huffyuv mpegvideo pixlet tdsc xan_dpcm
adpcm_vima dsd_lsbf_planar iac mpl2 pjs text xan_wc3
adpcm_xa dsd_msbf idcin msa1 png theora xan_wc4
adpcm_yamaha dsd_msbf_planar idf mscc ppm thp xbin
aic dsicinaudio iff_ilbm msmpeg4v1 prores tiertexseqvideo xbm
alac dsicinvideo imc msmpeg4v2 prores_lgpl tiff xface
alias_pix dss_sp indeo2 msmpeg4v3 psd tmv xl
als dst indeo3 msrle ptx truehd xma1
amrnb dvaudio indeo4 mss1 qcelp truemotion1 xma2
amrwb dvbsub indeo5 mss2 qdm2 truemotion2 xpm
amv dvdsub interplay_acm msvideo1 qdmc truemotion2rt xsub
anm dvvideo interplay_dpcm mszh qdraw truespeech xwd
ansi dxa interplay_video mts2 qpeg tscc y41p
ape dxtory jacosub mvc1 qtrle tscc2 ylc
apng dxv jpeg2000 mvc2 r10k tta yop
aptx eac3 jpegls mxpeg r210 twinvq yuv4
ass eacmv jv nellymoser ra_144 txd zero12v
asv1 eamad kgv1 nuv ra_288 ulti zerocodec
asv2 eatgq kmvc on2avc ralf utvideo zlib
atrac1 eatgv lagarith opus rawvideo v210 zmbv
atrac3 eatqi

Enabled encoders:
a64multi bmp h264_v4l2m2m mpeg1video pcm_s24be prores_ks utvideo
a64multi5 cinepak h264_vaapi mpeg2_vaapi pcm_s24daud qtrle v210
aac cljr hevc_nvenc mpeg2video pcm_s24le r10k v308
ac3 comfortnoise hevc_vaapi mpeg4 pcm_s24le_planar r210 v408
ac3_fixed dca huffyuv mpeg4_v4l2m2m pcm_s32be ra_144 v410
adpcm_adx dnxhd jpeg2000 msmpeg4v2 pcm_s32le rawvideo vc2
adpcm_g722 dpx jpegls msmpeg4v3 pcm_s32le_planar roq vorbis
adpcm_g726 dvbsub libfdk_aac msvideo1 pcm_s64be roq_dpcm vp8_v4l2m2m
adpcm_g726le dvdsub libmp3lame nellymoser pcm_s64le rv10 vp8_vaapi
adpcm_ima_qt dvvideo libopencore_amrnb nvenc pcm_s8 rv20 wavpack
adpcm_ima_wav eac3 libopus nvenc_h264 pcm_s8_planar s302m webvtt
adpcm_ms ffv1 libtheora nvenc_hevc pcm_u16be sgi wmav1
adpcm_swf ffvhuff libvorbis opus pcm_u16le snow wmav2
adpcm_yamaha fits libvpx_vp8 pam pcm_u24be sonic wmv1
alac flac libx264 pbm pcm_u24le sonic_ls wmv2
alias_pix flashsv libx264rgb pcm_alaw pcm_u32be srt wrapped_avframe
amv flashsv2 libx265 pcm_f32be pcm_u32le ssa xbm
apng flv ljpeg pcm_f32le pcm_u8 subrip xface
aptx g723_1 magicyuv pcm_f64be pcx sunrast xsub
ass gif mjpeg pcm_f64le pgm svq1 xwd
asv1 h261 mjpeg_vaapi pcm_mulaw pgmyuv targa y41p
asv2 h263 mlp pcm_s16be png text yuv4
avrp h263_v4l2m2m movtext pcm_s16be_planar ppm tiff zlib
avui h263p mp2 pcm_s16le prores truehd zmbv
ayuv h264_nvenc mp2fixed pcm_s16le_planar prores_aw tta

Enabled hwaccels:
h263_vaapi hevc_nvdec mpeg1_vdpau mpeg4_nvdec vc1_vaapi vp8_vaapi wmv3_nvdec
h264_nvdec hevc_vaapi mpeg2_nvdec mpeg4_vaapi vc1_vdpau vp9_nvdec wmv3_vaapi
h264_vaapi hevc_vdpau mpeg2_vaapi mpeg4_vdpau vp8_nvdec vp9_vaapi wmv3_vdpau
h264_vdpau mpeg1_nvdec mpeg2_vdpau vc1_nvdec

Enabled parsers:
aac cook dvbsub h261 mpeg4video rv30 vorbis
aac_latm dca dvd_nav h263 mpegaudio rv40 vp3
ac3 dirac dvdsub h264 mpegvideo sipr vp8
adx dnxhd flac hevc opus tak vp9
bmp dpx g729 mjpeg png vc1 xma
cavsvideo dvaudio gsm mlp pnm

Enabled demuxers:
aa cavsvideo gif image_xpm_pipe mtv r3d tedcaptions
aac cdg gsm ingenient musx rawvideo thp
ac3 cdxl gxf ipmovie mv realtext threedostr
acm cine h261 ircam mvi redspark tiertexseq
act concat h263 iss mxf rl2 tmv
adf data h264 iv8 mxg rm truehd
adp daud hevc ivf nc roq tta
ads dcstr hls ivr nistsphere rpl tty
adx dfa hnm jacosub nsp rsd txd
aea dirac ico jv nsv rso ty
afc dnxhd idcin live_flv nut rtp v210
aiff dsf idf lmlm4 nuv rtsp v210x
aix dsicin iff loas ogg s337m vag
amr dss ilbc lrc oma sami vc1
amrnb dts image2 lvf paf sap vc1t
amrwb dtshd image2_alias_pix lxf pcm_alaw sbg vivo
anm dv image2_brender_pix m4v pcm_f32be scc vmd
apc dvbsub image2pipe matroska pcm_f32le sdp vobsub
ape dvbtxt image_bmp_pipe mgsts pcm_f64be sdr2 voc
apng dxa image_dds_pipe microdvd pcm_f64le sds vpk
aptx ea image_dpx_pipe mjpeg pcm_mulaw sdx vplayer
aqtitle ea_cdata image_exr_pipe mjpeg_2000 pcm_s16be segafilm vqf
asf eac3 image_j2k_pipe mlp pcm_s16le shorten w64
asf_o epaf image_jpeg_pipe mlv pcm_s24be siff wav
ass ffm image_jpegls_pipe mm pcm_s24le sln wc3
ast ffmetadata image_pam_pipe mmf pcm_s32be smacker webm_dash_manifest
au filmstrip image_pbm_pipe mov pcm_s32le smjpeg webvtt
avi fits image_pcx_pipe mp3 pcm_s8 smush wsaud
avr flac image_pgm_pipe mpc pcm_u16be sol wsd
avs flic image_pgmyuv_pipe mpc8 pcm_u16le sox wsvqa
bethsoftvid flv image_pictor_pipe mpegps pcm_u24be spdif wtv
bfi fourxm image_png_pipe mpegts pcm_u24le srt wv
bfstm frm image_ppm_pipe mpegtsraw pcm_u32be stl wve
bink fsb image_psd_pipe mpegvideo pcm_u32le str xa
bintext g722 image_qdraw_pipe mpjpeg pcm_u8 subviewer xbin
bit g723_1 image_sgi_pipe mpl2 pjs subviewer1 xmv
bmv g726 image_sunrast_pipe mpsub pmp sup xvag
boa g726le image_svg_pipe msf pva svag xwma
brstm g729 image_tiff_pipe msnwc_tcp pvf swf yop
c93 gdv image_webp_pipe mtaf qcp tak yuv4mpegpipe
caf genh

Enabled muxers:
a64 dnxhd h261 microdvd nut pcm_u24le stream_segment
ac3 dts h263 mjpeg oga pcm_u32be sup
adts dv h264 mkvtimestamp_v2 ogg pcm_u32le swf
adx eac3 hash mlp ogv pcm_u8 tee
aiff f4v hds mmf oma psp tg2
amr ffm hevc mov opus rawvideo tgp
apng ffmetadata hls mp2 pcm_alaw rm truehd
aptx fifo ico mp3 pcm_f32be roq tta
asf filmstrip ilbc mp4 pcm_f32le rso uncodedframecrc
asf_stream fits image2 mpeg1system pcm_f64be rtp vc1
ass flac image2pipe mpeg1vcd pcm_f64le rtp_mpegts vc1t
ast flv ipod mpeg1video pcm_mulaw rtsp voc
au framecrc ircam mpeg2dvd pcm_s16be sap w64
avi framehash ismv mpeg2svcd pcm_s16le scc wav
avm2 framemd5 ivf mpeg2video pcm_s24be segment webm
bit g722 jacosub mpeg2vob pcm_s24le singlejpeg webm_chunk
caf g723_1 latm mpegts pcm_s32be smjpeg webm_dash_manifest
cavsvideo g726 lrc mpjpeg pcm_s32le smoothstreaming webp
crc g726le m4v mxf pcm_s8 sox webvtt
dash gif matroska mxf_d10 pcm_u16be spdif wtv
data gsm matroska_audio mxf_opatom pcm_u16le spx wv
daud gxf md5 null pcm_u24be srt yuv4mpegpipe
dirac

Enabled protocols:
async file httpproxy librtmps mmsh rtp tee
cache ftp icecast librtmpt mmst srtp udp
concat gopher librtmp librtmpte pipe subfile udplite
crypto hls librtmpe md5 prompeg tcp unix
data http

Enabled filters:
abench asetpts crop fps maskedclamp remap spectrumsynth
abitscope asetrate cropdetect framepack maskedmerge removegrain split
acompressor asettb crossfeed framerate mcdeint removelogo spp
acontrast ashowinfo crystalizer framestep mcompand repeatfields ssim
acopy asidedata curves fspp mergeplanes replaygain stereo3d
acrossfade asplit datascope gblur mestimate reverse stereotools
acrusher astats dcshift geq metadata rgbtestsrc stereowiden
adelay astreamselect dctdnoiz gradfun midequalizer roberts streamselect
adrawgraph atadenoise deband haas minterpolate rotate super2xsai
aecho atempo decimate haldclut mix sab superequalizer
aemphasis atrim deflate haldclutsrc movie scale surround
aeval avectorscope deflicker hdcd mpdecimate scale2ref swaprect
aevalsrc avgblur deinterlace_vaapi headphone mptestsrc scale_vaapi swapuv
afade bandpass dejudder hflip negate select tblend
afftfilt bandreject delogo highpass nlmeans selectivecolor telecine
afir bass deshake histeq nnedi sendcmd testsrc
aformat bbox despill histogram noformat separatefields testsrc2
agate bench detelecine hqdn3d noise setdar threshold
ahistogram biquad dilation hqx normalize setfield thumbnail
ainterleave bitplanenoise displace hstack null setpts tile
alimiter blackdetect doubleweave hue nullsink setrange tinterlace
allpass blackframe drawbox hwdownload nullsrc setsar tlut2
allrgb blend drawgraph hwmap oscilloscope settb tonemap
allyuv boxblur drawgrid hwupload overlay showcqt transpose
aloop bwdif dynaudnorm hwupload_cuda owdenoise showfreqs treble
alphaextract cellauto earwax hysteresis pad showinfo tremolo
alphamerge channelmap ebur128 idet palettegen showpalette trim
amerge channelsplit edgedetect il paletteuse showspectrum unpremultiply
ametadata chorus elbg inflate pan showspectrumpic unsharp
amix chromakey eq interlace perms showvolume uspp
amovie ciescope equalizer interleave perspective showwaves vaguedenoiser
anequalizer codecview erosion join phase showwavespic vectorscope
anoisesrc color extractplanes kerndeint pixdesctest shuffleframes vflip
anull colorbalance extrastereo lenscorrection pixscope shuffleplanes vibrato
anullsink colorchannelmixer fade life pp sidechaincompress vignette
anullsrc colorkey fftfilt limiter pp7 sidechaingate vmafmotion
apad colorlevels field loop premultiply sidedata volume
aperms colormatrix fieldhint loudnorm prewitt signalstats volumedetect
aphasemeter colorspace fieldmatch lowpass pseudocolor signature vstack
aphaser compand fieldorder lumakey psnr silencedetect w3fdif
apulsator compensationdelay fillborders lut pullup silenceremove waveform
arealtime concat find_rect lut2 qp sine weave
aresample convolution firequalizer lut3d random smartblur xbr
areverse convolve flanger lutrgb readeia608 smptebars yadif
aselect copy floodfill lutyuv readvitc smptehdbars yuvtestsrc
asendcmd cover_rect format mandelbrot realtime sobel zoompan
asetnsamples

Enabled bsfs:
aac_adtstoasc extract_extradata hevc_metadata mjpega_dump_header mpeg4_unpack_bframes remove_extradata vp9_raw_reorder
chomp h264_metadata hevc_mp4toannexb mov2textsub noise text2movsub vp9_superframe
dca_core h264_mp4toannexb imx_dump_header mp3_header_decompress null trace_headers vp9_superframe_split
dump_extradata h264_redundant_pps mjpeg2jpeg mpeg2_metadata

Enabled indevs:
alsa fbdev lavfi oss sndio v4l2 xcbgrab

Enabled outdevs:
alsa fbdev oss sdl2 sndio v4l2 xv

License: nonfree and unredistributable
libavutil/avconfig.h is unchanged
libavcodec/bsf_list.c is unchanged
libavformat/protocol_list.c is unchanged
_s16be_planar ppm tiff zlib
avui h263p mp2 pcm_s16le prores truehd zmbv
ayuv h264_nvenc mp2fixed pcm_s16le_planar prores_aw tta

Enabled hwaccels:
h263_vaapi hevc_nvdec mpeg1_vdpau mpeg4_nvdec vc1_vaapi vp8_vaapi wmv3_nvdec
h264_nvdec hevc_vaapi mpeg2_nvdec mpeg4_vaapi vc1_vdpau vp9_nvdec wmv3_vaapi
h264_vaapi hevc_vdpau mpeg2_vaapi mpeg4_vdpau vp8_nvdec vp9_vaapi wmv3_vdpau
h264_vdpau mpeg1_nvdec mpeg2_vdpau vc1_nvdec

Enabled parsers:
aac cook dvbsub h261 mpeg4video rv30 vorbis
aac_latm dca dvd_nav h263 mpegaudio rv40 vp3
ac3 dirac dvdsub h264 mpegvideo sipr vp8
adx dnxhd flac hevc opus tak vp9
bmp dpx g729 mjpeg png vc1 xma
cavsvideo dvaudio gsm mlp pnm

Enabled demuxers:
aa cavsvideo gif image_xpm_pipe mtv r3d tedcaptions
aac cdg gsm ingenient musx rawvideo thp
ac3 cdxl gxf ipmovie mv realtext threedostr
acm cine h261 ircam mvi redspark tiertexseq
act concat h263 iss mxf rl2 tmv
adf data h264 iv8 mxg rm truehd
adp daud hevc ivf nc roq tta
ads dcstr hls ivr nistsphere rpl tty
adx dfa hnm jacosub nsp rsd txd
aea dirac ico jv nsv rso ty
afc dnxhd idcin live_flv nut rtp v210
aiff dsf idf lmlm4 nuv rtsp v210x
aix dsicin iff loas ogg s337m vag
amr dss ilbc lrc oma sami vc1
amrnb dts image2 lvf paf sap vc1t
amrwb dtshd image2_alias_pix lxf pcm_alaw sbg vivo
anm dv image2_brender_pix m4v pcm_f32be scc vmd
apc dvbsub image2pipe matroska pcm_f32le sdp vobsub
ape dvbtxt image_bmp_pipe mgsts pcm_f64be sdr2 voc
apng dxa image_dds_pipe microdvd pcm_f64le sds vpk
aptx ea image_dpx_pipe mjpeg pcm_mulaw sdx vplayer
aqtitle ea_cdata image_exr_pipe mjpeg_2000 pcm_s16be segafilm vqf
asf eac3 image_j2k_pipe mlp pcm_s16le shorten w64
asf_o epaf image_jpeg_pipe mlv pcm_s24be siff wav
ass ffm image_jpegls_pipe mm pcm_s24le sln wc3
ast ffmetadata image_pam_pipe mmf pcm_s32be smacker webm_dash_manifest
au filmstrip image_pbm_pipe mov pcm_s32le smjpeg webvtt
avi fits image_pcx_pipe mp3 pcm_s8 smush wsaud
avr flac image_pgm_pipe mpc pcm_u16be sol wsd
avs flic image_pgmyuv_pipe mpc8 pcm_u16le sox wsvqa
bethsoftvid flv image_pictor_pipe mpegps pcm_u24be spdif wtv
bfi fourxm image_png_pipe mpegts pcm_u24le srt wv
bfstm frm image_ppm_pipe mpegtsraw pcm_u32be stl wve
bink fsb image_psd_pipe mpegvideo pcm_u32le str xa
bintext g722 image_qdraw_pipe mpjpeg pcm_u8 subviewer xbin
bit g723_1 image_sgi_pipe mpl2 pjs subviewer1 xmv
bmv g726 image_sunrast_pipe mpsub pmp sup xvag
boa g726le image_svg_pipe msf pva svag xwma
brstm g729 image_tiff_pipe msnwc_tcp pvf swf yop
c93 gdv image_webp_pipe mtaf qcp tak yuv4mpegpipe
caf genh

Enabled muxers:
a64 dnxhd h261 microdvd nut pcm_u24le stream_segment
ac3 dts h263 mjpeg oga pcm_u32be sup
adts dv h264 mkvtimestamp_v2 ogg pcm_u32le swf
adx eac3 hash mlp ogv pcm_u8 tee
aiff f4v hds mmf oma psp tg2
amr ffm hevc mov opus rawvideo tgp
apng ffmetadata hls mp2 pcm_alaw rm truehd
aptx fifo ico mp3 pcm_f32be roq tta
asf filmstrip ilbc mp4 pcm_f32le rso uncodedframecrc
asf_stream fits image2 mpeg1system pcm_f64be rtp vc1
ass flac image2pipe mpeg1vcd pcm_f64le rtp_mpegts vc1t
ast flv ipod mpeg1video pcm_mulaw rtsp voc
au framecrc ircam mpeg2dvd pcm_s16be sap w64
avi framehash ismv mpeg2svcd pcm_s16le scc wav
avm2 framemd5 ivf mpeg2video pcm_s24be segment webm
bit g722 jacosub mpeg2vob pcm_s24le singlejpeg webm_chunk
caf g723_1 latm mpegts pcm_s32be smjpeg webm_dash_manifest
cavsvideo g726 lrc mpjpeg pcm_s32le smoothstreaming webp
crc g726le m4v mxf pcm_s8 sox webvtt
dash gif matroska mxf_d10 pcm_u16be spdif wtv
data gsm matroska_audio mxf_opatom pcm_u16le spx wv
daud gxf md5 null pcm_u24be srt yuv4mpegpipe
dirac

Enabled protocols:
async file httpproxy librtmps mmsh rtp tee
cache ftp icecast librtmpt mmst srtp udp
concat gopher librtmp librtmpte pipe subfile udplite
crypto hls librtmpe md5 prompeg tcp unix
data http

Enabled filters:
abench asetpts crop fps maskedclamp remap spectrumsynth
abitscope asetrate cropdetect framepack maskedmerge removegrain split
acompressor asettb crossfeed framerate mcdeint removelogo spp
acontrast ashowinfo crystalizer framestep mcompand repeatfields ssim
acopy asidedata curves fspp mergeplanes replaygain stereo3d
acrossfade asplit datascope gblur mestimate reverse stereotools
acrusher astats dcshift geq metadata rgbtestsrc stereowiden
adelay astreamselect dctdnoiz gradfun midequalizer roberts streamselect
adrawgraph atadenoise deband haas minterpolate rotate super2xsai
aecho atempo decimate haldclut mix sab superequalizer
aemphasis atrim deflate haldclutsrc movie scale surround
aeval avectorscope deflicker hdcd mpdecimate scale2ref swaprect
aevalsrc avgblur deinterlace_vaapi headphone mptestsrc scale_vaapi swapuv
afade bandpass dejudder hflip negate select tblend
afftfilt bandreject delogo highpass nlmeans selectivecolor telecine
afir bass deshake histeq nnedi sendcmd testsrc
aformat bbox despill histogram noformat separatefields testsrc2
agate bench detelecine hqdn3d noise setdar threshold
ahistogram biquad dilation hqx normalize setfield thumbnail
ainterleave bitplanenoise displace hstack null setpts tile
alimiter blackdetect doubleweave hue nullsink setrange tinterlace
allpass blackframe drawbox hwdownload nullsrc setsar tlut2
allrgb blend drawgraph hwmap oscilloscope settb tonemap
allyuv boxblur drawgrid hwupload overlay showcqt transpose
aloop bwdif dynaudnorm hwupload_cuda owdenoise showfreqs treble
alphaextract cellauto earwax hysteresis pad showinfo tremolo
alphamerge channelmap ebur128 idet palettegen showpalette trim
amerge channelsplit edgedetect il paletteuse showspectrum unpremultiply
ametadata chorus elbg inflate pan showspectrumpic unsharp
amix chromakey eq interlace perms showvolume uspp
amovie ciescope equalizer interleave perspective showwaves vaguedenoiser
anequalizer codecview erosion join phase showwavespic vectorscope
anoisesrc color extractplanes kerndeint pixdesctest shuffleframes vflip
anull colorbalance extrastereo lenscorrection pixscope shuffleplanes vibrato
anullsink colorchannelmixer fade life pp sidechaincompress vignette
anullsrc colorkey fftfilt limiter pp7 sidechaingate vmafmotion
apad colorlevels field loop premultiply sidedata volume
aperms colormatrix fieldhint loudnorm prewitt signalstats volumedetect
aphasemeter colorspace fieldmatch lowpass pseudocolor signature vstack
aphaser compand fieldorder lumakey psnr silencedetect w3fdif
apulsator compensationdelay fillborders lut pullup silenceremove waveform
arealtime concat find_rect lut2 qp sine weave
aresample convolution firequalizer lut3d random smartblur xbr
areverse convolve flanger lutrgb readeia608 smptebars yadif
aselect copy floodfill lutyuv readvitc smptehdbars yuvtestsrc
asendcmd cover_rect format mandelbrot realtime sobel zoompan
asetnsamples

Enabled bsfs:
aac_adtstoasc extract_extradata hevc_metadata mjpega_dump_header mpeg4_unpack_bframes remove_extradata vp9_raw_reorder
chomp h264_metadata hevc_mp4toannexb mov2textsub noise text2movsub vp9_superframe
dca_core h264_mp4toannexb imx_dump_header mp3_header_decompress null trace_headers vp9_superframe_split
dump_extradata h264_redundant_pps mjpeg2jpeg mpeg2_metadata

Enabled indevs:
alsa fbdev lavfi oss sndio v4l2 xcbgrab

Enabled outdevs:
alsa fbdev oss sdl2 sndio v4l2 xv

License: nonfree and unredistributable
libavutil/avconfig.h is unchanged
libavcodec/bsf_list.c is unchanged
libavformat/protocol_list.c is unchanged

checkinstall –pkgname=ffmpeg –pkgversion=”5:$(date +%Y%m%d%H%M)-git” –backup=no \
–deldoc=yes –fstrans=no –default

moe

mysql
coturn Version Coturn-4.5.0.3 ‘dan Eider’

add hard drive

insert into turn_origin_to_realm (origin,realm) values(‘https://turn0.mydetv.com:443′,’mydetv.com’);
external-ip=52.170.237.95
fingerprint
user=turn_user:himom
lt-cred-mech
realm=mydetv.com
log-file=/var/log/turnserver/turnserver.log
simple-log
tls-listening-port=5349

mysql-userdb=”host=127.0.0.1 dbname=turn user=turn password=turn port=3306 connect_timeout=30″
cert=/etc/letsencrypt/live/turn0.mydetv.com/cert.pem
pkey=/etc/letsencrypt/live/turn0.mydetv.com/privkey.pem
#cipher-list=”DEFAULT”
no-tlsv1
no-tlsv1_1
cli-password=qwerty
cli-ip=10.0.0.4

coturn

trying to let the janus server also run coturn

actually it is called turnserver
root@a6:/usr/src2/a6# turnserver -h
0: log file opened: /var/log/turn_15993_2018-03-01.log
0:
RFC 3489/5389/5766/5780/6062/6156 STUN/TURN Server
Version Coturn-4.5.0.3 ‘dan Eider’
0:
Max number of open files/sockets allowed for this process: 1048576
0:
Due to the open files/sockets limitation,
max supported number of TURN Sessions possible is: 524000 (approximately)
0:

==== Show him the instruments, Practical Frost: ====

0: TLS supported
0: DTLS supported
0: DTLS 1.2 supported
0: TURN/STUN ALPN supported
0: Third-party authorization (oAuth) supported
0: GCM (AEAD) supported
0: OpenSSL compile-time version: OpenSSL 1.0.2g-fips 1 Mar 2016
0:
0: SQLite supported, default database location is /var/lib/turn/turndb
0: Redis supported
0: PostgreSQL supported
0: MySQL supported
0: MongoDB is not supported
0:
0: Default Net Engine version: 3 (UDP thread per CPU core)

currently running in Azure

VM: dom
public IP: 52.191.116.248

cat /etc/turnserver.conf
external-ip=52.191.116.248
fingerprint
user=turn_user:b3BlbnZpZHUz
lt-cred-mech
realm=mydetv.com
log-file=/var/log/turnserver/turnserver.log
simple-log

cat /etc/kurento/modules/kurento/WebRtcEndpoint.conf.ini
stunServerAddress=52.191.116.248
stunServerPort=3478
turnURL=turn_user:b3BlbnZpZHU=@52.191.116.248:3478

motion

Linux motion program on a7

sure enough, after a reboot ununtu named my /dev/video devices differently.

using
udevadm info -a -p $(udevadm info -q path -p /class/video4linux/video0)
udevadm info -a -p $(udevadm info -q path -p /class/video4linux/video2)

I found they are different cards.
ATTR{card}==”118″
ATTR{card}==”77″

root@a7:~# lspci
04:00.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 11)
04:00.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 11)
04:01.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 11)
04:01.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 11)

sc-pvs1
pico2000 clone

/sbin/modprobe bttv card=118,118,118,118
udevadm info -a -p $(udevadm info -q path -p /class/video4linux/video1)

[ 8.814502] bttv: driver version 0.9.19 loaded
[ 8.814507] bttv: using 8 buffers with 2080k (520 pages) each for capture

[ 8.814557] bttv: Bt8xx card found (0)
[ 8.814646] bttv: 0: Bt878 (rev 17) at 0000:04:00.0, irq: 17, latency: 32, mmio: 0xe0103000
[ 8.814660] bttv: 0: using: *** UNKNOWN/GENERIC *** [card=0,autodetected]
[ 15.244029] bttv: 0: tuner type unset
[ 15.244207] bttv: 0: registered device video0
[ 15.244264] bttv: 0: registered device vbi0

[ 47.404059] bttv: Bt8xx card found (1)
[ 47.404158] bttv: 1: Bt878 (rev 17) at 0000:04:01.0, irq: 16, latency: 32, mmio: 0xe0101000
[ 47.404173] bttv: 1: using: *** UNKNOWN/GENERIC *** [card=0,autodetected]
[ 47.435151] bttv: 1: tuner type unset
[ 47.435275] bttv: 1: registered device video1
[ 47.435327] bttv: 1: registered device vbi1

lspci -vvvn
04:00.0 0400: 109e:036e (rev 11)
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- SERR- TAbort- SERR-