এনভিডিয়া ভিডিপাউ এমপ্লেয়ার / ভিএলসি / টোটেমের জন্য কাজ করছে কিনা আমি কীভাবে জানতে পারি?


8

আমার একটি পৃথক এনভিডিয়া গ্রাফিক্স কার্ড সহ একটি ল্যাপটপ রয়েছে ।

আমার ভিডিও প্লেয়ারটি এটি এমপ্লেয়ার বা ভিএলসি বা টোটেম এনভিডিয়া ভিডিপিএইউ ব্যবহার করছে কিনা তা আমি কীভাবে জানতে পারি? উদাহরণস্বরূপ, নীচে স্ক্রিপ্ট সহ এমপ্লেয়ার 2 চালানো, আমি এই বার্তাটি পাই:

Failed to open VDPAU backend libvdpau_nvidia.so: cannot open shared object file: No such file or directory

তবে সিস্টেমে আমার কাছে এই জাতীয় ফাইল রয়েছে:

-rw-r--r-- 1 root root 1800952 2011-11-23 07:39 /usr/lib/nvidia-current/vdpau/libvdpau_nvidia.so.290.10

কোনও ফাইলের কোডেক সন্ধানের জন্য স্ক্রিপ্ট:

    #!/bin/bash
#Script to automatically find out which codec a file is using and determine whether or not to use VDPAU.

#if no input display usage
if [ -z "$1" ]; then
    echo usage: $0 /path/to/file
    exit
fi

#remember to change this to the path of your mplayer binary
mplayerlocation=/usr/bin/
cd $mplayerlocation

#kinda a lame way to do it, but bring up mplayer and pipe the output to a temporary file, then read which codec the file is
./mplayer -identify -vo vdpau $1 > /tmp/VIDEOCODEC &
sleep 0.5
killall mplayer
videocodec=`cat /tmp/VIDEOCODEC | grep ID_VIDEO_CODEC | cut -c 16-25`
rm /tmp/VIDEOCODEC

echo "VIDEO CODEC: $videocodec"

if [ $videocodec = "ffh264" ]; then
    codec='h264'
    echo \n Playing $1 with $codec codec \n
    ./mplayer -vo vdpau -vc ffh264vdpau $1

    exit
fi

if [ $videocodec = "ffmpeg2" ]; then
    codec='MPEG2'
    echo \n Playing $1 with $codec codec \n
    ./mplayer -vo vdpau -vc ffmpeg12vdpau $1

    exit
fi

if [ $videocodec = "ffwmv3" ]; then
    codec='WMV3'
    echo \n Playing $1 with $codec codec \n
    ./mplayer -vo vdpau -vc ffwmv3vdpau $1

    exit
fi

#VC1 is not supported on most gpus
#uncomment if it is supported on your gpu
#if [ $videocodec = "ffvc1" ]; then
#   codec='VC1'
#   echo \n Playing $1 with $codec codec \n
#   ./mplayer -vo vdpau -vc ffvc1vdpau $1
#
#   exit
#fi

#if it isnt one of those it is not supported by vdpau
#so we should play without vdpau
./mplayer $1
exit

সম্পাদনা: আপাতদৃষ্টিতে এটি গ্রন্থাগারটি খুঁজে পাবে না, এমনকি এটি ভুম্বলির ভি 3 অপ্টেরুনের মাধ্যমে কল করার পরেও নয়, যদিও গ্রন্থাগারটি রয়েছে:

optirun vdpauinfo 
display: :0.0   screen: 0
Failed to open VDPAU backend libvdpau_nvidia.so: cannot open shared object file: No such file or directory
Error creating VDPAU device: 1
avilella@magneto:~$ locate libvdpau_nvidia.so | xargs ls
/usr/lib/nvidia-current/vdpau/libvdpau_nvidia.so  /usr/lib/nvidia-current/vdpau/libvdpau_nvidia.so.1  /usr/lib/nvidia-current/vdpau/libvdpau_nvidia.so.290.10

সম্পাদনা 2: আমি উবুন্টু 12.04 এর সাথে আবার চেষ্টা করেছি এবং আমি এখনও এটি কাজ করতে পারি না।


উদাহরণস্বরূপ, এমপ্লেয়ারের জন্য, আমি একটি পেয়েছি: [ভিডিপিউ] ভিডিপি_দেবী_ক্রেট_একএস 11: 1
719016

সম্ভবত সম্পর্কিত: জিজ্ঞাসাবাবু
ব্রুনো পেরেইরা

আমি উবুন্টু 12.04 এর সাথে আবার চেষ্টা করেছি এবং আমি এখনও এটি কাজ করতে পারি না।
719016

উত্তর:


11

আপনার প্রশ্নের সমাধান করতে এবং এমপিপ্লেয়ার বা ভিএলসি দিয়ে জিপিইউ ডিকোডিং সক্ষম করার বিষয়ে কিছুটা।

Mplayer

আপনি ভিডিপিউ এর মাধ্যমে জিপিইউ ডিকোডিং পাচ্ছেন কিনা তা দেখার সহজ উপায়টি আপনি যা করেছেন তা করা - টার্মিনাল থেকে এমপ্লেয়ার চালান run এটিএম যা আপনি দেখিয়েছেন তা ইঙ্গিত করে যে আপনি এটি পাচ্ছেন না।

এমপ্লেয়ারের জন্য প্রয়োজনীয়গুলি হ'ল:

mplayer অথবা mplayer 2

nvidia-current অথবা সরাসরি এনভিডিয়া থেকে এনভিডিয়া ড্রাইভার, এনভিডিয়া-বর্তমান প্যাকেজটি করবে।

libvdpau

নিশ্চিত হয়ে নিন যে আপনি উপরেরটি পূরণ করেছেন, তারপরে আপনি যে কমান্ডটি করেছিলেন তার আগে চালান, যদিও ভিডিওটি H.264 কিনা তা নিশ্চিত হয়ে নিন

যাত্রা। টার্মিনাল আউটপুট, অপ্রাসঙ্গিক লাইন সরানো

$ mplayer  -vo vdpau -vc ffh264vdpau /home/doug/Videos/sintel.mp4 
MPlayer2 UNKNOWN (C) 2000-2011 MPlayer Team
Playing /home/doug/Videos/sintel.mp4.
Detected file format: QuickTime/MPEG-4/Motion JPEG 2000 format (libavformat)
[lavf] stream 0: video (h264), -vid 0
[lavf] stream 1: audio (aac), -aid 0, -alang und
VIDEO:  [H264]  1280x546  24bpp  24.000 fps  1597.2 kbps (195.0 kbyte/s)
==========================================================================
Forced video codec: ffh264vdpau
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffh264vdpau] vfm: ffmpeg (FFmpeg H.264 (VDPAU))
VO: [vdpau] 1280x546 => 1280x546 H.264 VDPAU acceleration 
[vdpau] Got display refresh rate 59.991 Hz.

আপনি যদি এমপিপ্লেয়ারের মাধ্যমে ভিডিপিউ সমর্থন করে / সমর্থন vc=করেন তবে ~/.mplayer/configআপনি স্বয়ংক্রিয় চেক করতে একটি লাইন সেট করতে পারেন এবং সমর্থিত কোডেকগুলির জন্য উপযুক্ত এফএফভিডিপাউ * ডিকোডার ব্যবহার করতে পারেন

চেক করার আরেকটি উপায় হ'ল ব্যবহার করা vdpauinfo। প্যাকেজটি কেবল 12.04 এ উপলব্ধ তবে 11.10 এ ইনস্টল করা যাবে। এটি করতে এখানে যান, সাথে ডাউনলোড করুন এবং ইনস্টল করুন gdebi, যদিও software centerআপনি চেষ্টা করতে চান তবে আপনার জন্য ইনস্টল করতে পারে

http://packages.ubuntu.com/precise/vdpauinfo

একটি টার্মিনাল খুলুন এবং চালাতে ব্যবহার করুন vdpauinfo

যাত্রা। বেসিক ভিডিপাউ সমর্থন সহ ল্যাপটপে ভিডিপাউইনফো এর আউটপুটগুলির কিছু

$ vdpauinfo
display: :0   screen: 0
API version: 1
Information string: NVIDIA VDPAU Driver Shared Library  280.13  Wed Jul 27 17:18:15 PDT 2011

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

VLC

আপনার যদি এনভিডিয়া হার্ডওয়্যার থাকে এবং ভিডিপাউ সমর্থন নাও করতে পারেন বা না করতে পারেন তবে ভিএলসি দিয়ে বিরক্ত করবেন না যা ভ্যাপি ব্যবহার করে এবং এটি সক্ষম করতে ট্রিকর। অতিরিক্ত হিসাবে এনভিডিয়ায় ভ্যাপির পারফরম্যান্সটি খুব বেশি হার্ডওয়্যার নির্ভর। আমি এখানে সক্ষম করেছি তবে ব্যবহার করব না, আমার ক্লাসটির ভিএফসিপিতে ffmpeg মাল্টি-থ্রেড আরও ভাল।

এটি কেবলমাত্র ভিপি এবং ভিএলসি সক্রিয় করার মূল বিষয়গুলি। নির্দিষ্টকরণের জন্য আপনাকে অনুসন্ধান করতে হবে এবং কীভাবে জিজ্ঞাসা করতে হবে।

ভিএলসির জন্য প্রয়োজনীয়গুলি হ'ল:

vlc এবং ffmpeg ভাগ করে নেওয়া libs যেগুলিতে ভ্যাপি সমর্থন রয়েছে, ১১.১০ সেখানে ভাল।

libva1ইনস্টল করুন libva-x11-1 vainfo

vdpau-va-driver

আপনার সবচেয়ে বড় সমস্যা হতে পারে যে উবুন্টুর লিবভা * এবং ভিডিপাউ-ভিএ-ড্রাইভারের সংস্করণগুলি যথেষ্ট নতুন নয়, আপনাকে সেখানে আরও পরামর্শ নেওয়া দরকার। In 12.04 they are adequate

চলমান vainfoটার্মিনালে তোমাকে বলব? আপনি কোথায় দাঁড়িয়ে

যাত্রা। এখানে বৃথা

$ vainfo
libva: libva version 0.32.0
Xlib:  extension "XFree86-DRI" missing on display ":0.0".
libva: va_getDriverName() returns 0
libva: Trying to open /usr/lib/dri/nvidia_drv_video.so
libva: va_openDriver() returns 0
vainfo: VA API version: 0.32
vainfo: Driver version: Splitted-Desktop Systems VDPAU backend for VA-API - 0.7.3
vainfo: Supported profile and entrypoints
  VAProfileMPEG2Simple            : VAEntrypointVLD
  VAProfileMPEG2Main              : VAEntrypointVLD
  VAProfileH264Main               : VAEntrypointVLD
  VAProfileH264High               : VAEntrypointVLD
  VAProfileVC1Simple              : VAEntrypointVLD
  VAProfileVC1Main                : VAEntrypointVLD
  VAProfileVC1Advanced            : VAEntrypointVLD

জিপিইউ ডিকোডিংটি ভিএলসি এবং ভোপপিগ থেকে দুটি উপায়ে সক্ষম করতে

একটি টার্মিনাল থেকে, পছন্দগুলিতে সেট করার দরকার নেই

vlc --ffmpeg-hw /path/to/supported/video/name

ভিএলসি-র গুই সেট করতে, পূর্বের পোস্টগুলি কীভাবে, আসল উপায়ে স্ক্রিনে প্রদর্শিত হয় তা ভুল

সরঞ্জামসমূহ> পছন্দসমূহ> ইনপুট / কোডেকস> বাক্সটি চেক করুন, "এইচ .২ in in ইন-লুপ ডিফলিং ফিল্টারটি স্কিপ করুন" পড়ার বিষয়টি কার্যকর প্রমাণিত হতে পারে

এখানে চিত্র বর্ণনা লিখুন

যাত্রা। ভিএলসি জিপিইউ ডিকোডিং থ্রো ওয়াপির টার্মিনাল থেকে , ১২.০৪-এ রেপো ভিএলসি ব্যবহার করে যদিও 1.2 / 1.3 / 2.0 পছন্দসই সংস্করণ, 2.0 চাইলে পিপিএ পাওয়া উচিত

vlc --ffmpeg-hw '/home/doug/Videos/sintel.mp4' 
VLC media player 1.1.13 The Luggage (revision exported)
clipped .....

libva: libva version 0.32.0
Xlib:  extension "XFree86-DRI" missing on display ":1".
libva: va_getDriverName() returns 0
libva: Trying to open /usr/lib/dri/nvidia_drv_video.so
libva: va_openDriver() returns 0
[0x863468c] avcodec decoder: Using VA API version 0.32 for hardware decoding.

বোম্বলির অপটিরুনের মাধ্যমে এটি কল করার পরেও, লাইব্রেরিটি খুঁজে পাওয়া যায় না, যদিও এটি সেখানে রয়েছে: optirun vdpauinfo প্রদর্শন:: 0.0 স্ক্রিন: 0 VDPAU ব্যাকএন্ড খুলতে ব্যর্থ হয়েছে libvdpau_nvidia.so: ভাগ করা অবজেক্ট ফাইলটি খুলতে পারে না: এ জাতীয় কোনও ফাইল বা ডিরেক্টরি ত্রুটি নেই ভিডিপিএইউ ডিভাইস তৈরি করছে: 1 টি অ্যাভিলেলা @ ম্যাগনেটো: $ $ libvdpau_nvidia.so চিহ্নিত করুন | xargs ls /usr/lib/nvidia-current/vdpau/libvdpau_nvidia.so /usr/lib/nvidia-current/vdpau/libvdpau_nvidia.so.1
usr

2
যদি এখন এটি উপস্থিত হয়, আপনার হাইব্রিড / সর্বোত্তম ভিডিও হার্ডওয়্যার রয়েছে তবে আপনাকে এনভিডিয়া চিপের মাধ্যমে জিপিইউ ডিকোডিংকে কীভাবে অনুমতি দেওয়া যায় তা নিয়ে গবেষণা করতে হবে। নিজেকে এই ধরনের হার্ডওয়্যার মালিকানাধীন জীবনে হয় নাই, যে সমস্যা একটি প্রশ্ন নির্দিষ্ট যারা না & এই সমস্যা সম্মুখীন হচ্ছে বা আশা 'সংশোধন' থেকে কিছু মনোযোগ শস্যভাণ্ডার পারে
ডগ

এই প্রশ্নের সংকর কিছু তথ্য আছে, সম্ভবত অন্যদের askubuntu.com/questions/100786/...
ডগ

2

আপনি উদাহরণস্বরূপ প্লে করার প্রক্রিয়াটির সিপিইউ ব্যবহার পরীক্ষা করে এটি করতে পারেন top। যদি ভিডিপাউ অফলোডিং কার্যকর হয়, সিপু ব্যবহার কম হওয়া উচিত। অন্যদিকে, সিপুতে ডিকোডিংয়ের ফলে উচ্চ সিপিইউ লোড হবে।


0

ভিএলসি, ডিফল্টরূপে প্ল্যাটফর্ম হার্ডওয়্যার ত্বরণ ব্যবহার যদি এটা available.You খেলোয়াড়ের গিয়ে যাচাই করতে পারেন Tools-> Preferences-> Video-> গতিবৃদ্ধপ্রাপ্ত ভিডিও আউটপুট (ওভারলে) এবং দেখুন এটি টিক হচ্ছে।

সুতরাং আপনার Nvidia গ্রাফিক্স কার্ডের ড্রাইভারগুলি সঠিকভাবে ইনস্টল করা আছে কিনা তা যাচাই করা উচিত, যা আপনি সিস্টেম-> প্রশাসন-> অতিরিক্ত ড্রাইভার ব্যবহার করে করতে পারেন ।


ভিএলসি-র জন্য, সরঞ্জাম-> পছন্দসমূহ-> ভিডিও-> ত্বরণযুক্ত ভিডিও আউটপুট (ওভারলে) টিকযুক্ত, তবে এটি এমপ্লেয়ার দিয়ে চালানোর সময় যেমন আচরণ করে, তাই আমি অনুমান করছি যে এটি কোনওভাবেই কাজ করছে না।
719016

0

আমি একটি এইচডি চলচ্চিত্র খেলব কিনা তা পরীক্ষা করতে, অ্যাপল / আইটিউনস সিনেমার ট্রেলার ওয়েবসাইট থেকে একটি ট্রেলার ডাউনলোড করুন। ভিএলসি-তে সরঞ্জাম-> পছন্দসমূহ-> ভিডিও-> ত্বরণযুক্ত ভিডিও আউটপুট (ওভারলে) এ গিয়ে এটি অক্ষম করে। সিস্টেম মনিটরটি খুলুন এবং "প্রক্রিয়াগুলি" ট্যাবে যান এবং তালিকায় ভিএলসি সন্ধান করুন।

আপনার কাছে থাকা ট্রেলার বা সিনেমা শুরু করুন এবং ভিএলসি প্রক্রিয়া কতটা উচ্চ সিপিইউ ব্যবহার করছে তা দেখুন। এখন ভিএলসিতে সিনেমাটি থামান এবং সরঞ্জাম-> পছন্দসমূহ-> ভিডিও-> ত্বরণযুক্ত ভিডিও আউটপুট (ওভারলে) এ যান তারপরে হার্ডওয়্যার ত্বরণকে "সক্ষম করুন" এবং আপনার সেটিংস সংরক্ষণ করুন। পরিবর্তনগুলি কার্যকর হওয়ার জন্য VLC পুনরায় চালু করার পরে এটি বন্ধ করা প্রয়োজন হতে পারে। আমি নিরাপদে এটি পুনরায় চালু করতে হবে।

একবার ভিএলসি পুনরায় চালু হয়ে গেলে হার্ডওয়্যার ওভারলে সক্ষম হয়। আগের মতো একই সিনেমা / ট্রেলার প্লে করুন এবং দেখুন সিস্টেম মনিটর প্যানেলে সিপিইউ রিসোর্সগুলি কম কিনা।

যদি তারা উল্লেখযোগ্যভাবে কম হয় তবে এর অর্থ এটি কাজ করছে।

আমার ক্ষেত্রে ভিএলসি 60-70% সিপিইউ ব্যবহার করে কেবল 20-30% এ চলে গেছে। আমি লক্ষ্য করেছি যে এমপ্লেয়ার আরও কম ব্যবহার করেছেন। এটি হার্ডওয়্যার ত্বরণ সহ 60-70% থেকে 5% এর নীচে চলে গেছে।

আপনার ফলাফলগুলি পরিবর্তিত হতে পারে তবে হার্ডওয়্যার ত্বরণটি যদি সঠিকভাবে কাজ করে তবে আপনার উচিত সিস্টেম মনিটরের অধীনে সেই নির্দিষ্ট প্রক্রিয়াতে সিপিইউ ব্যবহারের ক্ষেত্রে একটি দুর্দান্ত উল্লেখযোগ্য প্রবণতা।

আমি যা বুঝি তা থেকে ভিডিও হার্ডওয়্যার ত্বরণ সমস্ত ভিডিও ফর্ম্যাটের সাথে সামঞ্জস্যপূর্ণ নয় এবং এটি আপনার জিপিইউর উপর নির্ভর করে কোন ফর্ম্যাটগুলি ডিকোড করতে পারে can

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.