Author Topic: Testing ffmpeg4x  (Read 1364 times)

Jan Gruuthuse

  • Hero Member
  • *****
  • Posts: 6060
Testing ffmpeg4x
« on: July 21, 2018, 06:39:51 AM »
From https://github.com/mean00/avidemux2
 * [new branch]      ffmpeg4x   -> origin/ffmpeg4x
Already up-to-date.

Has this become live? Just did pull git.

This branch is 14 commits ahead of master.
Or is this in progress to become master, and should I wait until Master = ffmpeg4x . Lost it for now

My build shows:
Code: [Select]
Avidemux v2.7.1 (180721_34fdf5673e4) and does match Master branch 34fdf5673e4?


« Last Edit: July 21, 2018, 08:52:32 AM by Jan Gruuthuse »

eumagga0x2a

  • Moderator
  • Hero Member
  • *****
  • Posts: 2807
Re: [new branch] ffmpeg4x
« Reply #1 on: July 21, 2018, 07:43:40 AM »
The ffmpeg4x branch includes my recent work on migrating Avidemux to FFmpeg 4.0.x just to prevent that it gets lost if my computer suffers a HDD crash or such. It should compile and most features should work (now including sound and VDPAU hw accel), but as of now, many project scripts generated with the current git master or releases would be incompatible due to changes in FFmpeg structures.

The purpose of the branch is to keep these changes off master for a while. It might be merged into master at a later point.

If you have a computer with Intel graphics (no NVIDIA graphics card) running Linux, you could help by providing feedback whether the libVA hw accel still works with the ffmpeg4x branch.

Jan Gruuthuse

  • Hero Member
  • *****
  • Posts: 6060
Re: Testing ffmpeg4x
« Reply #2 on: July 21, 2018, 08:59:19 AM »
on Ubuntu amd-64 18.04 LTS when
Code: [Select]
git checkout ffmpeg4x
Code: [Select]
git branch
Quote
* ffmpeg4x
---------

started build ends:

Code: [Select]
-- Configuring FFmpeg
CMake Error at ~/avidemux2/cmake/admFFmpegBuild_helpers.cmake:274 (MESSAGE):
  configure returned <1>
Call Stack (most recent call first):
  ~/avidemux2/cmake/admFFmpegBuild_native.cmake:54 (ADM_FF_BUILD_UNIX_STYLE)
  ~/avidemux2/cmake/admFFmpegBuild.cmake:16 (include)
  CMakeLists.txt:96 (include)


CMake Error at ~/avidemux2/cmake/admFFmpegBuild_helpers.cmake:275 (MESSAGE):
  configure output is <ERROR: nvenc requested, but not all dependencies are
  satisfied: ffnvcodec

 

  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

  ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.

  Include the log file "ffbuild/config.log" produced by configure as this
  will help

  solve the problem.

  >
Call Stack (most recent call first):
  ~/avidemux2/cmake/admFFmpegBuild_native.cmake:54 (ADM_FF_BUILD_UNIX_STYLE)
  ~/avidemux2/cmake/admFFmpegBuild.cmake:16 (include)
  CMakeLists.txt:96 (include)


CMake Error at ~/avidemux2/cmake/admFFmpegBuild_helpers.cmake:276 (MESSAGE):
  An error occured
Call Stack (most recent call first):
  ~/avidemux2/cmake/admFFmpegBuild_native.cmake:54 (ADM_FF_BUILD_UNIX_STYLE)
  ~/avidemux2/cmake/admFFmpegBuild.cmake:16 (include)
  CMakeLists.txt:96 (include)


-- Configuring incomplete, errors occurred!
See also "~/avidemux2/buildCore/CMakeFiles/CMakeOutput.log".
See also "~/avidemux2/buildCore/CMakeFiles/CMakeError.log".
** Failed at cmakeZ**
« Last Edit: July 22, 2018, 06:11:34 AM by Jan Gruuthuse »

Jan Gruuthuse

  • Hero Member
  • *****
  • Posts: 6060
Re: Testing ffmpeg4x
« Reply #3 on: July 21, 2018, 09:10:32 AM »
Code: [Select]
dpkg -l nvidia*-dev
Quote
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                               Version                Architecture           Description
+++-==================================-======================-======================
ii  nvidia-cuda-dev                    9.1.85-3ubuntu1        amd64                  NVIDIA CUDA development files
un  nvidia-libopencl1-dev              <none>                 <none>                 (no description available)
ii  nvidia-opencl-dev:amd64            9.1.85-3ubuntu1        amd64                  NVIDIA OpenCL development files

eumagga0x2a

  • Moderator
  • Hero Member
  • *****
  • Posts: 2807
Re: Testing ffmpeg4x
« Reply #4 on: July 21, 2018, 09:14:09 AM »
FFmpeg 4.x requires nv-codec-headers for NVENC to be available. These are as it seems not yet "officially" (by Canonical or from the universe repo) packaged for Ubuntu. There are PPAs for that (this one for 18.04) or just install from git.
« Last Edit: July 21, 2018, 09:18:48 AM by eumagga0x2a »

Jan Gruuthuse

  • Hero Member
  • *****
  • Posts: 6060
Re: Testing ffmpeg4x
« Reply #5 on: July 21, 2018, 09:33:36 AM »
Would this work with internal FFmpeg (avidemux)?
Quote
At the moment these headers must be installed as well as FFmpeg from git to get access to nvenc and friends.

eumagga0x2a

  • Moderator
  • Hero Member
  • *****
  • Posts: 2807
Re: Testing ffmpeg4x
« Reply #6 on: July 21, 2018, 09:55:54 AM »
It needs only the headers.

Jan Gruuthuse

  • Hero Member
  • *****
  • Posts: 6060
Re: Testing ffmpeg4x
« Reply #7 on: July 21, 2018, 11:33:27 AM »
OK, will look at this next days, time permitting.

Jan Gruuthuse

  • Hero Member
  • *****
  • Posts: 6060
Re: Testing ffmpeg4x
« Reply #8 on: July 22, 2018, 09:35:30 AM »
~/nv-codec-headers$
Code: [Select]
make
Quote
sed 's#@@PREFIX@@#/usr/local#' ffnvcodec.pc.in > ffnvcodec.pc
Code: [Select]
sudo make install
Quote
sed 's#@@PREFIX@@#/usr/local#' ffnvcodec.pc.in > ffnvcodec.pc
install -m 0755 -d '/usr/local/include/ffnvcodec'
install -m 0644 include/ffnvcodec/*.h '/usr/local/include/ffnvcodec'
install -m 0755 -d '/usr/local/lib/pkgconfig'
install -m 0644 ffnvcodec.pc '/usr/local/lib/pkgconfig'

~/avidemux2$
Code: [Select]
git branch
Quote
* ffmpeg4x
  master
Code: [Select]
bash bootStrap.bash --deb
Quote
-- Build files have been written to: ~/avidemux2/buildCore
** Failed at make, result in /tmp/logbuildCore**

Quote
make[2]: *** No rule to make target 'ffmpeg/build/libpostproc', needed by 'CMakeFiles/libpostproc'.  Stop.
make[2]: Leaving directory '~/avidemux2/buildCore'
CMakeFiles/Makefile2:203: recipe for target 'CMakeFiles/libpostproc.dir/all' failed
make[1]: *** [CMakeFiles/libpostproc.dir/all] Error 2

eumagga0x2a

  • Moderator
  • Hero Member
  • *****
  • Posts: 2807
Re: Testing ffmpeg4x
« Reply #9 on: July 22, 2018, 11:46:18 AM »
I would need the full /tmp/logbuildCore, the excerpt you've posted doesn't contain the actual error.

Jan Gruuthuse

  • Hero Member
  • *****
  • Posts: 6060
Re: Testing ffmpeg4x
« Reply #10 on: July 22, 2018, 12:00:51 PM »
forwarded

eumagga0x2a

  • Moderator
  • Hero Member
  • *****
  • Posts: 2807
Re: Testing ffmpeg4x
« Reply #11 on: July 22, 2018, 12:24:22 PM »
Thank you. No idea ATM what is going wrong, will investigate later. Builds fine on Fedora 28.

Jan Gruuthuse

  • Hero Member
  • *****
  • Posts: 6060
Re: Testing ffmpeg4x
« Reply #12 on: July 22, 2018, 03:58:03 PM »
Quote
FFmpeg version of headers required to interface with Nvidias codec APIs.

Corresponds to Video Codec SDK version 8.1.24.

Minimum required driver versions:
Linux: 390.25 or newer
Windows: 390.77 or newer
installed from https://git.videolan.org/git/ffmpeg/nv-codec-headers.git

Jan Gruuthuse

  • Hero Member
  • *****
  • Posts: 6060
Re: Testing ffmpeg4x
« Reply #13 on: July 22, 2018, 04:09:32 PM »
Code: [Select]
ffmpeg -encoders 2>/dev/null | grep nvenc
Quote
V..... h264_nvenc           NVIDIA NVENC H.264 encoder (codec h264)
 V..... nvenc                NVIDIA NVENC H.264 encoder (codec h264)
 V..... nvenc_h264           NVIDIA NVENC H.264 encoder (codec h264)
 V..... nvenc_hevc           NVIDIA NVENC hevc encoder (codec hevc)
 V..... hevc_nvenc           NVIDIA NVENC hevc encoder (codec hevc)

eumagga0x2a

  • Moderator
  • Hero Member
  • *****
  • Posts: 2807
Re: Testing ffmpeg4x
« Reply #14 on: July 22, 2018, 07:44:42 PM »
First of all, we won't find the NVENC header in /usr/local/include where it is installed by the Makefile in nv-codec-headers by default, please apply the attached patch.