Bug 13452 - openchrome XvMC mpeg2 decoding is not supported
Summary: openchrome XvMC mpeg2 decoding is not supported
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: mplayer (show other bugs)
Version: unstable
Hardware: all Linux
: P2 enhancement
Assignee: Vladimir D. Seleznev
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-11-16 15:08 MSK by Andrey Liakhovets
Modified: 2009-05-19 18:30 MSD (History)
5 users (show)

See Also:


Attachments
"mplayer" part of openchrome XvMC VLD patch (18.12 KB, patch)
2007-11-16 15:11 MSK, Andrey Liakhovets
no flags Details | Diff
mplayer spec patch for openchrome XvMC VLD (2.20 KB, patch)
2007-11-16 15:13 MSK, Andrey Liakhovets
no flags Details | Diff
Revert VLD changes (721 bytes, patch)
2007-11-16 15:14 MSK, Andrey Liakhovets
no flags Details | Diff
"ffmpeg" part of openchrome XvMC VLD patch (15.10 KB, patch)
2007-11-16 15:15 MSK, Andrey Liakhovets
no flags Details | Diff
ffmpeg spec patch for openchrome XvMC VLD (411 bytes, patch)
2007-11-16 15:16 MSK, Andrey Liakhovets
no flags Details | Diff
Spec патч для mplayer-1.0-alt35.25487.1 (2.13 KB, patch)
2007-12-24 17:54 MSK, Andrey Liakhovets
no flags Details | Diff
Spec патч для mplayer-1.0-alt35.25498.1 (2.13 KB, patch)
2007-12-26 12:05 MSK, Andrey Liakhovets
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Andrey Liakhovets 2007-11-16 15:08:06 MSK
В драйвере openchrome существует поддержка аппаратного декодирования MPEG2.
Патч для mplayer'а я брал отсюда:
 http://wiki.openchrome.org/pipermail/openchrome-users/2007-November/003728.html
Проверял на VIA EPIA SP8000:
 mplayer-1.0-alt35.25029.1
 ffmpeg-11006-alt1
 xorg-x11-drv-openchrome-0.2.900-alt0.svn420
 xorg-x11-server-1.4-alt8
Патч разделил на 2 части: для mplayer и для ffmpeg.
Обе части патча и diff'ы на spec'и прилагаются
(собирать mplayer с внутренней ffmpeg даже не пробовал).
Steps to Reproduce:
1. Запустить X с драйвером openchrome (например, на VIA EPIA SP)
2. mplayer -vo xvmc -vc ffmpeg12mc any_MPEG2_video.mpg
Actual Results:  
Не показывает видео с сообщениями:
Cannot find codec 'mpegvideo_xvmc' in libavcodec...
VDecoder init failed :(
Cannot find codec matching selected -vo and video format 0x10000002.

Expected Results:  
Показывает видео с небольшим использованием CPU (5..20% на VIA EPIA SP8000):
[VD_FFMPEG] XVMC accelerated codec.
Selected video codec: [ffmpeg12mc] vfm: ffmpeg (FFmpeg MPEG-1/2 (XvMC))
 ...
[VD_FFMPEG] XVMC-VLD-accelerated MPEG-2.
[VD_FFMPEG] Trying pixfmt=0.
VDec: vo config request - 720 x 576 (preferred colorspace: MPEG1/2 Motion
Compensation and VLD)
VDec: using MPEG1/2 Motion Compensation and VLD as output csp (no 0)
Movie-Aspect is 1,78:1 - prescaling to correct movie aspect.
VO: [xvmc] 720x576 => 1024x576 MPEG1/2 Motion Compensation and VLD
vo_xvmc: Port 68 grabed
vo_xvmc: Found matching surface with id=32315659 on 68 port at 0 adapter
vo_xvmc: Allocated Direct Context
vo_xvmc: Motion Compensation context allocated - 8 surfaces
vo_xvmc: idct=0 unsigned_intra=0
vo_xvmc: looking for OSD support
    Subpicture id 0x34344149
vo_xvmc: OSD support by backend rendering (fast)
vo_xvmc: Please send feedback to confirm that it works,otherwise send bugreport!
Comment 1 Andrey Liakhovets 2007-11-16 15:11:11 MSK
Created attachment 2275 [details]
"mplayer" part of openchrome XvMC VLD patch
Comment 2 Andrey Liakhovets 2007-11-16 15:13:16 MSK
Created attachment 2276 [details]
mplayer spec patch for openchrome XvMC VLD
Comment 3 Andrey Liakhovets 2007-11-16 15:14:19 MSK
Created attachment 2277 [details]
Revert VLD changes
Comment 4 Andrey Liakhovets 2007-11-16 15:15:21 MSK
Created attachment 2278 [details]
"ffmpeg" part of openchrome XvMC VLD patch
Comment 5 Andrey Liakhovets 2007-11-16 15:16:22 MSK
Created attachment 2279 [details]
ffmpeg spec patch for openchrome XvMC VLD
Comment 6 led 2007-11-19 03:38:23 MSK
(In reply to comment #0)
> В драйвере openchrome существует поддержка аппаратного декодирования MPEG2.

Существующая в mplayer поддержка не работает? Если нет - попробуйте ffmpeg из 
Daedalus - в этой сборке эта поддержка тоже включена.
Comment 7 Andrey Liakhovets 2007-11-19 13:47:48 MSK
mplayer-1.0-alt35.25029.1 из Sisyphus
ffmpeg-0.5.0-alt0.11004.1 из Daedalus
Не работает:

[VD_FFMPEG] XVMC accelerated codec.
Selected video codec: [ffmpeg12mc] vfm: ffmpeg (FFmpeg MPEG-1/2 (XvMC))
 ...
[VD_FFMPEG] XVMC-accelerated MPEG-2.
[VD_FFMPEG] Trying pixfmt=0.
VDec: vo config request - 720 x 576 (preferred colorspace: MPEG1/2 Motion
Compensation and IDCT)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.
[VD_FFMPEG] Trying pixfmt=1.
VDec: vo config request - 720 x 576 (preferred colorspace: MPEG1/2 Motion
Compensation)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.
[VD_FFMPEG] Trying pixfmt=2.
VDec: vo config request - 720 x 576 (preferred colorspace: MPEG1/2 Motion
Compensation and VLD)
VDec: using MPEG1/2 Motion Compensation and VLD as output csp (no 0)
Movie-Aspect is 1,78:1 - prescaling to correct movie aspect.
VO: [xvmc] 720x576 => 1024x576 MPEG1/2 Motion Compensation and VLD 
vo_xvmc: Port 68 grabed
vo_xvmc: Found matching surface with id=32315659 on 68 port at 0 adapter
vo_xvmc: Allocated Direct Context
vo_xvmc: Motion Compensation context allocated - 8 surfaces
vo_xvmc: idct=0 unsigned_intra=0
vo_xvmc: looking for OSD support
    Subpicture id 0x34344149
vo_xvmc: OSD support by backend rendering (fast)
vo_xvmc: Please send feedback to confirm that it works,otherwise send bugreport!


MPlayer interrupted by signal 11 in module: decode_video
- MPlayer crashed by bad usage of CPU/FPU/RAM.
  Recompile MPlayer with --enable-debug and make a 'gdb' backtrace and
  disassembly. Details in DOCS/HTML/en/bugreports_what.html#bugreports_crash.
- MPlayer crashed. This shouldn't happen.
  It can be a bug in the MPlayer code _or_ in your drivers _or_ in your
  gcc version. If you think it's MPlayer's fault, please read
  DOCS/HTML/en/bugreports.html and follow the instructions there. We can't and
  won't help unless you provide this information when reporting a possible bug.
Comment 8 Andrey Liakhovets 2007-11-19 13:56:37 MSK
Похоже, здесь достаточно старая версия патча:
> mplayer-1.0-alt35.25029.1 из Sisyphus
> ffmpeg-0.5.0-alt0.11004.1 из Daedalus

Вот "новая и новейшая история":
http://wiki.openchrome.org/pipermail/openchrome-users/2007-July/003365.html
http://wiki.openchrome.org/pipermail/openchrome-users/2007-August/003453.html
http://wiki.openchrome.org/pipermail/openchrome-users/2007-October/003649.html
http://wiki.openchrome.org/pipermail/openchrome-users/2007-November/003728.html
Comment 9 Andrey Liakhovets 2007-12-24 17:52:51 MSK
Для нового mplayer-1.0-alt35.25487.1 можно использовать тот же самый XvMC VLD
патч. Новый патч на spec прикрепил.
Проверено: работает на VIA EPIA SP8000 (с ffmpeg-11199-alt3 из Сизифа).
Comment 10 Andrey Liakhovets 2007-12-24 17:54:49 MSK
Created attachment 2335 [details]
Spec патч для mplayer-1.0-alt35.25487.1
Comment 11 Andrey Liakhovets 2007-12-26 12:05:35 MSK
Created attachment 2338 [details]
Spec патч для mplayer-1.0-alt35.25498.1

Опять-таки работает с прежним XvMC VLD патчем.
Comment 12 led 2008-01-24 18:16:54 MSK
(In reply to comment #11)
Посмотрите на mplayer+ffmpeg в Daedalus. В Сизиф не выкладывал, потому как 
ffmpeg там слишком старый для текущего Mplayer.
Comment 13 Andrey Liakhovets 2008-01-27 00:26:59 MSK
> (In reply to comment #11)
mplayer-1.0-alt35.25844.1 из Daedalus
ffmpeg-0.5.0-alt0.11604.1 из Daedalus
Не работает.

либо так:

vo_xvmc: X-Video extension 2.2
vo_xvmc: X-Video MotionCompensation Extension version 1.1
==========================================================================
Forced video codec: ffmpeg12mc
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Could not open codec.
VDecoder init failed :(
Opening video decoder: [mpegpes] MPEG 1/2 Video passthrough
VDec: vo config request - 720 x 480 (preferred colorspace: Mpeg PES)
Trying filter chain: vo
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
SwScale params: -1 x -1 (-1=no scaling)
Trying filter chain: scale vo
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.
VDecoder init failed :(
Opening video decoder: [libmpeg2] MPEG 1/2 Video decoder libmpeg2-v0.4.0b
Selected video codec: [mpeg12] vfm: libmpeg2 (MPEG-1 or 2 (libmpeg2))
 ...
VDec: vo config request - 720 x 480 (preferred colorspace: Planar YV12)
Trying filter chain: vo
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
SwScale params: -1 x -1 (-1=no scaling)
Trying filter chain: scale vo
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.

FATAL: Could not initialize video filters (-vf) or video output (-vo).


либо так:

vo_xvmc: X-Video extension 2.2
vo_xvmc: X-Video MotionCompensation Extension version 1.1
==========================================================================
Forced video codec: ffmpeg12mc
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Could not open codec.
VDecoder init failed :(
Cannot find codec matching selected -vo and video format 0x10000002.
 ...
Video: no video
Comment 14 Mikhail Gusarov 2008-06-13 13:00:39 MSD

    
Comment 15 Andrey Liakhovets 2009-03-24 15:43:55 MSK
Патч на последних сборках не проверял, почти наверняка надо будет что-то менять.
Пока не готова новая версия патча, предложил убрать его и из ffmpeg (#13453).
Comment 16 Afanasov Dmitry 2009-05-19 18:30:09 MSD
в mplayer патч тоже выкинут. сейчас даже файлов нет, которые патчились.
-vo xvmc в спеке включен, интересно работает, нет.