Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

multimedia library generalised dependancy #154

Closed
mattmill30 opened this issue Jan 20, 2014 · 10 comments
Closed

multimedia library generalised dependancy #154

mattmill30 opened this issue Jan 20, 2014 · 10 comments
Labels
P4 Low Priority

Comments

@mattmill30
Copy link

FFMPEG and LibAV both provide the same components required by Corsix-TH.

For portability and greater availability, Corisix-TH should be adapted to support either library, and the effect of the MOVIES cmake variable should be to select whichever library is available, and enable the compilation of the corresponding libraries interface code.

Optional FFMPEG or LIBAV parameters could be provided to force compilation against a particular library, in the instance that both are available.

@TheCycoONE
Copy link
Member

Code changes are needed to support libav. Libav does not include libswresample, so the audio re-sampling code would need to be changed.

I'm not personally willing to spend time working around their fight. (I know that Gentoo and Ubuntu side with libav, while ArchLinux and others side with ffmpeg so there is interest in both.) That said, patches are welcome.

@TheCycoONE
Copy link
Member

In the mean time for Ubuntu/Debian, either ffmpeg can be acquired through other means or CorsixTH can be built _DWITH_MOVIES=OFF

@TheCycoONE
Copy link
Member

It looks like Ubuntu 15.04 will include ffmpeg: https://launchpad.net/ubuntu/+source/ffmpeg

@tonihele
Copy link

tonihele commented Sep 9, 2015

I have Kubuntu 15.04. I installed all the ffmeg-dev packages, and still I get:
CMake Error at /usr/share/cmake-3.0/Modules/FindPackageHandleStandardArgs.cmake:136 (message):
Could NOT find FFmpeg (missing: AVFORMAT_LIBRARIES AVFORMAT_INCLUDE_DIRS
SWSCALE_LIBRARIES SWSCALE_INCLUDE_DIRS)
Call Stack (most recent call first):
/usr/share/cmake-3.0/Modules/FindPackageHandleStandardArgs.cmake:343 (_FPHSA_FAILURE_MESSAGE)
CMake/FindFFmpeg.cmake:89 (find_package_handle_standard_args)
CorsixTH/CMakeLists.txt:136 (FIND_PACKAGE)

@Alberth289346
Copy link
Contributor

Can you tell us where ffmpeg-dev has its header files, and its libraries?

Also, cmake should have a log of places where it looked for ffmpeg, Could you get the places that it looked for ffmpeg?

@tonihele
Copy link

I assume the libswscale-ffmpeg-dev is the package that is referred by the error. Package manager has this to say about its directories:
/usr/include/x86_64-linux-gnu/libswscale/swscale.h
/usr/include/x86_64-linux-gnu/libswscale/version.h
/usr/lib/x86_64-linux-gnu/libswscale-ffmpeg.a
/usr/lib/x86_64-linux-gnu/libswscale-ffmpeg.so
/usr/lib/x86_64-linux-gnu/libswscale.a
/usr/lib/x86_64-linux-gnu/libswscale.so
/usr/lib/x86_64-linux-gnu/pkgconfig/libswscale-ffmpeg.pc
/usr/lib/x86_64-linux-gnu/pkgconfig/libswscale.pc
/usr/share/doc/libswscale-ffmpeg-dev/changelog.Debian.gz
/usr/share/doc/libswscale-ffmpeg-dev/copyright

@tonihele
Copy link

I'm unable to determine where this cmake logs these. I found some logs. But I was not able to say where is tells the needed info. Could you point me in right direction?

@Alberth289346
Copy link
Contributor

CMakeFiles seems to have .log files, but I can't find my ffmpeg libraries in it.

Also, it seems to consider other libraries as being ffmpeg. I don't know if it's working, as I have movies disabled in the config:

-- Found AVCODEC: /usr/lib64/libavcodec.so (found version "56.26.100") 
-- Found AVFORMAT: /usr/lib64/libavformat.so (found version "56.25.101") 
-- Found AVDEVICE: /usr/lib64/libavdevice.so (found version "56.4.100") 
-- Found AVUTIL: /usr/lib64/libavutil.so (found version "54.20.100") 
-- Found SWSCALE: /usr/lib64/libswscale.so (found version "3.1.101") 
-- Found POSTPROC: /usr/lib64/libpostproc.so (found version "53.3.100") 
-- Found SWRESAMPLE: /usr/lib64/libswresample.so (found version "1.1.100") 
-- Found FFmpeg: /usr/lib64/libavformat.so;/usr/lib64/libavcodec.so;/usr/lib64/libavutil.so;/usr/lib64/libswscale.so;/usr/lib64/libswresample.so  
  FFmpeg found

This is Fedora, maybe your libraries have a different name. (package of avdevice is however ffmpeg-devel-2.6.4-1.fc22.x86_64, so that seems to be correct)

@TheCycoONE
Copy link
Member

On Ubuntu you'll need to use -DWITH_LIBAV=ON or else manually specify the location of ffmpeg. CorsixTH supports LibAV these days.

@Lego3
Copy link
Contributor

Lego3 commented Nov 28, 2015

Closing the issue

@Lego3 Lego3 closed this as completed Nov 28, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P4 Low Priority
Projects
None yet
Development

No branches or pull requests

6 participants