gmplayer svn-2009-11-27 vdpau and multithread

Audio editors, music players, video players, burning software, etc.
Post Reply
Message
Author
User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

gmplayer svn-2009-11-27 vdpau and multithread

#1 Post by MU »

I had a request for a newer version of mplayer with multithread support (using more than one CPU-core).
This allows to play HDTV videos on multicore computers, where other players fail (too slow).

I was not able to compile the latest svn version with the ffmpeg-mt libs, but found working sources here:
http://nikita.melnichenko.name/download ... 27.tar.bz2

This topic explains it:
http://nikita.melnichenko.name/blog.php ... mt&lang=en

I finally compiled it with support for 8 cores:

Code: Select all

./configure --yasm=''  --enable-runtime-cpudetection   --enable-xvmc --enable-theora --enable-gui  --enable-liblzo --enable-vdpau --enable-menu --enable-lirc

make -j 16
So we get this result:
Config files successfully generated by ./configure --yasm= --enable-runtime-cpudetection --enable-xvmc --enable-theora --enable-gui --enable-liblzo --enable-vdpau --enable-menu --enable-lirc !

Install prefix: /usr/local
Data directory: /usr/local/share/mplayer
Config direct.: /usr/local/etc/mplayer

Byte order: little-endian
Optimizing for: Runtime CPU-Detection enabled

Languages:
Messages/GUI: en
Manual pages: en
Documentation: en

Enabled optional drivers:
Input: dvdnav(internal) ftp pvr tv-v4l2 tv-v4l tv cddb cdda libdvdcss(internal) dvdread(internal) vcd dvb network
Codecs: x264 xvid libavcodec(internal) qtx real xanim win32 faad2(internal) libmpeg2(internal) liba52(internal) mp3lib(internal) libtheora tremor(internal) libmad liblzo gif
Audio output: alsa jack esd oss sdl mpegpes(dvb)
Video output: sdl gif89a pnm jpeg png opengl mpegpes(dvb) fbdev xvidix cvidix dga vdpau xvmc xv x11 xover yuv4mpeg md5sum tga

Disabled optional drivers:
Input: vstream radio tv-dshow live555 nemesi smb
Codecs: libschroedinger libdirac libdv libopencore_amrwb libopencore_amrnb faac musepack libdca speex toolame twolame
Audio output: sun openal pulse nas arts v4l2 ivtv dxr2
Video output: zr zr2 v4l2 ivtv dxr3 dxr2 vesa svga caca aa ggi xmga mga winvidix 3dfx dfbmga directfb bl xvr100 tdfx_vid wii s3fb tdfxfb
I compiled with support for Nvidias vdpau accelleration (includefiles from driver 180.44).
However I could not test vdpau, as I actually use a Ati-card.
I have read that you cannot use vdpau AND mt, just vdpau OR mt.

You can run the player from the multimedia menu, also a second one, that uses the unaccellerated "x11" extension, but scaled up to fullscreen (this required some special commandlineoptions, as x11 itself is not able to scale).

The required libraries I placed in /usr/lib/mplayer-mt-libs/ to avoid conflics with your existing libraries.
Mplayer is launched by customized scripts, to use those libs, and to play files using two cores.

If you would use 4 cores, you had to modify the gmplayer-mt or mplayer* scripts in /usr/local/bin/.
The value to set the cores is:

Code: Select all

 -lavdopts threads=2
If the vdpau video does not work, try:

Code: Select all

 -lavdopts threads=1
You can activate vdpau or other video-output drivers with a right-click on the player -> Preferences - video

x11: no accelleration
xv: accelleration supported by many cards (default)
vdpau: supported by newer nvidias (using the commercial driver 180 or newer)
gl, gl2, XvMC: best results on some cards

If you get no sound, try to change the preferences in "audio", usually alsa or oss will work.

Download (6.5 MB, 15 MB extracted):
http://dotpups.de/puppy4/dotpups/Multim ... -11-27.pet
Some skins are included.

I tested it in Newyearspup02, Puppy 4.3, and Fluppy005.
It was compiled in Newyearspup02 (extended 4.1).


If you have a infrared device for your computer, it should work, but I think you will need the lirc pets from tempestous in this thread:
http://www.murga-linux.com/puppy/viewtopic.php?t=26511


To verify, that really 2 cores are used, you can run in a consolewindow "htop" from:
http://www.murga-linux.com/puppy/viewtopic.php?p=234430

Hint:
if you play low-res videos on a 52'' HDTV-TV, invoke the player by such a script:

Code: Select all

gmplayer-mt -fs -zoom -x 1980 -y 1080  -vf-add unsharp=l3x3:1 "$@"
This will scale and sharpen the video, but you need a fast processor.

Mark
[url=http://murga-linux.com/puppy/viewtopic.php?p=173456#173456]my recommended links[/url]

User avatar
MU
Posts: 13649
Joined: Wed 24 Aug 2005, 16:52
Location: Karlsruhe, Germany
Contact:

#2 Post by MU »

I re-uploaded the pet, added the option "-really-quiet" to gmplayer-mt to avoid messages if a video throws warnings, and enabled postprocessing in the options.

Some *.mpg videos refused to play before, now they seem to work.
This seems to be an issue of gmplayer only, not mplayer?

Mark
[url=http://murga-linux.com/puppy/viewtopic.php?p=173456#173456]my recommended links[/url]

User avatar
abushcrafter
Posts: 1418
Joined: Fri 30 Oct 2009, 16:57
Location: England
Contact:

#3 Post by abushcrafter »

Thank you very much. I am afraid it can't play WebM and some "MOV". The audio is not played in these videos "Hedgehog3gp" and "Macimp4".

Streaming Video Codec Test Clips zip

WebM Test video: http://lachy.id.au/lib/media/elephantsd ... tereo.webm from: Custom controls WebM video.
[url=http://www.adobe.com/flashplatform/]adobe flash is rubbish![/url]
My Quote:"Humans are stupid, though some are clever but stupid." http://www.dependent.de/media/audio/mp3/System_Syn_Heres_to_You.zip http://www.systemsyn.com/

Post Reply