Giter Site home page Giter Site logo

ffmpeg-feedstock's Introduction

About ffmpeg-feedstock

Feedstock license: BSD-3-Clause

About ffmpeg

Home: https://www.ffmpeg.org/

Package license: LGPL-2.1-or-later

Summary: Cross-platform solution to record, convert and stream audio and video.

Development: https://git.ffmpeg.org/ffmpeg.git

Documentation: https://ffmpeg.org/documentation.html

About ffmpeg

Home: https://www.ffmpeg.org/

Package license: GPL-2.0-or-later

Summary: Cross-platform solution to record, convert and stream audio and video.

Development: https://git.ffmpeg.org/ffmpeg.git

Documentation: https://ffmpeg.org/documentation.html

Current build status

Azure
VariantStatus
linux_64_license_familygpl variant
linux_64_license_familylgpl variant
linux_aarch64_license_familygpl variant
linux_aarch64_license_familylgpl variant
linux_ppc64le_license_familygpl variant
linux_ppc64le_license_familylgpl variant
osx_64_license_familygpl variant
osx_64_license_familylgpl variant
osx_arm64_license_familygpl variant
osx_arm64_license_familylgpl variant
win_64_license_familygpl variant
win_64_license_familylgpl variant

Current release info

Name Downloads Version Platforms
Conda Recipe Conda Downloads Conda Version Conda Platforms

Installing ffmpeg

Installing ffmpeg from the conda-forge channel can be achieved by adding conda-forge to your channels with:

conda config --add channels conda-forge
conda config --set channel_priority strict

Once the conda-forge channel has been enabled, ffmpeg can be installed with conda:

conda install ffmpeg

or with mamba:

mamba install ffmpeg

It is possible to list all of the versions of ffmpeg available on your platform with conda:

conda search ffmpeg --channel conda-forge

or with mamba:

mamba search ffmpeg --channel conda-forge

Alternatively, mamba repoquery may provide more information:

# Search all versions available on your platform:
mamba repoquery search ffmpeg --channel conda-forge

# List packages depending on `ffmpeg`:
mamba repoquery whoneeds ffmpeg --channel conda-forge

# List dependencies of `ffmpeg`:
mamba repoquery depends ffmpeg --channel conda-forge

About conda-forge

Powered by NumFOCUS

conda-forge is a community-led conda channel of installable packages. In order to provide high-quality builds, the process has been automated into the conda-forge GitHub organization. The conda-forge organization contains one repository for each of the installable packages. Such a repository is known as a feedstock.

A feedstock is made up of a conda recipe (the instructions on what and how to build the package) and the necessary configurations for automatic building using freely available continuous integration services. Thanks to the awesome service provided by Azure, GitHub, CircleCI, AppVeyor, Drone, and TravisCI it is possible to build and upload installable packages to the conda-forge anaconda.org channel for Linux, Windows and OSX respectively.

To manage the continuous integration and simplify feedstock maintenance conda-smithy has been developed. Using the conda-forge.yml within this repository, it is possible to re-render all of this feedstock's supporting files (e.g. the CI configuration files) with conda smithy rerender.

For more information please check the conda-forge documentation.

Terminology

feedstock - the conda recipe (raw material), supporting scripts and CI configuration.

conda-smithy - the tool which helps orchestrate the feedstock. Its primary use is in the construction of the CI .yml files and simplify the management of many feedstocks.

conda-forge - the place where the feedstock and smithy live and work to produce the finished article (built conda distributions)

Updating ffmpeg-feedstock

If you would like to improve the ffmpeg recipe or build a new package version, please fork this repository and submit a PR. Upon submission, your changes will be run on the appropriate platforms to give the reviewer an opportunity to confirm that the changes result in a successful build. Once merged, the recipe will be re-built and uploaded automatically to the conda-forge channel, whereupon the built conda packages will be available for everybody to install and use from the conda-forge channel. Note that all branches in the conda-forge/ffmpeg-feedstock are immediately built and any created packages are uploaded, so PRs should be based on branches in forks and branches in the main repository should only be used to build distinct package versions.

In order to produce a uniquely identifiable distribution:

  • If the version of a package is not being increased, please add or increase the build/number.
  • If the version of a package is being increased, please remember to return the build/number back to 0.

Feedstock Maintainers

ffmpeg-feedstock's People

Contributors

183amir avatar beckermr avatar benjaminrwilson avatar carlodri avatar carterbox avatar caspervdw avatar conda-forge-admin avatar conda-forge-curator[bot] avatar danielballan avatar davidbrochart avatar estshorter avatar github-actions[bot] avatar h-vetinari avatar hmaarrfk avatar ilya-lavrenov avatar isuruf avatar jakirkham avatar jschueller avatar manifoldfr avatar mariusvniekerk avatar matthiasdiener avatar mmcauliffe avatar ocefpaf avatar patricksnape avatar pelson avatar pgunn avatar regro-cf-autotick-bot avatar scopatz avatar sdvillal avatar tobias-fischer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ffmpeg-feedstock's Issues

build issue for linux-32bit: libavdevice/alldevices.o: No such file or directory

Hi I was trying to adapt this useful recipe to build linux-32bit binnary but got an error of

...
rm -f libavdevice/libavdevice.a
ar rcD libavdevice/libavdevice.a libavdevice/alldevices.o libavdevice/avdevice.o libavdevice/dv1394.o libavdevice/fbdev_common.o libavdevice/fbdev_dec.o libavdevice/fbdev_enc.o libavdevice/lavfi.o libavdevice/oss.o libavdevice/oss_dec.o libavdevice/oss_enc.o libavdevice/timefilter.o libavdevice/utils.o libavdevice/v4l2-common.o libavdevice/v4l2.o libavdevice/v4l2enc.o
ar: libavdevice/alldevices.o: No such file or directory
make: *** [libavdevice/libavdevice.a] Error 1

I'm wondering if any of you ever tried to build binary for 32bit or got this error before?

I noticed the recipe is for 64 bit so here is the slightly changed build.sh I made for 32-bit:

#!/bin/bash

./configure \
        --prefix="${PREFIX}" \
        --disable-doc \
        --enable-shared \
        --enable-static \
        --extra-cflags="-Wall -g -m32 -pipe -O3 -fPIC `pkg-config --cflags zlib`" \
        --extra-cxxflags=="-Wall -g -m32 -pipe -O3 -fPIC" \
        --extra-libs="`pkg-config --libs zlib`" \
        --enable-pic \
        --enable-gpl \
        --enable-libx264

make
make install

I'd appreciate any help from you, thanks!

libgcc breaks my python extention on OSX

hi,

is there any reason why including libgcc for ffmpeg?
After installing it, my Python extension package was broken (It was compiled with clang)

python(97334,0x7fffabc703c0) malloc: *** error for object 0x10519d7c0: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6

If I conda remove libgcc, my program can run nicely.

I also try to install ffmpeg from menpo channel and this program seem run fine without requiring
libgcc.

OpenSSL

Could you build this with -enable-openssl

No module named 'ffmpeg'

Issue: No module named 'ffmpeg' on doing 'conda install -c conda-forge ffmpeg'

installing ffmpeg after installing opencv (from conda-forge) also breaks opencv and gives a similar error for import cv2 : No module named 'cv2'


Environment (conda list):
$ conda list

# packages in environment at /Users/sophiaw/anaconda3/envs/mlbook:
#
# Name                    Version                   Build  Channel
absl-py                   0.1.10                     py_0    conda-forge
alabaster                 0.7.11                     py_3    conda-forge
altair                    2.1.0                      py_0    conda-forge
anaconda                  custom           py36ha4fed55_0    defaults
appnope                   0.1.0                    py36_0    conda-forge
asn1crypto                0.24.0                   py36_0    conda-forge
astor                     0.6.2                      py_0    conda-forge
astroid                   1.6.5                    py36_0    conda-forge
babel                     2.6.0                      py_1    conda-forge
backcall                  0.1.0                      py_0    conda-forge
backports                 1.0                      py36_1    conda-forge
backports.weakref         1.0rc1                   py36_1    conda-forge
blas                      1.1                    openblas    conda-forge
bleach                    1.5.0                    py36_0    conda-forge
bokeh                     0.12.16            pyh48623ea_0    bokeh
boost                     1.67.0                   py36_0    conda-forge
boost-cpp                 1.67.0                        0    conda-forge
branca                    0.3.0                      py_0    conda-forge
bzip2                     1.0.6                         1    conda-forge
ca-certificates           2018.8.24            ha4d7672_0    conda-forge
cairo                     1.14.12              he56eebe_3    conda-forge
certifi                   2018.8.24                py36_1    conda-forge
cffi                      1.11.5                   py36_0    conda-forge
chardet                   3.0.4                    py36_0    conda-forge
click                     6.7                        py_1    conda-forge
click-plugins             1.0.3                    py36_0    conda-forge
cligj                     0.4.0                    py36_0    conda-forge
cloog                     0.18.0                        0    defaults
cloudpickle               0.5.3                      py_0    conda-forge
cryptography              2.2.1                    py36_0    conda-forge
curl                      7.60.0                        0    conda-forge
cycler                    0.10.0                   py36_0    conda-forge
cython                    0.28.5           py36hfc679d8_0    conda-forge
dash                      0.21.1                     py_1    conda-forge
dash-renderer             0.13.0                     py_0    conda-forge
decorator                 4.3.0                      py_0    conda-forge
deepchem                  2.0.1.dev250              <pip>
descartes                 1.1.0                      py_1    conda-forge
docutils                  0.14                     py36_0    conda-forge
entrypoints               0.2.3                    py36_1    conda-forge
expat                     2.2.5                         0    conda-forge
fbprophet                 0.3.post2                py36_0    conda-forge
ffmpeg                    4.0.2                ha6a6e2b_0    conda-forge
fiona                     1.7.10           py36h6a33aa8_0    defaults
flask                     1.0.2                      py_1    conda-forge
flask-compress            1.4.0                      py_0    conda-forge
folium                    0.5.0                      py_0    conda-forge
fontconfig                2.13.0                        0    conda-forge
freetype                  2.8.1                         0    conda-forge
freexl                    1.0.5                         0    conda-forge
future                    0.16.0                   py36_2    conda-forge
futures-compat            1.0                       py3_0    defaults
gast                      0.2.0                      py_0    conda-forge
gcc                       4.8.5                         8    defaults
geopandas                 0.3.0                    py36_0    conda-forge
geos                      3.6.2                         1    conda-forge
geotiff                   1.4.2                h700e5ad_4    conda-forge
gettext                   0.19.8.1                      0    conda-forge
gflags                    2.2.1                hfc679d8_0    conda-forge
giflib                    5.1.4                         0    conda-forge
glib                      2.55.0               h464dc38_2    conda-forge
glog                      0.3.5                         0    conda-forge
gmp                       6.1.2                hfc679d8_0    conda-forge
gnutls                    3.5.17                        0    conda-forge
graphite2                 1.3.11               h7d4d677_0    conda-forge
grpcio                    1.11.0           py36hd9629dc_0    defaults
harfbuzz                  1.8.5                h2bb21d5_0    conda-forge
hdf4                      4.2.13                        0    conda-forge
hdf5                      1.10.2               hc401514_2    conda-forge
html5lib                  0.9999999                py36_0    conda-forge
icu                       58.2                          0    conda-forge
idna                      2.6                      py36_1    conda-forge
imagesize                 1.0.0                      py_1    conda-forge
intel-openmp              2018.0.0                      8    defaults
ipykernel                 4.8.2                    py36_0    conda-forge
ipython                   6.3.1                    py36_0    conda-forge
ipython_genutils          0.2.0                    py36_0    conda-forge
isl                       0.12.2                        1    defaults
isort                     4.3.4                    py36_0    conda-forge
itsdangerous              0.24                       py_2    conda-forge
jasper                    1.900.1                       4    conda-forge
jedi                      0.12.0                   py36_0    conda-forge
jinja2                    2.10                     py36_0    conda-forge
joblib                    0.11                     py36_0    anaconda
jpeg                      9c                   h470a237_1    conda-forge
json-c                    0.12.1                        0    conda-forge
jsonschema                2.6.0                    py36_1    conda-forge
jupyter_client            5.2.3                    py36_0    conda-forge
jupyter_contrib_core      0.3.3                    py36_1    conda-forge
jupyter_contrib_nbextensions 0.5.0                    py36_0    conda-forge
jupyter_core              4.4.0                      py_0    conda-forge
jupyter_highlight_selected_word 0.2.0                    py36_0    conda-forge
jupyter_latex_envs        1.4.4                    py36_0    conda-forge
jupyter_nbextensions_configurator 0.4.0                    py36_0    conda-forge
kealib                    1.4.9                h0bee7d0_2    conda-forge
keyring                   13.2.1                   py36_0    conda-forge
kiwisolver                1.0.1                    py36_1    conda-forge
krb5                      1.14.6                        0    conda-forge
lazy-object-proxy         1.3.1                    py36_0    conda-forge
libboost                  1.65.1               hcc95346_4    defaults
libcxx                    4.0.1                h579ed51_0    anaconda
libcxxabi                 4.0.1                hebd6815_0    anaconda
libdap4                   3.19.2                        1    conda-forge
libffi                    3.2.1                         3    conda-forge
libgdal                   2.2.4                ha6e4b24_6    conda-forge
libgfortran               3.0.1                h93005f0_2    defaults
libiconv                  1.15                          0    conda-forge
libidn11                  1.33                 hf837533_0    conda-forge
libkml                    1.3.0                hc0cae1e_3    defaults
libnetcdf                 4.6.1                h039f2a5_8    conda-forge
libopenblas               0.2.20               hdc02c5d_7    defaults
libopus                   1.2.1                h169cedb_0    anaconda
libpng                    1.6.34                        0    conda-forge
libpq                     10.3                 hf30b1f0_0    defaults
libprotobuf               3.4.1                h326466f_0    defaults
libsodium                 1.0.16                        0    conda-forge
libspatialindex           1.8.5                         1    conda-forge
libspatialite             4.3.0a                       19    conda-forge
libssh2                   1.8.0                         2    conda-forge
libtiff                   4.0.9                         0    conda-forge
libuuid                   1.0.3                         1    conda-forge
libvpx                    1.7.0                h378b8a2_0    anaconda
libwebp                   0.5.2                         7    conda-forge
libxml2                   2.9.8                         0    conda-forge
libxslt                   1.1.32                        0    conda-forge
lxml                      4.2.1                    py36_0    conda-forge
markdown                  2.6.11                     py_0    conda-forge
markupsafe                1.0                      py36_0    conda-forge
matplotlib                2.2.2                    py36_1    conda-forge
mccabe                    0.6.1                      py_1    conda-forge
mistune                   0.8.3                    py36_1    conda-forge
mkl                       2018.0.2                      1    defaults
mkl_fft                   1.0.2                    py36_0    conda-forge
mkl_random                1.0.1                    py36_0    conda-forge
mock                      2.0.0                    py36_0    conda-forge
mpc                       1.1.0                         4    conda-forge
mpfr                      3.1.5                         0    conda-forge
munch                     2.3.2                      py_0    conda-forge
nbconvert                 5.3.1                      py_1    conda-forge
nbformat                  4.4.0                    py36_0    conda-forge
ncurses                   5.9                          10    conda-forge
nettle                    3.3                           0    conda-forge
ninja                     1.8.2                h2d50403_1    conda-forge
notebook                  5.4.1                    py36_0    conda-forge
numpy                     1.15.1          py36_blas_openblashd3ea46f_1  [blas_openblas]  conda-forge
numpy-base                1.14.3           py36h7ef55bc_1    defaults
numpydoc                  0.8.0                      py_1    conda-forge
olefile                   0.45.1                   py36_0    conda-forge
openblas                  0.2.20                        8    conda-forge
opencv                    3.4.3           py36_blas_openblash553dce0_200  [blas_openblas]  conda-forge
openh264                  1.7.0                         0    conda-forge
openjpeg                  2.3.0                         2    conda-forge
openssl                   1.0.2p               h470a237_0    conda-forge
packaging                 17.1                       py_0    conda-forge
pandas                    0.22.0           py36h0a44026_0    anaconda
pandas-datareader         0.6.0                    py36_0    anaconda
pandoc                    2.2                  hde52d81_0    conda-forge
pandocfilters             1.4.2                    py36_0    conda-forge
parso                     0.2.0                      py_0    conda-forge
pbr                       4.0.2                      py_0    conda-forge
pcre                      8.41                          1    conda-forge
pexpect                   4.5.0                    py36_0    conda-forge
pickleshare               0.7.4                    py36_0    conda-forge
pillow                    5.1.0                    py36_0    conda-forge
pip                       18.0                     py36_1    conda-forge
pip                       10.0.1                    <pip>
pixman                    0.34.0                        2    conda-forge
plotly                    2.7.0                      py_1    conda-forge
poppler                   0.61.1                        3    conda-forge
poppler-data              0.4.9                         0    conda-forge
proj4                     4.9.3                         5    conda-forge
prompt_toolkit            1.0.15                   py36_0    conda-forge
protobuf                  3.5.1                    py36_3    conda-forge
psutil                    5.4.6                    py36_0    conda-forge
psycopg2                  2.7.4                    py36_0    conda-forge
ptyprocess                0.5.2                    py36_0    conda-forge
py-boost                  1.65.1           py36h1439ea1_4    defaults
py4j                      0.10.7                     py_1    conda-forge
pycodestyle               2.4.0                      py_1    conda-forge
pycparser                 2.18                     py36_0    conda-forge
pyflakes                  2.0.0                      py_0    conda-forge
pygments                  2.2.0                    py36_0    conda-forge
pylint                    1.9.2                    py36_0    conda-forge
pyopenssl                 18.0.0                   py36_0    conda-forge
pyparsing                 2.2.0                    py36_0    conda-forge
pyproj                    1.9.5.1                  py36_0    conda-forge
pyqt                      5.6.0            py36h8210e8a_6    conda-forge
pysal                     1.14.3                   py36_0    conda-forge
pysocks                   1.6.8                    py36_1    conda-forge
pyspark                   2.3.1                    py36_1    conda-forge
pystan                    2.17.1.0         py36hf8a1672_1    conda-forge
python                    3.6.5                         1    conda-forge
python-dateutil           2.7.2                      py_0    conda-forge
python.app                1.2                      py36_0    conda-forge
pytorch                   0.4.1           py36_cuda0.0_cudnn0.0_1    pytorch
pytz                      2018.4                     py_0    conda-forge
pyyaml                    3.12                     py36_1    conda-forge
pyzmq                     17.0.0                   py36_4    conda-forge
qt                        5.6.2                h9e3eb04_4    conda-forge
qtawesome                 0.4.4              pyh8a2030e_1    conda-forge
qtconsole                 4.3.1                    py36_0    conda-forge
qtpy                      1.4.2              pyh8a2030e_1    conda-forge
rdkit                     2018.03.1.0      py36h04f5b5a_1    rdkit
readline                  7.0                           0    conda-forge
requests                  2.18.4                   py36_1    conda-forge
requests-file             1.4.3                    py36_0    anaconda
requests-ftp              0.3.1                    py36_0    anaconda
rope                      0.10.7                     py_1    conda-forge
rtree                     0.8.3                    py36_0    conda-forge
scikit-learn              0.19.2          py36_blas_openblasha84fab4_201  [blas_openblas]  conda-forge
scipy                     1.1.0           py36_blas_openblash7943236_201  [blas_openblas]  conda-forge
selenium                  3.12.0                   py36_0    conda-forge
send2trash                1.5.0                      py_0    conda-forge
setuptools                39.1.0                   py36_0    conda-forge
shapely                   1.6.4                    py36_0    conda-forge
simdna                    0.4.2                      py_0    conda-forge
simplegeneric             0.8.1                    py36_0    conda-forge
sip                       4.18                     py36_1    conda-forge
six                       1.11.0                   py36_1    conda-forge
snowballstemmer           1.2.1                      py_1    conda-forge
sphinx                    1.7.5                    py36_0    conda-forge
sphinxcontrib-websupport  1.1.0                    py36_0    conda-forge
spyder                    3.3.0                    py36_1    conda-forge
spyder-kernels            0.2.4                      py_1    conda-forge
sqlalchemy                1.2.8                    py36_0    conda-forge
sqlite                    3.20.1                        2    conda-forge
tensorboard               1.8.0                    py36_1    conda-forge
tensorflow                1.8.0                    py36_1    conda-forge
termcolor                 1.1.0                    py36_1    conda-forge
terminado                 0.8.1                    py36_0    conda-forge
testpath                  0.3.1                    py36_0    conda-forge
tk                        8.6.7                         0    conda-forge
toolz                     0.9.0                      py_0    conda-forge
torchvision               0.2.1                    py36_1    pytorch
tornado                   5.0.2                    py36_0    conda-forge
traitlets                 4.3.2                    py36_0    conda-forge
typing                    3.6.4                    py36_0    conda-forge
urllib3                   1.22                     py36_0    conda-forge
vincent                   0.4.4                    py36_0    conda-forge
wcwidth                   0.1.7                    py36_0    conda-forge
webencodings              0.5.1                    py36_0    conda-forge
werkzeug                  0.14.1                     py_0    conda-forge
wheel                     0.31.0                   py36_0    conda-forge
wrapt                     1.10.11          py36hc29e774_0    anaconda
x264                      1!152.20180717       h470a237_0    conda-forge
xerces-c                  3.2.0                h5d6a6da_2    conda-forge
xz                        5.2.3                         0    conda-forge
yaml                      0.1.7                         0    conda-forge
youtube-dl                2018.9.8                 py36_0    conda-forge
zeromq                    4.2.5                         1    conda-forge
zlib                      1.2.11                        0    conda-forge


Details about conda and system ( conda info ):
$ conda info

     active environment : mlbook
    active env location : /Users/sophiaw/anaconda3/envs/mlbook
            shell level : 1
       user config file : /Users/sophiaw/.condarc
 populated config files : /Users/sophiaw/.condarc
          conda version : 4.5.11
    conda-build version : 3.8.0
         python version : 3.6.5.final.0
       base environment : /Users/sophiaw/anaconda3  (writable)
           channel URLs : https://conda.anaconda.org/conda-forge/osx-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://repo.anaconda.com/pkgs/main/osx-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/free/osx-64
                          https://repo.anaconda.com/pkgs/free/noarch
                          https://repo.anaconda.com/pkgs/r/osx-64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/pro/osx-64
                          https://repo.anaconda.com/pkgs/pro/noarch
          package cache : /Users/sophiaw/anaconda3/pkgs
                          /Users/sophiaw/.conda/pkgs
       envs directories : /Users/sophiaw/anaconda3/envs
                          /Users/sophiaw/.conda/envs
               platform : osx-64
             user-agent : conda/4.5.11 requests/2.18.4 CPython/3.6.5 Darwin/17.7.0 OSX/10.13.6
                UID:GID : 501:20
             netrc file : None
           offline mode : False


adding libvpx support

I tried adding libvpx support with a config flag, but ended up running in to a host of build problems testing it out on my own machine.

First thing I found: I can't build at all when in a conda virtual environment. I initially did this because I'm wary of changing my default gcc. Then I relented and just tried to build the existing recipe after adding conda-forge to my channels of course.

Now it fails with:

gcc is unable to create an executable file.
If gcc is a cross-compiler, use the --enable-cross-compile option.
Only do this if you know what cross compiling means.
C compiler test failed.

If you think configure made a mistake, make sure you are using the latest
version from Git.  If the latest version fails, report the problem to the
[email protected] mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.log" produced by configure as this will help
solve the problem.
Command failed: /bin/bash -x -e /Users/zoeydavidson/anaconda/conda-bld/work/ffmpeg-2.8.6/conda_build.sh

However, I can go to the conda-bld/work/ffmpeg-2.8.6/ directory and do the configure by hand (with and without the prefix). But when I run make I get another error:

CC  libavdevice/alldevices.o
In file included from ./libavutil/avutil.h:288:0,
                 from ./libavutil/log.h:25,
                 from libavdevice/avdevice.h:46,
                 from libavdevice/alldevices.c:22:
./libavutil/common.h:33:19: fatal error: errno.h: No such file or directory
 #include <errno.h>
                   ^
compilation terminated.
make: *** [libavdevice/alldevices.o] Error 1

I'm also not sure how to handle the libogg and libvorbis dependencies...

Installing ffmpeg breaks libarchive / libmamba

Solution to issue cannot be found in the documentation.

  • I checked the documentation.

Issue

Running conda install ffmpeg -c conda-forge automatically installs libarchive from conda-forge, but not libmamba and related mamba packages. This causes a broken conda install because conda-forge's libarchive will install libarchive.so.13.6.

Error while loading conda entry point: conda-libmamba-solver (libarchive.so.19: cannot open shared object file: No such file or directory)

This is a known version numbering issue at conda-forge/libarchive-feedstock#69

To be consistent, conda-libmamba-solver, libmamba and libmambapy have to be installed from conda-forge as well. Could someone add them the dependencies? Thanks.

Installed packages

(applies to all)

Environment info

(applies to all)

X265 or libvpx support?

Right now, pretty much the only available video codec available for this build of ffmpeg is H.264 (OpenH264 or x264). Would it be possible to add support for libvpx or HEVC ? Many downstream packages such as imageio or moviepy have this as a dependency so lack of HEVC or libvpx limits their functionality.

I'm aware of issue #8 pertaining to libvpx but it seems to be dead as of four years ago, and libvpx is not the only option

x264 upgrade has broken ffmpeg

If you currently install ffmpeg=4.0, the resulting binary (on Linux) gives:

ffmpeg: error while loading shared libraries: libx264.so.138: cannot open shared object file: No such file or directory

It seems that the packages insufficiently version the x264 dependency.

Feature parity for windows builds

Things already compiled for windows upstream:

Things that seem to support windows upstream:

Things that don't obviously support windows upstream

Recently added feature parity

Various fixes needed on OS X

This is doing a few things incorrectly on OS X, which need to be fixed.

  • Not using the system toolchain.
  • Using the system iconv.
  • Using the system bz2.

nvenc doesn't work due to ffnvcodecs version mismatch

Solution to issue cannot be found in the documentation.

  • I checked the documentation.

Issue

I'm pretty sure that with "older drivers" (510) on ubuntu, i'm unable to use the build _9 to encode videos with h264_nvenc

I think this is due to the fact that the later builds use a version of ffnvcodec that assumes cuda 12, and thus are incompatible with older versions.

Installed packages

build 9 -- doesn't work with Driver 510 on ubuntu. Works with driver 525 on ubuntu

build 6 -- works with driver 510 on ubuntu

Environment info

.

I think we might have to start building different versions for different cuda versions...

Include headers in windows build

The windows build on the av-feedstock needs the include and lib directories. I don't know what is the standard policy on this, but I think a solution is downloading the ffmpeg source (the dev Zeranoe package) and including them in the respective directories.

Is it OK if I add them? And is it possible to download multiple archives from the meta.yaml?

ref. conda-forge/av-feedstock#1

Build an LGPL version?

In my company, we have both a GPL and a LGPL version of the ffmpeg package. We differentiate them via the build string. This simple commit does the job.

ffmpeg defaults package, derived from this one, is LGPL too.

Could it make sense to create a LGPL branch also here?

EDIT: the LGPL branch would only build for linux and mac, as we are not really building ourselves the windows package.

Latest versions of ffmpeg with openvino warn on environment activation

Solution to issue cannot be found in the documentation.

  • I checked the documentation.

Issue

Since the addition of libopenvino in #223 then a simple installation of ffmpeg on linux:

mamba create -n ffmpegtest ffmpeg
conda activate ffmpegtest

Gives the following warning on environment activation:

WARNING: No ICDs were found. Either,
- Install a conda package providing a OpenCL implementation (pocl, oclgrind, intel-compute-runtime, beignet) or 
- Make your system-wide implementation visible by installing ocl-icd-system conda package. 

I don't know if the problem is with ffmpeg or libopenvino, but it's not a good look.
cc @hmaarrfk @ilya-lavrenov

Installed packages

_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       2_gnu    conda-forge
aom                       3.8.1                h59595ed_0    conda-forge
bzip2                     1.0.8                hd590300_5    conda-forge
cairo                     1.18.0               h3faef2a_0    conda-forge
dav1d                     1.2.1                hd590300_0    conda-forge
expat                     2.6.1                h59595ed_0    conda-forge
ffmpeg                    6.1.1           gpl_h8007c5b_104    conda-forge
font-ttf-dejavu-sans-mono 2.37                 hab24e00_0    conda-forge
font-ttf-inconsolata      3.000                h77eed37_0    conda-forge
font-ttf-source-code-pro  2.038                h77eed37_0    conda-forge
font-ttf-ubuntu           0.83                 h77eed37_1    conda-forge
fontconfig                2.14.2               h14ed4e7_0    conda-forge
fonts-conda-ecosystem     1                             0    conda-forge
fonts-conda-forge         1                             0    conda-forge
freetype                  2.12.1               h267a509_2    conda-forge
fribidi                   1.0.10               h36c2ea0_0    conda-forge
gettext                   0.21.1               h27087fc_0    conda-forge
gmp                       6.3.0                h59595ed_0    conda-forge
gnutls                    3.7.9                hb077bed_0    conda-forge
graphite2                 1.3.13            h58526e2_1001    conda-forge
harfbuzz                  8.3.0                h3d44ed6_0    conda-forge
icu                       73.2                 h59595ed_0    conda-forge
lame                      3.100             h166bdaf_1003    conda-forge
libabseil                 20240116.1      cxx17_h59595ed_2    conda-forge
libass                    0.17.1               h8fe9dca_1    conda-forge
libdrm                    2.4.120              hd590300_0    conda-forge
libexpat                  2.6.1                h59595ed_0    conda-forge
libffi                    3.4.2                h7f98852_5    conda-forge
libgcc-ng                 13.2.0               h807b86a_5    conda-forge
libglib                   2.78.4               hf2295e7_4    conda-forge
libgomp                   13.2.0               h807b86a_5    conda-forge
libhwloc                  2.9.3           default_h554bfaf_1009    conda-forge
libiconv                  1.17                 hd590300_2    conda-forge
libidn2                   2.3.7                hd590300_0    conda-forge
libopenvino               2023.3.0             h2e90f83_2    conda-forge
libopenvino-auto-batch-plugin 2023.3.0             hd5fc58b_2    conda-forge
libopenvino-auto-plugin   2023.3.0             hd5fc58b_2    conda-forge
libopenvino-hetero-plugin 2023.3.0             h3ecfda7_2    conda-forge
libopenvino-intel-cpu-plugin 2023.3.0             h2e90f83_2    conda-forge
libopenvino-intel-gpu-plugin 2023.3.0             h2e90f83_2    conda-forge
libopenvino-ir-frontend   2023.3.0             h3ecfda7_2    conda-forge
libopenvino-onnx-frontend 2023.3.0             h469e5c9_2    conda-forge
libopenvino-paddle-frontend 2023.3.0             h469e5c9_2    conda-forge
libopenvino-pytorch-frontend 2023.3.0             h59595ed_2    conda-forge
libopenvino-tensorflow-frontend 2023.3.0             he1e0747_2    conda-forge
libopenvino-tensorflow-lite-frontend 2023.3.0             h59595ed_2    conda-forge
libopus                   1.3.1                h7f98852_1    conda-forge
libpciaccess              0.18                 hd590300_0    conda-forge
libpng                    1.6.43               h2797004_0    conda-forge
libprotobuf               4.25.2               h08a7969_1    conda-forge
libstdcxx-ng              13.2.0               h7e041cc_5    conda-forge
libtasn1                  4.19.0               h166bdaf_0    conda-forge
libunistring              0.9.10               h7f98852_0    conda-forge
libuuid                   2.38.1               h0b41bf4_0    conda-forge
libva                     2.20.0               hd590300_0    conda-forge
libvpx                    1.13.1               h59595ed_0    conda-forge
libxcb                    1.15                 h0b41bf4_0    conda-forge
libxml2                   2.12.5               h232c23b_0    conda-forge
libzlib                   1.2.13               hd590300_5    conda-forge
nettle                    3.9.1                h7ab15ed_0    conda-forge
ocl-icd                   2.3.2                hd590300_0    conda-forge
openh264                  2.4.1                h59595ed_0    conda-forge
p11-kit                   0.24.1               hc5aa10d_0    conda-forge
pcre2                     10.43                hcad00b1_0    conda-forge
pixman                    0.43.2               h59595ed_0    conda-forge
pthread-stubs             0.4               h36c2ea0_1001    conda-forge
pugixml                   1.14                 h59595ed_0    conda-forge
snappy                    1.1.10               h9fff704_0    conda-forge
svt-av1                   1.8.0                h59595ed_0    conda-forge
tbb                       2021.11.0            h00ab1b0_1    conda-forge
x264                      1!164.3095           h166bdaf_2    conda-forge
x265                      3.5                  h924138e_3    conda-forge
xorg-fixesproto           5.0               h7f98852_1002    conda-forge
xorg-kbproto              1.0.7             h7f98852_1002    conda-forge
xorg-libice               1.1.1                hd590300_0    conda-forge
xorg-libsm                1.2.4                h7391055_0    conda-forge
xorg-libx11               1.8.7                h8ee46fc_0    conda-forge
xorg-libxau               1.0.11               hd590300_0    conda-forge
xorg-libxdmcp             1.1.3                h7f98852_0    conda-forge
xorg-libxext              1.3.4                h0b41bf4_2    conda-forge
xorg-libxfixes            5.0.3             h7f98852_1004    conda-forge
xorg-libxrender           0.9.11               hd590300_0    conda-forge
xorg-renderproto          0.11.1            h7f98852_1002    conda-forge
xorg-xextproto            7.3.0             h0b41bf4_1003    conda-forge
xorg-xproto               7.0.31            h7f98852_1007    conda-forge
xz                        5.2.6                h166bdaf_0    conda-forge
zlib                      1.2.13               hd590300_5    conda-forge

Environment info

active environment : ffmpegtest
    active env location : /u2/ki/erykoff/miniforge3/envs/ffmpegtest
            shell level : 2
       user config file : /u/ki/erykoff/.condarc
 populated config files : /u2/ki/erykoff/miniforge3/.condarc
                          /u/ki/erykoff/.condarc
          conda version : 23.3.1
    conda-build version : not installed
         python version : 3.10.12.final.0
       virtual packages : __archspec=1=x86_64
                          __cuda=11.2=0
                          __glibc=2.17=0
                          __linux=3.10.0=0
                          __unix=0=0
       base environment : /u2/ki/erykoff/miniforge3  (writable)
      conda av data dir : /u2/ki/erykoff/miniforge3/etc/conda
  conda av metadata url : None
           channel URLs : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /u2/ki/erykoff/miniforge3/pkgs
                          /u/ki/erykoff/.conda/pkgs
       envs directories : /u2/ki/erykoff/miniforge3/envs
                          /u/ki/erykoff/.conda/envs
               platform : linux-64
             user-agent : conda/23.3.1 requests/2.31.0 CPython/3.10.12 Linux/3.10.0-1160.88.1.el7.x86_64 centos/7.9.2009 glibc/2.17
                UID:GID : 10646:1092
             netrc file : /u/ki/erykoff/.netrc
           offline mode : False

Can we add ffprobe?

scikit-video requires ffmpeg that come with ffprobe. Could/Should the next ffmpeg from conda-forge include it?

some error msg. When run scikit-video

import skvideo.io
import skvideo.datasets
videodata = skvideo.io.vread(skvideo.datasets.bigbuckbunny())
print(videodata.shape)

---------------------------------------------------------------------------
AssertionError                            Traceback (most recent call last)
<ipython-input-114-e52d2e13d561> in <module>()
      1 import skvideo.io
      2 import skvideo.datasets
----> 3 videodata = skvideo.io.vread(skvideo.datasets.bigbuckbunny())
      4 print(videodata.shape)

~/miniconda3/lib/python3.6/site-packages/skvideo/io/io.py in vread(fname, height, width, num_frames, as_grey, inputdict, outputdict, backend, verbosity)
    131     if backend == "ffmpeg":
    132         # check if FFMPEG exists in the path
--> 133         assert _HAS_FFMPEG, "Cannot find installation of real FFmpeg (which comes with ffprobe)."
    134 
    135         if ((height != 0) and (width != 0)):

AssertionError: Cannot find installation of real FFmpeg (which comes with ffprobe).

pkg-config file libavformat.pc is missing linker instructions

The pkg-config file libavformat.pc is missing the following linker instructions

-lx264 -lavfilter -lpostproc

As a result, packages like PyAV don't compile. Appending these shared libraries to the Libs: line in libavformat.pc fixes it.

I don't see where creation of this file is handled in this repository. Is there a way to fix this? Alternatively, is there a way to make libavformat not automatically depend on the inclusion of these libraries?

screen capture codec (x11grab) not working on Linux

Issue: screen capture codec (x11grab) not working on Linux

ffmpeg screen capture command does not appear to be enabled during compilation. When running any of the Linux commands on this page (https://trac.ffmpeg.org/wiki/Capture/Desktop), following error occurs:

ffmpeg version 4.2.3 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 7.5.0 (crosstool-NG 1.24.0.123_1667d2b)
  configuration: --prefix=/home/leonyu/miniconda3/envs/ffmpeg-wrapper --cc=/home/conda/feedstock_root/build_artifacts/ffmpeg_1590573566052/_build_env/bin/x86_64-conda_cos6-linux-gnu-cc --disable-doc --disable-openssl --enable-avresample --enable-gnutls --enable-gpl --enable-hardcoded-tables --enable-libfreetype --enable-libopenh264 --enable-libx264 --enable-pic --enable-pthreads --enable-shared --enable-static --enable-version3 --enable-zlib --enable-libmp3lame
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Unknown input format: 'x11grab'
exit 1


Environment (conda list):
$ conda list

# packages in environment at /home/leonyu/miniconda3/envs/ffmpeg-wrapper:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       0_gnu    conda-forge
bzip2                     1.0.8                h516909a_2    conda-forge
ffmpeg                    4.2.3                h167e202_0    conda-forge
freetype                  2.10.2               he06d7ca_0    conda-forge
gmp                       6.2.0                he1b5a44_2    conda-forge
gnutls                    3.6.13               h79a8f9a_0    conda-forge
lame                      3.100             h14c3975_1001    conda-forge
libgcc-ng                 9.2.0                h24d8f2e_2    conda-forge
libgomp                   9.2.0                h24d8f2e_2    conda-forge
libiconv                  1.15              h516909a_1006    conda-forge
libpng                    1.6.37               hed695b0_1    conda-forge
libstdcxx-ng              9.2.0                hdf63c60_2    conda-forge
nettle                    3.4.1             h1bed415_1002    conda-forge
openh264                  2.1.1                h8b12597_0    conda-forge
x264                      1!152.20180806       h14c3975_0    conda-forge
zlib                      1.2.11            h516909a_1006    conda-forge

Details about conda and system ( conda info ):
$ conda info


     active environment : ffmpeg-wrapper
    active env location : /home/leonyu/miniconda3/envs/ffmpeg-wrapper
            shell level : 2
       user config file : /home/leonyu/.condarc
 populated config files : 
          conda version : 4.8.2
    conda-build version : not installed
         python version : 3.7.6.final.0
       virtual packages : __cuda=10.2
                          __glibc=2.31
       base environment : /home/leonyu/miniconda3  (writable)
           channel URLs : https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /home/leonyu/miniconda3/pkgs
                          /home/leonyu/.conda/pkgs
       envs directories : /home/leonyu/miniconda3/envs
                          /home/leonyu/.conda/envs
               platform : linux-64
             user-agent : conda/4.8.2 requests/2.22.0 CPython/3.7.6 Linux/5.4.0-37-generic ubuntu/20.04 glibc/2.31
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False

Patent fees discussion

The notion of patent fees for mpeg-la has been brought up by @183amir in #44 (comment)

https://video.stackexchange.com/a/14706

A good read might be https://video.stackexchange.com/a/14706

And htinking about cisco's openh264 is also interesting:

So it seems that if we wanted to make an h264 compatible binary, we would have to

  1. link with openh264 headers dynamically.
  2. download the openh264 binaries from cisco in a post-install script as detailed in Cisco's FAQ

Q: If I use the source code in my product, and then distribute that product on my own, will Cisco cover the MPEG LA licensing fees which I'd otherwise have to pay?
A: No. Cisco is only covering the licensing fees for its own binary module, and products or projects that utilize it must download it at the time the product or project is installed on the user's computer or device. Cisco will not be liable for any licensing fees incurred by other parties.

Clarification on `--disable-videotoolbox` for OSX builds

Comment:

With Qt 6.7, the default supported backed for Qt Multimedia has swapped to ffmpeg (https://doc.qt.io/qt-6/qtmultimedia-index.html#target-platform-and-backend-notes), so I was trying to get that working here: conda-forge/qt-main-feedstock#256, but I'm running into an issue with missing symbols in ffmpeg libraries referring to Video Toolbox (_av_map_videotoolbox_format_to_pixfmt), which is explicitly disabled for this feedstock (https://github.com/conda-forge/ffmpeg-feedstock/blame/main/recipe/build.sh#L92).

It looks like was added in #122, but I'm wondering if there's any reason to not flip it to --enable_toolbox, it looks like it was explicitly taken out here: ca8ee55, but I'm not sure why.

rebuild against openh264 1.8.*

ffmpeg 4.0.2 was built against openh264 1.7.*; installing openh264 1.8.* causes a downgrade to ffmpeg 3.4.1 because the latter doesn't depend on openh264. Can ffmpeg be rebuilt against openh264 1.8.*?

$ conda info ffmpeg=4.0.2=ha0c5888_1
ffmpeg 4.0.2 ha0c5888_1
-----------------------
file name   : ffmpeg-4.0.2-ha0c5888_1.tar.bz2
name        : ffmpeg
version     : 4.0.2
build string: ha0c5888_1
build number: 1
channel     : https://conda.anaconda.org/conda-forge/linux-64
size        : 62.0 MB
arch        : x86_64
constrains  : ()
license     : GPL 3
md5         : 4abe54e2abe2509496d87b12f48b9e7b
platform    : linux
subdir      : linux-64
timestamp   : 1538839683027
url         : https://conda.anaconda.org/conda-forge/linux-64/ffmpeg-4.0.2-ha0c5888_1.tar.bz2
dependencies:
    bzip2 >=1.0.6,<2.0a0
    freetype >=2.9.1,<3.0a0
    gnutls 3.5.*
    gnutls >=3.5.19,<3.6.0a0
    libgcc-ng >=4.9
    libiconv >=1.15,<1.16.0a0
    openh264 1.7.*
    x264 >=1!152.20180717,<1!153
    zlib >=1.2.11,<1.3.0a0

$ conda info ffmpeg=3.4.1=0
ffmpeg 3.4.1 0
--------------
file name   : ffmpeg-3.4.1-0.tar.bz2
name        : ffmpeg
version     : 3.4.1
build string: 0
build number: 0
channel     : https://conda.anaconda.org/conda-forge/linux-64
size        : 61.1 MB
arch        : x86_64
constrains  : ()
license     : GPL 2
md5         : bb7c76e3cf1903fc79bc9a4b18a081a8
platform    : linux
subdir      : linux-64
url         : https://conda.anaconda.org/conda-forge/linux-64/ffmpeg-3.4.1-0.tar.bz2
dependencies:
    bzip2 1.0.*
    libiconv 1.15
    x264
    zlib 1.2.11

Malformed .pc files on Windows

Solution to issue cannot be found in the documentation.

  • I checked the documentation.

Issue

First of all, thanks a lot @hmaarrfk for the great work done in packaging the latest versions of ffmpeg!

I think I found a small problems in the Windows builds as part of the ffmpeg4 migration (in conda-forge/gazebo-feedstock#141). Basically, ffmpeg 4.3 builds such as ffmpeg-4.3.1-ha925a31_0.tar.bz2 did not ship any .pc file, while ffmpeg-4.4.2-gpl_hc2492c1_104.tar.bz2 ship some .pc file like the following one:

prefix=/d/bld/ffmpeg_1657581410355/_h_env/Library
exec_prefix=${prefix}
libdir=/d/bld/ffmpeg_1657581410355/_h_env/Library/lib
includedir=/d/bld/ffmpeg_1657581410355/_h_env/Library/include

Name: libavformat
Description: FFmpeg container format library
Version: 58.76.100
Requires: 
Requires.private: libavcodec >= 58.134.100, libswresample >= 3.9.100, libavutil >= 56.70.100
Conflicts:
Libs: -L${libdir}  -lavformat 
Libs.private: -libpath:D:/bld/ffmpeg_1657581410355/_h_env/Library/lib xml2.lib iconv.lib zlib.lib bz2.lib -libpath:D:/bld/ffmpeg_1657581410355/_build_env/Library/lib zlib.lib secur32.lib ws2_32.lib
Cflags: -I${includedir}

Even if .pc files are generated and used on Windows, the UNIX syntax of -L and -l should be used, that is then converted in the syntax understood by MSVC with the --msvc-syntax flag (see https://gitlab.freedesktop.org/pkg-config/pkg-config/-/blob/pkg-config-0.29.2/README.win32 for more details from upstram). The use of -libpath flags means that -libpath:D:/bld/ffmpeg_1657581410355/_h_env/Library/lib gets interpreted as the request of linking of the ibpath:D:/bld/ffmpeg_1657581410355/_h_env/Library/lib.lib library, as one can see by running:

(ffmpeg) C:\Users\STraversaro>pkg-config --msvc-syntax --libs libavformat
/libpath:C:/Users/STraversaro/AppData/Local/mambaforge/envs/ffmpeg/Library/lib avformat.lib ibpath:C:/Users/STraversaro/AppData/Local/mambaforge/envs/ffmpeg/Library/lib.lib xml2.lib iconv.lib zlib.lib bz2.lib ibpath:D:/bld/ffmpeg_1657581410355/_build_env/Library/lib.lib zlib.lib secur32.lib ws2_32.lib avcodec.lib iconv.lib ibpath:D:/bld/ffmpeg_1657581410355/_build_env/Library/lib.lib zlib.lib ibpath:C:/Users/STraversaro/AppData/Local/mambaforge/envs/ffmpeg/Library/lib.lib aom.lib ibpath:C:/Users/STraversaro/AppData/Local/mambaforge/envs/ffmpeg/Library/lib.lib SvtAv1Enc.lib ibpath:C:/Users/STraversaro/AppData/Local/mambaforge/envs/ffmpeg/Library/lib.lib libx264.lib ibpath:C:/Users/STraversaro/AppData/Local/mambaforge/envs/ffmpeg/Library/lib.lib x265.lib ibpath:C:/Users/STraversaro/AppData/Local/mambaforge/envs/ffmpeg/Library/lib.lib openh264.lib mfplat.lib mfuuid.lib ole32.lib strmiids.lib ole32.lib user32.lib swresample.lib avutil.lib user32.lib bcrypt.lib

The basic fix is to change any occurence of -libpath: in .pc files to -L. As minor related issue, I also noticed that it seems that for what regards zlib.lib the build directory (instead of the host one) is used.

Installed packages

(ffmpeg) C:\Users\STraversaro>conda list
# packages in environment at C:\Users\STraversaro\AppData\Local\mambaforge\envs\ffmpeg:
#
# Name                    Version                   Build  Channel
aom                       3.4.0                h0e60522_1    conda-forge
bzip2                     1.0.8                h8ffe710_4    conda-forge
expat                     2.4.8                h39d44d4_0    conda-forge
ffmpeg                    4.4.2           gpl_hc2492c1_104    conda-forge
font-ttf-dejavu-sans-mono 2.37                 hab24e00_0    conda-forge
font-ttf-inconsolata      3.000                h77eed37_0    conda-forge
font-ttf-source-code-pro  2.038                h77eed37_0    conda-forge
font-ttf-ubuntu           0.83                 hab24e00_0    conda-forge
fontconfig                2.14.0               hce3cb01_0    conda-forge
fonts-conda-ecosystem     1                             0    conda-forge
fonts-conda-forge         1                             0    conda-forge
freetype                  2.10.4               h546665d_1    conda-forge
gettext                   0.19.8.1          ha2e2712_1008    conda-forge
libffi                    3.4.2                h8ffe710_5    conda-forge
libglib                   2.72.1               h3be07f2_0    conda-forge
libiconv                  1.16                 he774522_0    conda-forge
libpng                    1.6.37               h1d00b33_3    conda-forge
libxml2                   2.9.14               hf5bbc77_3    conda-forge
libzlib                   1.2.12               h8ffe710_1    conda-forge
openh264                  2.2.0                h0e60522_1    conda-forge
pcre                      8.45                 h0e60522_0    conda-forge
pkg-config                0.29.2            h2bf4dc2_1008    conda-forge
svt-av1                   1.1.0                h0e60522_1    conda-forge
ucrt                      10.0.20348.0         h57928b3_0    conda-forge
vc                        14.2                 hb210afc_6    conda-forge
vs2015_runtime            14.29.30037          h902a5da_6    conda-forge
x264                      1!161.3030           h8ffe710_1    conda-forge
x265                      3.5                  h2d74725_3    conda-forge
zlib                      1.2.12               h8ffe710_1    conda-forge

Environment info

(ffmpeg) C:\Users\STraversaro>conda info

     active environment : ffmpeg
    active env location : C:\Users\STraversaro\AppData\Local\mambaforge\envs\ffmpeg
            shell level : 1
       user config file : C:\Users\STraversaro\.condarc
 populated config files : C:\Users\STraversaro\AppData\Local\mambaforge\.condarc
                          C:\Users\STraversaro\.condarc
          conda version : 4.12.0
    conda-build version : not installed
         python version : 3.9.13.final.0
       virtual packages : __cuda=11.6=0
                          __win=0=0
                          __archspec=1=x86_64
       base environment : C:\Users\STraversaro\AppData\Local\mambaforge  (writable)
      conda av data dir : C:\Users\STraversaro\AppData\Local\mambaforge\etc\conda
  conda av metadata url : None
           channel URLs : https://conda.anaconda.org/conda-forge/win-64
                          https://conda.anaconda.org/conda-forge/noarch
          package cache : C:\Users\STraversaro\AppData\Local\mambaforge\pkgs
                          C:\Users\STraversaro\.conda\pkgs
                          C:\Users\STraversaro\AppData\Local\conda\conda\pkgs
       envs directories : C:\Users\STraversaro\AppData\Local\mambaforge\envs
                          C:\Users\STraversaro\.conda\envs
                          C:\Users\STraversaro\AppData\Local\conda\conda\envs
               platform : win-64
             user-agent : conda/4.12.0 requests/2.27.1 CPython/3.9.13 Windows/10 Windows/10.0.22000
          administrator : False
             netrc file : None
           offline mode : False

Add freetype

This is another requirement of FFmpeg, which would be nice to include.

CircleCI build failure

Well, this is special. Seems CircleCI has started failing on us. Not sure why. Would be good if someone who has some time could take a closer look.

ffmpeg is compiled without zlib support

RuntimeError: bob::io::video::avformat_open_input(filename=`/movie.mov') failed: ffmpeg reported -38 == `Function not implemented'

I think some functionality is missing here. Our code is working with ffmpeg 2.6.8 but not with the newer ffmpeg here.
ffmpeg from debian:

/usr/bin/ffmpeg
ffmpeg version 2.6.8 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 4.9.2 (Debian 4.9.2-10)
  configuration: --prefix=/usr --extra-cflags='-g -O2 -fstack-protector-strong -Wformat -Werror=format-security ' --extra-ldflags='-Wl,-z,relro' --cc='ccache cc' --enable-shared --enable-libmp3lame --enable-gpl --enable-nonfree --enable-libvorbis --enable-pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-x11grab --enable-libgsm --enable-libtheora --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-libspeex --enable-nonfree --disable-stripping --enable-libvpx --enable-libschroedinger --disable-encoder=libschroedinger --enable-version3 --enable-libopenjpeg --enable-librtmp --enable-avfilter --enable-libfreetype --enable-libvo-aacenc --disable-decoder=amrnb --enable-libvo-amrwbenc --enable-libaacplus --libdir=/usr/lib/x86_64-linux-gnu --disable-vda --enable-libbluray --enable-libcdio --enable-gnutls --enable-frei0r --enable-openssl --enable-libass --enable-libopus --enable-fontconfig --enable-libpulse --disable-mips32r2 --disable-mipsdspr1 --disable-mipsdspr2 --enable-libvidstab --enable-libzvbi --enable-avresample --disable-htmlpages --disable-podpages --enable-libutvideo --enable-libfdk-aac --enable-libx265 --enable-libiec61883 --enable-vaapi --enable-libdc1394 --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
  libavutil      54. 20.100 / 54. 20.100
  libavcodec     56. 26.100 / 56. 26.100
  libavformat    56. 25.101 / 56. 25.101
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 11.102 /  5. 11.102
  libavresample   2.  1.  0 /  2.  1.  0
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  3.100 / 53.  3.100
Hyper fast Audio and Video encoder

I think we are missing a lot --enable options here.

is the Relink libpng16.so.16 normal?

Issue: I noticed this weird message in the top of ffmpeg -version. Is that normal?

ffmpeg: Relink /mnt/ssdscratch/escorciav/install/bin/miniconda3/envs/video-utils-tools-2/bin/../lib/././libpng16.so.16' with /lib64/libpthread.so.0' for IFUNC symbol `longjmp'

$ ffmpeg -version
ffmpeg: Relink `/mnt/ssdscratch/escorciav/install/bin/miniconda3/envs/video-utils-tools-2/bin/../lib/././libpng16.so.16' with `/lib64/libpthread.so.0' for IFUNC symbol `longjmp'
ffmpeg version 4.0.2 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 4.8.2 (GCC) 20140120 (Red Hat 4.8.2-15)
configuration: --prefix=/home/escorciav/install/bin/miniconda3/envs/video-utils-tools-2 --disable-doc --disable-openssl --enable-shared --enable-static --extra-cflags='-Wall -g -m64 -pipe -O3 -march=x86-64 -fPIC' --extra-cxxflags='-Wall -g -m64 -pipe -O3 -march=x86-64 -fPIC' --extra-libs='-lpthread -lm -lz' --enable-zlib --enable-pic --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --enable-libfreetype --enable-gnutls --enable-libx264 --enable-libopenh264
libavutil      56. 14.100 / 56. 14.100
libavcodec     58. 18.100 / 58. 18.100
libavformat    58. 12.100 / 58. 12.100
libavdevice    58.  3.100 / 58.  3.100
libavfilter     7. 16.100 /  7. 16.100
libavresample   4.  0.  0 /  4.  0.  0
libswscale      5.  1.100 /  5.  1.100
libswresample   3.  1.100 /  3.  1.100
libpostproc    55.  1.100 / 55.  1.100

Environment (conda list):
$ conda list
# packages in environment at /home/escorciav/install/bin/miniconda3/envs/video-utils-tools-2:
#
# Name                    Version                   Build  Channel
blas                      1.0                         mkl  
bzip2                     1.0.6                h470a237_2    conda-forge
ca-certificates           2018.03.07                    0  
certifi                   2018.8.24                py36_1  
ffmpeg                    4.0.2                ha6a6e2b_0    conda-forge
freetype                  2.8.1                hfa320df_1    conda-forge
gmp                       6.1.2                hfc679d8_0    conda-forge
gnutls                    3.5.19               h2a4e5f8_1    conda-forge
intel-openmp              2019.0                      118  
joblib                    0.12.3                   py36_0  
libedit                   3.1.20170329         h6b74fdf_2  
libffi                    3.2.1                hd88cf55_4  
libgcc-ng                 8.2.0                hdf63c60_1  
libgfortran-ng            7.3.0                hdf63c60_0  
libiconv                  1.15                 h470a237_3    conda-forge
libpng                    1.6.35               ha92aebf_2    conda-forge
libstdcxx-ng              8.2.0                hdf63c60_1  
mkl                       2019.0                      118  
mkl_fft                   1.0.4            py36h4414c95_1  
mkl_random                1.0.1            py36h4414c95_1  
ncurses                   6.1                  hf484d3e_0  
nettle                    3.3                           0    conda-forge
numpy                     1.15.1           py36h1d66e8a_0  
numpy-base                1.15.1           py36h81de0dd_0  
openh264                  1.7.0                         0    conda-forge
openssl                   1.0.2p               h14c3975_0  
pandas                    0.23.4           py36h04863e7_0  
pip                       10.0.1                   py36_0  
python                    3.6.6                hc3d631a_0  
python-dateutil           2.7.3                    py36_0  
pytz                      2018.5                   py36_0  
readline                  7.0                  h7b6447c_5  
setuptools                40.2.0                   py36_0  
six                       1.11.0                   py36_1  
sqlite                    3.24.0               h84994c4_0  
tk                        8.6.8                hbc83047_0  
wheel                     0.31.1                   py36_0  
x264                      1!152.20180717       h470a237_1    conda-forge
xz                        5.2.4                h14c3975_4  
zlib                      1.2.11               ha838bed_2

Details about conda and system ( conda info ):
$ conda info
     active environment : video-utils-tools-2
    active env location : /home/escorciav/install/bin/miniconda3/envs/video-utils-tools-2
            shell level : 2
       user config file : /home/escorciav/.condarc
 populated config files : 
          conda version : 4.5.2
    conda-build version : not installed
         python version : 3.6.3.final.0
       base environment : /home/escorciav/install/bin/miniconda3  (writable)
           channel URLs : https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/free/linux-64
                          https://repo.anaconda.com/pkgs/free/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/pro/linux-64
                          https://repo.anaconda.com/pkgs/pro/noarch
          package cache : /home/escorciav/install/bin/miniconda3/pkgs
                          /home/escorciav/.conda/pkgs
       envs directories : /home/escorciav/install/bin/miniconda3/envs
                          /home/escorciav/.conda/envs
               platform : linux-64
             user-agent : conda/4.5.2 requests/2.18.4 CPython/3.6.3 Linux/4.13.10-200.fc26.x86_64 fedora/26 glibc/2.25
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.