History log of /haiku/src/add-ons/media/media-add-ons/dvb/MediaFormat.cpp
Revision Date Author Comments
# d3c8f2b2 09-Apr-2016 Jérôme Duval <jerome.duval@gmail.com>

dvb: update build with ffmpeg 3.0.


# 740ede8c 19-Aug-2014 Colin Günther <coling@gmx.de>

dvb.media_addon: Let C++ use C99 math features.

- This get rids of the complain "'UINT64_C' was not declared in this scope" and
allows us to remove the (now superflous) declaration of UINT64_C.
- No functional change intended.


# 366ee548 07-Jul-2014 Colin Günther <coling@gmx.de>

DVB media addon: Fix debug build.

- Compiling dvb.media_addon with DEBUG on fails with error message:
generated/objects/haiku/x86/debug_1/add-ons/media/media-add-ons/dvb/
MediaFormat.o: In function `av_log2_c': /boot/home/Development/haiku-a4/
generated/build_packages/ffmpeg-0.10.2-r1a4-x86-gcc2-2012-08-30/common/
include/libavutil/common.h:80: undefined reference to `ff_log2_tab'
collect2: ld returned 1 exit status"

- Research done to narrow down the solution space:
- ff_log2_tab is a array that is nowhere needed in the dvb.media_addon
- ff_log2_tab is defined as an extern array in the ffmpeg header file
libavutil/common.h
- ff_log2_tab is used in the inline function av_log2_c (libavutil/common.h)
which doesn't get optimized away when compiling with debug information
- MediaFormat.cpp needs only some Codec-IDs from the ffmpeg header file
avcodec.h

- The following fixes were tried:
- Trying to eliminate unused debug symbols with compilation
flag -feliminate-unused-debug-types (see gcc documentation
http://gcc.gnu.org/onlinedocs/gcc-4.1.2/gcc/Debugging-Options.html#Debugging-Options)
by adding the following lines to UserBuildConfig
AppendToConfigVar C++FLAGS : HAIKU_TOP src : -feliminate-unused-debug-types : global ;
AppendToConfigVar CCFLAGS : HAIKU_TOP src : -feliminate-unused-debug-types : global ;
-> Failed, because flag -feliminate-unused-debug-types is not supported by GCC 2.95.3

- Trying to eliminate unused debug symbols in the linker stage
-> This worked, by removing the LINKFLAG "-Xlinker --no-undefined" when
linking all objects into the dvb.media_addon we are getting our addon
with debug symbols.

- Final solution:
- Instead of adding/removing flags, we just add the missing implementation
for the ff_log2_tab array in MediaFormat.cpp. This -feels- the seems to
be the cleanest solution as it is more obvious what's goin' on compared
to hiding the solution in the Jamfile.

Signed-off-by: Colin Günther <coling@gmx.de>


# 699dc0e3 17-Dec-2010 Marcus Overhagen <marcusoverhagen@gmail.com>

Very ugly hack to make DVB addon find the MPEG and AC3 codecs.
Something appeards to be very wrong with codec registration.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39885 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4da4784a 17-Dec-2010 Marcus Overhagen <marcusoverhagen@gmail.com>

added come debugging code


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39884 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b0b3cab0 25-Apr-2007 Marcus Overhagen <marcusoverhagen@gmail.com>

improved stream format detection


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20827 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fcb9bdc0 23-Apr-2007 Marcus Overhagen <marcusoverhagen@gmail.com>

added Jamfile for dvb.media_addon and fixed compilation problems after refactoring


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20780 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b2859abe 15-Apr-2007 Marcus Overhagen <marcusoverhagen@gmail.com>

Media add-on for DVB.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20707 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 740ede8c9502481c2df77593f4c00311ea9efe6e 19-Aug-2014 Colin Günther <coling@gmx.de>

dvb.media_addon: Let C++ use C99 math features.

- This get rids of the complain "'UINT64_C' was not declared in this scope" and
allows us to remove the (now superflous) declaration of UINT64_C.
- No functional change intended.


# 366ee54830b3889c0bac89b034d6b3198edc6e96 07-Jul-2014 Colin Günther <coling@gmx.de>

DVB media addon: Fix debug build.

- Compiling dvb.media_addon with DEBUG on fails with error message:
generated/objects/haiku/x86/debug_1/add-ons/media/media-add-ons/dvb/
MediaFormat.o: In function `av_log2_c': /boot/home/Development/haiku-a4/
generated/build_packages/ffmpeg-0.10.2-r1a4-x86-gcc2-2012-08-30/common/
include/libavutil/common.h:80: undefined reference to `ff_log2_tab'
collect2: ld returned 1 exit status"

- Research done to narrow down the solution space:
- ff_log2_tab is a array that is nowhere needed in the dvb.media_addon
- ff_log2_tab is defined as an extern array in the ffmpeg header file
libavutil/common.h
- ff_log2_tab is used in the inline function av_log2_c (libavutil/common.h)
which doesn't get optimized away when compiling with debug information
- MediaFormat.cpp needs only some Codec-IDs from the ffmpeg header file
avcodec.h

- The following fixes were tried:
- Trying to eliminate unused debug symbols with compilation
flag -feliminate-unused-debug-types (see gcc documentation
http://gcc.gnu.org/onlinedocs/gcc-4.1.2/gcc/Debugging-Options.html#Debugging-Options)
by adding the following lines to UserBuildConfig
AppendToConfigVar C++FLAGS : HAIKU_TOP src : -feliminate-unused-debug-types : global ;
AppendToConfigVar CCFLAGS : HAIKU_TOP src : -feliminate-unused-debug-types : global ;
-> Failed, because flag -feliminate-unused-debug-types is not supported by GCC 2.95.3

- Trying to eliminate unused debug symbols in the linker stage
-> This worked, by removing the LINKFLAG "-Xlinker --no-undefined" when
linking all objects into the dvb.media_addon we are getting our addon
with debug symbols.

- Final solution:
- Instead of adding/removing flags, we just add the missing implementation
for the ff_log2_tab array in MediaFormat.cpp. This -feels- the seems to
be the cleanest solution as it is more obvious what's goin' on compared
to hiding the solution in the Jamfile.

Signed-off-by: Colin Günther <coling@gmx.de>


# 699dc0e36748caeb50d3050fd8585699c03f7243 17-Dec-2010 Marcus Overhagen <marcusoverhagen@gmail.com>

Very ugly hack to make DVB addon find the MPEG and AC3 codecs.
Something appeards to be very wrong with codec registration.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39885 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4da4784afa15541671d1afb7e3883f81eb3c3ce6 17-Dec-2010 Marcus Overhagen <marcusoverhagen@gmail.com>

added come debugging code


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39884 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b0b3cab0fd5422285eea4458b96e63fd28911eb4 25-Apr-2007 Marcus Overhagen <marcusoverhagen@gmail.com>

improved stream format detection


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20827 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fcb9bdc0c90a4dd4d1011fce41856e532dbd0226 23-Apr-2007 Marcus Overhagen <marcusoverhagen@gmail.com>

added Jamfile for dvb.media_addon and fixed compilation problems after refactoring


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20780 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b2859abe132e7a0f0d438f43ce63a32b6e4ac526 15-Apr-2007 Marcus Overhagen <marcusoverhagen@gmail.com>

Media add-on for DVB.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20707 a95241bf-73f2-0310-859d-f6bbb57e9c96