You are not logged in.

#1 2014-06-26 19:01:07

doubleshot
Member
Registered: 2013-09-01
Posts: 12

Problem with VDPAU and 1080p videos

I made a fresh install of Arch on my trusty Thinkpad. It's a T510 with a 3100M gpu from Nvidia.
Hardware decoding worked fine in the past, but after my freshly made install mpv doesn't seem to
like 1080p videos.

File tags:
 major_brand: isom
 minor_version: 512
 compatible_brands: isomiso2avc1mp41
 encoder: Lavf55.33.100
[stream] Video (+) --vid=1 (*) (h264)
[stream] Audio (+) --aid=1 --alang=eng (*) (aac)
Trying to use hardware decoding.
AO: [pulse] 48000Hz stereo 2ch float
[ffmpeg/video] h264: get_buffer() failed
[ffmpeg/video] h264: thread_get_buffer() failed
[ffmpeg/video] h264: decode_slice_header error
[ffmpeg/video] h264: no frame!
Error while decoding frame!
Error using hardware decoding, falling back to software decoding.
AV: 00:00:00 / 00:02:23 (0%) A-V:  0.000
Using conversion filter.
AV: 00:00:00 / 00:02:23 (0%) A-V:  0.000
VO: [vdpau] 1920x1080 => 1920x1080 yuyv422
[vo/vdpau] Compositing window manager detected. Assuming timing info is inaccurate.
[vo/vdpau] Error when calling vdp_output_surface_create: The system does not have enough resources to complete the requested operation at this time.
[vo/vdpau] Error when allocating surface: The system does not have enough resources to complete the requested operation at this time.
[vo/vdpau] Error when uploading surface: An invalid handle value was provided.
AV: 00:00:00 / 00:02:23 (0%) A-V:  0.000
[vo/vdpau] Error when calling vdp_video_mixer_create: The system does not have enough resources to complete the requested operation at this time.
AV: 00:00:00 / 00:02:23 (0%) A-V:  0.000
[vo/vdpau] Error when calling vdp_output_surface_destroy: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_output_surface_create: The system does not have enough resources to complete the requested operation at this time.
[vo/vdpau] Error when calling vdp_output_surface_create: A catch-all error, used when no other error code applies.
[vo/vdpau] Error when calling vdp_output_surface_create: A catch-all error, used when no other error code applies.
AV: 00:00:00 / 00:02:23 (0%) A-V:  0.000
[vo/vdpau] Error when calling vdp_presentation_queue_block_until_surface_idle: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_video_mixer_destroy: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_video_mixer_create: The system does not have enough resources to complete the requested operation at this time.
[vo/vdpau] Error calling presentation_queue_query_surface_status: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_presentation_queue_display: An invalid handle value was provided.
AV: 00:00:00 / 00:02:23 (0%) A-V:  0.020
[vo/vdpau] Error when calling vdp_presentation_queue_block_until_surface_idle: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_video_mixer_destroy: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_video_mixer_create: The system does not have enough resources to complete the requested operation at this time.
[vo/vdpau] Error calling presentation_queue_query_surface_status: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_presentation_queue_display: An invalid handle value was provided.
AV: 00:00:00 / 00:02:23 (0%) A-V: -0.000
[vo/vdpau] Error when calling vdp_presentation_queue_block_until_surface_idle: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_video_mixer_destroy: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_video_mixer_create: The system does not have enough resources to complete the requested operation at this time.
[vo/vdpau] Error calling presentation_queue_query_surface_status: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_presentation_queue_display: An invalid handle value was provided.
AV: 00:00:00 / 00:02:23 (0%) A-V: -0.000
[vo/vdpau] Error when calling vdp_presentation_queue_block_until_surface_idle: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_video_mixer_destroy: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_video_mixer_render: An invalid handle value was provided.
[vo/vdpau] Error calling presentation_queue_query_surface_status: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_presentation_queue_display: An invalid handle value was provided.
AV: 00:00:00 / 00:02:23 (0%) A-V: -0.000
[vo/vdpau] Error when calling vdp_presentation_queue_block_until_surface_idle: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_video_mixer_render: An invalid handle value was provided.
[vo/vdpau] Error calling presentation_queue_query_surface_status: An invalid handle value was provided.
[vo/vdpau] Error when calling vdp_presentation_queue_display: An invalid handle value was provided.

It doesn't really matter if it's an 10 or 8 bit video, it always falls back to software decoding, spouts out these error messages and as a result
the video is completely fucked up or just stutters/drops frames like crazy. This only happens with 1080p videos, 720p or below is just fine.

Here's my mpv config...

# Write your default config options here!

# default configuration that applies to every file
[default]

# use alsa for audio output, choose pulse, or oss4 as fallback
ao=pulse

# try to use high quality opengl output, with standard opengl, classic xv, and
# wayland as fallbacks
# # note: opengl has numerous quality/performance trade-off options.
# # as per the mpv(1), "opengl-hq" is just an alias for
# "opengl:lscale=lanczos2:dither-depth=auto:fbo-format=rgb16"
vo=vdpau

hwdec=vdpau
hwdec-codecs=all

# set the window title using the media filename (see Property Expansion section
# of mpv(1))
title="${filename}"

# disable screensaver
stop-screensaver="yes"

# correct pitch when speed is faster or slower than 1.0
af=scaletempo

# gapless audio play
# gapless-audio

osd-font='droid sans'

screenshot-format=jpg

...and last but not least the output from 'vdpauinfo'...

display: :0   screen: 0
API version: 1
Information string: NVIDIA VDPAU Driver Shared Library  337.25  Tue May 27 12:24:30 PDT 2014

Video surface:

name   width height types
-------------------------------------------
420     4096  4096  NV12 YV12 
422     4096  4096  UYVY YUYV 

Decoder capabilities:

name               level macbs width height
-------------------------------------------
MPEG1                 0  8192  2048  2048
MPEG2_SIMPLE          3  8192  2048  2048
MPEG2_MAIN            3  8192  2048  2048
H264_MAIN            41  8192  2048  2048
H264_HIGH            41  8192  2048  2048
VC1_SIMPLE            1  8190  2048  2048
VC1_MAIN              2  8190  2048  2048
VC1_ADVANCED          4  8190  2048  2048
MPEG4_PART2_SP        3  8192  2048  2048
MPEG4_PART2_ASP       5  8192  2048  2048
DIVX4_QMOBILE         0  8192  2048  2048
DIVX4_MOBILE          0  8192  2048  2048
DIVX4_HOME_THEATER    0  8192  2048  2048
DIVX4_HD_1080P        0  8192  2048  2048
DIVX5_QMOBILE         0  8192  2048  2048
DIVX5_MOBILE          0  8192  2048  2048
DIVX5_HOME_THEATER    0  8192  2048  2048
DIVX5_HD_1080P        0  8192  2048  2048

Output surface:

name              width height nat types
----------------------------------------------------
B8G8R8A8          8192  8192    y  Y8U8V8A8 V8U8Y8A8 
R10G10B10A2       8192  8192    y  Y8U8V8A8 V8U8Y8A8 

Bitmap surface:

name              width height
------------------------------
B8G8R8A8          8192  8192
R8G8B8A8          8192  8192
R10G10B10A2       8192  8192
B10G10R10A2       8192  8192
A8                8192  8192

Video mixer:

feature name                    sup
------------------------------------
DEINTERLACE_TEMPORAL             y
DEINTERLACE_TEMPORAL_SPATIAL     y
INVERSE_TELECINE                 y
NOISE_REDUCTION                  y
SHARPNESS                        y
LUMA_KEY                         y
HIGH QUALITY SCALING - L1        y
HIGH QUALITY SCALING - L2        -
HIGH QUALITY SCALING - L3        -
HIGH QUALITY SCALING - L4        -
HIGH QUALITY SCALING - L5        -
HIGH QUALITY SCALING - L6        -
HIGH QUALITY SCALING - L7        -
HIGH QUALITY SCALING - L8        -
HIGH QUALITY SCALING - L9        -

parameter name                  sup      min      max
-----------------------------------------------------
VIDEO_SURFACE_WIDTH              y         1     4096
VIDEO_SURFACE_HEIGHT             y         1     4096
CHROMA_TYPE                      y  
LAYERS                           y         0        4

attribute name                  sup      min      max
-----------------------------------------------------
BACKGROUND_COLOR                 y  
CSC_MATRIX                       y  
NOISE_REDUCTION_LEVEL            y      0.00     1.00
SHARPNESS_LEVEL                  y     -1.00     1.00
LUMA_KEY_MIN_LUMA                y  
LUMA_KEY_MAX_LUMA                y  

Offline

#2 2014-07-08 08:07:27

blaenk
Member
Registered: 2012-11-11
Posts: 4

Re: Problem with VDPAU and 1080p videos

I'm experiencing this as well, specifically on 0.4.x. If I downgrade to 0.3.9 it works fine, vdpau and all. Try it yourself. I'm thinking it's a bug in mpv.

Offline

Board footer

Powered by FluxBB