[SCM] ffmpeg/master: Enable OCR using Tesseract in libavfilter-extra*

rbalint at users.alioth.debian.org rbalint at users.alioth.debian.org
Mon Sep 26 23:03:27 UTC 2016


The following commit has been merged in the master branch:
commit a12df59f2d88f52c06135bc76cb38e25ef523d60
Author: Balint Reczey <balint at balintreczey.hu>
Date:   Tue Sep 6 14:34:25 2016 +0200

    Enable OCR using Tesseract in libavfilter-extra*
    
    Closes: 822555

diff --git a/debian/control b/debian/control
index e7bf9d7..2841992 100644
--- a/debian/control
+++ b/debian/control
@@ -68,6 +68,8 @@ Build-Depends:
  libavc1394-dev [linux-any],
 # autodetected: indev 'jack'
  libjack-jackd2-dev,
+# missing dependency of libtesseract-dev #836849
+ libleptonica-dev,
 # autodetected for the tiff decoder
  liblzma-dev,
 # --enable-libmodplug
@@ -108,6 +110,8 @@ Build-Depends:
  libspeex-dev,
 # --enable-libssh
  libssh-gcrypt-dev,
+# --enable-libtesseract (used only in -extra flavor)
+ libtesseract-dev,
 # --enable-libtheora
  libtheora-dev,
 # --enable-libtwolame
@@ -370,13 +374,61 @@ Description: FFmpeg library containing media filters - runtime files
  .
  This package contains the runtime files.
 
+Package: libavfilter-extra6
+Architecture: any
+Section: libs
+Priority: extra
+Multi-Arch: same
+Conflicts: libavfilter6
+Provides: libavfilter-extra
+Pre-Depends:
+ ${misc:Pre-Depends}
+Depends:
+ ${shlibs:Depends},
+ ${misc:Depends}
+Description: FFmpeg library with extra media filters - runtime files
+ FFmpeg is the leading multimedia framework, able to decode, encode, transcode,
+ mux, demux, stream, filter and play pretty much anything that humans and
+ machines have created. It supports the most obscure ancient formats up to the
+ cutting edge.
+ .
+ This library provides a generic audio/video filtering framework containing
+ several filters, sources and sinks.
+ .
+ This package replaces the libavfilter6 package and contains the
+ following additional filters:
+ .
+  * Optical Character Recognition (uses Tesseract)
+ .
+ Because this package links against libraries that are licensed under
+ Apache License 2.0, the resulting binaries are distributed under the
+ GPL version 3 or later.
+
+Package: libavfilter-extra
+Architecture: all
+Section: metapackages
+Priority: extra
+Multi-Arch: foreign
+Depends:
+ libavfilter-extra6,
+ ${misc:Depends}
+Description: FFmpeg library with extra filters (metapackage)
+ FFmpeg is the leading multimedia framework, able to decode, encode, transcode,
+ mux, demux, stream, filter and play pretty much anything that humans and
+ machines have created. It supports the most obscure ancient formats up to the
+ cutting edge.
+ .
+ This metapackage depends on the latest version of the libavfilter variant
+ that offers additional filter support. Application packages can depend
+ on it if they require or suggest this variant in a robust manner.
+
 Package: libavfilter-dev
 Architecture: any
 Section: libdevel
 Multi-Arch: same
 Depends:
  libavcodec-dev (= ${binary:Version}),
- libavfilter6 (= ${binary:Version}),
+ libavfilter6 (= ${binary:Version}) | libavfilter-extra6 (= ${binary:Version}),
  libavformat-dev (= ${binary:Version}),
  libavresample-dev (= ${binary:Version}),
  libavutil-dev (= ${binary:Version}),
diff --git a/debian/libavfilter6.install b/debian/libavfilter-extra6.install
similarity index 100%
copy from debian/libavfilter6.install
copy to debian/libavfilter-extra6.install
diff --git a/debian/libavfilter6.install.powerpc b/debian/libavfilter-extra6.install.powerpc
similarity index 100%
copy from debian/libavfilter6.install.powerpc
copy to debian/libavfilter-extra6.install.powerpc
diff --git a/debian/libavcodec-extra57.lintian-overrides b/debian/libavfilter-extra6.lintian-overrides
similarity index 73%
copy from debian/libavcodec-extra57.lintian-overrides
copy to debian/libavfilter-extra6.lintian-overrides
index 57e7f1a..5e6db9b 100644
--- a/debian/libavcodec-extra57.lintian-overrides
+++ b/debian/libavfilter-extra6.lintian-overrides
@@ -3,7 +3,7 @@
 # performance penalty, especially on i386.
 # Therefore -fPIC is not used by the upstream build system on i386.
 # 1: https://www.debian.org/doc/debian-policy/footnotes.html#f83
-libavcodec-extra57 [i386]: shlib-with-non-pic-code usr/lib/i386*/libavcodec.so.*
+libavfilter-extra6 [i386]: shlib-with-non-pic-code usr/lib/i386*/libavfilter.so.*
 
 # This is intentional, because this package provides an alternative variant with the same soname.
-libavcodec-extra57: package-name-doesnt-match-sonames libavcodec*
+libavfilter-extra6: package-name-doesnt-match-sonames libavfilter*
diff --git a/debian/rules b/debian/rules
index edd7aee..064d47a 100755
--- a/debian/rules
+++ b/debian/rules
@@ -20,13 +20,12 @@ export DEB_LDFLAGS_MAINT_STRIP=-Wl,-Bsymbolic-functions
 export DEB_MAINT_BUILD_OPTIONS=hardening=+all,-pie
 
 # Package name for the extra flavor.
-EXTRA_PKG := $(shell sed -nr 's/^Package:[[:space:]]*(.*extra[0-9]+)[[:space:]]*$$/\1/p' debian/control)
+EXTRA_PKGS := $(shell sed -nr 's/^Package:[[:space:]]*(.*extra[0-9]+)[[:space:]]*$$/\1/p' debian/control)
 FLAVORS = standard extra
 
 # Enable as many features as possible, as long as the result is still GPLv2+ (a GPLv3+ variant is built as libavcodec-extra flavor).
 # The following flags (and build-dependencies) are not added, because they would require a libavformat-extra flavor:
 #   --enable-libsmbclient           (libsmbclient-dev [!hurd-i386 !m68k !sparc64])
-#   --enable-libtesseract
 #   --enable-netcdf
 # The following flags are not added, because the necessary libraries are not in Debian:
 #   --enable-decklink
@@ -54,6 +53,7 @@ CONFIG := --prefix=/usr \
 	--cxx=$(CXX) \
 	--enable-gpl \
 	--enable-shared \
+	--disable-libtesseract \
 	--disable-stripping \
 	--disable-decoder=libopenjpeg \
 	--disable-decoder=libschroedinger \
@@ -106,14 +106,9 @@ CONFIG_standard =
 CONFIG_extra = --enable-version3 \
 	--disable-doc \
 	--disable-programs \
-	--disable-avdevice \
-	--disable-avfilter \
-	--disable-avformat \
-	--disable-avresample \
-	--disable-postproc \
-	--disable-swscale \
 	--enable-libopencore_amrnb \
 	--enable-libopencore_amrwb \
+	--enable-libtesseract \
 	--enable-libvo_amrwbenc
 
 # Disable optimizations if requested.
@@ -242,8 +237,8 @@ ifeq ($(DEB_HOST_ARCH),powerpc)
 endif
 
 override_dh_install:
-	dh_install -N $(EXTRA_PKG)
-	dh_install -p $(EXTRA_PKG) --sourcedir=debian/tmp/extra
+	dh_install $(addprefix -p,$(EXTRA_PKGS)) --sourcedir=debian/tmp/extra
+	dh_install --remaining-packages
 
 override_dh_makeshlibs:
 	set -e && for pkg in $(shell dh_listpackages -a) ; do \
@@ -255,6 +250,10 @@ override_dh_makeshlibs:
 				soversion=$$(echo $$pkg | sed -nr 's/^[^0-9]*([0-9]+)$$/\1/p'); \
 				dh_makeshlibs -p $$pkg -V"libavcodec$$soversion (>= ${DEB_VERSION_EPOCH_UPSTREAM}) | libavcodec-extra$$soversion (>= ${DEB_VERSION_EPOCH_UPSTREAM})" \
 				;; \
+			*avfilter*) \
+				soversion=$$(echo $$pkg | sed -nr 's/^[^0-9]*([0-9]+)$$/\1/p'); \
+				dh_makeshlibs -p $$pkg -V"libavfilter$$soversion (>= ${DEB_VERSION_EPOCH_UPSTREAM}) | libavfilter-extra$$soversion (>= ${DEB_VERSION_EPOCH_UPSTREAM})" \
+				;; \
 			*) \
 				dh_makeshlibs -p $$pkg -V \
 				;; \

-- 
ffmpeg packaging



More information about the pkg-multimedia-commits mailing list