Разбираемся с VDPAU

nVidia, ATI, SIS, VIA и др.

Модератор: Модераторы разделов

Tular
Сообщения: 7

Разбираемся с VDPAU

Сообщение Tular »

Собственно начну с того что сэмпловый файл проигрывается удовлетворительно.

Код: Выделить всё

./mplayer -vo vdpau -vc ffh264vdpau Grey.ts
MPlayer dev-SVN-r27408-4.3.1 (C) 2000-2008 MPlayer Team
CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz (Family: 15, Model: 3, Stepping: 4)
CPUflags:  MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing Grey.ts.
TS file format detected.
VIDEO H264(pid=255) AUDIO A52(pid=259) NO SUBS (yet)!  PROGRAM N. 1000
FPS seems to be: 25.000000
==========================================================================
Forced video codec: ffh264vdpau
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
[VD_FFMPEG] VDPAU accelerated codec.
Selected video codec: [ffh264vdpau] vfm: ffmpeg (FFmpeg H.264 (VDPAU))
==========================================================================
==========================================================================
Opening audio decoder: [liba52] AC3 decoding with liba52
Using SSE optimized IMDCT transform
Using MMX optimized resampler
AUDIO: 48000 Hz, 2 ch, s16le, 448.0 kbit/29.17% (ratio: 56000->192000)
Selected audio codec: [a52] afm: liba52 (AC3-liba52)
==========================================================================
AO: [oss] 48000Hz 2ch s16le (2 bytes per sample)
Starting playback...
[VD_FFMPEG] Trying pixfmt=0.
VDec: vo config request - 1920 x 1088 (preferred colorspace: H.264 MAIN VDPAU acceleration)
VDec: using H.264 MAIN VDPAU acceleration as output csp (no 1)
Movie-Aspect is 1.76:1 - prescaling to correct movie aspect.
VO: [vdpau] 1920x1088 => 1920x1088 H.264 MAIN VDPAU acceleration  [fs]
[ASPECT] Warning: No suitable new res found!
[ASPECT] Warning: No suitable new res found!
[ASPECT] Warning: No suitable new res found!
[ASPECT] Warning: No suitable new res found!
[ASPECT] Warning: No suitable new res found!
A:40317.4 V:40318.7 A-V: -1.342 ct: -0.176  45/ 45 21% 10%  1.2% 6 0
Exiting... (Quit)


далее идет пляска с бубном. mkv, mp4 выпадают с ошибкой, попутно вешая терминал. Попробовал перепаковать mkv в ts, на мой файл выдало туже ошибку что и на матрешку.

Код: Выделить всё

./mplayer -vo vdpau -vc ffh264vdpau pat.ts
MPlayer dev-SVN-r27408-4.3.1 (C) 2000-2008 MPlayer Team
CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz (Family: 15, Model: 3, Stepping: 4)
CPUflags:  MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing pat.ts.
TS file format detected.
VIDEO H264(pid=4113) AUDIO A52(pid=4352) NO SUBS (yet)!  PROGRAM N. 1
FPS seems to be: 23.975986
==========================================================================
Forced video codec: ffh264vdpau
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
[VD_FFMPEG] VDPAU accelerated codec.
Selected video codec: [ffh264vdpau] vfm: ffmpeg (FFmpeg H.264 (VDPAU))
==========================================================================
==========================================================================
Opening audio decoder: [liba52] AC3 decoding with liba52
Using SSE optimized IMDCT transform
Using MMX optimized resampler
AUDIO: 48000 Hz, 2 ch, s16le, 448.0 kbit/29.17% (ratio: 56000->192000)
Selected audio codec: [a52] afm: liba52 (AC3-liba52)
==========================================================================
AO: [oss] 48000Hz 2ch s16le (2 bytes per sample)
Starting playback...
[VD_FFMPEG] Trying pixfmt=0.
VDec: vo config request - 1280 x 544 (preferred colorspace: H.264 HIGH VDPAU acceleration)
VDec: using H.264 HIGH VDPAU acceleration as output csp (no 2)
Movie-Aspect is undefined - no prescaling applied.
VO: [vdpau] 1280x544 => 1280x544 H.264 HIGH VDPAU acceleration  [fs]
Error at libvo/vo_vdpau.c:826 ct: -0.004   7/  7 ??% ??% ??,?% 4 0

Единственное отличие в выводе увидел:
VO: [vdpau] 1920x1088 => 1920x1088 H.264 MAIN VDPAU acceleration [fs] - на экзампловом файле
VO: [vdpau] 1280x544 => 1280x544 H.264 HIGH VDPAU acceleration [fs] - на моем
как это поменять не знаю.
готов выслушать ваши советы.
Спасибо сказали:
Аватара пользователя
adjkerntz
Сообщения: 5
ОС: Debian Lenny, Kubuntu Intrepid

Re: Разбираемся с VDPAU

Сообщение adjkerntz »

далее идет пляска с бубном. mkv, mp4 выпадают с ошибкой, попутно вешая терминал.

Команда баша reset поможет восстановить работу терминала.
mkv, mp4

Похоже, наспех состряпанные патчи не поддерживают контейнеры mkv и mp4, некоторые виды h.264, а также постпроцессинг B-фреймов.

Пробовал перегнать .mkv в .ts-формат с помощью mencoder и ffmpeg - на выходе получается битый файл. Единственная программа, которой это удалось сделать - виндовый tsMuxer (он работает под вайном, но без GUI, так что конфиги для перекодирования приходится составлять самостоятельно). Сгенерированный таким образом MPEG-TS файл играется с помощью ffh264vdpau, но на B-фреймах видео "скачет", и в итоге просмотр становится невозможным.

В общем, пока жду новой версии патчей VDPAU для mplayer :(
Спасибо сказали:
Tular
Сообщения: 7

Re: Разбираемся с VDPAU

Сообщение Tular »

tsMuxer видел где-то линуксовый (cli-only)
Я перегонял в ts разными способами, vlc, mkv2tsLinux (как-то использует виндовый tsMuxer), еще что-то, даже распаковывал mkv при помощи mkvextract.
Не играет. Выпадает с тойже ошибкой что и в контейнере mkv.
А Grey.ts играет. Подозреваю нужны какие-то хитрые опции кодирования h.264, какие использованы в Grey.ts. Сразу вспоминаю про мобилки которые поддерживают h.264, для них тоже надо особые опции ставить при кодировании видео ибо все подряд мобилка не переварит. Вот узнать бы какие нужны для x264 кодека.
Спасибо сказали:
xfn
Сообщения: 112

Re: Разбираемся с VDPAU

Сообщение xfn »

Tular писал(а):
23.11.2008 18:37
tsMuxer видел где-то линуксовый (cli-only)
Я перегонял в ts разными способами, vlc, mkv2tsLinux (как-то использует виндовый tsMuxer), еще что-то, даже распаковывал mkv при помощи mkvextract.
Не играет. Выпадает с тойже ошибкой что и в контейнере mkv.
А Grey.ts играет. Подозреваю нужны какие-то хитрые опции кодирования h.264, какие использованы в Grey.ts. Сразу вспоминаю про мобилки которые поддерживают h.264, для них тоже надо особые опции ставить при кодировании видео ибо все подряд мобилка не переварит. Вот узнать бы какие нужны для x264 кодека.


http://h264enc.sourceforge.net/faq.html :

h264enc is designed around presets and currently has 51 of them, including presets for portable devices like Apple iPod, Apple iPhone, AppleTV, Blackberry Bold 9000, Nokia S60, Archos 605, Sony PSP, Sony PS3, Microsoft XBOX360 and Microsoft Zune

Оттуда можно взять пресеты (опции) для правильного кодирования.

А вообще форум по правильному кодированию forum.doom9.org, в частности раздел:
http://forum.doom9.org/showthread.php?t=132924

Используя ин-фу оттуда, пробовал жать параметрами (пресетами), которые идут с x264, и попробовав полученные файлы-образцы под Виндовс, поскольку это происходило месяца 1,5 назад, убедился, что работает. Если сохранил - выложу
Спасибо сказали:
Tular
Сообщения: 7

Re: Разбираемся с VDPAU

Сообщение Tular »

Кстати x264 с дефолтными настройками в avidemux2 правильно кодирует. И если паковать это все в avi, то работает. А вот с ремуксингом в avidemux2 пока не разобрался, mkv->avi пропадает звук.

Кстати в avidemux есть предустановки для psp и прочего в меню "авто". Вот бы кто-нибудь сделал предустановки для vdpau, при этом чтоб не терялось качество при транскодинге.
Спасибо сказали:
xfn
Сообщения: 112

Re: Разбираемся с VDPAU

Сообщение xfn »

если все еще интересно.

ремукс куска, из мпег4 в мпег4:

/usr/local/bin/mencoder -ss 0:00:02 -endpos 600 "/mnt/nt2/Films/Grand_bleu_720p.mkv" -o /dev/null -vf softskip,harddup -aid 1 -channels 6 -oac copy -ovc x264 -x264encopts pass=1:bitrate=4000:turbo=2:me=umh:me_range=24:nodct_decimate:nointerlaced:8x8dc
t:nofast_pskip:trellis=1:partitions=p8x8,b8x8,i8x8,i4x4:mixed_refs:keyint=240:ke
y
int_min=24:frameref=3:bframes=3:b_adapt=1:nob_pyramid:weight_b:direct_pred=auto:
s
ubq=7:chroma_me:cabac:deblock:vbv_maxrate=25000:vbv_bufsize=14475:aud:level_idc=
4
0:threads=auto -passlogfile /home/admin/.h264enc/h264enc_27247/h264.log

/usr/local/bin/mencoder -ss 0:00:02 -endpos 600 "/mnt/nt2/Films/Grand_bleu_720p.mkv" -o "/mnt/nt2/Films/my_samples/g1.avi" -vf softskip,harddup -aid 1 -channels 6 -oac copy -ovc x264 -x264encopts pass=2:bitrate=4000:me=umh:me_range=24:nodct_decimate:nointerlaced:8x8dct:nofast
_pskip:trellis=1:partitions=p8x8,b8x8,i8x8,i4x4:mixed_refs:keyint=240:keyint_min
=
24:frameref=3:bframes=3:b_adapt=1:nob_pyramid:weight_b:direct_pred=auto:subq=7:c
h
roma_me:cabac:deblock:vbv_maxrate=25000:vbv_bufsize=14475:aud:level_idc=40:threa
d
s=auto -passlogfile /home/admin/.h264enc/h264enc_27247/h264.log

sleep 1

/usr/bin/mkvmerge "/mnt/nt2/Films/my_samples/g1.avi" -o "/mnt/nt2/Films/my_samples/g1.mkv"

--------------------------------------------------------------
из мпег2 в мпег4:

/usr/local/bin/mencoder -ss 0:00:01 -endpos 600 "00003.m2ts" -o /dev/null -vf softskip,harddup -aspect 1.7778 -aid 4354 -channels 6 -oac copy -ovc x264 -x264encopts pass=1:bitrate=7000:turbo=2:me=umh:me_range=24:nodct_decimate:nointerlaced:8x8dc
t:nofast_pskip:trellis=1:partitions=p8x8,b8x8,i8x8,i4x4:mixed_refs:keyint=240:ke
y
int_min=24:psy_rd=0.5,0.3:frameref=3:bframes=3:b_adapt=1:nob_pyramid:weight_b:di
r
ect_pred=auto:subq=7:chroma_me:cabac:deblock:vbv_maxrate=25000:vbv_bufsize=14475
:
aud:level_idc=40:threads=auto:ssim:psnr -passlogfile /home/admin/.h264enc/h264enc_15973/h264.log

/usr/local/bin/mencoder -ss 0:00:01 -endpos 600 "00003.m2ts" -o "my_samples/01122008-1.avi" -vf softskip,harddup -aspect 1.7778 -aid 4354 -channels 6 -oac copy -ovc x264 -x264encopts pass=2:bitrate=7000:me=umh:me_range=24:nodct_decimate:nointerlaced:8x8dct:nofast
_pskip:trellis=1:partitions=p8x8,b8x8,i8x8,i4x4:mixed_refs:keyint=240:keyint_min
=
24:psy_rd=0.5,0.3:frameref=3:bframes=3:b_adapt=1:nob_pyramid:weight_b:direct_pre
d
=auto:subq=7:chroma_me:cabac:deblock:vbv_maxrate=25000:vbv_bufsize=14475:aud:lev
e
l_idc=40:threads=auto:ssim:psnr -passlogfile /home/admin/.h264enc/h264enc_15973/h264.log

sleep 1

/usr/bin/mkvmerge "my_samples/01122008-1.avi" -o "my_samples/01122008-1.mkv"
Спасибо сказали:
Аватара пользователя
adjkerntz
Сообщения: 5
ОС: Debian Lenny, Kubuntu Intrepid

Re: Разбираемся с VDPAU

Сообщение adjkerntz »

С новыми драйверами 180.18 и сегодняшними патчами для mplayer ситуация заметно улучшилась. Исчезла проблема изменения порядка кадров, с контейнерами больше проблем нет.

Неработающий терминал можно исправить введя команду stty sane

Осталась проблема только со слишком "хитрозакодированными" файлами и h.264 файлами с youtubemp4.com

с последними обещают разобраться в следующих релизах, хотя уже сейчас их можно проиграть, пропатчив vo_vdpau.c, изменив строчку
vdp_decoder_profile = VDP_DECODER_PROFILE_H264_BASELINE;
на
vdp_decoder_profile = VDP_DECODER_PROFILE_H264_HIGH;

Разработчики проделали неплохую работу, теперь 90% роликов проигрываются без проблем.

Бета-драйвер 180.18 на форуме nvnews.net
Информация о VDPAU на форуме nvnews.net
Спасибо сказали:
Аватара пользователя
mixrin
Сообщения: 155
ОС: gentoo ~amd64

Re: Разбираемся с VDPAU

Сообщение mixrin »

А можно ссылку на последний vdpau патч?

С этим - ftp://download.nvidia.com/XFree86/vdpau/m...3076399.tar.bz2 некоторые проблемы, не собирается в частности. На фтп нвидии что-то не пускает. И каким гцц собирали?

//-------------------

Пролистал доконца, нашел архив со свежим патчем -)
proud paludis user.
Спасибо сказали:
FlySnake
Сообщения: 992
ОС: openSUSE

Re: Разбираемся с VDPAU

Сообщение FlySnake »

Народ, а как нынче обстоят дела с установкой патча?
Скачал последий релиз, делаю как в ридми:

Код: Выделить всё

./checkout-patch-build.sh
на что после долгих раздумий:

Код: Выделить всё

svn: Can't connect to host 'svn.mplayerhq.hu': Время ожидания соединения истекло
Вроде как проблема с svn мплеера, но есть сомнения какие-то :/ Или пройдет? :)
Спасибо сказали: