Page 1 of 1

port live555 to android?

Posted: 24 Mar 2011 06:15
by playing
i want vlc-android could play live stream video,so i must port live555 to android,right?
i chanage vlc-android/extras/contrib :
all: .zlib \
.a52 .mpeg2 .mad .ogg .vorbis .vorbisenc .theora \
.flac .speex .faad .lame .ffmpeg \
.twolame \
.png .dvbpsi \
.dca .kate .live
i add .live

i also changage contrib/build-src/live/config.armlinux:
CROSS_COMPILE?= arm-linux-androideabi-

i cd contrib and run make ,this error show:

administrator@ubuntu:~/code/vlc-android/extras/contrib$ make
make -C build-src tools
make[1]: Entering directory `/home/administrator/code/vlc-android/extras/contrib/build-src'
make[1]: warning: -jN forced in submake: disabling jobserver mode.
make[1]: Nothing to be done for `tools'.
make[1]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src'
make -C build-src
make[1]: Entering directory `/home/administrator/code/vlc-android/extras/contrib/build-src'
make[1]: warning: -jN forced in submake: disabling jobserver mode.
(cd live; sed -e 's/=/= EXTRA_CPPFLAGS/' -e 's%EXTRA_CPPFLAGS%-I/include%' -i.orig groupsock/Makefile.head )
(cd live; ./genMakefiles armlinux && make CC="arm-linux-androideabi-gcc -nostdlib -lc -lgcc" CXX="arm-linux-androideabi-g++ -nostdlib -lc -lgcc" LD="arm-linux-androideabi-ld" RANLIB="arm-linux-androideabi-ranlib" AR="arm-linux-androideabi-ar" STRIP="arm-linux-androideabi-strip")
make[2]: Entering directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live'
make[2]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule.
cd liveMedia ; make
make[3]: Entering directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live/liveMedia'
arm-linux-androideabi-g++ -c -Iinclude -I../UsageEnvironment/include -I../groupsock/include -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -Wall -DBSD=1 Media.cpp
In file included from ../groupsock/include/NetCommon.h:70,
from ../UsageEnvironment/include/UsageEnvironment.hh:28,
from include/Media.hh:33,
from Media.cpp:21:
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:43:20: error: stdint.h: No such file or directory
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:44:23: error: sys/cdefs.h: No such file or directory
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:46:31: error: linux/posix_types.h: No such file or directory
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:47:23: error: asm/types.h: No such file or directory
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:48:25: error: linux/types.h: No such file or directory
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:49:28: error: machine/kernel.h: No such file or directory
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:126:27: error: sys/sysmacros.h: No such file or directory
In file included from ../UsageEnvironment/include/UsageEnvironment.hh:28,
from include/Media.hh:33,
from Media.cpp:21:
../groupsock/include/NetCommon.h:71:24: error: sys/socket.h: No such file or directory
../groupsock/include/NetCommon.h:72:22: error: sys/time.h: No such file or directory
../groupsock/include/NetCommon.h:73:24: error: netinet/in.h: No such file or directory
../groupsock/include/NetCommon.h:74:23: error: arpa/inet.h: No such file or directory
../groupsock/include/NetCommon.h:75:19: error: netdb.h: No such file or directory
../groupsock/include/NetCommon.h:76:20: error: unistd.h: No such file or directory
../groupsock/include/NetCommon.h:77:20: error: string.h: No such file or directory
../groupsock/include/NetCommon.h:78:20: error: stdlib.h: No such file or directory
../groupsock/include/NetCommon.h:79:19: error: errno.h: No such file or directory
../groupsock/include/NetCommon.h:80:21: error: strings.h: No such file or directory
../groupsock/include/NetCommon.h:81:19: error: ctype.h: No such file or directory
In file included from include/Media.hh:40,
from Media.cpp:21:
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:51:24: error: sys/_types.h: No such file or directory
In file included from ../groupsock/include/NetCommon.h:70,
from ../UsageEnvironment/include/UsageEnvironment.hh:28,
from include/Media.hh:33,
from Media.cpp:21:
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:51: error: '__u32' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:61: error: '__kernel_blkcnt_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:62: error: '__kernel_blksize_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:63: error: '__kernel_clock_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:64: error: '__kernel_clockid_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:65: error: '__kernel_dev_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:66: error: '__kernel_fsblkcnt_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:67: error: '__kernel_fsfilcnt_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:68: error: '__kernel_gid32_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:69: error: '__kernel_id_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:70: error: '__kernel_ino_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:71: error: '__kernel_key_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:72: error: '__kernel_mode_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:73: error: '__kernel_nlink_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:76: error: '__kernel_off_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:78: error: '__kernel_loff_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:79: error: 'loff_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:81: error: '__kernel_pid_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:112: error: '__kernel_suseconds_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:113: error: '__kernel_time_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:114: error: '__kernel_uid32_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:117: error: '__kernel_daddr_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:118: error: '__kernel_timer_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:119: error: '__kernel_mqd_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/sys/types.h:121: error: '__kernel_caddr_t' does not name a type
In file included from include/Media.hh:33,
from Media.cpp:21:
../UsageEnvironment/include/UsageEnvironment.hh:103: error: 'u_int32_t' does not name a type
../UsageEnvironment/include/UsageEnvironment.hh:109: error: 'int64_t' has not been declared
../UsageEnvironment/include/UsageEnvironment.hh:122: error: 'int64_t' has not been declared
In file included from include/Media.hh:33,
from Media.cpp:21:
../UsageEnvironment/include/UsageEnvironment.hh:144: error: 'EventTriggerId' does not name a type
../UsageEnvironment/include/UsageEnvironment.hh:147: error: 'EventTriggerId' has not been declared
../UsageEnvironment/include/UsageEnvironment.hh:149: error: 'EventTriggerId' has not been declared
In file included from include/Media.hh:40,
from Media.cpp:21:
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:87: error: 'off_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:141: error: expected identifier before '*' token
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:141: error: 'fpos_t' has not been declared
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:141: error: 'fpos_t' declared as function returning a function
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:159: error: 'fpos_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:163: error: expected constructor, destructor, or type conversion before 'extern'
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:164: error: '__END_DECLS' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:239: error: 'fpos_t' has not been declared
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:249: error: 'off_t' has not been declared
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:250: error: expected ',' or '...' before '*' token
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:252: error: 'off_t' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:301: error: '__END_DECLS' does not name a type
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/include-fixed/stdio.h:393: error: expected constructor, destructor, or type conversion before 'static'
make[3]: *** [Media.o] Error 1
make[3]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live/liveMedia'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live'
make[1]: *** [.live] Error 2
make[1]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src'
make: *** [using-src] Error 2

who know how to port live555 to android? i want vlc-android play live stream video , thanks

Re: port live555 to android?

Posted: 29 Mar 2011 05:01
by playing
these .h file can't bean found:
../groupsock/include/NetCommon.h:71:24: error: sys/socket.h: No such file or directory
../groupsock/include/NetCommon.h:72:22: error: sys/time.h: No such file or directory
../groupsock/include/NetCommon.h:73:24: error: netinet/in.h: No such file or directory
../groupsock/include/NetCommon.h:74:23: error: arpa/inet.h: No such file or directory
../groupsock/include/NetCommon.h:75:19: error: netdb.h: No such file or directory
../groupsock/include/NetCommon.h:76:20: error: unistd.h: No such file or directory
../groupsock/include/NetCommon.h:77:20: error: string.h: No such file or directory
../groupsock/include/NetCommon.h:78:20: error: stdlib.h: No such file or directory
../groupsock/include/NetCommon.h:79:19: error: errno.h: No such file or directory
../groupsock/include/NetCommon.h:80:21: error: strings.h: No such file or directory
../groupsock/include/NetCommon.h:81:19: error: ctype.h: No such file or directory


how live555 find these file?

Re: port live555 to android?

Posted: 29 Mar 2011 10:11
by playing
so i add -I/home/administrator/android-ndk-r5b/platforms/android-9/arch-arm/usr/include to /home/administrator/code/vlc-android/extras/contrib/build-src/live/liveMedia/Makefile.head

can find .h file now , but aslo have error


-DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 rtcp_from_spec.c
arm-linux-androideabi-g++ -c -Iinclude -I../UsageEnvironment/include -I../groupsock/include -I/home/administrator/android-ndk-r5b/platforms/android-9/arch-arm/usr/include -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -Wall -DBSD=1 RTSPServer.cpp
RTSPServer.cpp: In member function 'virtual void RTSPServer::RTSPClientSession::handleCmd_SETUP(const char*, const char*, const char*, const char*)':
RTSPServer.cpp:828: warning: suggest parentheses around '&&' within '||'
arm-linux-androideabi-g++ -c -Iinclude -I../UsageEnvironment/include -I../groupsock/include -I/home/administrator/android-ndk-r5b/platforms/android-9/arch-arm/usr/include -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -Wall -DBSD=1 RTSPClient.cpp
In file included from RTSPClient.cpp:24:
include/Locale.hh:49: error: 'locale_t' does not name a type
include/Locale.hh:45: error: 'LC_ALL_MASK' was not declared in this scope
RTSPClient.cpp: In function 'char* createScaleString(float, float)':
RTSPClient.cpp:473: error: 'LC_NUMERIC_MASK' was not declared in this scope
RTSPClient.cpp: In function 'char* createRangeString(double, double)':
RTSPClient.cpp:487: error: 'LC_NUMERIC_MASK' was not declared in this scope
RTSPClient.cpp:491: error: 'LC_NUMERIC_MASK' was not declared in this scope
RTSPClient.cpp: In member function 'Boolean RTSPClient::parseScaleParam(const char*, float&)':
RTSPClient.cpp:923: error: 'LC_NUMERIC_MASK' was not declared in this scope
make[3]: *** [RTSPClient.o] Error 1
make[3]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live/liveMedia'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live'
make[1]: *** [.live] Error 2
make[1]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src'
make: *** [using-src] Error 2

Re: port live555 to android?

Posted: 29 Mar 2011 11:32
by playing
i open /home/administrator/code/vlc-android/extras/contrib/build-src/live/liveMedia/include/Locale.hh
and see this
#ifndef _LOCALE_HH
#define _LOCALE_HH

// If you're on a system that (for whatever reason) doesn't have the "setlocale()" function, then
// add "-DLOCALE_NOT_USED" to your "config.*" file.

#ifndef LOCALE_NOT_USED
#include <locale.h>
#ifdef __APPLE__
#include <xlocale.h>
#endif
#else
#ifndef LC_ALL_MASK
#define LC_ALL_MASK 0
#endif
#ifndef LC_NUMERIC_MASK
#define LC_NUMERIC_MASK 0
#endif
typedef int locale_t;
#endif

class Locale {
public:
Locale(char const* newLocale, int category = LC_ALL_MASK);
virtual ~Locale();

private:
locale_t fLocale, fPrevLocale;
};

#endif

so is then LOCALE_NOT_USED problem , i grep
administrator@ubuntu:~/code/vlc-android/extras/contrib/build-src/live$ grep -r "LOCALE_NOT_USED" *
config.mingw:COMPILE_OPTS = $(INCLUDES) -I. -O -DSOCKLEN_T=int -DLOCALE_NOT_USED
liveMedia/Locale.cpp:#ifndef LOCALE_NOT_USED
liveMedia/Locale.cpp:#ifndef LOCALE_NOT_USED
liveMedia/include/Locale.hh:// add "-DLOCALE_NOT_USED" to your "config.*" file.
liveMedia/include/Locale.hh:#ifndef LOCALE_NOT_USED
administrator@ubuntu:~/code/vlc-android/extras/contrib/build-src/live$


so i add -DLOCALE_NOT_USED to config.armlinux

CROSS_COMPILE?= arm-linux-androideabi-
COMPILE_OPTS = $(INCLUDES) -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLOCALE_NOT_USED

so this error is fix, and libliveMedia.a is builded

Re: port live555 to android?

Posted: 30 Mar 2011 03:53
by playing
i Entering directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live/groupsock'
chanage makefile.head add -I/home/administrator/android-ndk-r5b/platforms/android-9/arch-arm/usr/include
then make
administrator@ubuntu:~/code/vlc-android/extras/contrib$ make

then got these error
administrator@ubuntu:~/code/vlc-android/extras/contrib$ make
make -C build-src tools
make[1]: Entering directory `/home/administrator/code/vlc-android/extras/contrib/build-src'
make[1]: warning: -jN forced in submake: disabling jobserver mode.
make[1]: Nothing to be done for `tools'.
make[1]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src'
make -C build-src
make[1]: Entering directory `/home/administrator/code/vlc-android/extras/contrib/build-src'
make[1]: warning: -jN forced in submake: disabling jobserver mode.
(cd live; sed -e 's/=/= EXTRA_CPPFLAGS/' -e 's%EXTRA_CPPFLAGS%-I/include%' -i.orig groupsock/Makefile.head )
(cd live; ./genMakefiles armlinux && make CC="arm-linux-androideabi-gcc -nostdlib -lc -lgcc" CXX="arm-linux-androideabi-g++ -nostdlib -lc -lgcc" LD="arm-linux-androideabi-ld" RANLIB="arm-linux-androideabi-ranlib" AR="arm-linux-androideabi-ar" STRIP="arm-linux-androideabi-strip")
make[2]: Entering directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live'
make[2]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule.
cd liveMedia ; make
make[3]: Entering directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live/liveMedia'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live/liveMedia'
cd groupsock ; make
make[3]: Entering directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live/groupsock'
arm-linux-androideabi-g++ -c -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -I/include -Iinclude -I../UsageEnvironment/include -I/home/administrator/android-ndk-r5b/platforms/android-9/arch-arm/usr/include -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLOCALE_NOT_USED -Wall -DBSD=1 GroupsockHelper.cpp
GroupsockHelper.cpp: In function 'Boolean socketJoinGroupSSM(UsageEnvironment&, int, netAddressBits, netAddressBits)':
GroupsockHelper.cpp:427: error: request for member 's_addr' in 'imr.ip_mreq_source::imr_multiaddr', which is of non-class type '__u32'
GroupsockHelper.cpp:428: error: request for member 's_addr' in 'imr.ip_mreq_source::imr_sourceaddr', which is of non-class type '__u32'
GroupsockHelper.cpp:429: error: request for member 's_addr' in 'imr.ip_mreq_source::imr_interface', which is of non-class type '__u32'
GroupsockHelper.cpp: In function 'Boolean socketLeaveGroupSSM(UsageEnvironment&, int, netAddressBits, netAddressBits)':
GroupsockHelper.cpp:445: error: request for member 's_addr' in 'imr.ip_mreq_source::imr_multiaddr', which is of non-class type '__u32'
GroupsockHelper.cpp:446: error: request for member 's_addr' in 'imr.ip_mreq_source::imr_sourceaddr', which is of non-class type '__u32'
GroupsockHelper.cpp:447: error: request for member 's_addr' in 'imr.ip_mreq_source::imr_interface', which is of non-class type '__u32'
make[3]: *** [GroupsockHelper.o] Error 1
make[3]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live/groupsock'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live'
make[1]: *** [.live] Error 2
make[1]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src'
make: *** [using-src] Error 2

i found this 2 function in GroupsockHelper.cpp

Boolean socketJoinGroupSSM (UsageEnvironment& env, int socket,
netAddressBits groupAddress,
netAddressBits sourceFilterAddr) {
if (!IsMulticastAddress(groupAddress)) return True; // ignore this case

struct ip_mreq_source imr;
imr.imr_multiaddr.s_addr = groupAddress;
imr.imr_sourceaddr.s_addr = sourceFilterAddr;
imr.imr_interface.s_addr = ReceivingInterfaceAddr;
if (setsockopt(socket, IPPROTO_IP, IP_ADD_SOURCE_MEMBERSHIP,
(const char*)&imr, sizeof (struct ip_mreq_source)) < 0) {
socketErr(env, "setsockopt(IP_ADD_SOURCE_MEMBERSHIP) error: ");
return False;
}

return True;
}

Boolean socketLeaveGroupSSM(UsageEnvironment& /*env*/, int socket,
netAddressBits groupAddress,
netAddressBits sourceFilterAddr) {
if (!IsMulticastAddress(groupAddress)) return True; // ignore this case

struct ip_mreq_source imr;
imr.imr_multiaddr.s_addr = groupAddress;
imr.imr_sourceaddr.s_addr = sourceFilterAddr;
imr.imr_interface.s_addr = ReceivingInterfaceAddr;
if (setsockopt(socket, IPPROTO_IP, IP_DROP_SOURCE_MEMBERSHIP,
(const char*)&imr, sizeof (struct ip_mreq_source)) < 0) {
return False;
}

return True;
}

so i search this error use google ,and find http://stackoverflow.com/questions/5040 ... re-c-error
then i chanage socketJoinGroupSSM socketLeaveGroupSSM:

struct ip_mreq_source imr;
//playing 2011.3.30
//imr.imr_multiaddr.s_addr = groupAddress;
//imr.imr_sourceaddr.s_addr = sourceFilterAddr;
//imr.imr_interface.s_addr = ReceivingInterfaceAddr;
imr.imr_multiaddr = groupAddress;
imr.imr_sourceaddr = sourceFilterAddr;
imr.imr_interface = ReceivingInterfaceAddr;
if (setsockopt(socket, IPPROTO_IP, IP_ADD_SOURCE_MEMBERSHIP,
(const char*)&imr, sizeof (struct ip_mreq_source)) < 0) {
socketErr(env, "setsockopt(IP_ADD_SOURCE_MEMBERSHIP) error: ");
return False;
}

return True;
}

Boolean socketLeaveGroupSSM(UsageEnvironment& /*env*/, int socket,
netAddressBits groupAddress,
netAddressBits sourceFilterAddr) {
if (!IsMulticastAddress(groupAddress)) return True; // ignore this case

struct ip_mreq_source imr;
//playing 2011.3.30
//imr.imr_multiaddr.s_addr = groupAddress;
// imr.imr_sourceaddr.s_addr = sourceFilterAddr;
//imr.imr_interface.s_addr = ReceivingInterfaceAddr;
imr.imr_multiaddr = groupAddress;
imr.imr_sourceaddr = sourceFilterAddr;
imr.imr_interface= ReceivingInterfaceAddr;
if (setsockopt(socket, IPPROTO_IP, IP_DROP_SOURCE_MEMBERSHIP,
(const char*)&imr, sizeof (struct ip_mreq_source)) < 0) {
return False;
}

return True;
}

ok this error is fixed, and libgroupsock.a has been builded

Re: port live555 to android?

Posted: 30 Mar 2011 04:52
by playing
i Entering directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live/UsageEnvironment' chanage makefile.head
add -I/home/administrator/android-ndk-r5b/platforms/android-9/arch-arm/usr/include

the same `/home/administrator/code/vlc-android/extras/contrib/build-src/live/BasicUsageEnvironment/makefile.head
/home/administrator/code/vlc-android/extras/contrib/build-src/live/testprogs/makefile.head
/home/administrator/code/vlc-android/extras/contrib/build-src/live/testprogs/makefile.head
remake libUsageEnvironment.a libBasicUsageEnvironment.a has been builded

got a error

Re: port live555 to android?

Posted: 30 Mar 2011 04:53
by playing
cd testProgs ; make
make[3]: Entering directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live/testProgs'
arm-linux-androideabi-g++ -c -I../UsageEnvironment/include -I../groupsock/include -I../liveMedia/include -I../BasicUsageEnvironment/include -I/home/administrator/android-ndk-r5b/platforms/android-9/arch-arm/usr/include -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLOCALE_NOT_USED -Wall -DBSD=1 testMP3Streamer.cpp
arm-linux-androideabi-g++ -otestMP3Streamer testMP3Streamer.o ../liveMedia/libliveMedia.a ../groupsock/libgroupsock.a ../BasicUsageEnvironment/libBasicUsageEnvironment.a ../UsageEnvironment/libUsageEnvironment.a
/home/administrator/android-ndk-r5b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.4.3/../../../../arm-linux-androideabi/bin/ld: crtbegin_dynamic.o: No such file: No such file or directory
collect2: ld returned 1 exit status
make[3]: *** [testMP3Streamer] Error 1
make[3]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live/testProgs'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src/live'
make[1]: *** [.live] Error 2
make[1]: Leaving directory `/home/administrator/code/vlc-android/extras/contrib/build-src'
make: *** [using-src] Error 2
administrator@ubuntu:~/code/vlc-android/extras/contrib$


i found /home/administrator/android-ndk-r5b/platforms/android-9/arch-arm/usr/lib have crtbegin_dynamic.o

i don't know how to fix this
so i Modify /home/administrator/code/vlc-android/extras/contrib/build-src/live/makefile.tail

##### End of variables to change

LIVEMEDIA_DIR = liveMedia
GROUPSOCK_DIR = groupsock
USAGE_ENVIRONMENT_DIR = UsageEnvironment
BASIC_USAGE_ENVIRONMENT_DIR = BasicUsageEnvironment

TESTPROGS_DIR = testProgs

MEDIA_SERVER_DIR = mediaServer

all:
cd $(LIVEMEDIA_DIR) ; $(MAKE)
cd $(GROUPSOCK_DIR) ; $(MAKE)
cd $(USAGE_ENVIRONMENT_DIR) ; $(MAKE)
cd $(BASIC_USAGE_ENVIRONMENT_DIR) ; $(MAKE)
#cd $(TESTPROGS_DIR) ; $(MAKE)
#cd $(MEDIA_SERVER_DIR) ; $(MAKE)

clean:
cd $(LIVEMEDIA_DIR) ; $(MAKE) clean
cd $(GROUPSOCK_DIR) ; $(MAKE) clean
cd $(USAGE_ENVIRONMENT_DIR) ; $(MAKE) clean
cd $(BASIC_USAGE_ENVIRONMENT_DIR) ; $(MAKE) clean
#cd $(TESTPROGS_DIR) ; $(MAKE) clean
#cd $(MEDIA_SERVER_DIR) ; $(MAKE) clean
let it don't build TESTPROGS_DIR and MEDIA_SERVER_DIR
and i got those lib in /home/administrator/code/vlc-android/extras/contrib/hosts/arm-eabi/lib
libUsageEnvironment.a libliveMedia.a libgroupsock.a libBasicUsageEnvironment.a

Re: port live555 to android?

Posted: 30 Mar 2011 10:43
by playing
chanage /vlc-android/modules/demux/live555.cpp comment iostream include : //#include <iostream>

cd builddir run ./compile then i got liblive555_plugin.a in /vlc-android/builddir/modules/demux/.lib

i chanage /vlc-android/extras/package/android/makefile add
-lUsageEnvironment -lliveMedia -lgroupsock -lBasicUsageEnvironment\n" >> $(APK_MK); \

then run:
administrator@ubuntu:~/code/vlc-android/extras/package/android$ make distclean
rm -rf vlc-android/libs
rm -rf vlc-android/obj
rm -rf vlc-android/bin
rm -f vlc-android/jni/Android.mk
rm -f vlc-android/local.properties
administrator@ubuntu:~/code/vlc-android/extras/package/android$

then run:
administrator@ubuntu:~/code/vlc-android/extras/package/android$ VLC_BUILD_DIR=~/code/vlc-android/builddir VLC_CONTRIB=~/code/vlc-android/extras/contrib/build make
=== Creating Android.mk ===
=== Building libvlcjni ===
make[1]: Entering directory `/home/administrator/code/vlc-android/extras/package/android/vlc-android'
Compile thumb : vlcjni <= libvlcjni.c
Compile thumb : vlcjni <= vout.c
Compile thumb : vlcjni <= aout.c
Compile thumb : vlcjni <= thumbnailer.c
SharedLibrary : libvlcjni.so
/home/administrator/code/vlc-android/builddir/modules/misc/dummy/.libs/libdummy_plugin.a(libdummy_plugin_la-decoder.o): In function `CloseDecoder':
/home/administrator/code/vlc-android/builddir/modules/misc/dummy/../../../../modules/misc/dummy/decoder.c:159: multiple definition of `CloseDecoder'
/home/administrator/code/vlc-android/builddir/modules/misc/stats/.libs/libstats_plugin.a(libstats_plugin_la-decoder.o):/home/administrator/code/vlc-android/builddir/modules/misc/stats/../../../../modules/misc/stats/decoder.c:106: first defined here
/home/administrator/code/vlc-android/builddir/modules/misc/dummy/.libs/libdummy_plugin.a(libdummy_plugin_la-decoder.o): In function `OpenDecoder':
/home/administrator/code/vlc-android/builddir/modules/misc/dummy/../../../../modules/misc/dummy/decoder.c:120: multiple definition of `OpenDecoder'
/home/administrator/code/vlc-android/builddir/modules/misc/stats/.libs/libstats_plugin.a(libstats_plugin_la-decoder.o):/home/administrator/code/vlc-android/builddir/modules/misc/stats/../../../../modules/misc/stats/decoder.c:45: first defined here
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTPSource.o): In function `RTPReceptionStatsDB::~RTPReceptionStatsDB()':
RTPSource.cpp:(.text+0xa40): undefined reference to `HashTable::RemoveNext()'
RTPSource.cpp:(.text+0xa5c): undefined reference to `HashTable::RemoveNext()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTPSource.o): In function `RTPReceptionStatsDB::~RTPReceptionStatsDB()':
RTPSource.cpp:(.text+0xad4): undefined reference to `HashTable::RemoveNext()'
RTPSource.cpp:(.text+0xaf0): undefined reference to `HashTable::RemoveNext()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTSPClient.o): In function `RTSPClient::RequestRecord::RequestRecord(unsigned int, char const*, void (*)(RTSPClient*, int, char*), MediaSession*, MediaSubsession*, unsigned int, double, double, float, char const*)':
RTSPClient.cpp:(.text+0x388): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTSPClient.o): In function `RTSPClient::RequestRecord::RequestRecord(unsigned int, char const*, void (*)(RTSPClient*, int, char*), MediaSession*, MediaSubsession*, unsigned int, double, double, float, char const*)':
RTSPClient.cpp:(.text+0x408): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTSPClient.o): In function `RTSPClient::handleRequestError(RTSPClient::RequestRecord*)':
RTSPClient.cpp:(.text+0x470): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTSPClient.o): In function `RTSPClient::parseRTSPURLUsernamePassword(char const*, char*&, char*&)':
RTSPClient.cpp:(.text+0x518): undefined reference to `strDup(char const*)'
RTSPClient.cpp:(.text+0x538): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTSPClient.o):RTSPClient.cpp:(.text+0x544): more undefined references to `strDup(char const*)' follow
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTSPClient.o): In function `RTSPClient::parseRTPInfoParams(char const*&, unsigned short&, unsigned int&)':
RTSPClient.cpp:(.text+0xa88): undefined reference to `strDupSize(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTSPClient.o): In function `RTSPClient::parseTransportParams(char const*, char*&, unsigned short&, unsigned char&, unsigned char&)':
RTSPClient.cpp:(.text+0xb78): undefined reference to `strDupSize(char const*)'
RTSPClient.cpp:(.text+0xc54): undefined reference to `strDup(char const*)'
RTSPClient.cpp:(.text+0xd94): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTSPClient.o): In function `RTSPClient::handleAuthenticationFailure(char const*)':
RTSPClient.cpp:(.text+0xe6c): undefined reference to `strDupSize(char const*)'
RTSPClient.cpp:(.text+0xe78): undefined reference to `strDupSize(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTSPClient.o): In function `RTSPClient::handleSETUPResponse(MediaSubsession&, char const*, char const*, unsigned int)':
RTSPClient.cpp:(.text+0x1074): undefined reference to `strDup(char const*)'
RTSPClient.cpp:(.text+0x1090): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTSPClient.o): In function `RTSPClient::createAuthenticatorString(char const*, char const*)':
RTSPClient.cpp:(.text+0x1620): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTSPClient.o): In function `RTSPClient::sendRequest(RTSPClient::RequestRecord*)':
RTSPClient.cpp:(.text+0x2e48): undefined reference to `strDup(char const*)'
RTSPClient.cpp:(.text+0x2ed0): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTSPClient.o):RTSPClient.cpp:(.text+0x4f4c): more undefined references to `strDup(char const*)' follow
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `parseSourceFilterAttribute(char const*, in_addr&)':
MediaSession.cpp:(.text+0x6c0): undefined reference to `strDupSize(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `MediaSubsession::parseSDPAttribute_control(char const*)':
MediaSession.cpp:(.text+0x7a0): undefined reference to `strDupSize(char const*)'
MediaSession.cpp:(.text+0x7f4): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `parseCLine(char const*)':
MediaSession.cpp:(.text+0x810): undefined reference to `strDupSize(char const*)'
MediaSession.cpp:(.text+0x854): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `MediaSession::lookupPayloadFormat(unsigned char, unsigned int&, unsigned int&)':
MediaSession.cpp:(.text+0x984): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `MediaSession::parseSDPAttribute_control(char const*)':
MediaSession.cpp:(.text+0xc94): undefined reference to `strDupSize(char const*)'
MediaSession.cpp:(.text+0xce8): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `MediaSession::parseSDPAttribute_type(char const*)':
MediaSession.cpp:(.text+0xd0c): undefined reference to `strDupSize(char const*)'
MediaSession.cpp:(.text+0xd60): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `MediaSession::parseSDPLine_i(char const*)':
MediaSession.cpp:(.text+0xd84): undefined reference to `strDupSize(char const*)'
MediaSession.cpp:(.text+0xdd8): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `MediaSession::parseSDPLine_s(char const*)':
MediaSession.cpp:(.text+0xdfc): undefined reference to `strDupSize(char const*)'
MediaSession.cpp:(.text+0xe50): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `MediaSubsession::parseSDPAttribute_fmtp(char const*)':
MediaSession.cpp:(.text+0xec4): undefined reference to `strDup(char const*)'
MediaSession.cpp:(.text+0xf74): undefined reference to `strDupSize(char const*)'
MediaSession.cpp:(.text+0x1350): undefined reference to `strDup(char const*)'
MediaSession.cpp:(.text+0x138c): undefined reference to `strDup(char const*)'
MediaSession.cpp:(.text+0x13c8): undefined reference to `strDup(char const*)'
MediaSession.cpp:(.text+0x1404): undefined reference to `strDup(char const*)'
MediaSession.cpp:(.text+0x1440): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `MediaSubsession::parseSDPAttribute_rtpmap(char const*)':
MediaSession.cpp:(.text+0x1670): undefined reference to `strDupSize(char const*)'
MediaSession.cpp:(.text+0x1788): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `MediaSession::initializeWithSDP(char const*)':
MediaSession.cpp:(.text+0x1f9c): undefined reference to `strDupSize(char const*)'
MediaSession.cpp:(.text+0x2068): undefined reference to `strDup(char const*)'
MediaSession.cpp:(.text+0x2164): undefined reference to `strDup(char const*)'
MediaSession.cpp:(.text+0x2170): undefined reference to `strDup(char const*)'
MediaSession.cpp:(.text+0x218c): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `MediaSubsession::initiate(int)':
MediaSession.cpp:(.text+0x2c14): undefined reference to `HashTable::RemoveNext()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `MediaSession::MediaSession(UsageEnvironment&)':
MediaSession.cpp:(.text+0x36d8): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MediaSession.o): In function `MediaSession::MediaSession(UsageEnvironment&)':
MediaSession.cpp:(.text+0x37fc): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(QuickTimeGenericRTPSource.o): In function `QuickTimeGenericRTPSource::QuickTimeGenericRTPSource(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*)':
QuickTimeGenericRTPSource.cpp:(.text+0x5c0): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(QuickTimeGenericRTPSource.o): In function `QuickTimeGenericRTPSource::QuickTimeGenericRTPSource(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*)':
QuickTimeGenericRTPSource.cpp:(.text+0x6f4): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(DigestAuthentication.o): In function `Authenticator::assignUsernameAndPassword(char const*, char const*, unsigned int)':
DigestAuthentication.cpp:(.text+0x14): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(DigestAuthentication.o):DigestAuthentication.cpp:(.text+0x20): more undefined references to `strDup(char const*)' follow
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(Base64.o): In function `base64Decode(char*, unsigned int&, unsigned int)':
Base64.cpp:(.text+0x278): undefined reference to `strDupSize(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MPEG4GenericRTPSource.o): In function `MPEG4GenericRTPSource::MPEG4GenericRTPSource(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*, char const*, unsigned int, unsigned int, unsigned int)':
MPEG4GenericRTPSource.cpp:(.text+0x630): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MPEG4GenericRTPSource.o): In function `MPEG4GenericRTPSource::MPEG4GenericRTPSource(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*, char const*, unsigned int, unsigned int, unsigned int)':
MPEG4GenericRTPSource.cpp:(.text+0x854): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(MPEG2TransportStreamFramer.o): In function `MPEG2TransportStreamFramer::clearPIDStatusTable()':
MPEG2TransportStreamFramer.cpp:(.text+0x61c): undefined reference to `HashTable::RemoveNext()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(SimpleRTPSource.o): In function `SimpleRTPSource::SimpleRTPSource(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*, unsigned int, unsigned int)':
SimpleRTPSource.cpp:(.text+0x134): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(SimpleRTPSource.o): In function `SimpleRTPSource::SimpleRTPSource(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*, unsigned int, unsigned int)':
SimpleRTPSource.cpp:(.text+0x1dc): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(H264VideoRTPSource.o): In function `parseSPropParameterSets(char const*, unsigned int&)':
H264VideoRTPSource.cpp:(.text+0x2d8): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTPSink.o): In function `RTPTransmissionStatsDB::~RTPTransmissionStatsDB()':
RTPSink.cpp:(.text+0x760): undefined reference to `HashTable::RemoveNext()'
RTPSink.cpp:(.text+0x77c): undefined reference to `HashTable::RemoveNext()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTPSink.o): In function `RTPTransmissionStatsDB::~RTPTransmissionStatsDB()':
RTPSink.cpp:(.text+0x7f4): undefined reference to `HashTable::RemoveNext()'
RTPSink.cpp:(.text+0x810): undefined reference to `HashTable::RemoveNext()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTPSink.o): In function `RTPSink::rtpmapLine() const':
RTPSink.cpp:(.text+0x988): undefined reference to `strDup(char const*)'
RTPSink.cpp:(.text+0x994): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTPSink.o): In function `RTPSink::RTPSink(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*, unsigned int)':
RTPSink.cpp:(.text+0xb68): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libliveMedia.a(RTPSink.o): In function `RTPSink::RTPSink(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*, unsigned int)':
RTPSink.cpp:(.text+0xc8c): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libgroupsock.a(GroupEId.o): In function `Scope::assign(unsigned char, char const*)':
GroupEId.cpp:(.text+0x80): undefined reference to `strDup(char const*)'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libgroupsock.a(GroupEId.o):GroupEId.cpp:(.text+0x94): more undefined references to `strDup(char const*)' follow
/home/administrator/code/vlc-android/extras/contrib/build/lib/libBasicUsageEnvironment.a(BasicHashTable.o): In function `BasicHashTable::Iterator::Iterator(BasicHashTable&)':
BasicHashTable.cpp:(.text+0x538): undefined reference to `HashTable::Iterator::Iterator()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libBasicUsageEnvironment.a(BasicHashTable.o): In function `BasicHashTable::Iterator::Iterator(BasicHashTable&)':
BasicHashTable.cpp:(.text+0x5b4): undefined reference to `HashTable::Iterator::Iterator()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libBasicUsageEnvironment.a(BasicHashTable.o): In function `BasicHashTable::~BasicHashTable()':
BasicHashTable.cpp:(.text+0x66c): undefined reference to `HashTable::~HashTable()'
BasicHashTable.cpp:(.text+0x688): undefined reference to `HashTable::~HashTable()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libBasicUsageEnvironment.a(BasicHashTable.o): In function `BasicHashTable::~BasicHashTable()':
BasicHashTable.cpp:(.text+0x73c): undefined reference to `HashTable::~HashTable()'
BasicHashTable.cpp:(.text+0x758): undefined reference to `HashTable::~HashTable()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libBasicUsageEnvironment.a(BasicHashTable.o): In function `BasicHashTable::BasicHashTable(int)':
BasicHashTable.cpp:(.text+0x77c): undefined reference to `HashTable::HashTable()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libBasicUsageEnvironment.a(BasicHashTable.o): In function `BasicHashTable::BasicHashTable(int)':
BasicHashTable.cpp:(.text+0x830): undefined reference to `HashTable::HashTable()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libBasicUsageEnvironment.a(BasicHashTable.o): In function `BasicHashTable::Iterator::~Iterator()':
BasicHashTable.cpp:(.text._ZN14BasicHashTable8IteratorD1Ev[BasicHashTable::Iterator::~Iterator()]+0x20): undefined reference to `HashTable::Iterator::~Iterator()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libBasicUsageEnvironment.a(BasicHashTable.o): In function `BasicHashTable::Iterator::~Iterator()':
BasicHashTable.cpp:(.text._ZN14BasicHashTable8IteratorD0Ev[BasicHashTable::Iterator::~Iterator()]+0x20): undefined reference to `HashTable::Iterator::~Iterator()'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libBasicUsageEnvironment.a(BasicHashTable.o):(.data.rel.ro+0x3c): undefined reference to `typeinfo for HashTable'
/home/administrator/code/vlc-android/extras/contrib/build/lib/libBasicUsageEnvironment.a(BasicHashTable.o):(.data.rel.ro+0x48): undefined reference to `typeinfo for HashTable::Iterator'
collect2: ld returned 1 exit status
make[1]: *** [/home/administrator/code/vlc-android/extras/package/android/vlc-android/obj/local/armeabi/libvlcjni.so] Error 1
make[1]: Leaving directory `/home/administrator/code/vlc-android/extras/package/android/vlc-android'
make: *** [vlc-android/libs/armeabi/libvlcjni.so] Error 2
administrator@ubuntu:~/code/vlc-android/extras/package/android$

Re: port live555 to android?

Posted: 31 Mar 2011 02:29
by bartamues
Any luck?

The logcat output when I try to play a file over http:

03-30 20:18:57.033: DEBUG/vlc(10638): [0x30fb1c] main input debug: thread started
03-30 20:18:57.043: DEBUG/vlc(10638): [0x30fb1c] main input debug: using timeshift granularity of 50 MiB
03-30 20:18:57.043: DEBUG/vlc(10638): [0x30fb1c] main input debug: using timeshift path '/tmp'
03-30 20:18:57.043: DEBUG/vlc(10638): [0x30fb1c] main input debug: <<url>>
03-30 20:18:57.043: DEBUG/vlc(10638): [0x30fb1c] main input debug: creating demux: access='http' demux='' location='<<url>>' file='(null)'
03-30 20:18:57.043: DEBUG/vlc(10638): [0x568ad4] main demux debug: looking for access_demux module: 0 candidates
03-30 20:18:57.043: DEBUG/vlc(10638): [0x568ad4] main demux debug: no access_demux module matched "http"
03-30 20:18:57.043: DEBUG/vlc(10638): [0x568ad4] main demux debug: TIMER module_need() : 1.136 ms - Total 1.136 ms / 1 intvls (Avg 1.136 ms)
03-30 20:18:57.043: DEBUG/vlc(10638): [0x30fb1c] main input debug: creating access 'http' location='<<url>>', path='(null)'
03-30 20:18:57.043: DEBUG/vlc(10638): [0x568ba4] main access debug: looking for access module: 2 candidates
03-30 20:18:57.043: DEBUG/vlc(10638): [0x568ba4] access_http access debug: http: server='<<server>>' port=80 file='<<file>>'
03-30 20:18:57.063: DEBUG/vlc(10638): [0x568ba4] main access debug: net: connecting to <<server>> port 80

Crashes right here.

Re: port live555 to android?

Posted: 31 Mar 2011 08:12
by playing
the order is import , i chanage /vlc-android/extras/package/android/makefile
-lUsageEnvironment -lliveMedia -lgroupsock -lBasicUsageEnvironment\n" >> $(APK_MK); \ to
-lliveMedia -lUsageEnvironment -lBasicUsageEnvironment -lgroupsock\n" >> $(APK_MK); \

then make
got this:
administrator@ubuntu:~/code/vlc-android/extras/package/android$ VLC_BUILD_DIR=~/code/vlc-android/builddir VLC_CONTRIB=~/code/vlc-android/extras/contrib/build make
=== Creating Android.mk ===
=== Building libvlcjni ===
make[1]: Entering directory `/home/administrator/code/vlc-android/extras/package/android/vlc-android'
Compile thumb : vlcjni <= libvlcjni.c
Compile thumb : vlcjni <= vout.c
Compile thumb : vlcjni <= aout.c
Compile thumb : vlcjni <= thumbnailer.c
SharedLibrary : libvlcjni.so
/home/administrator/code/vlc-android/builddir/modules/misc/dummy/.libs/libdummy_plugin.a(libdummy_plugin_la-decoder.o): In function `CloseDecoder':
/home/administrator/code/vlc-android/builddir/modules/misc/dummy/../../../../modules/misc/dummy/decoder.c:159: multiple definition of `CloseDecoder'
/home/administrator/code/vlc-android/builddir/modules/misc/stats/.libs/libstats_plugin.a(libstats_plugin_la-decoder.o):/home/administrator/code/vlc-android/builddir/modules/misc/stats/../../../../modules/misc/stats/decoder.c:106: first defined here
/home/administrator/code/vlc-android/builddir/modules/misc/dummy/.libs/libdummy_plugin.a(libdummy_plugin_la-decoder.o): In function `OpenDecoder':
/home/administrator/code/vlc-android/builddir/modules/misc/dummy/../../../../modules/misc/dummy/decoder.c:120: multiple definition of `OpenDecoder'
/home/administrator/code/vlc-android/builddir/modules/misc/stats/.libs/libstats_plugin.a(libstats_plugin_la-decoder.o):/home/administrator/code/vlc-android/builddir/modules/misc/stats/../../../../modules/misc/stats/decoder.c:45: first defined here
collect2: ld returned 1 exit status
make[1]: *** [/home/administrator/code/vlc-android/extras/package/android/vlc-android/obj/local/armeabi/libvlcjni.so] Error 1
make[1]: Leaving directory `/home/administrator/code/vlc-android/extras/package/android/vlc-android'
make: *** [vlc-android/libs/armeabi/libvlcjni.so] Error 2

then modifing the libvlcjni.h
marked the vlc_declare_plugin(stats) and vlc_plugin(stats) and make successfully,


administrator@ubuntu:~/code/vlc-android/extras/package/android$ VLC_BUILD_DIR=~/code/vlc-android/builddir VLC_CONTRIB=~/code/vlc-android/extras/contrib/build make
=== Building libvlcjni ===
make[1]: Entering directory `/home/administrator/code/vlc-android/extras/package/android/vlc-android'
Compile thumb : vlcjni <= libvlcjni.c
SharedLibrary : libvlcjni.so
Install : libvlcjni.so => libs/armeabi/libvlcjni.so