Project

General

Profile

Actions

Bug #1898

closed

Work with recent versions of libav / system

Added by ewl over 9 years ago. Updated almost 8 years ago.

Status:
Closed
Priority:
High
Assignee:
Target version:
Start date:
08/10/2014
Due date:
% Done:

100%

Estimated time:

Description

Hi,

trying to compile markad under Debian jessie (libav version 10.3), I had multiple errors in command/decoder.cpp regarding snprintf and various CODEC_ID constants not declared in this scope. I was able to fix the issue by including stdio.h and adding AV_ at the beginning of each constant.
Attached are the patches required to get markad compile, I guess that some more magic is required to keep markad compiling also with older versions of ffmpeg respectively libav.

Hope this helps,
Eric


Files

add-stdio-include (1022 Bytes) add-stdio-include ewl, 08/10/2014 06:27 PM
av_codec_id-prefix (4.78 KB) av_codec_id-prefix ewl, 08/10/2014 06:27 PM
compile_vdr_markad_0.1.5pre (4.92 KB) compile_vdr_markad_0.1.5pre Partial build output Anson, 03/21/2016 11:17 PM
Actions #1

Updated by Joe_D over 9 years ago

  • Status changed from New to Feedback
  • Assignee set to Joe_D
  • % Done changed from 0 to 50

Added #ifdefs to latest GIT, please check.

Actions #2

Updated by rell over 9 years ago

the #ifdefs in lines 105-116
break compilation here with error, that CODEC_* are not declared in that context.
omitting these works fine here but possibly break it with older LIBAV versions.

Maybe adding some ifs which are testing the AVCODEC version like http://projects.vdr-developer.org/projects/plg-softhddevice/repository/revisions/8b7402a397bf460e25a75add8059aa2eb83709ee/diff/codec.c does it, are a reasonable solution.

rell

Actions #4

Updated by Joe_D over 8 years ago

  • % Done changed from 50 to 70

Please try latest git and give me some feedback...

Actions #5

Updated by Anson about 8 years ago

When compiling current 0.1.5pre source on Debian Stretch (testing) I do not get compiler errors in decoder.cpp (using 0.1.4 source I do), but I get linker errors with avcodec functions.

..../command/decoder.cpp:125: undefined reference to `avcodec_register_all'
..../command/decoder.cpp:150: undefined reference to `avcodec_version'
..../command/decoder.cpp:162: undefined reference to `avcodec_configuration'
..../command/decoder.cpp:186: undefined reference to `avcodec_find_decoder'
..../command/decoder.cpp:197: undefined reference to `avcodec_alloc_context3'
..../command/decoder.cpp:223: undefined reference to `avcodec_open2'
..../command/decoder.cpp:231: undefined reference to `avcodec_find_decoder'
..../command/decoder.cpp:240: undefined reference to `avcodec_open2'
...

Actions #6

Updated by Anson about 8 years ago

After doing a
apt-get install pkg-config

it now compiles successfully on Debian Stretch (testing). Thank you.

Actions #7

Updated by Joe_D almost 8 years ago

  • Status changed from Feedback to Closed
  • % Done changed from 70 to 100
Actions

Also available in: Atom PDF