Due to the older version of tvheadend 4.2 in the SNAP system, I created another solution to install the tvheadend package version 4.3 on Ubuntu 23.10 from the mamarley/tvheadend-git repository
To do this you need:
1) getroot rights
2) Find outdated version23.04 packages and download from the Ubuntu repository into a separate clean folder
libswscale6_5.1.2-3ubuntu1_amd64.deb
libavutil57_5.1.2-3ubuntu1_amd64.deb
libavutil57_5.1.2-3ubuntu1_i386.deb
libcodec2-1.0_1.0.5-1ubuntu2_amd64.deb
libplacebo208_4.208.0-3_amd64.deb
libpostproc56_5.1.2-3ubuntu1_amd64.deb
Install packages:
# dpkg -i *
3) Find outdated version23.04 packages and download from the Ubuntu repository into a separate clean folder
libavcodec59_5.1.2-3ubuntu1_amd64.deb
libavfilter8_5.1.2-3ubuntu1_amd64.deb
libavformat59_5.1.2-3ubuntu1_amd64.deb
libswresample4_5.1.2-3ubuntu1_amd64.deb
libswresample4_5.1.2-3ubuntu1_i386.deb
Run commands to get files from packages:
# dpkg-deb -x libavcodec59_5.1.2-3ubuntu1_amd64.deb libavcodec59
# dpkg-deb -x libavfilter8_5.1.2-3ubuntu1_amd64.deb libavfilter8_5
# dpkg-deb -x libavformat59_5.1.2-3ubuntu1_amd64.deb libavformat59_5
# dpkg-deb -x libswresample4_5.1.2-3ubuntu1_amd64.deb libswresample4_5
# dpkg-deb -x libswresample4_5.1.2-3ubuntu1_i386.deb libswresample4_5_i386
4) In the /usr/local/lib/ directory, create subdirectories
tvheadend and
i386
/usr/local/lib/tvheadend
/usr/local/lib/tvheadend/i386
5) Go to the directories obtained by unzipping the packages in step 3) and perform the following steps:
a) copy the files to the directory -/usr/local/lib/tvheadend
libavcodec59/usr/lib/lib/x86_64-linux-gnu/
libavcodec.so.59*
libavcodec59/usr/lib/lib/x86_64-linux-gnu/ *libavcodec.so.59.37.100*
libavfilter8_5/usr/lib/x86_64-linux-gnu/ *@libavfilter.so.8*
libavfilter8_5/usr/lib/x86_64-linux-gnu/ *libavfilter.so.8.44.100*
libavformat59_5/usr/lib/x86_64-linux-gnu/ *@libavformat.so.59*
libavformat59_5/usr/lib/x86_64-linux-gnu/ *libavformat.so.59.27.100*
libswresample4_5/usr/lib/x86_64-linux-gnu/ *@libswresample.so.4*
libswresample4_5/usr/lib/x86_64-linux-gnu/ *libswresample.so.4.7.100*
b) copy the files to the directory - */usr/local/lib/tvheadend/i386*
libswresample4_5_i386/usr/lib/i386-linux-gnu/ *@libswresample.so.4*
libswresample4_5_i386/usr/lib/i386-linux-gnu/ *libswresample.so.4.7.100*
Thus, we installed the required libraries for the TVheadend package to work in the /usr/local/lib/tvheadend and /usr/local/lib/tvheadend/i386 folders.
*6)* To register libraries, you need to make changes to the LD configuration
Go to the /etc/ld.so.conf.d directory and create a tvheadend.conf file
*@# touch tvheadend.conf
Open the tvheadend.conf file with an editor and add the following lines:
/usr/local/lib/tvheadend
/usr/local/lib/tvheadend/i386
Save the tvheadend.conf file and run the command:
# /sbin/ldconfig
This way we will register all libraries in the /usr/local/lib/tvheadend directory
7) It is impossible to install the standard tvheadend package from the mamarley/tvheadend-git repository, because it requires the presence of outdated libavcodec59, libavfilter8, libavformat59, libswresample4 packages that conflict with the new libavcodec60, libavfilter9, libavformat60 packages. To do this, we need to download the tvheadend package, disassemble it, make changes to the dependency requirements and build it again:
Download package '
tvheadend ' from repository '
mamarley/tvheadend-git '
# wget https://ppa.launchpadcontent.net/mamarley/tvheadend-git/ubuntu/pool/main/t/tvheadend/tvheadend_4.3.0~pre+202307191953-0~built202307192056~gitc531383ca~ubuntu23.10.1_amd64.deb
Parse the package into the '
package ' directory
# dpkg-deb -x ./tvheadend_4.3.0~pre+202307191953-0~built202307192056~gitc531383ca~ubuntu23.10.1_amd64.deb package
Get the package configuration into the '
DEBIAN ' directory
# dpkg-deb --control tvheadend_4.3.0~pre+202307191953-0~built202307192056~gitc531383ca~ubuntu23.10.1_amd64.deb package/DEBIAN
Go to the
DEBIAN directory and open the '
control ' file with an editor
/package/DEBIAN/control
Make the following changes in the '
Depends ' line:
Instead of
libavcodec59 (>= 7:5.0) install
libavcodec60 (>= 7:6.0)
Instead of
libavfilter8 (>= 7:5.0) install
libavfilter9 (>= 7:6.0)
Instead oflibavformat59 (>= 7:5.0) installlibavformat60 (>= 7:6.0)
Save the control file and build a new package tvheadend_23_10.deb with the new installed dependencies:
# dpkg -b package tvheadend_23_10.deb
8) Install the new package tvheadend_23_10.deb
# dpkg -i tvheadend_23_10.deb
9) To ensure that when updating packages, your new tvheadend_23_10.deb package is not replaced with a faulty one from the repository, you need to open the Synaptic package editor and set the tvheadend package update block. You can also temporarily disconnect from the mamarley/tvheadend-git repository
10) To finally solve the problem, you need to wait until the error in SRC is fixed or fix it yourself by replacing ffmpeg 5.x with ffmpeg 6.x