Re: mplayer optimization for AMD x2

"Anatoli Marinov" <[email protected]>
Newsgroups gmane.comp.video.mplayer.cygwin
Message-ID <[email protected]>
Hi,

CoreAvc is not a free solution and I do not want to use it. In this
case ffh264 is good enough :).

I've unlocked sse support for windows but I work remotely on my home
PC now and can not test it so later I will have a proper results.

Thanks a lot

Toli


2007/7/4, Anatoli Marinov <[email protected]>:
> Thanks mate,
> I will try this things and will post my results in the mail lists , of
> course only if you have interests about them.
>
> Toli
>
> 2007/7/4, Zuxy Meng <[email protected]>:
> > Hi,
> >
> > 2007/7/4, Anatoli Marinov <[email protected]>:
> > > Hi folks,
> > >
> > > I am an old mplayer's fan so I use it with many OSes. Currently I am
> > > trying to build ultimately optimized mplayer for my AMD 4600+ x2
> > > processor (for windows XP).
> > > I found somewhere a description how to build it step by step with
> > > mingw. The manual was a pretty old but however now I have proper
> > > environment with latest ming stuff. Yesterday I have compiled current
> > > mplayer sources from SVN repository and everithing works fine but I am
> > > curious about several thing:
> > >
> > > 1.  I've compiled (configured) my mplayer without runtime CPU
> > > detection and with these flags:
> > >  --enable-mmx              enable MMX [autodetect]
> > >  --enable-mmxext           enable MMX2 (Pentium III, Athlon) [autodetect]
> > >  --enable-3dnow            enable 3DNow! [autodetect]
> > >  --enable-3dnowext         enable extended 3DNow! [autodetect]
> > >  --enable-sse              enable SSE [autodetect]
> > >  --enable-sse2             enable SSE2 [autodetect]
> > >  --enable-ssse3            enable SSSE3 [autodetect]
> > >
> > > The CPU supports all these sets of instruction. Does ssse3 work
> > > because I didn't see nothing special with or without it?
> >
> > SSSE3 != SSE3. No AMD processors support SSSE3 yet. And currently
> > SSSE3 only helps encode, so you aren't actually losing anything.
> >
> > > When I start the player with x264 encodec file I see:
> > > $ ./mplayer.exe /1.mkv
> > > MPlayer dev-SVN-r23715-3.4.5 (C) 2000-2007 MPlayer Team
> > > CPU: AMD Athlon(tm) 64 X2 Dual Core Processor 4600+ (Family: 15,
> > > Model: 75, Stepping: 2)
> > > CPUflags:  MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 0 SSE2: 0
> > > Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE SSE2
> > > getch2: 6 can't get number of input events  [disabling console input]
> > >
> > > Playing C:/mingw/1.mkv.
> > > [mkv] Track ID 1: video (V_MPEG4/ISO/AVC), -vid 0
> > > [mkv] Track ID 2: audio (A_AC3), -aid 0, -alang eng
> > > [mkv] Will play video track 1.
> > > Matroska file format detected.
> > > VIDEO:  [avc1]  1280x544  24bpp  23.976 fps    0.0 kbps ( 0.0 kbyte/s)
> > > <vo_directx><ERROR>Your card doesn't support overlay
> > > ==========================================================================
> > > Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
> > > Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
> > > ==========================================================================
> > > ==========================================================================
> > > Opening audio decoder: [liba52] AC3 decoding with liba52
> > > AUDIO: 48000 Hz, 2 ch, s16le, 448.0 kbit/29.17% (ratio: 56000->192000)
> > > Selected audio codec: [a52] afm: liba52 (AC3-liba52)
> > > ==========================================================================
> > >
> > > see this line ->  CPUflags:  MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 0 SSE2: 0
> > > This compilation supports sse, sse2 and sse3 but why the flags are 0
> > > and sse3 missing?
> >
> > SSE/SSE2 are disabled for Windows @ runtime due to historical reasons.
> > You can modify cpudetect.c to turn them on. However, even you leave
> > this off you are't losing much because
> > 1. libavcodec can still use SSE/SSE2 regardless of mplayer's settings.
> > 2. SSE are only used for some audio, and SSE2 isn't much faster than MMX.
> >
> > > and this too- > Compiled for x86 CPU with extensions: MMX MMX2 3DNow
> > > 3DNowEx SSE SSE2 - missing sse3 why ?
> >
> > Again, SSE3 != SSSE3. Neither mplayer nor ffmpeg uses SSE3.
> >
> > >
> > > 2. For h264 decoding I am using default x264 functionality from ffmpeg
> > > internal codec bundle. Is it better than x264 library from
> > > videolan.org?
> >
> > IIRC x264 is an encoder, not a decoder.
> >
> > >
> > > 3. Can I compile fully statically linked mplayer binary and how?
> >
> > I guess there's an option called --enable-static or similar. But
> > dynamic linking in Windows doesn't hurt runtime performance much,
> > except for a possible slower start time.
> >
> > > 4. Could you tell me more hints for better performance :) especially
> > > for h264? Is it possible to use hardware acceleration mechanism from
> > > my nv8600GT video card because it has hardware h264 decoder, filter
> > > etc.
> >
> > Maybe you should try CoreAVC for the time being :-( It's indeed
> > faster, and supports dual core.
> >
> > >
> > > 5. What about pthreads support. I couldn't find pthreds for mingw.
> > > Will it works faster with pthreads or not?
> >
> > You don't actually need pthread under Windows although a win32 port of
> > pthread does exist and works well with mplayer (Google it!). Just
> > install it or add a line of "HAVE_W32THREADS" in your config.mak.
> > Either way will turn on multithread support.
> >
> > Currently only mpeg1/mpeg2 decoding supports multithreading but h264
> > is not far away.
> >
> > >
> > > Lol I have so many questions :P
> > >
> > >
> > > eng. Anatoli Marinov
> > > Bulgaria
> >
> > --
> > Zuxy
> > Beauty is truth,
> > While truth is beauty.
> > PGP KeyID: E8555ED6
> > _______________________________________________
> > MPlayer-cygwin mailing list
> > [email protected]
> > http://lists.mplayerhq.hu/mailman/listinfo/mplayer-cygwin
> >
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.