TCPMP new VS2008 builds for WM6.1 with FLV built in

Search This thread

wright_hz

Member
Apr 21, 2008
13
0
Hi! I've downloaded de vs2008 project but I'm having trouble building it. What's the building sequence? I get errors regarding common.lib(fatal error LNK1181: cannot open input file '..\pocket pc 2003 (armv4)\debug\common.lib') and arm.asm(error A0044: can't open file: c:\tcpmp-0.72rc1-src-vs2008\common\cpu\arm.asm). Am I missing some vs configurations?
Kinda new to this and could really use a hand on this. I nedd it for a school project involving h.264 streams. Please reply!

Tks.

It seems some asm files lost in this 2008 package. You could download an original TCPMP 0.72RC source package to get the lost files.
 

wright_hz

Member
Apr 21, 2008
13
0
I couldn't get it to work as a static link to a lib, but it works okay as a DLL. I think this is known problem with linking large static libs created with cegcc in visual studio.

Sigh. I failed to call the functions from DLL. My steps:
1. rename so to dll.
2. use pexports to generate .def file from DLLs.
3. use dlltool to generate interface lib files from DLLs and def files.
4. link interface lib to ffmpeg.plg.
5. copy ffmpeg.plg and both DLLs to TCPMP directory.
6. As soon as calling any functions in DLL, TCPMP crashed...

Could you tell me how to call these DLLs in correct way? Thanks.
 

RyuMaster

Member
Apr 3, 2008
6
0
Well, commenting #errno.h brought more errors. I think the only problems is because I do hot have Linux.
So, no matter now much I try, I can not build those DLLs to use with my WM5 and WM6 projects.
And how is plg file from TCPMP is different from libs and dlls? Maybe there is a way to use it? Because I already lost hope of building shared dlls for me. To bad there is no pre-build dlls for wince at the internet, looks like many people has problems with building them.
 

RyuMaster

Member
Apr 3, 2008
6
0
Sigh. I failed to call the functions from DLL. My steps:
1. rename so to dll.
2. use pexports to generate .def file from DLLs.
3. use dlltool to generate interface lib files from DLLs and def files.
4. link interface lib to ffmpeg.plg.
5. copy ffmpeg.plg and both DLLs to TCPMP directory.
6. As soon as calling any functions in DLL, TCPMP crashed...
Did you check this guide? http://www.craigshaw.com/2008/04/23/BuildingFFMpegForWindowsCEWindowsMobile.aspx
It might be helpfull.
 

wright_hz

Member
Apr 21, 2008
13
0
Well, commenting #errno.h brought more errors. I think the only problems is because I do hot have Linux.
So, no matter now much I try, I can not build those DLLs to use with my WM5 and WM6 projects.
And how is plg file from TCPMP is different from libs and dlls? Maybe there is a way to use it? Because I already lost hope of building shared dlls for me. To bad there is no pre-build dlls for wince at the internet, looks like many people has problems with building them.
please try this:
//#ifdef __COREDLL__
//# include_next <errno.h>
//#else /* __COREDLL__ */
...
//endif
I can compile them successfully after commented here.

By the way, you'd better build it in Cygwin+mingw32ce.
 

wright_hz

Member
Apr 21, 2008
13
0

wright_hz

Member
Apr 21, 2008
13
0
Thank Gods

God is in my side today.

My built ffmpeg dlls is able to work with TCPMP. Thank all of you for your helps.

:D:D:D
 

RyuMaster

Member
Apr 3, 2008
6
0
please try this:
//#ifdef __COREDLL__
//# include_next <errno.h>
//#else /* __COREDLL__ */
...
//endif
I can compile them successfully after commented here.

By the way, you'd better build it in Cygwin+mingw32ce.
Your solution worked for fixing issue with errno.h Thanks, really helpfull!
But now I get errors liek this:
c:/projects/ffmpeg/libavutil/internal.h:273: error: static declaration of 'llrint' follows non-static declaration
Maybe it has something to do with corrupt SVN? I'm using the latest one.Oh, and yes, afcourse I use Cygwin+mingw32ce.
 

RyuMaster

Member
Apr 3, 2008
6
0
please try this:
//#ifdef __COREDLL__
//# include_next <errno.h>
//#else /* __COREDLL__ */
...
//endif
I can compile them successfully after commented here.

By the way, you'd better build it in Cygwin+mingw32ce.
Your solution worked for fixing issue with errno.h Thanks, really helpfull!
But now I get errors liek this:
c:/projects/ffmpeg/libavutil/internal.h:273: error: static declaration of 'llrint' follows non-static declaration
Maybe it has something to do with corrupt SVN? I'm using the latest one.Oh, and yes, afcourse I use Cygwin+mingw32ce.
 

hessman

Member
Feb 3, 2008
9
0
Hi All,

I have been playing around getting TCPMP to compile in VS2008, it now builds and runs.

Things done so far:
1) Fixed all warnings
2) Built a new installer
3) Built in the small changes made to the FFMPEG plugin that allow .FLV (flash videos) to play that were available as separate plugins, this is now built into the ffmpeg.plg and splitter.plg. The code was from: http://sourceforge.net/project/showfiles.php?group_id=201449
4) Turned on all compiler optimizations in VS2008 - FLV playback is 10% faster than original build on my Kaiser.
5) Tided up some projects, not tested Win32 or Smartphone builds, just Pocket PC.

This doesn't include the source for CoreAVC (mpeg4.plg) or CoreMP3 (mp3.plg) as this was never released as far as I know. FFMPEG (ffmpeg.plg) and LIBMAD (libmad.plg) do the same but FFMPEG is slower. Would be nice to include a latter FFMPEG build and see if this any faster. You can use the binary mpeg4.plg and mp3.plg from the original TCPMP build if you want - just copy them into \Program Files\TCPMP.

On the Kaiser you must use 'GDI' or 'Raw FrameBuffer' for decent performance.

This build runs on some of the new Kaiser ROMS where the original build crashes, probably because its compiled against WM2005 not 2003. If you copy in mpeg4.plg or mp3.plg from the original build it will crash again though.

Hope someone else can now take a look and see if they can improve on it. I just wanted the FLV part for a new YouTube project, something like the new bit in CorePlayer.

VS2008 Solution Source:
http://rapidshare.com/files/102784557/tcpmp-0.72rc1-src-vs2008.zip.html

VS2008 Built Binary CAB:
http://rapidshare.com/files/102784829/TCPMP-0.72RC1-ARM-PPC-recomp-01.CAB.html

Brilliant worked great!
 

palaio

New member
May 6, 2008
1
0
The latest source for TCPMP and the VS2008 project is here:

http://rapidshare.de/files/39042257/tcpmp-0.72rc1-src-vs2008.zip.html

ffmpeg.plg needs avcodec-51.dll and avutil-49.dll, couldn't get it to work linked in. The DLL's were built from the source available here:

http://ffmpeg.mplayerhq.hu/download.html

To get the ARM optimized assembler parts linked in your need to build it using CEGCC:

http://cegcc.sourceforge.net/

On Cygwin on Windows:

http://www.cygwin.com/

Using these configure options:

./configure --enable-memalign-hack --target-os=WinCE --arch=arm --cross-compile \
--cross-prefix=arm-wince-mingw32ce- \
--enable-static --enable-shared --disable-mmx --disable-zlib --disable-ipv6 --disable-debug \
--disable-ffmpeg --disable-ffserver --disable-ffplay \
--disable-encoders --disable-network --disable-muxers --disable-decoders --disable-filters \
--disable-demuxers --disable-devices --disable-protocols --disable-bsfs --disable-parsers \
--enable-decoder=h263 --enable-decoder=mpeg4 --enable-decoder=flv --enable-decoder=flv1 \
--enable-decoder=h264 --extra-cflags="-march=armv6 -mtune=arm1136j-s"

libmad.plg was built in CEGCC with libmad linked in, using these configure options:

CFLAGS="-march=armv6 -mtune=arm1136j-s" ./configure --host=arm-wince-mingw32ce --enable-speed --enable-fpm=arm

Hi there

I've downloaded de vs2008 project but I'm having trouble building it. What's the building sequence? I get errors regarding common.lib(fatal error LNK1181: cannot open input file '..\pocket pc wm5 (armv6)\debug\common.lib') and arm.asm(error A0044: can't open file: c:\tcpmp-0.72rc1-src-vs2008\common\cpu\arm.asm). Am I missing some vs configurations?
Kinda new to this and could really use a hand on this. I nedd it for a school project involving h.264 streams.

Thanks in advance.
 

timheger

New member
Dec 21, 2007
3
0
No go on my Tilt/WM6.1....

Great news - trying to get this to work on my Tilt with WM6.1... when I try to open a .flv file nothing happens or I get a "Video Codec () not supported by the player!"

Any thoughts?

Thank,

Tim
 
Sep 26, 2007
10
0
Great Job! Thanks for working on this. I am now able to stream Sirius radio on my Sprint Touch without any errors using this version on TCPMP.
 

klmsu19

Senior Member
Oct 2, 2005
319
24
flv still dont play at all still in new build, same error as in post 53...
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    I have been playing around getting TCPMP to compile in VS2008, it now builds and runs.

    These new builds have 2 main advantages over the original builds:

    1) They run on the latest Windows Mobile 6.1 ROMS where the original build crashes (crash.txt message).
    2) They support the FLV format straight out of the CAB.

    On the Kaiser you must use 'GDI' or 'Raw FrameBuffer' for decent performance, unless you have the latest WM6.1 roms which have Directdraw working at a reasonable pace.



    Changelog

    recomp-02

    Added MPEG4.PLG from source found in TCPMP 0.66
    FFMPEG updated

    recomp-03 - 27/5/08

    Installs and runs on WM2003 devices
    Detects Kaiser, allows 'Direct' video output
    Source zip now has ASM files
    Small optimizations



    Source Code - For Developers ONLY

    The latest modified source for TCPMP and the VS2008 project is here:

    http://rapidshare.de/files/39538681/tcpmp-0.72rc1-src-vs2008.zip.html

    ffmpeg.plg needs avcodec-51.dll and avutil-49.dll, couldn't get it to work linked in. The DLL's were built from the source available here:

    http://ffmpeg.mplayerhq.hu/download.html

    To get the ARM optimized assembler parts linked in your need to build it using CEGCC:

    http://cegcc.sourceforge.net/

    On Cygwin on Windows:

    http://www.cygwin.com/

    Using these configure options:

    ./configure --enable-memalign-hack --target-os=WinCE --arch=arm --cross-compile \
    --cross-prefix=arm-wince-mingw32ce- --enable-small \
    --enable-static --enable-shared --disable-mmx --disable-zlib --disable-ipv6 --disable-debug \
    --disable-ffmpeg --disable-ffserver --disable-ffplay \
    --disable-encoders --disable-network --disable-muxers --disable-decoders --disable-filters \
    --disable-demuxers --disable-devices --disable-protocols --disable-bsfs --disable-parsers \
    --enable-decoder=h263 --enable-decoder=mpeg4 --enable-decoder=flv --enable-decoder=flv1 \
    --enable-decoder=h264 --extra-cflags="-march=armv4 -mtune=xscale"

    libmad.plg was built in CEGCC with libmad linked in, using these configure options:

    CFLAGS="-march=armv4 -mtune=xscale" ./configure --host=arm-wince-mingw32ce --enable-speed --enable-fpm=arm

    I stopped doing this as it added little speed, now just compiled in VS2008.

    Things done so far:
    1) Fixed all warnings
    2) Built a new installer
    3) Built in the small changes made to the FFMPEG plugin that allow .FLV (flash videos) to play that were available as separate plugins, this is now built into the ffmpeg.plg and splitter.plg. The code was from: http://sourceforge.net/project/showfiles.php?group_id=201449
    4) Turned on all compiler optimizations in VS2008 - FLV playback is 10% faster than original build on my Kaiser.
    5) Tided up some projects, not tested Win32 or Smartphone builds, just Pocket PC.
    6) FFMPEG used in ffmpeg.plg updated to latest CVS build from March 2008 sometime and compiled with CEGCC and all ARM optimizations. Now in a DLL for easy updating.
    7) Found some source from the 0.66 version TCPMP that still had the Core mpeg4.plg code in and got it to compile with 0.72. Now the normal MPEG4 & H263 decoding is nearly as fast as the original builds.

    The new FFMPEG build adds another 5-10% speed to FLV decoding and also opens up the possibility to decode all the new formats FFMPEG can decode.

    I really want to find out the specs for QTV.dll on the Qualcomms to get the same speed boost as Coreplayer has. If anyone can help please let me know.



    CAB Download