aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2021-03-01 21:29:07 +0100
committerChristian Grothoff <christian@grothoff.org>2021-03-01 21:29:07 +0100
commit1e64237ffae3c73efd864dc03ee2e3dfed29c10b (patch)
tree19aad807e8e6b3af03bdf6a562a68118e1b28347
parent4894c060b297a46c968216b44cc02592e345498d (diff)
downloadlibextractor-1e64237ffae3c73efd864dc03ee2e3dfed29c10b.tar.gz
libextractor-1e64237ffae3c73efd864dc03ee2e3dfed29c10b.zip
adjust build process to largely work with libswresample (Debian #971331); alas, code is not yet working, commenting out opus plugin
-rw-r--r--configure.ac15
-rw-r--r--po/da.po4
-rw-r--r--po/de.po4
-rw-r--r--po/es.po4
-rw-r--r--po/fr.po4
-rw-r--r--po/ga.po4
-rw-r--r--po/it.po4
-rw-r--r--po/libextractor.pot4
-rw-r--r--po/nl.po4
-rw-r--r--po/pl.po4
-rw-r--r--po/pt_BR.po4
-rw-r--r--po/ro.po4
-rw-r--r--po/rw.po4
-rw-r--r--po/sr.po4
-rw-r--r--po/sv.po4
-rw-r--r--po/uk.po4
-rw-r--r--po/vi.po4
-rw-r--r--src/plugins/Makefile.am7
-rw-r--r--src/plugins/previewopus_extractor.c108
19 files changed, 104 insertions, 90 deletions
diff --git a/configure.ac b/configure.ac
index 456287a..8005a39 100644
--- a/configure.ac
+++ b/configure.ac
@@ -667,17 +667,11 @@ AS_IF([test x$ffmpeg_enabled = x1],
667 [ffmpeg_enabled=0 667 [ffmpeg_enabled=0
668 new_ffmpeg=0 668 new_ffmpeg=0
669 AC_CHECK_HEADERS([libavutil/avutil.h libavformat/avformat.h libavcodec/avcodec.h libavutil/frame.h], 669 AC_CHECK_HEADERS([libavutil/avutil.h libavformat/avformat.h libavcodec/avcodec.h libavutil/frame.h],
670 AC_CHECK_HEADERS([libavresample/avresample.h], 670 AC_CHECK_HEADERS([libswresample/swresample.h],
671 AC_CHECK_LIB(avutil, av_audio_fifo_alloc, 671 AC_CHECK_LIB(avutil, av_audio_fifo_alloc,
672 new_ffmpeg=1))) 672 ffmpeg_enabled=1)))
673
674 AC_CHECK_LIB(swscale, sws_getContext,
675 AC_CHECK_LIB(avcodec, avcodec_alloc_context3,
676 ffmpeg_enabled=1))
677 AC_CHECK_HEADERS([libavutil/avutil.h ffmpeg/avutil.h libavformat/avformat.h ffmpeg/avformat.h libavcodec/avcodec.h ffmpeg/avcodec.h libswscale/swscale.h ffmpeg/swscale.h])
678 ]) 673 ])
679AM_CONDITIONAL(HAVE_FFMPEG, test x$ffmpeg_enabled != x0) 674AM_CONDITIONAL(HAVE_FFMPEG, test x$ffmpeg_enabled != x0)
680AM_CONDITIONAL(HAVE_FFMPEG_NEW, test x$new_ffmpeg != x0)
681 675
682 676
683LE_INTLINCL="" 677LE_INTLINCL=""
@@ -776,10 +770,7 @@ AS_IF([test "x$have_gsf" != "xtrue"],
776 [AC_MSG_NOTICE([NOTICE: libgsf not found, no OLE2 (MS Office) support])]) 770 [AC_MSG_NOTICE([NOTICE: libgsf not found, no OLE2 (MS Office) support])])
777 771
778AS_IF([test "x$ffmpeg_enabled" = "x0"], 772AS_IF([test "x$ffmpeg_enabled" = "x0"],
779 [AC_MSG_NOTICE([NOTICE: FFmpeg thumbnailer plugin disabled])]) 773 [AC_MSG_NOTICE([NOTICE: FFmpeg/opus audito thumbnailer plugin disabled])])
780
781AS_IF([test "x$new_ffmpeg" = "x0"],
782 [AC_MSG_NOTICE([NOTICE: FFmpeg/opus audio preview plugin disabled, It needs libav >= 10, or a FFmpeg with --enable-libavresample])])
783 774
784AS_IF([test "x$have_gdk_pixbuf" = "x0"], 775AS_IF([test "x$have_gdk_pixbuf" = "x0"],
785 [AC_MSG_NOTICE([NOTICE: libgdk-pixbuf not found, gtk thumbnail support disabled])]) 776 [AC_MSG_NOTICE([NOTICE: libgdk-pixbuf not found, gtk thumbnail support disabled])])
diff --git a/po/da.po b/po/da.po
index 4be0e70..e8908a5 100644
--- a/po/da.po
+++ b/po/da.po
@@ -10,7 +10,7 @@ msgid ""
10msgstr "" 10msgstr ""
11"Project-Id-Version: libextractor-1.9\n" 11"Project-Id-Version: libextractor-1.9\n"
12"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 12"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
13"POT-Creation-Date: 2020-07-02 15:57+0200\n" 13"POT-Creation-Date: 2021-01-30 15:28+0100\n"
14"PO-Revision-Date: 2019-02-14 16:38+0100\n" 14"PO-Revision-Date: 2019-02-14 16:38+0100\n"
15"Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n" 15"Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
16"Language-Team: Danish <dansk@dansk-gruppen.dk>\n" 16"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
@@ -140,7 +140,7 @@ msgstr "% BiBTeX-fil\n"
140msgid "Keywords for file %s:\n" 140msgid "Keywords for file %s:\n"
141msgstr "Nøgleord for filen %s:\n" 141msgstr "Nøgleord for filen %s:\n"
142 142
143#: src/main/extractor.c:680 143#: src/main/extractor.c:679
144#, c-format 144#, c-format
145msgid "Initialization of plugin mechanism failed: %s!\n" 145msgid "Initialization of plugin mechanism failed: %s!\n"
146msgstr "Opstart af udvidelsesmodulmekanisme mislykkedes: %s!\n" 146msgstr "Opstart af udvidelsesmodulmekanisme mislykkedes: %s!\n"
diff --git a/po/de.po b/po/de.po
index 0d3956e..91a21d8 100644
--- a/po/de.po
+++ b/po/de.po
@@ -10,7 +10,7 @@ msgid ""
10msgstr "" 10msgstr ""
11"Project-Id-Version: libextractor 1.9\n" 11"Project-Id-Version: libextractor 1.9\n"
12"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 12"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
13"POT-Creation-Date: 2020-07-02 15:57+0200\n" 13"POT-Creation-Date: 2021-01-30 15:28+0100\n"
14"PO-Revision-Date: 2019-02-15 13:41+0100\n" 14"PO-Revision-Date: 2019-02-15 13:41+0100\n"
15"Last-Translator: Mario Blättermann <mario.blaettermann@gmail.com>\n" 15"Last-Translator: Mario Blättermann <mario.blaettermann@gmail.com>\n"
16"Language-Team: German <translation-team-de@lists.sourceforge.net>\n" 16"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
@@ -150,7 +150,7 @@ msgstr "% BibTeX-Datei\n"
150msgid "Keywords for file %s:\n" 150msgid "Keywords for file %s:\n"
151msgstr "Schlüsserwörter für die Datei %s:\n" 151msgstr "Schlüsserwörter für die Datei %s:\n"
152 152
153#: src/main/extractor.c:680 153#: src/main/extractor.c:679
154#, c-format 154#, c-format
155msgid "Initialization of plugin mechanism failed: %s!\n" 155msgid "Initialization of plugin mechanism failed: %s!\n"
156msgstr "Initialisierung des Plugin-Mechanismus ist fehlgeschlagen: %s.\n" 156msgstr "Initialisierung des Plugin-Mechanismus ist fehlgeschlagen: %s.\n"
diff --git a/po/es.po b/po/es.po
index 83dd26b..b7290e3 100644
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@ msgid ""
7msgstr "" 7msgstr ""
8"Project-Id-Version: libextractor 1.0.0-pre1\n" 8"Project-Id-Version: libextractor 1.0.0-pre1\n"
9"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 9"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
10"POT-Creation-Date: 2020-07-02 15:57+0200\n" 10"POT-Creation-Date: 2021-01-30 15:28+0100\n"
11"PO-Revision-Date: 2018-04-27 22:53+0200\n" 11"PO-Revision-Date: 2018-04-27 22:53+0200\n"
12"Last-Translator: Francisco Javier Serrador <fserrador@gmail.com>\n" 12"Last-Translator: Francisco Javier Serrador <fserrador@gmail.com>\n"
13"Language-Team: Spanish <es@tp.org.es>\n" 13"Language-Team: Spanish <es@tp.org.es>\n"
@@ -142,7 +142,7 @@ msgstr "Fichero %% BiBTeX\n"
142msgid "Keywords for file %s:\n" 142msgid "Keywords for file %s:\n"
143msgstr "Palabras claves para fichero %s:\n" 143msgstr "Palabras claves para fichero %s:\n"
144 144
145#: src/main/extractor.c:680 145#: src/main/extractor.c:679
146#, c-format 146#, c-format
147msgid "Initialization of plugin mechanism failed: %s!\n" 147msgid "Initialization of plugin mechanism failed: %s!\n"
148msgstr "¡Inicialización de mecanismo complementario fallado: %s!\n" 148msgstr "¡Inicialización de mecanismo complementario fallado: %s!\n"
diff --git a/po/fr.po b/po/fr.po
index d59f170..a0fc6d7 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -9,7 +9,7 @@ msgid ""
9msgstr "" 9msgstr ""
10"Project-Id-Version: libextractor 1.9\n" 10"Project-Id-Version: libextractor 1.9\n"
11"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 11"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
12"POT-Creation-Date: 2020-07-02 15:57+0200\n" 12"POT-Creation-Date: 2021-01-30 15:28+0100\n"
13"PO-Revision-Date: 2019-05-12 04:34+0200\n" 13"PO-Revision-Date: 2019-05-12 04:34+0200\n"
14"Last-Translator: Stéphane Aulery <lkppo@free.fr>\n" 14"Last-Translator: Stéphane Aulery <lkppo@free.fr>\n"
15"Language-Team: French <traduc@traduc.org>\n" 15"Language-Team: French <traduc@traduc.org>\n"
@@ -146,7 +146,7 @@ msgstr "% fichier BiBTeX\n"
146msgid "Keywords for file %s:\n" 146msgid "Keywords for file %s:\n"
147msgstr "Mots-clés pour le fichier %s:\n" 147msgstr "Mots-clés pour le fichier %s:\n"
148 148
149#: src/main/extractor.c:680 149#: src/main/extractor.c:679
150#, c-format 150#, c-format
151msgid "Initialization of plugin mechanism failed: %s!\n" 151msgid "Initialization of plugin mechanism failed: %s!\n"
152msgstr "Echec de l’initialisation du module %s !\n" 152msgstr "Echec de l’initialisation du module %s !\n"
diff --git a/po/ga.po b/po/ga.po
index b45addf..7d18901 100644
--- a/po/ga.po
+++ b/po/ga.po
@@ -6,7 +6,7 @@ msgid ""
6msgstr "" 6msgstr ""
7"Project-Id-Version: libextractor 0.5.20\n" 7"Project-Id-Version: libextractor 0.5.20\n"
8"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 8"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
9"POT-Creation-Date: 2020-07-02 15:57+0200\n" 9"POT-Creation-Date: 2021-01-30 15:28+0100\n"
10"PO-Revision-Date: 2008-03-21 20:46-0700\n" 10"PO-Revision-Date: 2008-03-21 20:46-0700\n"
11"Last-Translator: Kevin Scannell <kscanne@gmail.com>\n" 11"Last-Translator: Kevin Scannell <kscanne@gmail.com>\n"
12"Language-Team: Irish <gaeilge-gnulinux@lists.sourceforge.net>\n" 12"Language-Team: Irish <gaeilge-gnulinux@lists.sourceforge.net>\n"
@@ -139,7 +139,7 @@ msgstr "%% Comhad BiBTeX\n"
139msgid "Keywords for file %s:\n" 139msgid "Keywords for file %s:\n"
140msgstr "Lorgfhocail do chomhad %s:\n" 140msgstr "Lorgfhocail do chomhad %s:\n"
141 141
142#: src/main/extractor.c:680 142#: src/main/extractor.c:679
143#, c-format 143#, c-format
144msgid "Initialization of plugin mechanism failed: %s!\n" 144msgid "Initialization of plugin mechanism failed: %s!\n"
145msgstr "Theip ar ths meicnocht na mbreisen: %s!\n" 145msgstr "Theip ar ths meicnocht na mbreisen: %s!\n"
diff --git a/po/it.po b/po/it.po
index ad3fe35..472cfb4 100644
--- a/po/it.po
+++ b/po/it.po
@@ -7,7 +7,7 @@ msgid ""
7msgstr "" 7msgstr ""
8"Project-Id-Version: libextractor-0.6.0\n" 8"Project-Id-Version: libextractor-0.6.0\n"
9"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 9"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
10"POT-Creation-Date: 2020-07-02 15:57+0200\n" 10"POT-Creation-Date: 2021-01-30 15:28+0100\n"
11"PO-Revision-Date: 2010-09-30 23:41+0200\n" 11"PO-Revision-Date: 2010-09-30 23:41+0200\n"
12"Last-Translator: Sergio Zanchetta <primes2h@ubuntu.com>\n" 12"Last-Translator: Sergio Zanchetta <primes2h@ubuntu.com>\n"
13"Language-Team: Italian <tp@lists.linux.it>\n" 13"Language-Team: Italian <tp@lists.linux.it>\n"
@@ -136,7 +136,7 @@ msgstr "%% file BiBTeX\n"
136msgid "Keywords for file %s:\n" 136msgid "Keywords for file %s:\n"
137msgstr "" 137msgstr ""
138 138
139#: src/main/extractor.c:680 139#: src/main/extractor.c:679
140#, c-format 140#, c-format
141msgid "Initialization of plugin mechanism failed: %s!\n" 141msgid "Initialization of plugin mechanism failed: %s!\n"
142msgstr "" 142msgstr ""
diff --git a/po/libextractor.pot b/po/libextractor.pot
index 346bafa..bdffbe2 100644
--- a/po/libextractor.pot
+++ b/po/libextractor.pot
@@ -8,7 +8,7 @@ msgid ""
8msgstr "" 8msgstr ""
9"Project-Id-Version: PACKAGE VERSION\n" 9"Project-Id-Version: PACKAGE VERSION\n"
10"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 10"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
11"POT-Creation-Date: 2020-07-02 15:57+0200\n" 11"POT-Creation-Date: 2021-01-30 15:28+0100\n"
12"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 12"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" 13"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14"Language-Team: LANGUAGE <LL@li.org>\n" 14"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -131,7 +131,7 @@ msgstr ""
131msgid "Keywords for file %s:\n" 131msgid "Keywords for file %s:\n"
132msgstr "" 132msgstr ""
133 133
134#: src/main/extractor.c:680 134#: src/main/extractor.c:679
135#, c-format 135#, c-format
136msgid "Initialization of plugin mechanism failed: %s!\n" 136msgid "Initialization of plugin mechanism failed: %s!\n"
137msgstr "" 137msgstr ""
diff --git a/po/nl.po b/po/nl.po
index 328fc19..9bada5e 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -8,7 +8,7 @@ msgid ""
8msgstr "" 8msgstr ""
9"Project-Id-Version: libextractor-1.0.0-pre1\n" 9"Project-Id-Version: libextractor-1.0.0-pre1\n"
10"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 10"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
11"POT-Creation-Date: 2020-07-02 15:57+0200\n" 11"POT-Creation-Date: 2021-01-30 15:28+0100\n"
12"PO-Revision-Date: 2013-08-21 22:41+0200\n" 12"PO-Revision-Date: 2013-08-21 22:41+0200\n"
13"Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n" 13"Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n"
14"Language-Team: Dutch <vertaling@vrijschrift.org>\n" 14"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
@@ -143,7 +143,7 @@ msgstr "%% BiBTeX-bestand\n"
143msgid "Keywords for file %s:\n" 143msgid "Keywords for file %s:\n"
144msgstr "Trefwoorden voor bestand %s:\n" 144msgstr "Trefwoorden voor bestand %s:\n"
145 145
146#: src/main/extractor.c:680 146#: src/main/extractor.c:679
147#, c-format 147#, c-format
148msgid "Initialization of plugin mechanism failed: %s!\n" 148msgid "Initialization of plugin mechanism failed: %s!\n"
149msgstr "Initialisatie van plugin-mechanisme is mislukt: %s\n" 149msgstr "Initialisatie van plugin-mechanisme is mislukt: %s\n"
diff --git a/po/pl.po b/po/pl.po
index a532b3e..a3ecbb3 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -7,7 +7,7 @@ msgid ""
7msgstr "" 7msgstr ""
8"Project-Id-Version: libextractor 1.9\n" 8"Project-Id-Version: libextractor 1.9\n"
9"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 9"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
10"POT-Creation-Date: 2020-07-02 15:57+0200\n" 10"POT-Creation-Date: 2021-01-30 15:28+0100\n"
11"PO-Revision-Date: 2019-02-12 16:02+0100\n" 11"PO-Revision-Date: 2019-02-12 16:02+0100\n"
12"Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n" 12"Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
13"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n" 13"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
@@ -138,7 +138,7 @@ msgstr "% plik BiBTeX\n"
138msgid "Keywords for file %s:\n" 138msgid "Keywords for file %s:\n"
139msgstr "Słowa kluczowe dla pliku %s:\n" 139msgstr "Słowa kluczowe dla pliku %s:\n"
140 140
141#: src/main/extractor.c:680 141#: src/main/extractor.c:679
142#, c-format 142#, c-format
143msgid "Initialization of plugin mechanism failed: %s!\n" 143msgid "Initialization of plugin mechanism failed: %s!\n"
144msgstr "Inicjalizacja mechanizmu wtyczek nie powiodła się: %s!\n" 144msgstr "Inicjalizacja mechanizmu wtyczek nie powiodła się: %s!\n"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index e20d192..29ca0a9 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -8,7 +8,7 @@ msgid ""
8msgstr "" 8msgstr ""
9"Project-Id-Version: libextractor 1.9\n" 9"Project-Id-Version: libextractor 1.9\n"
10"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 10"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
11"POT-Creation-Date: 2020-07-02 15:57+0200\n" 11"POT-Creation-Date: 2021-01-30 15:28+0100\n"
12"PO-Revision-Date: 2019-02-21 20:46-0200\n" 12"PO-Revision-Date: 2019-02-21 20:46-0200\n"
13"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n" 13"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
14"Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge." 14"Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
@@ -144,7 +144,7 @@ msgstr "% arquivo BiBTeX\n"
144msgid "Keywords for file %s:\n" 144msgid "Keywords for file %s:\n"
145msgstr "Palavras-chave para o arquivo %s:\n" 145msgstr "Palavras-chave para o arquivo %s:\n"
146 146
147#: src/main/extractor.c:680 147#: src/main/extractor.c:679
148#, c-format 148#, c-format
149msgid "Initialization of plugin mechanism failed: %s!\n" 149msgid "Initialization of plugin mechanism failed: %s!\n"
150msgstr "Inicialização do mecanismo do plug-in falhou: %s!\n" 150msgstr "Inicialização do mecanismo do plug-in falhou: %s!\n"
diff --git a/po/ro.po b/po/ro.po
index b61822a..56485aa 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -9,7 +9,7 @@ msgid ""
9msgstr "" 9msgstr ""
10"Project-Id-Version: libextractor 0.5.3\n" 10"Project-Id-Version: libextractor 0.5.3\n"
11"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 11"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
12"POT-Creation-Date: 2020-07-02 15:57+0200\n" 12"POT-Creation-Date: 2021-01-30 15:28+0100\n"
13"PO-Revision-Date: 2005-08-16 12:00-0500\n" 13"PO-Revision-Date: 2005-08-16 12:00-0500\n"
14"Last-Translator: Laurentiu Buzdugan <lbuz@rolix.org>\n" 14"Last-Translator: Laurentiu Buzdugan <lbuz@rolix.org>\n"
15"Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n" 15"Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
@@ -142,7 +142,7 @@ msgstr "%% BiBTeX file\n"
142msgid "Keywords for file %s:\n" 142msgid "Keywords for file %s:\n"
143msgstr "Cuvinte cheie pentru fiier %s:\n" 143msgstr "Cuvinte cheie pentru fiier %s:\n"
144 144
145#: src/main/extractor.c:680 145#: src/main/extractor.c:679
146#, c-format 146#, c-format
147msgid "Initialization of plugin mechanism failed: %s!\n" 147msgid "Initialization of plugin mechanism failed: %s!\n"
148msgstr "iniializare mecanismului de plugin a euat: %s!\n" 148msgstr "iniializare mecanismului de plugin a euat: %s!\n"
diff --git a/po/rw.po b/po/rw.po
index 180d7ef..e9d27c3 100644
--- a/po/rw.po
+++ b/po/rw.po
@@ -16,7 +16,7 @@ msgid ""
16msgstr "" 16msgstr ""
17"Project-Id-Version: libextractor 0.4.2\n" 17"Project-Id-Version: libextractor 0.4.2\n"
18"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 18"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
19"POT-Creation-Date: 2020-07-02 15:57+0200\n" 19"POT-Creation-Date: 2021-01-30 15:28+0100\n"
20"PO-Revision-Date: 2005-04-04 10:55-0700\n" 20"PO-Revision-Date: 2005-04-04 10:55-0700\n"
21"Last-Translator: Steven Michael Murphy <murf@e-tools.com>\n" 21"Last-Translator: Steven Michael Murphy <murf@e-tools.com>\n"
22"Language-Team: Kinyarwanda <translation-team-rw@lists.sourceforge.net>\n" 22"Language-Team: Kinyarwanda <translation-team-rw@lists.sourceforge.net>\n"
@@ -149,7 +149,7 @@ msgstr ""
149msgid "Keywords for file %s:\n" 149msgid "Keywords for file %s:\n"
150msgstr "kugirango IDOSIYE" 150msgstr "kugirango IDOSIYE"
151 151
152#: src/main/extractor.c:680 152#: src/main/extractor.c:679
153#, fuzzy, c-format 153#, fuzzy, c-format
154msgid "Initialization of plugin mechanism failed: %s!\n" 154msgid "Initialization of plugin mechanism failed: %s!\n"
155msgstr "Bya Byanze" 155msgstr "Bya Byanze"
diff --git a/po/sr.po b/po/sr.po
index 71b80c1..c5248fb 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -6,7 +6,7 @@ msgid ""
6msgstr "" 6msgstr ""
7"Project-Id-Version: libextractor-1.9\n" 7"Project-Id-Version: libextractor-1.9\n"
8"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 8"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
9"POT-Creation-Date: 2020-07-02 15:57+0200\n" 9"POT-Creation-Date: 2021-01-30 15:28+0100\n"
10"PO-Revision-Date: 2020-04-02 08:30+0200\n" 10"PO-Revision-Date: 2020-04-02 08:30+0200\n"
11"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n" 11"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
12"Language-Team: Serbian <(nothing)>\n" 12"Language-Team: Serbian <(nothing)>\n"
@@ -140,7 +140,7 @@ msgstr "% БиБТеКс датотека\n"
140msgid "Keywords for file %s:\n" 140msgid "Keywords for file %s:\n"
141msgstr "Кључне речи за датотеку „%s“:\n" 141msgstr "Кључне речи за датотеку „%s“:\n"
142 142
143#: src/main/extractor.c:680 143#: src/main/extractor.c:679
144#, c-format 144#, c-format
145msgid "Initialization of plugin mechanism failed: %s!\n" 145msgid "Initialization of plugin mechanism failed: %s!\n"
146msgstr "Покретање механизма прикључка није успело: %s!\n" 146msgstr "Покретање механизма прикључка није успело: %s!\n"
diff --git a/po/sv.po b/po/sv.po
index 707f649..1c14b05 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -7,7 +7,7 @@ msgid ""
7msgstr "" 7msgstr ""
8"Project-Id-Version: libextractor 0.5.22\n" 8"Project-Id-Version: libextractor 0.5.22\n"
9"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 9"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
10"POT-Creation-Date: 2020-07-02 15:57+0200\n" 10"POT-Creation-Date: 2021-01-30 15:28+0100\n"
11"PO-Revision-Date: 2009-05-12 17:45+0100\n" 11"PO-Revision-Date: 2009-05-12 17:45+0100\n"
12"Last-Translator: Daniel Nylander <po@danielnylander.se>\n" 12"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
13"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n" 13"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
@@ -136,7 +136,7 @@ msgstr "%% BiBTeX-fil\n"
136msgid "Keywords for file %s:\n" 136msgid "Keywords for file %s:\n"
137msgstr "Nyckelord för filen %s:\n" 137msgstr "Nyckelord för filen %s:\n"
138 138
139#: src/main/extractor.c:680 139#: src/main/extractor.c:679
140#, c-format 140#, c-format
141msgid "Initialization of plugin mechanism failed: %s!\n" 141msgid "Initialization of plugin mechanism failed: %s!\n"
142msgstr "Initiering av insticksmekanism misslyckades: %s!\n" 142msgstr "Initiering av insticksmekanism misslyckades: %s!\n"
diff --git a/po/uk.po b/po/uk.po
index 85244bb..464cf92 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -7,7 +7,7 @@ msgid ""
7msgstr "" 7msgstr ""
8"Project-Id-Version: libextractor 1.9\n" 8"Project-Id-Version: libextractor 1.9\n"
9"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 9"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
10"POT-Creation-Date: 2020-07-02 15:57+0200\n" 10"POT-Creation-Date: 2021-01-30 15:28+0100\n"
11"PO-Revision-Date: 2019-02-10 20:41+0200\n" 11"PO-Revision-Date: 2019-02-10 20:41+0200\n"
12"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n" 12"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
13"Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n" 13"Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
@@ -151,7 +151,7 @@ msgstr "% файл BiBTeX\n"
151msgid "Keywords for file %s:\n" 151msgid "Keywords for file %s:\n"
152msgstr "Ключові слова для файла %s:\n" 152msgstr "Ключові слова для файла %s:\n"
153 153
154#: src/main/extractor.c:680 154#: src/main/extractor.c:679
155#, c-format 155#, c-format
156msgid "Initialization of plugin mechanism failed: %s!\n" 156msgid "Initialization of plugin mechanism failed: %s!\n"
157msgstr "Помилка під час спроби ініціалізації механізму додатків: %s!\n" 157msgstr "Помилка під час спроби ініціалізації механізму додатків: %s!\n"
diff --git a/po/vi.po b/po/vi.po
index 47b8770..e85941c 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -8,7 +8,7 @@ msgid ""
8msgstr "" 8msgstr ""
9"Project-Id-Version: libextractor 0.6.0\n" 9"Project-Id-Version: libextractor 0.6.0\n"
10"Report-Msgid-Bugs-To: libextractor@gnu.org\n" 10"Report-Msgid-Bugs-To: libextractor@gnu.org\n"
11"POT-Creation-Date: 2020-07-02 15:57+0200\n" 11"POT-Creation-Date: 2021-01-30 15:28+0100\n"
12"PO-Revision-Date: 2010-02-11 00:13+0930\n" 12"PO-Revision-Date: 2010-02-11 00:13+0930\n"
13"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n" 13"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
14"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n" 14"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
@@ -145,7 +145,7 @@ msgstr "%% tập tin BiBTeX\n"
145msgid "Keywords for file %s:\n" 145msgid "Keywords for file %s:\n"
146msgstr "Từ khoá cho tập tin %s:\n" 146msgstr "Từ khoá cho tập tin %s:\n"
147 147
148#: src/main/extractor.c:680 148#: src/main/extractor.c:679
149#, c-format 149#, c-format
150msgid "Initialization of plugin mechanism failed: %s!\n" 150msgid "Initialization of plugin mechanism failed: %s!\n"
151msgstr "Việc khởi động cơ chế cầm phít bị lỗi: %s\n" 151msgstr "Việc khởi động cơ chế cầm phít bị lỗi: %s\n"
diff --git a/src/plugins/Makefile.am b/src/plugins/Makefile.am
index 8cdd905..37e31e5 100644
--- a/src/plugins/Makefile.am
+++ b/src/plugins/Makefile.am
@@ -69,14 +69,11 @@ PLUGIN_MIME=libextractor_mime.la
69TEST_MIME=test_mime 69TEST_MIME=test_mime
70 70
71if HAVE_FFMPEG 71if HAVE_FFMPEG
72# FFmpeg-thumbnailer requires MAGIC and FFMPEG
73PLUGIN_FFMPEG=libextractor_thumbnailffmpeg.la 72PLUGIN_FFMPEG=libextractor_thumbnailffmpeg.la
74TEST_FFMPEG=test_thumbnailffmpeg 73TEST_FFMPEG=test_thumbnailffmpeg
75endif
76 74
77if HAVE_FFMPEG_NEW 75#PLUGIN_PREVIEWOPUS=libextractor_previewopus.la
78PLUGIN_PREVIEWOPUS=libextractor_previewopus.la 76#TEST_PREVIEWOPUS=test_previewopus
79TEST_PREVIEWOPUS=test_previewopus
80endif 77endif
81 78
82if HAVE_GDK_PIXBUF 79if HAVE_GDK_PIXBUF
diff --git a/src/plugins/previewopus_extractor.c b/src/plugins/previewopus_extractor.c
index 45ea420..f137f38 100644
--- a/src/plugins/previewopus_extractor.c
+++ b/src/plugins/previewopus_extractor.c
@@ -44,7 +44,7 @@
44#include <libavformat/avformat.h> 44#include <libavformat/avformat.h>
45#include <libavcodec/avcodec.h> 45#include <libavcodec/avcodec.h>
46#include <libswscale/swscale.h> 46#include <libswscale/swscale.h>
47#include <libavresample/avresample.h> 47#include <libswresample/swresample.h>
48 48
49 49
50/** 50/**
@@ -300,7 +300,7 @@ init_input_frame (AVFrame **frame)
300static int 300static int
301init_resampler (AVCodecContext *input_codec_context, 301init_resampler (AVCodecContext *input_codec_context,
302 AVCodecContext *output_codec_context, 302 AVCodecContext *output_codec_context,
303 AVAudioResampleContext **resample_context) 303 SwrContext **resample_context)
304{ 304{
305 /** 305 /**
306 * Only initialize the resampler if it is necessary, i.e., 306 * Only initialize the resampler if it is necessary, i.e.,
@@ -312,7 +312,7 @@ init_resampler (AVCodecContext *input_codec_context,
312 int error; 312 int error;
313 313
314 /** Create a resampler context for the conversion. */ 314 /** Create a resampler context for the conversion. */
315 if (! (*resample_context = avresample_alloc_context ())) 315 if (! (*resample_context = swr_alloc ()))
316 { 316 {
317#if DEBUG 317#if DEBUG
318 fprintf (stderr, "Could not allocate resample context\n"); 318 fprintf (stderr, "Could not allocate resample context\n");
@@ -326,28 +326,35 @@ init_resampler (AVCodecContext *input_codec_context,
326 * Default channel layouts based on the number of channels 326 * Default channel layouts based on the number of channels
327 * are assumed for simplicity (they are sometimes not detected 327 * are assumed for simplicity (they are sometimes not detected
328 * properly by the demuxer and/or decoder). 328 * properly by the demuxer and/or decoder).
329 */av_opt_set_int (*resample_context, "in_channel_layout", 329 */
330 av_opt_set_int (*resample_context,
331 "in_channel_layout",
330 av_get_default_channel_layout ( 332 av_get_default_channel_layout (
331 input_codec_context->channels), 0); 333 input_codec_context->channels), 0);
332 av_opt_set_int (*resample_context, "out_channel_layout", 334 av_opt_set_int (*resample_context,
335 "out_channel_layout",
333 av_get_default_channel_layout ( 336 av_get_default_channel_layout (
334 output_codec_context->channels), 0); 337 output_codec_context->channels), 0);
335 av_opt_set_int (*resample_context, "in_sample_rate", 338 av_opt_set_int (*resample_context,
339 "in_sample_rate",
336 input_codec_context->sample_rate, 0); 340 input_codec_context->sample_rate, 0);
337 av_opt_set_int (*resample_context, "out_sample_rate", 341 av_opt_set_int (*resample_context,
342 "out_sample_rate",
338 output_codec_context->sample_rate, 0); 343 output_codec_context->sample_rate, 0);
339 av_opt_set_int (*resample_context, "in_sample_fmt", 344 av_opt_set_int (*resample_context,
345 "in_sample_fmt",
340 input_codec_context->sample_fmt, 0); 346 input_codec_context->sample_fmt, 0);
341 av_opt_set_int (*resample_context, "out_sample_fmt", 347 av_opt_set_int (*resample_context,
348 "out_sample_fmt",
342 output_codec_context->sample_fmt, 0); 349 output_codec_context->sample_fmt, 0);
343 350
344 /** Open the resampler with the specified parameters. */ 351 /** Open the resampler with the specified parameters. */
345 if ((error = avresample_open (*resample_context)) < 0) 352 if ((error = swr_init (*resample_context)) < 0)
346 { 353 {
347#if DEBUG 354#if DEBUG
348 fprintf (stderr, "Could not open resample context\n"); 355 fprintf (stderr, "Could not open resample context\n");
349#endif 356#endif
350 avresample_free (resample_context); 357 swr_free (resample_context);
351 return error; 358 return error;
352 } 359 }
353 } 360 }
@@ -461,7 +468,8 @@ decode_audio_frame (AVFrame *frame,
461 * The number of audio samples to be allocated is specified in frame_size. 468 * The number of audio samples to be allocated is specified in frame_size.
462 */ 469 */
463static int 470static int
464init_converted_samples (uint8_t ***converted_input_samples, int*out_linesize, 471init_converted_samples (uint8_t ***converted_input_samples,
472 int*out_linesize,
465 AVCodecContext *output_codec_context, 473 AVCodecContext *output_codec_context,
466 int frame_size) 474 int frame_size)
467{ 475{
@@ -484,7 +492,8 @@ init_converted_samples (uint8_t ***converted_input_samples, int*out_linesize,
484 * Allocate memory for the samples of all channels in one consecutive 492 * Allocate memory for the samples of all channels in one consecutive
485 * block for convenience. 493 * block for convenience.
486 */ 494 */
487 if ((error = av_samples_alloc (*converted_input_samples, out_linesize, 495 if ((error = av_samples_alloc (*converted_input_samples,
496 out_linesize,
488 output_codec_context->channels, 497 output_codec_context->channels,
489 frame_size, 498 frame_size,
490 output_codec_context->sample_fmt, 0)) < 0) 499 output_codec_context->sample_fmt, 0)) < 0)
@@ -509,19 +518,26 @@ init_converted_samples (uint8_t ***converted_input_samples, int*out_linesize,
509 */ 518 */
510static int 519static int
511convert_samples (uint8_t **input_data, 520convert_samples (uint8_t **input_data,
512 uint8_t **converted_data, const int in_sample, const int 521 uint8_t **converted_data,
513 out_sample, const int out_linesize, 522 int in_sample,
514 AVAudioResampleContext *resample_context) 523 int out_sample,
524 int out_linesize,
525 SwrContext *resample_context)
515{ 526{
516 int error; 527 int error;
517 528
518 /** Convert the samples using the resampler. */ 529 /** Convert the samples using the resampler. */
519 if ((error = avresample_convert (resample_context, converted_data, 530 if ((error = swr_convert (resample_context,
520 out_linesize, 531 converted_data,
521 out_sample, input_data, 0, in_sample)) < 0) 532 out_linesize,
533 out_sample,
534 input_data,
535 0,
536 in_sample)) < 0)
522 { 537 {
523#if DEBUG 538#if DEBUG
524 fprintf (stderr, "Could not convert input samples (error '%s')\n", 539 fprintf (stderr,
540 "Could not convert input samples (error '%s')\n",
525 get_error_text (error)); 541 get_error_text (error));
526#endif 542#endif
527 return error; 543 return error;
@@ -532,11 +548,13 @@ convert_samples (uint8_t **input_data,
532 * Perform a sanity check so that the number of converted samples is 548 * Perform a sanity check so that the number of converted samples is
533 * not greater than the number of samples to be converted. 549 * not greater than the number of samples to be converted.
534 * If the sample rates differ, this case has to be handled differently 550 * If the sample rates differ, this case has to be handled differently
535 */if (avresample_available (resample_context)) 551 */
552 if (avresample_available (resample_context))
536 { 553 {
537#if DEBUG 554#if DEBUG
538 fprintf (stderr, "%i Converted samples left over\n",avresample_available ( 555 fprintf (stderr,
539 resample_context)); 556 "%i Converted samples left over\n",
557 avresample_available (resample_context));
540#endif 558#endif
541 } 559 }
542 560
@@ -588,7 +606,7 @@ read_decode_convert_and_store (AVAudioFifo *fifo,
588 AVFormatContext *input_format_context, 606 AVFormatContext *input_format_context,
589 AVCodecContext *input_codec_context, 607 AVCodecContext *input_codec_context,
590 AVCodecContext *output_codec_context, 608 AVCodecContext *output_codec_context,
591 AVAudioResampleContext *resampler_context, int 609 SwrContext *resampler_context, int
592 audio_stream_index, 610 audio_stream_index,
593 int *finished) 611 int *finished)
594{ 612{
@@ -609,22 +627,25 @@ read_decode_convert_and_store (AVAudioFifo *fifo,
609 627
610 } 628 }
611 /** Decode one frame worth of audio samples. */ 629 /** Decode one frame worth of audio samples. */
612 if (decode_audio_frame (input_frame, input_format_context, 630 if (decode_audio_frame (input_frame,
613 input_codec_context, audio_stream_index, 631 input_format_context,
614 &data_present, finished)) 632 input_codec_context,
633 audio_stream_index,
634 &data_present,
635 finished))
615 { 636 {
616#if DEBUG 637#if DEBUG
617 fprintf (stderr, "Failed at decode audio\n"); 638 fprintf (stderr, "Failed at decode audio\n");
618#endif 639#endif
619 640
620 goto cleanup; 641 goto cleanup;
621
622 } 642 }
623 /** 643 /**
624 * If we are at the end of the file and there are no more samples 644 * If we are at the end of the file and there are no more samples
625 * in the decoder which are delayed, we are actually finished. 645 * in the decoder which are delayed, we are actually finished.
626 * This must not be treated as an error. 646 * This must not be treated as an error.
627 */if (*finished && ! data_present) 647 */
648 if (*finished && ! data_present)
628 { 649 {
629 ret = 0; 650 ret = 0;
630#if DEBUG 651#if DEBUG
@@ -636,7 +657,7 @@ read_decode_convert_and_store (AVAudioFifo *fifo,
636 if (data_present) 657 if (data_present)
637 { 658 {
638 int out_linesize; 659 int out_linesize;
639 // FIX ME: I'm losing samples, but can't get it to work. 660 // FIXME: I'm losing samples, but can't get it to work.
640 int out_samples = avresample_available (resampler_context) 661 int out_samples = avresample_available (resampler_context)
641 + avresample_get_delay (resampler_context) 662 + avresample_get_delay (resampler_context)
642 + input_frame->nb_samples; 663 + input_frame->nb_samples;
@@ -645,7 +666,8 @@ read_decode_convert_and_store (AVAudioFifo *fifo,
645 // fprintf(stderr, "Input nbsamples %i out_samples: %i \n",input_frame->nb_samples,out_samples); 666 // fprintf(stderr, "Input nbsamples %i out_samples: %i \n",input_frame->nb_samples,out_samples);
646 667
647 /** Initialize the temporary storage for the converted input samples. */ 668 /** Initialize the temporary storage for the converted input samples. */
648 if (init_converted_samples (&converted_input_samples, &out_linesize, 669 if (init_converted_samples (&converted_input_samples,
670 &out_linesize,
649 output_codec_context, 671 output_codec_context,
650 out_samples)) 672 out_samples))
651 { 673 {
@@ -659,20 +681,23 @@ read_decode_convert_and_store (AVAudioFifo *fifo,
659 * Convert the input samples to the desired output sample format. 681 * Convert the input samples to the desired output sample format.
660 * This requires a temporary storage provided by converted_input_samples. 682 * This requires a temporary storage provided by converted_input_samples.
661 */ 683 */
662 if (convert_samples (input_frame->extended_data, converted_input_samples, 684 if (convert_samples (input_frame->extended_data,
663 input_frame->nb_samples, out_samples, out_linesize, 685 converted_input_samples,
686 input_frame->nb_samples,
687 out_samples,
688 out_linesize,
664 resampler_context)) 689 resampler_context))
665 { 690 {
666
667
668#if DEBUG 691#if DEBUG
669 fprintf (stderr, "Failed at convert_samples, input frame %i \n", 692 fprintf (stderr,
693 "Failed at convert_samples, input frame %i \n",
670 input_frame->nb_samples); 694 input_frame->nb_samples);
671#endif 695#endif
672 goto cleanup; 696 goto cleanup;
673 } 697 }
674 /** Add the converted input samples to the FIFO buffer for later processing. */ 698 /** Add the converted input samples to the FIFO buffer for later processing. */
675 if (add_samples_to_fifo (fifo, converted_input_samples, 699 if (add_samples_to_fifo (fifo,
700 converted_input_samples,
676 out_samples)) 701 out_samples))
677 { 702 {
678#if DEBUG 703#if DEBUG
@@ -881,7 +906,7 @@ extract_audio (struct EXTRACTOR_ExtractContext *ec)
881 AVDictionary *options; 906 AVDictionary *options;
882 AVFrame *frame; 907 AVFrame *frame;
883 AVCodecContext*output_codec_context = NULL; 908 AVCodecContext*output_codec_context = NULL;
884 AVAudioResampleContext *resample_context = NULL; 909 SwrContext *resample_context = NULL;
885 AVAudioFifo *fifo = NULL; 910 AVAudioFifo *fifo = NULL;
886 911
887 int audio_stream_index; 912 int audio_stream_index;
@@ -1045,7 +1070,8 @@ extract_audio (struct EXTRACTOR_ExtractContext *ec)
1045 * Since the decoder's and the encoder's frame size may differ, we 1070 * Since the decoder's and the encoder's frame size may differ, we
1046 * need to FIFO buffer to store as many frames worth of input samples 1071 * need to FIFO buffer to store as many frames worth of input samples
1047 * that they make up at least one frame worth of output samples. 1072 * that they make up at least one frame worth of output samples.
1048 */while ((av_audio_fifo_size (fifo) < output_frame_size)) 1073 */
1074 while ((av_audio_fifo_size (fifo) < output_frame_size))
1049 { 1075 {
1050 /** 1076 /**
1051 * Decode one frame worth of audio samples, convert it to the 1077 * Decode one frame worth of audio samples, convert it to the
@@ -1143,8 +1169,8 @@ cleanup:
1143 av_audio_fifo_free (fifo); 1169 av_audio_fifo_free (fifo);
1144 if (resample_context) 1170 if (resample_context)
1145 { 1171 {
1146 avresample_close (resample_context); 1172 swr_close (resample_context);
1147 avresample_free (&resample_context); 1173 swr_free (&resample_context);
1148 } 1174 }
1149 if (output_codec_context) 1175 if (output_codec_context)
1150 avcodec_close (output_codec_context); 1176 avcodec_close (output_codec_context);