PDA

View Full Version : SMPlayer and Via xvmc


Xcalibur
3rd February 2008, 02:39
Hi,

I've compiled MPlayer from scratch to use the integrated MPEG2 decoder in my Via C7 processor.

MPlayer works fine, using xvmc as video out, ffmpeg12mc as video codec and just scale as scale filter:
mplayer -vo=xvmc,xv -vc=ffmpeg12mc, -vf=scale,

In SMPlayer i choose xvmc as video output driver and ffmpeg12mc as video codec. But even though i get:

Here is the most of the output:
...
Debug: InfoReader::readLine: line: 'CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1'
Debug: InfoReader::readLine: line: 'Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2'
Debug: InfoReader::readLine: line: 'Available video output drivers:'
Debug: InfoReader::readLine: line: 'ID_VIDEO_OUTPUTS'
Debug: InfoReader::readLine: found key: vo
Debug: InfoReader::readLine: line: ' xv X11/Xv'
Debug: InfoReader::readLine: found driver: 'xv' 'X11/Xv'
Debug: InfoReader::readLine: line: ' x11 X11 ( XImage/Shm )'
Debug: InfoReader::readLine: found driver: 'x11' 'X11 ( XImage/Shm )'
Debug: InfoReader::readLine: line: ' xover General X11 driver for overlay capable video output drivers'
Debug: InfoReader::readLine: found driver: 'xover' 'General X11 driver for overlay capable video output drivers'
Debug: InfoReader::readLine: line: ' gl X11 (OpenGL)'
Debug: InfoReader::readLine: found driver: 'gl' 'X11 (OpenGL)'
Debug: InfoReader::readLine: line: ' gl2 X11 (OpenGL) - multiple textures version'
Debug: InfoReader::readLine: found driver: 'gl2' 'X11 (OpenGL) - multiple textures version'
Debug: InfoReader::readLine: line: ' sdl SDL YUV/RGB/BGR renderer (SDL v1.1.7+ only!)'
Debug: InfoReader::readLine: found driver: 'sdl' 'SDL YUV/RGB/BGR renderer (SDL v1.1.7+ only!)'
Debug: InfoReader::readLine: line: ' fbdev Framebuffer Device'
Debug: InfoReader::readLine: found driver: 'fbdev' 'Framebuffer Device'
Debug: InfoReader::readLine: line: ' fbdev2 Framebuffer Device'
Debug: InfoReader::readLine: found driver: 'fbdev2' 'Framebuffer Device'
Debug: qstring_to_xtp result code -2
Debug: DefaultGui::loadConfig
Debug: DefaultGui::updateWidgets
Debug: BaseGui::updateWidgets
Debug: BaseGui::showEvent
Debug: BaseGui::loadActions
Debug: ActionsEditor::loadFromConfig
Debug: qstring_to_xtp result code -2
Debug: qstring_to_xtp result code -2
........
Warning: Qt: Locale not supported on X server
Debug: FilePropertiesDialog::setDemuxer
Debug: FilePropertiesDialog::find
Debug: * demuxer: '', pos: -1
Debug: FilePropertiesDialog::setAudioCodec
Debug: FilePropertiesDialog::find
Debug: * ac: '', pos: -1
Debug: FilePropertiesDialog::setVideoCodec
Debug: FilePropertiesDialog::find
Debug: * vc: '', pos: -1
Debug: FilePropertiesDialog::accept
Debug: BaseGui::applyFileProperties
Debug: Core::restart
Debug: Core::restart: mplayer is not running
Debug: BaseGui::fileOpen
Debug: qstring_to_xtp result code -2
Debug: qstring_to_xtp result code -2
Debug: BaseGui::openFile: '/..../.iso'
Debug: Core::open: '/..../.iso'
Debug: * identified as a dvd iso
Debug: Core::openDVD: 'dvd://1:/..../.iso'
Debug: Helper::dvdSplitFolder: 'dvd://1:/..../.iso'
Debug: Helper::dvdSplitTitle: 'dvd://1:/..../.iso'
Debug: Core::saveMediaInfo
Debug: Core::initPlaying
Debug: Core::startMplayer
Debug: Helper::dvdSplitFolder: 'dvd://1:/..../.iso'
Debug: Helper::dvdSplitTitle: 'dvd://1:/..../.iso'
Debug: Core::startMplayer: setting working directory to '.../.smplayer/screenshots'
Debug: DesktopInfo::desktop_size: primary screen: 0
Debug: DesktopInfo::desktop_size: size of primary screen: 1024 x 768
Debug: DesktopInfo::desktop_size: size of screen: 1024 x 768
Debug: MplayerVersion::isMplayerAtLeast: comparing 24924 with 24722
Debug: Core::startMplayer: command: 'mplayer -noquiet -nofs -sub-fuzziness 1 -identify -slave -vo xvmc -ao alsa -zoom -nokeepaspect -framedrop$
Debug: MplayerLayer::playingStarted
Debug: BaseGui::calculateDiff: diff_size: 0, 0
Debug: BaseGui::calculateDiff: diff_size set to: 0, 131
Debug: MplayerProcess::init_rx
Debug: MplayerProcess::parseLine: 'MPlayer 1.0rc2-4.2.3 (C) 2000-2007 MPlayer Team'
Debug: MplayerVersion::mplayerVersion: MPlayer version found: 1.0rc2
Debug: MplayerProcess::parseLine: MPlayer SVN: 24722
Debug: MplayerProcess::parseLine: 'CPU: VIA Esther processor 1500MHz (Family: 6, Model: 10, Stepping: 9)'
Debug: MplayerProcess::parseLine: 'CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1'
Debug: MplayerProcess::parseLine: 'Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2'
Debug: MplayerProcess::parseLine: ''
Debug: MplayerProcess::parseLine: 'Playing dvd://1.'
Debug: MplayerProcess::parseLine: 'ID_DVD_TITLES=1'
Debug: MplayerProcess::parseLine: 'ID_DVD_TITLE_1_CHAPTERS=24'
Debug: MplayerProcess::parseLine: Title: ID: 1, Chapters: '24'
Debug: MplayerProcess::parseLine: 'ID_DVD_TITLE_1_ANGLES=1'
Debug: MplayerProcess::parseLine: Title: ID: 1, Angles: '1'
Debug: MplayerProcess::parseLine: 'ID_DVD_TITLE_1_LENGTH=6022.400'
Debug: MplayerProcess::parseLine: Title: ID: 1, Length: '6022.400000'
Debug: MplayerProcess::parseLine: 'ID_DVD_DISC_ID=3673C23052E85D4D87EBBFFBDB963564'
Debug: MplayerProcess::parseLine: md.dvd_id set to '3673C23052E85D4D87EBBFFBDB963564'
Debug: MplayerProcess::parseLine: 'There are 1 titles on this DVD.'
Debug: MplayerProcess::parseLine: 'ID_DVD_CURRENT_TITLE=1'
Debug: MplayerProcess::parseLine: 'There are 24 chapters in this DVD title.'
Debug: MplayerProcess::parseLine: 'There are 1 angles in this DVD title.'
Debug: MplayerProcess::parseLine: 'audio stream: 0 format: ac3 (5.1) language: en aid: 128.'
Debug: MplayerProcess::parseLine: 'ID_AUDIO_ID=128'
Debug: MplayerProcess::parseLine: ID_AUDIO_ID: 128
Debug: MplayerProcess::parseLine: 'ID_AID_128_LANG=en'
Debug: MplayerProcess::parseLine: Audio: ID: 128, Lang: 'en' Type: 'LANG'
Debug: MplayerProcess::parseLine: 'number of audio channels on disk: 1.'
Debug: MplayerProcess::parseLine: 'subtitle ( sid ): 0 language: sv'
Debug: MplayerProcess::parseLine: 'ID_SUBTITLE_ID=0'
Debug: SubTracks::process: 'ID_SUBTITLE_ID=0'
Debug: SubTracks::find: item type: 1, ID: 0 doesn't exist
Debug: MplayerProcess::parseLine: 'ID_SID_0_LANG=sv'
Debug: SubTracks::process: 'ID_SID_0_LANG=sv'
Debug: MplayerProcess::parseLine: 'subtitle ( sid ): 1 language: sr'
Debug: MplayerProcess::parseLine: 'ID_SUBTITLE_ID=1'
Debug: SubTracks::process: 'ID_SUBTITLE_ID=1'
Debug: SubTracks::find: item type: 1, ID: 1 doesn't exist
Debug: MplayerProcess::parseLine: 'ID_SID_1_LANG=sr'
Debug: SubTracks::process: 'ID_SID_1_LANG=sr'
Debug: MplayerProcess::parseLine: 'subtitle ( sid ): 2 language: hr'
Debug: MplayerProcess::parseLine: 'ID_SUBTITLE_ID=2'
Debug: SubTracks::process: 'ID_SUBTITLE_ID=2'
Debug: SubTracks::find: item type: 1, ID: 2 doesn't exist
Debug: MplayerProcess::parseLine: 'ID_SID_2_LANG=hr'
Debug: SubTracks::process: 'ID_SID_2_LANG=hr'
Debug: MplayerProcess::parseLine: 'subtitle ( sid ): 3 language: sl'
Debug: MplayerProcess::parseLine: 'ID_SUBTITLE_ID=3'
Debug: SubTracks::process: 'ID_SUBTITLE_ID=3'
Debug: SubTracks::find: item type: 1, ID: 3 doesn't exist
Debug: MplayerProcess::parseLine: 'ID_SID_3_LANG=sl'
Debug: SubTracks::process: 'ID_SID_3_LANG=sl'
Debug: MplayerProcess::parseLine: 'subtitle ( sid ): 4 language: da'
Debug: MplayerProcess::parseLine: 'ID_SUBTITLE_ID=4'
Debug: SubTracks::process: 'ID_SUBTITLE_ID=4'
Debug: SubTracks::find: item type: 1, ID: 4 doesn't exist
Debug: MplayerProcess::parseLine: 'ID_SID_4_LANG=da'
Debug: SubTracks::process: 'ID_SID_4_LANG=da'
Debug: MplayerProcess::parseLine: 'subtitle ( sid ): 5 language: no'
Debug: MplayerProcess::parseLine: 'ID_SUBTITLE_ID=5'
Debug: SubTracks::process: 'ID_SUBTITLE_ID=5'
Debug: SubTracks::find: item type: 1, ID: 5 doesn't exist
Debug: MplayerProcess::parseLine: 'ID_SID_5_LANG=no'
Debug: SubTracks::process: 'ID_SID_5_LANG=no'
Debug: MplayerProcess::parseLine: 'subtitle ( sid ): 6 language: fi'
Debug: MplayerProcess::parseLine: 'ID_SUBTITLE_ID=6'
Debug: SubTracks::process: 'ID_SUBTITLE_ID=6'
Debug: SubTracks::find: item type: 1, ID: 6 doesn't exist
Debug: MplayerProcess::parseLine: 'ID_SID_6_LANG=fi'
Debug: SubTracks::process: 'ID_SID_6_LANG=fi'
Debug: MplayerProcess::parseLine: 'subtitle ( sid ): 7 language: en'
Debug: MplayerProcess::parseLine: 'ID_SUBTITLE_ID=7'
Debug: SubTracks::process: 'ID_SUBTITLE_ID=7'
Debug: SubTracks::find: item type: 1, ID: 7 doesn't exist
Debug: MplayerProcess::parseLine: 'ID_SID_7_LANG=en'
Debug: SubTracks::process: 'ID_SID_7_LANG=en'
Debug: MplayerProcess::parseLine: 'number of subtitles on disk: 8'
Debug: MplayerProcess::parseLine: 'CHAPTERS: 00:00:00,00:04:09,00:08:07,00:11:57,00:16:21,00:20:17,00:24:03,00:31:00,00:33:02,00:37:07,00:41:2$
Debug: MplayerProcess::parseLine: 'Selected DVD audio channel: 128 language: en'
Debug: MplayerProcess::parseLine: 'No matching DVD subtitle language found!'
Debug: MplayerProcess::parseLine: ''
Debug: MplayerProcess::parseLine: 'ID_VIDEO_ID=0'
Debug: MplayerProcess::parseLine: 'MPEG-PS file format detected.'
Debug: MplayerProcess::parseLine: 'ID_AUDIO_ID=128'
Debug: MplayerProcess::parseLine: ID_AUDIO_ID: 128
Debug: MplayerProcess::parseLine: 'VIDEO: MPEG2 720x480 (aspect 3) 29.970 fps 6650.0 kbps (831.2 kbyte/s)'
Debug: MplayerProcess::parseLine: 'ID_FILENAME=dvd://1'
Debug: MplayerProcess::parseLine: 'ID_DEMUXER=mpegps'
Debug: MplayerProcess::parseLine: 'ID_VIDEO_FORMAT=0x10000002'
Debug: MplayerProcess::parseLine: 'ID_VIDEO_BITRATE=6650000'
Debug: MplayerProcess::parseLine: 'ID_VIDEO_WIDTH=720'
Debug: MplayerProcess::parseLine: md.video_width set to 720
Debug: MplayerProcess::parseLine: 'ID_VIDEO_HEIGHT=480'
Debug: MplayerProcess::parseLine: md.video_height set to 480
Debug: MplayerProcess::parseLine: 'ID_VIDEO_FPS=29.970'
Debug: MplayerProcess::parseLine: 'ID_VIDEO_ASPECT=0.0000'
Debug: MplayerProcess::parseLine: md.video_aspect set to 1.500000
Debug: MplayerProcess::parseLine: 'ID_AUDIO_FORMAT=8192'
Debug: MplayerProcess::parseLine: 'ID_AUDIO_BITRATE=0'
Debug: MplayerProcess::parseLine: 'ID_AUDIO_RATE=0'
Debug: MplayerProcess::parseLine: 'ID_AUDIO_NCH=0'
Debug: MplayerProcess::parseLine: 'ID_LENGTH=6022.40'
Debug: MplayerProcess::parseLine: md.duration set to 6022.400000
Debug: MplayerProcess::parseLine: 'vo_xvmc: X-Video extension 2.2'
Debug: MplayerProcess::parseLine: 'vo_xvmc: X-Video MotionCompensation Extension version 1.1'
Debug: MplayerProcess::parseLine: 'Opening video filter: [screenshot]'
Debug: MplayerProcess::parseLine: 'Opening video filter: [scale]'
Debug: MplayerProcess::parseLine: '=========================================================================='
Debug: MplayerProcess::parseLine: 'Forced video codec: ffmpeg12mc'
Debug: MplayerProcess::parseLine: 'Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family'
Debug: MplayerProcess::parseLine: '[VD_FFMPEG] XVMC accelerated codec.'
Debug: MplayerProcess::parseLine: 'Selected video codec: [ffmpeg12mc] vfm: ffmpeg (FFmpeg MPEG-1/2 (XvMC))'
Debug: MplayerProcess::parseLine: '=========================================================================='
Debug: MplayerProcess::parseLine: 'ID_VIDEO_CODEC=ffmpeg12mc'
Debug: MplayerProcess::parseLine: '=========================================================================='
Debug: MplayerProcess::parseLine: 'Opening audio decoder: [liba52] AC3 decoding with liba52'
Debug: MplayerProcess::parseLine: 'Using SSE optimized IMDCT transform'
Debug: MplayerProcess::parseLine: 'Using MMX optimized resampler'
Debug: MplayerProcess::parseLine: 'AUDIO: 48000 Hz, 2 ch, s16le, 448.0 kbit/29.17% (ratio: 56000->192000)'
Debug: MplayerProcess::parseLine: 'ID_AUDIO_BITRATE=448000'
Debug: MplayerProcess::parseLine: 'ID_AUDIO_RATE=48000'
Debug: MplayerProcess::parseLine: 'ID_AUDIO_NCH=2'
Debug: MplayerProcess::parseLine: 'Selected audio codec: [a52] afm: liba52 (AC3-liba52)'
Debug: MplayerProcess::parseLine: '=========================================================================='
Debug: MplayerProcess::parseLine: 'AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)'
Debug: Core::gotAO: 'alsa'
Debug: MplayerProcess::parseLine: 'ID_AUDIO_CODEC=a52'
Debug: MplayerProcess::parseLine: 'Starting playback...'
Debug: MplayerProcess::parseLine: '[VD_FFMPEG] XVMC-VLD-accelerated MPEG-2.'
Debug: MplayerProcess::parseLine: '[VD_FFMPEG] Trying pixfmt=0.'
Debug: MplayerProcess::parseLine: 'VDec: vo config request - 720 x 480 (preferred colorspace: MPEG1/2 Motion Compensation and VLD)'
Debug: MplayerProcess::parseLine: 'The selected video_out device is incompatible with this codec.'
Debug: MplayerProcess::parseLine: 'Try appending the scale filter to your filter list,'
Debug: MplayerProcess::parseLine: 'e.g. -vf spp,scale instead of -vf spp.'
Debug: MplayerProcess::parseLine: '[VD_FFMPEG] Trying pixfmt=1.'
Debug: MplayerProcess::parseLine: 'VDec: vo config request - 720 x 480 (preferred colorspace: MPEG1/2 Motion Compensation and IDCT)'
Debug: MplayerProcess::parseLine: 'The selected video_out device is incompatible with this codec.'
Debug: MplayerProcess::parseLine: 'Try appending the scale filter to your filter list,'
Debug: MplayerProcess::parseLine: 'e.g. -vf spp,scale instead of -vf spp.'
Debug: MplayerProcess::parseLine: '[VD_FFMPEG] Trying pixfmt=2.'
Debug: MplayerProcess::parseLine: 'VDec: vo config request - 720 x 480 (preferred colorspace: MPEG1/2 Motion Compensation)'
Debug: MplayerProcess::parseLine: 'The selected video_out device is incompatible with this codec.'
Debug: MplayerProcess::parseLine: 'Try appending the scale filter to your filter list,'
Debug: MplayerProcess::parseLine: 'e.g. -vf spp,scale instead of -vf spp.'
Debug: MplayerProcess::parseLine: 'VDec: vo config request - 720 x 480 (preferred colorspace: MPEG1/2 Motion Compensation and VLD)'
Debug: MplayerProcess::parseLine: 'The selected video_out device is incompatible with this codec.'
Debug: MplayerProcess::parseLine: 'Try appending the scale filter to your filter list,'
Debug: MplayerProcess::parseLine: 'e.g. -vf spp,scale instead of -vf spp.'
Debug: MplayerProcess::parseLine: '[VD_FFMPEG] Unexpected init_vo error.'
Debug: MyProcess::procFinished
Debug: MyProcess::procFinished: Bytes available: 0
Debug: MplayerProcess::processFinished
Debug: Core::processFinished
Debug: Core::processFinished: we_are_restarting: 0
Debug: Core::processFinished: play has finished!
Debug: exit_status: 0
Debug: MplayerLayer::playingStopped
Debug: BaseGui::showPreferencesDialog
Debug: qstring_to_xtp result code -2
Debug: qstring_to_xtp result code -2
Debug: qstring_to_xtp result code -2
Debug: icon_dir: .../.smplayer/themes
Debug: icon_dir: /usr/local/share/smplayer/themes
Debug: BaseGuiPlus::closeEvent
Debug: BaseGuiPlus::closeWindow
Debug: BaseGui::closeWindow
Debug: Core::stop
Debug: state: Stopped
Debug: mset.current_sec: 0.000000
Debug: Core::stopMplayer
Warning: Core::stopMplayer: mplayer in not running!
Debug: DefaultGui::disableActionsOnStop
Debug: BaseGui::disableActionsOnStop
Debug: DefaultGui::saveConfig
Debug: DefaultGui::saveConfig: w: 854 h: 611
Debug: BaseGuiPlus::saveConfig
Debug: Core::saveMediaInfo
Debug: Playlist::saveSettings
Debug: qstring_to_xtp result code -2
Debug: qstring_to_xtp result code -2
Debug: Recents::save
Debug: qstring_to_xtp result code -2
Debug: qstring_to_xtp result code -2
Debug: global_end
Debug: Preferences::save
This is SMPlayer v. 0.6.0rc1 (SVN 773) running on Linux

How do I send the scale to MPlayer, as I do when just using MPlayer?

rvm
3rd February 2008, 03:30
You can add the scale filter in Preferences->Advaced->Options for MPlayer->Video filters.

Probably xvmc won't display the video inside smplayer, you may need to check also the option "Run mplayer in its own window".

Reimar
3rd February 2008, 11:24
You can add the scale filter in Preferences->Advaced->Options for MPlayer->Video filters.

Probably xvmc won't display the video inside smplayer, you may need to check also the option "Run mplayer in its own window".

The scale filter is not needed at all, it just makes no sense with xvmc.
You _do_ need to add these extra options to MPlayer though: -nocolorkey -slices -vf-clr
Reasons:
-nocolorkey because many newer cards do not support colorkey and vo_xvmc stupidly fails when it cannot set it. I intend to change that.
-slices because smplayer passes -noslices but the ffmpeg12mc decoder needs slices support to be able to work at all.
-vf-clr because smplayer inserts video filters by default, but they all can not handle MPEG-2 compressed video and thus the whole thing fails.

Reimar
3rd February 2008, 11:55
-nocolorkey because many newer cards do not support colorkey and vo_xvmc stupidly fails when it cannot set it. I intend to change that.

Sorry, this is wrong, -nocolorkey is not needed.

Xcalibur
3rd February 2008, 12:10
Thanks a lot Reimar - My hero :D That was just what I needed :)
Can tell, that no video is shown, if the -nocolorkey is included - only black screen ;)

:thanks: