You are not logged in.

#1 07-21-2016 13:36:05

JonasCz
Membre
Registered: 06-20-2016
Posts: 10

Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

Hi all,

I'm trying to compile ffDiaporama on Ubuntu 16.04. I downloaded the latest 2.2 source, applied the Ffmpeg 3.0 patch as per this thread, installed the necessary dependencies as per the readme, as well as some other dependencies which were necessary, and compiled as per the instructions in the readme, but now I'm stuck with an error "TagLib was not declared in this scope" and some others:

g++ -c -pipe -O2 -D_REENTRANT -Wall -W -fPIC -DSHARE_DIR=\"/usr\" -DQ_OS_LINUX32 -DUSETAGLIB -DHAVE_CONFIG_H -DTAGLIB_STATIC -DQT_NO_DEBUG -DQT_HELP_LIB -DQT_SVG_LIB -DQT_WIDGETS_LIB -DQT_MULTIMEDIA_LIB -DQT_GUI_LIB -DQT_CONCURRENT_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -DQT_SQL_LIB -DQT_CORE_LIB -I. -I../ffDiaporama_lib -I/usr/include -I/usr/include/i386-linux-gnu/qt5 -I/usr/include/i386-linux-gnu/qt5/QtHelp -I/usr/include/i386-linux-gnu/qt5/QtSvg -I/usr/include/i386-linux-gnu/qt5/QtWidgets -I/usr/include/i386-linux-gnu/qt5/QtMultimedia -I/usr/include/i386-linux-gnu/qt5/QtGui -I/usr/include/i386-linux-gnu/qt5/QtConcurrent -I/usr/include/i386-linux-gnu/qt5/QtNetwork -I/usr/include/i386-linux-gnu/qt5/QtXml -I/usr/include/i386-linux-gnu/qt5/QtSql -I/usr/include/i386-linux-gnu/qt5/QtCore -I. -I. -I/usr/lib/i386-linux-gnu/qt5/mkspecs/linux-g++ -o cBaseMediaFile.o engine/cBaseMediaFile.cpp
engine/cBaseMediaFile.cpp: In function ‘QImage* GetEmbededImage(QString)’:
engine/cBaseMediaFile.cpp:191:13: error: ‘TagLib’ has not been declared
             TagLib::MPEG::File MP3File(TagLib::FileName(FileName.toLocal8Bit()));
             ^
engine/cBaseMediaFile.cpp:192:17: error: ‘MP3File’ was not declared in this scope
             if (MP3File.ID3v2Tag()) {
                 ^
engine/cBaseMediaFile.cpp:193:17: error: ‘TagLib’ has not been declared
                 TagLib::ID3v2::FrameList l=MP3File.ID3v2Tag()->frameListMap()["APIC"];
                 ^
engine/cBaseMediaFile.cpp:194:22: error: ‘l’ was not declared in this scope
                 if (!l.isEmpty()) {
                      ^
engine/cBaseMediaFile.cpp:195:21: error: ‘TagLib’ has not been declared
                     TagLib::ID3v2::AttachedPictureFrame *pic=static_cast<TagLib::ID3v2::A
                     ^
engine/cBaseMediaFile.cpp:195:58: error: ‘pic’ was not declared in this scope
                     TagLib::ID3v2::AttachedPictureFrame *pic=static_cast<TagLib::ID3v2::A
                                                          ^
engine/cBaseMediaFile.cpp:195:74: error: ‘TagLib’ does not name a type
                     TagLib::ID3v2::AttachedPictureFrame *pic=static_cast<TagLib::ID3v2::A
                                                                          ^
engine/cBaseMediaFile.cpp:195:80: error: expected ‘>’ before ‘::’ token
                    TagLib::ID3v2::AttachedPictureFrame *pic=static_cast<TagLib::ID3v2::At
                                                                               ^
engine/cBaseMediaFile.cpp:195:80: error: expected ‘(’ before ‘::’ token
engine/cBaseMediaFile.cpp:195:82: error: ‘::ID3v2’ has not been declared
                  TagLib::ID3v2::AttachedPictureFrame *pic=static_cast<TagLib::ID3v2::Atta
                                                                               ^
engine/cBaseMediaFile.cpp:195:111: error: expected primary-expression before ‘>’ token
 2::AttachedPictureFrame *pic=static_cast<TagLib::ID3v2::AttachedPictureFrame *>(l.front()
                                                                               ^
engine/cBaseMediaFile.cpp:195:123: error: expected ‘)’ before ‘;’ token
 :AttachedPictureFrame *pic=static_cast<TagLib::ID3v2::AttachedPictureFrame *>(l.front());
                                                                                         ^
engine/cBaseMediaFile.cpp:217:13: error: ‘TagLib’ has not been declared
             TagLib::Vorbis::File OggFile(TagLib::FileName(FileName.toLocal8Bit()));
             ^
engine/cBaseMediaFile.cpp:218:18: error: ‘OggFile’ was not declared in this scope
             if ((OggFile.tag())&&(OggFile.tag()->contains(TagLib::String("COVERART")))) {
                  ^
engine/cBaseMediaFile.cpp:218:59: error: ‘TagLib’ has not been declared
             if ((OggFile.tag())&&(OggFile.tag()->contains(TagLib::String("COVERART")))) {
                                                           ^
engine/cBaseMediaFile.cpp:219:23: error: ‘TagLib’ does not name a type
                 const TagLib::StringList &CoverList=OggFile.tag()->fieldListMap()["COVERA
                       ^
engine/cBaseMediaFile.cpp:220:22: error: ‘TagLib’ has not been declared
                 for (TagLib::StringList::ConstIterator it=CoverList.begin();it!=CoverList
                      ^
engine/cBaseMediaFile.cpp:220:77: error: ‘it’ was not declared in this scope
                 for (TagLib::StringList::ConstIterator it=CoverList.begin();it!=CoverList
                                                                             ^
engine/cBaseMediaFile.cpp:220:81: error: ‘CoverList’ was not declared in this scope
               for (TagLib::StringList::ConstIterator it=CoverList.begin();it!=CoverList.e
                                                                               ^
engine/cBaseMediaFile.cpp:221:27: error: ‘TagLib’ does not name a type
                     const TagLib::ByteVector &Vector=(*it).data(TagLib::String::UTF8);
                           ^
engine/cBaseMediaFile.cpp:222:45: error: ‘Vector’ was not declared in this scope
                     if ((Image->isNull())&&(Vector.size())) {
                                             ^
engine/cBaseMediaFile.cpp: At global scope:
engine/cBaseMediaFile.cpp:3225:152: warning: unused parameter ‘ForceSoundOnly’ [-Wunused-parameter]
 UseEndPos,bool Deinterlace,cSoundBlockList *SoundTrackBloc,double Volume,bool ForceSoundO
                                                                               ^
Makefile:4321: recipe for target 'cBaseMediaFile.o' failed
make[1]: *** [cBaseMediaFile.o] Error 1
make[1]: Leaving directory '/home/jonas/Downloads/FFdiaporama/source-bin/ffDiaporama/src/ffDiaporama'
Makefile:68: recipe for target 'sub-src-ffDiaporama-make_first' failed
make: *** [sub-src-ffDiaporama-make_first] Error 2

I have libtag1-dev and libtag1-v5 packages installed, do I need any others ? Is there any other way to get ffDiaporama on 16.04 without compiling it myself ?

Thanks in advance.

Offline

#2 07-24-2016 12:26:26

gerd1028
Membre
Registered: 05-09-2014
Posts: 29

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

Hi,
looks that qmake hasn't detected your ffmpeg-version correctly.

You can try this:

in ffDiaporama/src/ffdiaporama.pro:
replace the area from
unix {
...
} else:win32 {

with

unix {
    CONFIG += link_pkgconfig
    PKGCONFIG += libavformat libavcodec libavutil libswscale libavfilter libswresample
    LIBS   += -L../ffDiaporama_lib

    CFLAGS += -W"Missing debug information for"

    HARDWARE_PLATFORM = $$system(uname -m)
    contains(HARDWARE_PLATFORM,x86_64) {
           DEFINES+=Q_OS_LINUX64
            message("Linux x86_64 build")
    } else {
            DEFINES+=Q_OS_LINUX32
            message("Linux x86 build")
    }


    LIBS        += -lexiv2                                                  #------ Exiv2

    OTHER_FILES += ffDiaporama.rc \
                   ffdiaporama.ico \    # icon file to be install on windows system
                   ffDiaporama.url      # URL file to be install on windows system

} else:win32 { 

Afterchanging the pro-file you have to run qmake again to make this changes work.
Hope that helps.

Gerd

Offline

#3 07-24-2016 13:10:15

JonasCz
Membre
Registered: 06-20-2016
Posts: 10

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

Thanks Gerd, that worked !

Offline

#4 07-25-2016 13:24:10

JonasCz
Membre
Registered: 06-20-2016
Posts: 10

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

Just one more small problem: the preview doesn't work.

When I click the play button in the preview pane, it does not actually start playing, and in the statusbar (and in the terminal output), it says "Using null output device, none available".

I can see a preview in the preview pane, and dragging / moving the playback slider works, just that clicking play doesn't actually play the video / preview. I investigated and this seems to be a qt issue, but no conclusive solution.

Any ideas ? Has anyone run the latest version on Ubuntu 16.04 successfully ?

Offline

#5 07-25-2016 14:02:32

gerd1028
Membre
Registered: 05-09-2014
Posts: 29

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

Just a hint:

The Video-Player in ffDiaporama uses an audio-output device for timing calculation.
The message you've posted is from the qt5-audio-module.
I think you need to check why qt5 can't find any usable audio-device for output.

Ralated to the audio-output are also the values for the frame-rate and the sound sample rate in the config-dialog. May be changing the values there could help.

Regards
Gerd

Offline

#6 07-25-2016 14:31:22

JonasCz
Membre
Registered: 06-20-2016
Posts: 10

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

Thanks for the hint !

Installing libqt5multimedia5-plugins package as per this fixed the problem.

Thank you so much for your help !

Offline

#7 07-29-2016 17:39:20

M4L
Nouveau membre
Registered: 07-29-2016
Posts: 2

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

I would be happy if someone create a patched and fixed tar archive of ffDiaporama 2.1 or 2.2 for Ubuntu 16.04.
It does not work for me :-(

Thank you

Offline

#8 07-31-2016 14:36:34

JonasCz
Membre
Registered: 06-20-2016
Posts: 10

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

I'll (try to) make a .deb package with my build of 2.2 for 16.04, which seems to mostly work, and I'll upload it somewhere.

Might take a few days, since I'm quite busy right now.

Offline

#9 08-02-2016 14:54:33

JonasCz
Membre
Registered: 06-20-2016
Posts: 10

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

M4L:

Here you go:

https://github.com/JonasCz/ffdiaporama-1604-builds

There's both a patched tarball, .deb builds, and instructions. Both the tarball and the builds work for me. Note that these are not official builds - I just made them myself.

Offline

#10 08-03-2016 11:49:16

cartes82
Nouveau membre
Registered: 08-03-2016
Posts: 1

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

Hi JonasCz,

I tried your deb packages, and now ffdiaporama 2.2 is installed on my Ubuntu 16.04.
As my Ubuntu come from 14.04 upgrade, i will try on an other computer with a fresh install

I've just noticed 65 dependencies with a lot of "-dev" packages but maybe it's a normal thing

Thanks a lot for this packages, it helps a lot

(sorry for my english as i'm french)

Offline

#11 08-26-2016 12:45:49

Sestay
Modérateur
Registered: 09-19-2011
Posts: 454
Website

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

Hello.
it is possible to have it in 64 bit version.

Note about comment on github

Video rendering somethimes hangs at the end if the audio / music is shorter than the video duration

this is only for .wav file i think

Offline

#12 08-27-2016 10:42:51

JonasCz
Membre
Registered: 06-20-2016
Posts: 10

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

No, I cannot easily compile a 64bit version ATM, since the only computer I have right now has a 32bit Ubuntu. Feel free to compile & add 64 bit builds / .debs, I'll accept a pull request.

I've added a note about the fact that that problem only shows up when using .wav files to the GitHub readme.

Offline

#13 08-29-2016 15:50:01

M4L
Nouveau membre
Registered: 07-29-2016
Posts: 2

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

Thank you guys,
for the great work!

Ubuntu 16.04 with ffDiaporama 2.2 power :-)

Soon I will create a German tutorial for ffDiaporama ...

Offline

#14 09-06-2016 03:58:32

cabin
Nouveau membre
Registered: 09-22-2015
Posts: 2

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

Did someone built a 64bit version with JonasCz fixes yet?
Please let me know
Thanks

Offline

#15 09-09-2016 01:11:34

phd21
Nouveau membre
Registered: 09-07-2016
Posts: 2

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

Hi Everyone,

A Linux Mint forum friend "Fred Barclay" compiled the 64 bit versions of FFdiaporama which are available for download in the link below:

FFdiaporama 64-bit for Ubuntu 16.04 and Linux Mint 18. I had to install the rsc first.

ffdiaporama_2.2-1_amd64.deb
https://docs.google.com/uc?id=0B7SC-EcW … t=download

ffdiaporama-rsc_2.2-1_amd64.deb
https://docs.google.com/uc?id=0B7SC-EcW … t=download

I tried the 32-bit debs for FFdiaporama version 2.2 Dev. in Linux Mint 18 Cinnamon which worked. But, It removed my "mint-meta-codecs" (MultiMedia codecs)  and installed 61 other dependencies which I hope replaced the important ones from the mint-meta-codecs.  But I did try it. I also noticed transitions examples were too fast, and the final video test which included some images, and a video, with a sound track mp3, was off; the sound track went off and on, and the final video was erratic. The same video test components worked perfectly in FFdiaporama version 2.1 on Linux Mint 17.3 KDE. But, I am using an ancient 32-bit single core computer with only 2gb ram and a lousy video card, and that was my first test.

I would still like to have the ".deb" files for stable version 2.1 for Ubuntu 16.04 & Linux Mint 18.


Hope this helps ...

Offline

#16 09-12-2016 12:13:42

pepebaeza
Administrateur
From: Sevilla
Registered: 09-17-2011
Posts: 65
Website

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

JonasCz wrote:

No, I cannot easily compile a 64bit version ATM, since the only computer I have right now has a 32bit Ubuntu. Feel free to compile & add 64 bit builds / .debs, I'll accept a pull request.

I've added a note about the fact that that problem only shows up when using .wav files to the GitHub readme.


OK, JonasCz

I have compiled successfully on PC - with Kubuntu, 64 bits.
A query: Do you think to include in the official website of ffDiaporama a link to your github and make an explanation to compile. And maybe add updated to Ubuntu 16.04 builds?

Thanks

Offline

#17 09-12-2016 20:27:11

JonasCz
Membre
Registered: 06-20-2016
Posts: 10

Re: Problems compiling on 16.04 due to missing TagLib in cBaseMediaFile.o

No, I cannot add anything to the ffDiaporama website, these are just my own unofficial builds. But if you or someone else can and / or wants to add a link, that would be nice.

If you want to submit a PR and add those 64-bit builds to my github repo, please do.

Offline

Board footer