Avidemux Forum

Participate => Avidemux Wiki => Topic started by: Jan Gruuthuse on April 22, 2016, 03:33:06 PM

Title: avidemux 2.6.# Compiling Avidemux on Ubuntu 16.04.1 LTS
Post by: Jan Gruuthuse on April 22, 2016, 03:33:06 PM
This is an extension to the Avidemux Wiki: Requirement list (debian/ubuntu) (http://www.avidemux.org/admWiki/doku.php?id=build:install_2.6#requirement_list_debian_ubuntu)

Fast recompilation of C/C++ code:
Code: [Select]
sudo apt-get install ccache
For Qt 5
Code: [Select]
sudo apt-get install libqt5opengl5-dev qttools5-dev-tools qtbase5-devlibqt5script5 qtscript5-dev


For common plugins:
Code: [Select]
sudo apt-get install libaften-dev libfaac-dev libfaad-dev libmp3lame-dev libx264-dev x264
Additional (not mentioned in Wiki):
Code: [Select]
sudo apt-get install libasound2-dev libdca-dev libfontconfig1-dev libfribidi-dev libmad0-dev libogg-dev libopencore-amrnb-dev libopencore-amrwb-dev libopus-dev libpulse-dev libtwolame-dev libva-dev vainfo libvdpau-dev vdpauinfo libvorbis-dev libvpx-dev libx265-dev x265 libxv-dev libxvidcore-dev libzip-dev nvidia-cuda-toolkit
nvenc
====
use either option A) or B)
-----
A)
nvEncodeAPI.h can be obtained e.g. from https://raw.githubusercontent.com/FFmpeg/FFmpeg/master/compat/nvenc/nvEncodeAPI.h). SDL is not needed.
-----
B) download from Video Codec SDK Archive (https://developer.nvidia.com/video-codec-sdk-archive): Video Codec SDK 6.0 (601)
updated:20160919: [nvenc] Re-enable nvenc. You *need* SDK v6.0 for it to work, not 5 nor 7 (https://github.com/mean00/avidemux2/commit/69b5efcdcf9ef0f5b754869cd347bfb96755d7ff)

was SDK Updated (NVENC SDK 6.0): https://developer.nvidia.com/nvidia-video-codec-sdk
The latest NVIDIA Video Codec SDK version available is 6.0, which requires NVIDIA GPU driver R358 or above for Windows and R358 or above for Linux.
Unpack
/nvidia_video_sdk_6.0.1/Samples/common/inc/nvEncodeAPI.h
-----

Copy nvEncodeAPI.h as root  into /usr/include/x86_64-linux-gnu

=-=-=-=-=-=
# Getting source from github
# installing git fast, scalable, distributed revision control system
Code: [Select]
sudo apt-get update && sudo apt-get install git# get source
Code: [Select]
git clone https://github.com/mean00/avidemux2.git
update & build:
----------------
# check for update:
Code: [Select]
cd ~/avidemux2 && git pull# Build avidemux debs for QT5:
Code: [Select]
cd ~/avidemux2 && bash bootStrap.bash --deb
install the build:
-----------------
If you don't want the development packages installed, remove these 1st:
Code: [Select]
cd ~/avidemux2/debs && rm --interactive=never *-dev.debthen install
Code: [Select]
cd ~/avidemux2/debs && sudo dpkg -i *.deb
Title: Library Info & Tools
Post by: Jan Gruuthuse on April 22, 2016, 03:53:11 PM
wiki:
build-essential:       Informational list of build-essential packages
cmake:                 cross-platform, open-source make system
fakeroot:              tool for simulating superuser privileges
g++:                   GNU C++ compiler
gcc:                   GNU C compiler
libaften-dev:          audio AC3 encoder - development files
libfaac-dev:           AAC audio encoder (development)
libfaad-dev:           freeware Advanced Audio Decoder - development files
libmp3lame-dev:        MP3 encoding library (development)
libpng12-dev:          PNG library - development
libsqlite3-dev:        SQLite 3 development files
libqt5opengl5-dev:     Qt 5 OpenGL library development files
libx264-dev:           development files for libx264
make:                  An utility for Directing compilation.
pkg-config:            manage compile and link flags for libraries
qtbase5-dev:           Qt 5 base development files
qttools5-dev-tools:    Qt 5 development tools
yasm:                  modular assembler with multiple syntaxes support


common plugins:
x264:                  video encoder for the H.264/MPEG-4 AVC standard

Additional: (not mentioned in Wiki):
libasound2-dev:        shared library for ALSA applications -- development files
libass-dev:            development files for libass
libfdk-aac-dev:        Fraunhofer FDK AAC Codec Library - development files
libdca-dev:            decoding library for DTS Coherent Acoustics streams (development)
libfontconfig1-dev:    generic font configuration library - development
libfribidi-dev:        Development files for FreeBidi library (Hebrew and/or Arabic languages)
libmad0-dev:           MPEG audio decoder development library
libogg-dev:            Ogg bitstream library development files
libopencore-amrnb-dev: Adaptive Multi Rate speech codec - development files
libopencore-amrwb-dev: Adaptive Multi-Rate - Wideband speech codec - development files
libopus-dev:           Opus codec library development files
libpulse-dev:          PulseAudio client development headers and libraries
libsamplerate0-dev:    Development files for audio sample rate conversion
libtwolame-dev:        MPEG Audio Layer 2 encoder (development files)
libva-dev:             Video Acceleration (VA) API for Linux -- development files
libvdpau-dev:          Video Decode and Presentation API for Unix (development files)
libvorbis-dev:         The Vorbis General Audio Compression Codec (development files)
libvpx-dev:            VP8 and VP9 video codec (development files)
libx265-dev:           H.265/HEVC video stream encoder (development files)
libxv-dev:             X11 Video extension library (development headers)
libxvidcore-dev:       Open source MPEG-4 video codec (development)
libzip-dev:            library for reading, creating, and modifying zip archives (development)
nvidia-cuda-toolkit:   NVIDIA CUDA toolkit (NVIDIA graphics processing units (GPUs)
qtscript5-dev:         Qt 5 script development files
vainfo:                Video Acceleration (VA) API for Linux -- info program
vdpauinfo:             Video Decode and Presentation API for Unix (vdpauinfo utility)
x265:                  H.265/HEVC video stream encoder
Title: update: avidemux 2.6.# Compiling Avidemux on Ubuntu 16.04.1 LTS
Post by: Jan Gruuthuse on February 22, 2017, 07:10:18 AM
2017/02/22 1st posting
+: libqt5opengl5-dev
-: qtscript5-dev
2017/08/07
+: libass-dev
+: libfdk-aac-dev
+: libsamplerate0-dev
Title: Re: avidemux 2.6.# Compiling Avidemux on Ubuntu 16.04.1 LTS
Post by: eumagga0x2a on February 22, 2017, 07:25:32 AM
qtscript5-dev is not used anymore.
Title: 2017/03/23 on Ubuntu 16.04.2 LTS
Post by: Jan Gruuthuse on March 23, 2017, 06:36:22 AM
Code: [Select]
dpkg -l build-essential cmake fakeroot g++ gcc libaften-dev libfaac-dev libfaad-dev libmp3lame-dev libpng12-dev libsqlite3-dev libqt5opengl5-dev libx264-dev make pkg-config qtbase5-dev qttools5-dev-tools yasm libasound2-dev x264 libdca-dev libfontconfig1-dev libfribidi-dev libmad0-dev libogg-dev libopencore-amrnb-dev libopencore-amrwb-dev libopus-dev libpulse-dev libtwolame-dev libva-dev libvdpau-dev libvorbis-dev libvpx-dev libx265-dev libxv-dev libxvidcore-dev libzip-dev nvidia-cuda-toolkit vainfo vdpauinfo x265 | grep '^.i'
Code: [Select]
ii  build-essential             12.1ubuntu2                amd64        Informational list of build-essential packages
ii  cmake                       3.5.1-1ubuntu3             amd64        cross-platform, open-source make system
ii  fakeroot                    1.20.2-1ubuntu1            amd64        tool for simulating superuser privileges
ii  g++                         4:5.3.1-1ubuntu1           amd64        GNU C++ compiler
ii  gcc                         4:5.3.1-1ubuntu1           amd64        GNU C compiler
ii  libaften-dev                0.0.8+git20100105-0ubuntu2 amd64        audio AC3 encoder - development files
ii  libasound2-dev:amd64        1.1.0-0ubuntu1             amd64        shared library for ALSA applications -- development files
ii  libdca-dev:amd64            0.0.5-7build1              amd64        decoding library for DTS Coherent Acoustics streams (development)
ii  libfaac-dev:amd64           1.28+cvs20151130-1         amd64        AAC audio encoder (development)
ii  libfaad-dev:amd64           2.8.0~cvs20150510-1        amd64        freeware Advanced Audio Decoder - development files
ii  libfontconfig1-dev:amd64    2.11.94-0ubuntu1.1         amd64        generic font configuration library - development
ii  libfribidi-dev              0.19.7-1                   amd64        Development files for FreeBidi library
ii  libmad0-dev                 0.15.1b-8ubuntu1           amd64        MPEG audio decoder development library
ii  libmp3lame-dev:amd64        3.99.5+repack1-9build1     amd64        MP3 encoding library (development)
ii  libogg-dev:amd64            1.3.2-1                    amd64        Ogg bitstream library development files
ii  libopencore-amrnb-dev:amd64 0.1.3-2.1                  amd64        Adaptive Multi Rate speech codec - development files
ii  libopencore-amrwb-dev:amd64 0.1.3-2.1                  amd64        Adaptive Multi-Rate - Wideband speech codec - development files
ii  libopus-dev:amd64           1.1.2-1ubuntu1             amd64        Opus codec library development files
ii  libpng12-dev:amd64          1.2.54-1ubuntu1            amd64        PNG library - development
ii  libpulse-dev:amd64          1:8.0-0ubuntu3.2           amd64        PulseAudio client development headers and libraries
ii  libqt5opengl5-dev:amd64     5.5.1+dfsg-16ubuntu7.2     amd64        Qt 5 OpenGL library development files
ii  libsqlite3-dev:amd64        3.11.0-1ubuntu1            amd64        SQLite 3 development files
ii  libtwolame-dev:amd64        0.3.13-1.2                 amd64        MPEG Audio Layer 2 encoder (development files)
ii  libva-dev:amd64             1.7.0-1                    amd64        Video Acceleration (VA) API for Linux -- development files
ii  libvdpau-dev:amd64          1.1.1-3ubuntu1             amd64        Video Decode and Presentation API for Unix (development files)
ii  libvorbis-dev:amd64         1.3.5-3                    amd64        development files for Vorbis General Audio Compression Codec
ii  libvpx-dev:amd64            1.5.0-2ubuntu1             amd64        VP8 and VP9 video codec (development files)
ii  libx264-dev:amd64           2:0.148.2643+git5c65704-1  amd64        development files for libx264
ii  libx265-dev:amd64           1.9-3                      amd64        H.265/HEVC video stream encoder (development files)
ii  libxv-dev:amd64             2:1.0.10-1                 amd64        X11 Video extension library (development headers)
ii  libxvidcore-dev:amd64       2:1.3.4-1                  amd64        Open source MPEG-4 video codec (development)
ii  libzip-dev:amd64            1.0.1-0ubuntu1             amd64        library for reading, creating, and modifying zip archives (development)
ii  make                        4.1-6                      amd64        utility for directing compilation
ii  nvidia-cuda-toolkit         7.5.18-0ubuntu1            amd64        NVIDIA CUDA development toolkit
ii  pkg-config                  0.29.1-0ubuntu1            amd64        manage compile and link flags for libraries
ii  qtbase5-dev:amd64           5.5.1+dfsg-16ubuntu7.2     amd64        Qt 5 base development files
ii  qttools5-dev-tools          5.5.1-3build1              amd64        Qt 5 development tools
ii  vainfo                      1.7.0-1                    amd64        Video Acceleration (VA) API for Linux -- info program
ii  vdpauinfo                   1.0-1                      amd64        Video Decode and Presentation API for Unix (vdpauinfo utility)
ii  x264                        2:0.148.2643+git5c65704-1  amd64        video encoder for the H.264/MPEG-4 AVC standard
ii  x265                        1.9-3                      amd64        H.265/HEVC video stream encoder
ii  yasm                        1.3.0-2                    amd64        modular assembler with multiple syntaxes support
Title: libpng-dev
Post by: Jan Gruuthuse on May 01, 2017, 08:50:12 AM
2017/05/01
Code: [Select]
sudo apt-get install libpng-dev
Quote
Note, selecting 'libpng12-dev' instead of 'libpng-dev'

use libpng12-dev, do not install/update libpng16-dev: this breaks libfreetype6-dev libfontconfig1-dev
Title: Re: avidemux 2.6.# Compiling Avidemux on Ubuntu 16.04.1 LTS
Post by: eumagga0x2a on May 01, 2017, 11:22:30 AM
Please comment. Iibpng16-dev is an unofficial (universe) package in Xenial. Installing libpng-dev pulls in libpng12-dev on Xenial and libpng16-dev on later Ubuntu versions. The Ubuntu build script will install libpng-dev.
Title: LTS (Long Term Support)
Post by: Jan Gruuthuse on May 01, 2017, 11:50:27 AM
yes: Ubuntu 16.04.2 LTS = Xenial,

Quote
sudo apt-get install libpng-dev
Quote
Note, selecting 'libpng12-dev' instead of 'libpng-dev'

Quote
do not install/update libpng16-dev: this breaks libfreetype6-dev libfontconfig1-dev

18.04 LTS expected release = 2018-04
Title: Re: avidemux 2.6.# Compiling Avidemux on Ubuntu 16.04.1 LTS
Post by: eumagga0x2a on May 01, 2017, 04:24:13 PM
The point is, you won't have libpng16-dev on your 16.04.x system normally. The unofficial package libpng16-dev in turn is correctly marked as conflicting with libpng12-dev, thus resulting in removal of all packages depending on libpng-dev because only libpng12-dev provides "libpng-dev" on Xenial.
Title: Re: avidemux 2.6.# Compiling Avidemux on Ubuntu 16.04.1 LTS
Post by: PhilB on June 06, 2017, 01:56:21 AM
Is nvidia-cuda-toolki mandatory for compiling with Xubuntu 16.04 LTS ? It is a very big library.
Title: Re: avidemux 2.6.# Compiling Avidemux on Ubuntu 16.04.1 LTS
Post by: Jan Gruuthuse on June 06, 2017, 04:41:07 AM
Only if you have a supported nvidia gpu and want to use vdpau, I suppose.
Title: samplerate.h
Post by: Jan Gruuthuse on August 07, 2017, 07:25:54 AM
Checking for Secret Rabbit Code
-- *******************************
-- Could not find samplerate.h
-- Could not find Secret Rabbit Code
Code: [Select]
sudo apt install libsamplerate0-dev
Title: FDK_AAC
Post by: Jan Gruuthuse on August 07, 2017, 07:27:20 AM
-- Could not find fdk-aac/aacenc_lib.h
-- Could not find FDK_AAC
Code: [Select]
sudo apt install libfdk-aac-dev
Title: Ubuntu blank canvas
Post by: Jan Gruuthuse on December 04, 2017, 06:30:48 AM
Quote from: eumagga0x2a
Remove installed avidemux
Check installed avidemux
----------------------------------
Code: [Select]
dpkg -l "avidemux*"
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  avidemux3-cli-runtime          2.7.0-171130         amd64                Simple video editor,main program, command line version
ii  avidemux3-core-runtime         2.7.0-171130         amd64                Simple video editor,core libraries
ii  avidemux3-plugins-cli-plugins  2.7.0-171130         amd64                Simple video editor, plugins (CLI
ii  avidemux3-plugins-common-plugi 2.7.0-171130         amd64                Simple video editor, plugins (COMMON
ii  avidemux3-plugins-qt5-plugins  2.7.0-171130         amd64                Simple video editor, plugins (qt5
ii  avidemux3-qt5-runtime          2.7.0-171130         amd64                Simple video editor,main program qt4 version
ii  avidemux3-settings-settings    2.7.0-171130         amd64                Simple video editor, settings

----------------------------------
Remove stock & deb installed avidemux
Code: [Select]
sudo apt-get purge "avidemux*"
Quote
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'avidemux3-settings-settings' for glob 'avidemux*'
Note, selecting 'avidemux3-plugins-qt5-plugins' for glob 'avidemux*'
Note, selecting 'avidemux3-cli-runtime' for glob 'avidemux*'
Note, selecting 'avidemux3-core-runtime' for glob 'avidemux*'
Note, selecting 'avidemux3-plugins-common-plugins' for glob 'avidemux*'
Note, selecting 'avidemux' for glob 'avidemux*'
Note, selecting 'avidemux3-qt5-runtime' for glob 'avidemux*'
Note, selecting 'avidemux3-plugins-cli-plugins' for glob 'avidemux*'
Package 'avidemux' is not installed, so not removed
avidemux = stock
avidemux3 = deb

Blank installing avidemux, building from git
------------------------------------
with following instructions
Code: [Select]
sudo apt-get update
Code: [Select]
sudo apt-get install git
Code: [Select]
git clone https://github.com/mean00/avidemux2.git
Code: [Select]
cd avidemux2
Code: [Select]
bash createDebFromSourceUbuntu.bash