Page 1 of 1

FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 13.10

Posted: Jan 6th '14, 11:37
by JohannesG
I recently switched to Linux full time and after hearing about Aleph One supporting the original Marathon data files (Thank you Trellama, and the rest of the devs!) I decided to set up Aleph One on my new Linux box. I am running Ubuntu 13.10 with 3.12.5-031205-generic kernel.

This is most likely trivial but I'm not the brightest one when it comes to compiling and such. Below I pasted the errors I get when running ./configure on Aleph One 1.1

Probably unimportant, decided to put it here just in case though.

Code: Select all

checking for sysctlbyname... no
Here's the thing that breaks. Seems like simple dependency problems but oddly enough I have FFMPEG (version 0.8.9-6:0.8.9-0ubuntu0.13.10.1) installed from the Ubuntu repositories. I also tried installing libavcodec53, libavformat53, libavutil51 and libswscale2 from the Ubuntu repos without luck.

Code: Select all

checking for FFMPEG... no
configure: error: Package requirements (libavcodec >= 53.35.0 libavformat >= 53.21.0 libavutil >= 51.22.0 libswscale >= 2.1.0) were not met:

No package 'libavcodec' found
No package 'libavformat' found
No package 'libavutil' found
No package 'libswscale' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables FFMPEG_CFLAGS
and FFMPEG_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
Thanks in advance! <3

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 6th '14, 14:57
by treellama
Do you have the -dev versions of those packages installed?

libavcodec-dev
libavformat-dev
libavutil-dev
libswscale-dev

We need to get the wiki build instructions updated to reflect the addition of ffmpeg, sorry!

Configuration shouldn't fail if you don't have the ffmpeg libraries--it should just not compile that support in. Are you seeing it fail altogether?

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 6th '14, 17:12
by JohannesG
The configuration failed and I couldn't make afterwards. (no makefile generated if I remember correctly)

I just tried installing the dev packages and now everything runs smoothly and detects FFMPEG.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 7th '14, 13:37
by JohannesG
PS: Treellama, if you need someone to help with documentation and such for the Linux builds then I am more than ready to look into it. Just let me know.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 7th '14, 14:47
by treellama
Thanks for the offer! In this case, it appears Hopper has already added the necessary commands for compiling under Ubuntu to the wiki.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 7th '14, 19:58
by Hopper
If you're feeling generous, the README and INSTALL files that come with the releases haven't been touched in over 7 years, and are full of obsolete info and links. You'd have my undying gratitude if you could bring those in line with present reality, and that process would probably highlight where we need to beef up our site and/or wiki with clearer instructions.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 7th '14, 20:20
by treellama
^ this

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 8th '14, 13:58
by irons
I have a similar or related problem, this time during make:

Code: Select all

make[4]: Leaving directory `/home/jonirons/downloads/program/AlephOne-20140104'
g++ -DHAVE_CONFIG_H -I. -I../.. -I../../Source_Files/CSeries -I../../Source_Files/Files -I../../Source_Files/GameWorld -I../../Source_Files/Input -I../../Source_Files/Misc -I../../Source_Files/ModelView -I../../Source_Files/Network -I../../Source_Files/Sound -I../../Source_Files/RenderMain -I../../Source_Files/RenderOther -I../../Source_Files/XML -I../../Source_Files -D__STDC_CONSTANT_MACROS -I/usr/include/libpng15    -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -DSDL  -g -O2 -MT Movie.o -MD -MP -MF .deps/Movie.Tpo -c -o Movie.o Movie.cpp
Movie.cpp: In member function ‘bool Movie::Setup()’:
Movie.cpp:494:61: error: ‘AVStream’ has no member named ‘quality’
Movie.cpp: In member function ‘void Movie::EncodeVideo(bool)’:
Movie.cpp:618:21: warning: ‘int avcodec_encode_video(AVCodecContext*, uint8_t*, int, const AVFrame*)’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:4272) [-Wdeprecated-declarations]
Movie.cpp:620:47: warning: ‘int avcodec_encode_video(AVCodecContext*, uint8_t*, int, const AVFrame*)’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:4272) [-Wdeprecated-declarations]
make[3]: *** [Movie.o] Error 1
make[3]: Leaving directory `/home/jonirons/downloads/program/AlephOne-20140104/Source_Files/FFmpeg'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/jonirons/downloads/program/AlephOne-20140104/Source_Files'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/jonirons/downloads/program/AlephOne-20140104'
make: *** [all] Error 2
A few things working against me already:
  • I'm on Gentoo (but at least I automatically have "dev" packages)
  • I'm running the latest available nvidia driver, which apparently causes all kinds of weird problems, but maybe not this one
Configure didn't complain about anything. Also, my last build of Aleph One (20130813) had no problems. I re-ran ./configure using --disable-ffmpeg and --disable-smpeg; compilation succeeded. As you know, though, I'm a huge fan of the cutscenes used in EMR, and I really need those as soon as possible.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 8th '14, 14:23
by treellama
What version of libav is in Gentoo stable?

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 8th '14, 15:19
by irons
v0.8.7. 100% confident that Gentoo is 10-12 years ahead of other distros in its package versions.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 8th '14, 16:51
by treellama
The quality member of AVStream is marked as deprecated in my avformat 0.8.9. We'll have to fix it on this end.

SMPEG should still work to play back those EMR cutscenes, though! It will probably be removed next release.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 8th '14, 17:29
by irons
I'd file a bug, but I only do Agile development now.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 8th '14, 23:54
by Wrkncacnter
I have a similar or related problem, this time during the download of the latest nightly.

I couldn't get the download to work. Please fix.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 9th '14, 01:56
by irons
Treellama could fix this by reinstating nightly builds.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 9th '14, 10:29
by JohannesG
Hopper wrote:If you're feeling generous, the README and INSTALL files that come with the releases haven't been touched in over 7 years, and are full of obsolete info and links. You'd have my undying gratitude if you could bring those in line with present reality, and that process would probably highlight where we need to beef up our site and/or wiki with clearer instructions.
I'll take a look!

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 13th '14, 22:04
by ChauSara
Going to hop in here with another compilation problem with ffmpeg on Linux, although it seems unrelated to these.

Code: Select all

Making all in FFmpeg
make[3]: Entering directory '/home/user/AlephOne-20140104/Source_Files/FFmpeg'
gcc -DHAVE_CONFIG_H -I. -I../.. -I../../Source_Files/CSeries -I../../Source_Files/Files -I../../Source_Files/GameWorld -I../../Source_Files/Input -I../../Source_Files/Misc -I../../Source_Files/ModelView -I../../Source_Files/Network -I../../Source_Files/Sound -I../../Source_Files/RenderMain -I../../Source_Files/RenderOther -I../../Source_Files/XML -I../../Source_Files -D__STDC_CONSTANT_MACROS -I/usr/include/libpng16  -D_FORTIFY_SOURCE=2   -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -DSDL -std=c99 -g -O2 -MT SDL_ffmpeg.o -MD -MP -MF .deps/SDL_ffmpeg.Tpo -c -o SDL_ffmpeg.o SDL_ffmpeg.c
SDL_ffmpeg.c: In function ‘SDL_ffmpegFree’:
SDL_ffmpeg.c:327:13: warning: ‘av_close_input_file’ is deprecated (declared at /usr/include/libavformat/avformat.h:1793) [-Wdeprecated-declarations]
             av_close_input_file( file->_ffmpeg );
             ^
SDL_ffmpeg.c: In function ‘SDL_ffmpegOpen’:
SDL_ffmpeg.c:498:66: error: ‘AVCODEC_MAX_AUDIO_FRAME_SIZE’ undeclared (first use in this function)
                     stream->sampleBuffer = ( int8_t* )av_malloc( AVCODEC_MAX_AUDIO_FRAME_SIZE * sizeof( int16_t ) );
                                                                  ^
SDL_ffmpeg.c:498:66: note: each undeclared identifier is reported only once for each function it appears in
SDL_ffmpeg.c: In function ‘SDL_ffmpegDecodeAudioFrame’:
SDL_ffmpeg.c:1965:21: error: ‘AVCODEC_MAX_AUDIO_FRAME_SIZE’ undeclared (first use in this function)
     int audioSize = AVCODEC_MAX_AUDIO_FRAME_SIZE * sizeof( int16_t );
                     ^
SDL_ffmpeg.c:2039:9: warning: ‘avcodec_decode_audio3’ is deprecated (declared at /usr/include/libavcodec/avcodec.h:3787) [-Wdeprecated-declarations]
         int len = avcodec_decode_audio3( file->audioStream->_ffmpeg->codec, ( int16_t* )file->audioStream->sampleBuffer, &audioSize, pack );
         ^
Makefile:284: recipe for target 'SDL_ffmpeg.o' failed
On an up-to-date Arch installation with this. Trying out the latest revision from the cvs doesn't seem to work either, although the problem source file hasn't been updated for a few months, so I can't imagine much difference.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 13th '14, 23:09
by Hopper
Thanks for the report, ChauSara. Short answer is, FFmpeg's API changes a lot, and I didn't test recent enough releases before declaring it ready for 1.1.

Thanks to you too, irons. I still have no idea why it fails with that version, but I removed the problem call regardless. Anti-thanks to you and W'rk for being yourselves.

And while I'm at it, sorry about configure failing, JohannesG. I'm terrible at autoconf and must have screwed something up. Hopefully I can figure out what when I get the time.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 14th '14, 00:24
by ChauSara
Hopper wrote:Thanks for the report, ChauSara. Short answer is, FFmpeg's API changes a lot, and I didn't test recent enough releases before declaring it ready for 1.1.
Which version of FFmpeg did you test it against? I'm fine with Aleph One not being on the bleeding edge at all times, and I'll just downgrade to get it to work.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 14th '14, 03:47
by Hopper
Mac and Windows builds use ffmpeg 0.10.x. Earlier in 2013, I'd tested through ffmpeg 1.2.x, but the late addition that broke irons' compile probably broke most newer versions.

If you're not interested in video export, FFmpeg is optional; just pass --disable-ffmpeg. The same sndfile, etc. will be used for decoding audio. You shouldn't need --disable-smpeg, which means you can still watch those wonderful cutscenes, irons.

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 14th '14, 05:05
by patrick
Hoppah wrote:you can still watch those wonderful cutscenes, irons.
{for now at least}

Re: FFMPEG Problems with compiling Aleph One 1.1 on Ubuntu 1

Posted: Jan 14th '14, 22:34
by irons
patrick wrote:{for now at least}
:(