Linux Radeon OSS with vdpau (howto) - Printable Version +- Kodi Community Forum (https://forum.kodi.tv) +-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33) +--- Forum: General Support (https://forum.kodi.tv/forumdisplay.php?fid=111) +---- Forum: Linux (https://forum.kodi.tv/forumdisplay.php?fid=52) +---- Thread: Linux Radeon OSS with vdpau (howto) (/showthread.php?tid=174854) Pages:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
|
Radeon OSS with vdpau (howto) - fritsch - 2013-10-03 Warning: This Howto assumes you know how to use ssh and howto create a file on a linux system. Furthermore you need to know what sudo is - if one is unknown to you - this is not the howto you want to follow Introduction After AMD proprietary department did not care for XvBA for more than 2 years now and no AMD driver since 12.10 was really usable, we got into contact with the AMD OSS devs. Within just 2 weeks, we got more working than we ever hoped with the oss radeon vdpau in comparison to fglrx binary blob xvba implementation. As it now made a whole lot of fun working with AMD hardware, we have dropped XvBA completely (it is parked in fernetmentas xvba branch). What you get - Bitstream Audio (including DTS-HD, TrueHD, LPCM 7.1) - max resolution: 2048 x 1152 - mpeg2, mpeg4, h264, vc1 advanced accleration - Bob and Temporal deinterlacing via vdpau - 110% speed as with the fglrx implementation Known issues for now - On older radeon systems with UVD2 no hw decoder for mpeg-2 exists and shaders are used. Those segfault when run mutlithreaded. You can disable mpeg-2 codec via th expert settings menu Acceleration. Fusion and above is not affected by this issue. -1.) Hardware Requirements / Software Requirements UVD 2.2 or higher See here: http://en.wikipedia.org/wiki/Unified_Video_Decoder#UVD_enabled_GPUs Ubuntu Trusty mini or server iso installed x64. You can download the mini.iso here: http://archive.ubuntu.com/ubuntu/dists/trusty/main/installer-amd64/current/images/netboot/mini.iso UEFI: If you need an UEFI installation, please use the server iso instead, but make sure you boot the Computer in UEFI mode, you can download the server iso from here: http://cdimage.ubuntu.com/ubuntu-server/trusty/daily/current/trusty-server-amd64.iso 0.) Basic Installation and script tuning After the mini iso is installed, continue with the following steps: Code: sudo apt-get update Allow every user (everyone) to start X11 Code: sudo dpkg-reconfigure x11-common Create the kodi user and it add it the relevant groups. If you have created the kodi user during installation only do the usermod part. Code: sudo adduser kodi To use the following upstart procedure you need to create /etc/init/kodi.conf to start kodi via upstart. That scripts does only wait for your HDMI device, if you want to wait for networking, you have to add that. If you have installed kodi, make sure you read the comments, then comment the /usr/bin/kodi line and uncomment the /usr/bin/kodi line instead. Code: # kodi-upstart edit /etc/security/limits.conf and add before the end. remember kodi is the username, not the application. This will allow your user to get the audio thread a bit more priority. Code: kodi - nice -1 Last thing is missing some permissions to shutdown, suspend the computer, therefore create the file /etc/polkit-1/localauthority/50-local.d/custom-actions.pkla with the following content (don't introduce line breaks, especially the Action= line must be exactly one line (especially no linebreaks or auto ".." in freedesktop.udisks.*), verify this): Code: [Actions for kodi user] 1a) Installation Kodi 14.0 via the official ppa Code: sudo apt-add-repository ppa:team-xbmc/ppa Reboot of the system We are done now with installing. We will reboot now, remember to make the following settings within kodi in step 2. It could also be good to disable the RSS Reader to save some processing power. Code: sudo reboot 2.) KODI settings (Set kodi to Advanced or Expert before doing this - settings hierarchies, see in the middle of confluence) System->Settings->System->Video output Vertical blank sync: Let Driver choose System ->Video->Acceleration: VDPAU: On Prefer VDPAU Mixer: ON VAAPI: off System -> Video -> Playback: Adjust Refreshrate to match video: On Sync Playback to Display: On Sync Method: Video Clock (Resample Audio) -> This will automatically use Drop / Dupe for passthrough, so best out of both worlds. advancedsettings.xml in /home/kodi/.kodi/userdata/advancedsettings.xml should contain (don't create that file / directory as root - use the kodi user): Code: <advancedsettings> Fancy Splash? (Made by forum user teeedubb) Code: sudo apt-get update Make sure to install all upgrade after you have followed this process. Therefore run: Code: sudo apt-get update Final reboot and we are done: Code: sudo reboot Installation is now finished - you can start to enjoy your kodi installation In case something should not work as you expected it, please follow the Troubleshooting steps. Troubleshooting: We need full debug logs that show the issue. We don't look at cut out logfiles, as most of the time, the important part is missing. Additionally get us the output of dmesg, Xorg.0.log and vdpauinfo. Don't post the logs inline, don't use google drive or something, just post links to known pastebins. Set kodi into debugging mode, redo what is causing errors and afterwards do: Code: sudo apt-get install pastebinit Mpeg-2 Crashes If you have bad luck, you got an AMD card that does mpeg-2 decoding in shaders, which segfaults when done multithreaded. Switch Confluence to Expert and disable Mpeg-2 under Video Acceleration. Relevant output from qvdpauinfo: Quote:qvdpautest 0.5.2 Audio trouble shooting Check if you audio device is muted You can use alsamixer -c0 or alsamixer -c1 to do it manually, or use something like: Code: amixer set 'IEC958',0 unmute If DTS-HD / TrueHD does not work or your kernel complains about broken edid, consider the following: Download: https://dl.dropboxusercontent.com/u/55728161/marantz.bin and save it to /lib/firmware/edid You have to create the /lib/firmware/edid directory. Make 100% sure, the file has exact 256 Byte after download, if not redownload it. afterwards edit /etc/default/grub: Code: GRUB_CMDLINE_LINUX_DEFAULT="drm_kms_helper.edid_firmware=HDMI-A-1:edid/marantz.bin radeon.audio=1 radeon.dpm=1 quiet splash" Other EDID workarounds: http://forum.kodi.tv/showthread.php?tid=174854&pid=1685301#pid1685301 Bitstream audio still not working Some receivers deny Bitstream Audio for everything not 60hz. In that case it makes no sense to use bitstream audio at all, just disable it. IRC Channel Out of historical reasons, you can join #xbmc-xvba for discussing this howto. The channel name shall make us remember forever, that best hardware is worth nothing, if there are no drivers for it :-) Happy penguin: RE: Radeon OSS with vdpau (howto) - fritsch - 2013-10-03 History: 2013/10/05: Updated kernel to 3.11.4 2013/10/14: wsnipex has built a fixed mesa version with all relevant patches in a special mesa ppa. Use this one, if you want an always working version. You can still run oibaf, where this version (+ the compile fix) was copied from. 2013/10/19: Changed howto to use 3.12-rc5 it includes the bitstream audio patch and the pll clock change, as well as lipsync preparation. (2.1) 2013/10/19: I picked a patch, which enables Audio by default, when radeon.audio=1 is passed to the command line, details see above thread (2.2) 2013/10/19: Updated to kernel 3.12-rc6 with the usual patches. 2013/10/20: Added the hpet timer to the grub/default config - let's see who investigates a difference ;-) 2013/10/21: Uploaded 3.12-rc6 0.2 kernel. The faulty PLL clock patch on machines > E450 has been reverted. 2013/10/22: Missed some groups in the original howto (dip, dialout) sudo adduser xbmc dip && sudo adduser xbmc dialout && sudo reboot can fix that 2013/10/22: Audio Clock finally working (Kernel 3.12-rc6 0.3) - see above. 2013/10/24: Added some audio trouble shooting (unmute + bitstream audio known workarounds) 2013/10/27: Updated to 3.12-rc6+ which contains a lot of the other patches. Added one clock multiplier patch for Evergreen to use the same values as fglrx. 2013/10/28: Update to 3.12-rc7+ and changed howto to disable Adjust Refresh Rate to match video - it seems 23.976 mode causes drops with passthrough audio. 2013/11/04: Update to 3.12.0 final - all patches can be found on my github (howto branch of linux) 2013/11/05: Howto now uses Ubuntu Saucy 64 bit as installation medium. Thanks for wsnipex for providing updated mesa packages with the advanced deinterlacing packages. 2013/11/05: 24p and 24.0 hz is working fine again, therefore they can be enabled again 2013/11/06: There is now a howto for OpenSuse: http://forum.xbmc.org/showthread.php?tid=174854&pid=1546145#pid1546145 (thx to Tomtomme). 2013/11/08: Thanks to Grigori (zgreg) we als have temporal deinterlacing included. This was fixed for HD7xxx+ in version v8 2013/11/11: If your Saucy installation hangs without keyboard input possible, use this workaround: http://forum.xbmc.org/showthread.php?tid=174854&pid=1547981#pid1547981 (thanks to gWr71Tv) 2013/11/18: Updated 3.12 kernel with dropping a fractional div patch. It did not help us. Now all patches are in 3.13. 2013/11/26: Updated advancedsettings.xml to actually read CPU and GPU temperature, thx to Strangenoises. 2013/11/27: It could very well be, that your specific model needs other advancedsettings, e.g. here: http://pastebin.com/9TbQ0nZb or here: http://forum.xbmc.org/showthread.php?tid=174854&pid=1563088#pid1563088 (thx to Redeemer and menthos) 2013/12/15: Updated the upstart script to honor nice level, so that we really get what we want. upstart does not read the /etc/security/limits.conf things: limit nice 21 21 2013/12/19: Finally Artifacts on Richland are fixed. Nice christmas present from the AMD guys - it does for sure not hurt, to ask them, if there is a amazon wishlist or something. Though they are being paied by AMD, they are investing a whole lot of their free time to help us, are directly available in their irc channel and so on. Was a good year for AMD and their OSS support. Patches can be found in my drm-fixes-3.13 branch on github.com/fritsch 2013/12/30: I changed the upstart script to start /usr/bin/xbmc --standalone directly. Many users were confused and not able to also create a startxbmc.sh in the correct location. 2013/12/30: Updated howto to use 3.13-rc6 kernel from ubuntu mainline - all patches are now upstream. 2014/01/05: Updated howto to use 3.13-rc7. We now also have all the Radeon SI performance patches in mainline. 2014/01/10: Removed all patches as they are all upstream now and included in the mainline builds. 2014/01/12: Updated Kernel to 3.13-rc8 2014/01/20: We are stable now. Kernel was updated to 3.13 final. 2014/01/26: Removed the hpet - did not do anything. 2014/01/30: Updated to kernel 3.13.1 2014/02/07: Updated to kernel 3.13.2 2014/02/14: Updated to kernel 3.13.3 2014/02/22: Updated to kernel 3.13.4 2014/02/24: Updated to kernel 3.13.5 this adds two important fixes for HD 7xxx and Kabini 2014/03/01: Changed the settings descriptions as settings.xml was changed upstream. New Video Settings: Acceleration 2014/04/08: Updated the howto to Ubuntu Trusty 14.04 2014/04/14: Some users noted, that after upgrade from saucy to trusty there was a 100% load on home screen. If that happens to you, please start from a fresh profile by e.g. removing your .xbmc directory. 2014/04/26: Note for upgraders from saucy. Make sure to run: sudo ppa-purge ppa:wsnipex/mesa and ppa-purge ppa:wsnipex/xbmc-fernetmenta-master prior to running sudo do-release-upgrade - If you have missed those steps, you need to readd the saucy line of the mesa ppa, run sudo apt-get update and purge afterwards. 2014/05/03: ckoenig of AMD has found the skip issue which was driving us nuts the last year. It was a kernel fault and will hopefully be fixed in 3.15 kernel - for the time in between, you can use these images: Code: obsolete Code: obsolete 2014/06/30: deadite66 build 3.15.2 kernels with one offending commit reverted. This commit made the Temporal Deinterlacer drop and skip. I suggest the kernels here: Code: obsolete Code: wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.15.3-utopic/linux-headers-3.15.3-031503-generic_3.15.3-031503.201407010040_amd64.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.15.3-utopic/linux-headers-3.15.3-031503_3.15.3-031503.201407010040_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.15.3-utopic/linux-image-3.15.3-031503-generic_3.15.3-031503.201407010040_amd64.deb 2014/07/11: Kernel 3.15.5 is released - you can download / install it via the usual location -> http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.15.5-utopic/ 2014/08/10: Kernel 3.16 has been released and should work without any issues on radeon hardware Code: wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-utopic/linux-headers-3.16.0-031600_3.16.0-031600.201408031935_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-utopic/linux-headers-3.16.0-031600-generic_3.16.0-031600.201408031935_amd64.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.16-utopic/linux-image-3.16.0-031600-generic_3.16.0-031600.201408031935_amd64.deb Code: mkdir -p 3.16.2 141118: Added permissions for logind1 to be able to use suspend / poweroff. Just replace the pkla with the new version from the howto. 150102: Add kodi splash done by teeedubb 150108: Changed everything to kodi - including the user 150108: If you experience startup issues with the default ubuntu kernel, install the following 3.16.7 version. Later version might have performance regressions when software decoding. Code: wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.16.7-utopic/linux-headers-3.16.7-031607-generic_3.16.7-031607.201410301735_amd64.deb RE: Radeon OSS with vdpau (howto) - laric - 2013-10-03 Finally we can get HD sound in linux... Installed and working now. qvdpautest output qvdpautest 0.5.2 AMD A6-3500 APU with Radeon HD Graphics Unknown GPU VDPAU API version : 1 VDPAU implementation : G3DVL VDPAU Driver Shared Library version 1.0 FATAL: get_bits failed : No backend implementation could be loaded.!! MPEG DECODING (1920x1080): 75 frames/s MPEG DECODING (1280x720): 113 frames/s H264 DECODING (1920x1080): 47 frames/s H264 DECODING (1280x720): 86 frames/s VC1 DECODING (1440x1080): 101 frames/s MPEG4 DECODING (1920x1080): 66 frames/s MIXER WEAVE (1920x1080): 625 frames/s MIXER BOB (1920x1080): 1023 fields/s MIXER TEMPORAL (1920x1080): 1087 fields/s MIXER TEMPORAL + IVTC (1920x1080): 1087 fields/s MIXER TEMPORAL + SKIP_CHROMA (1920x1080): 1088 fields/s MIXER TEMPORAL_SPATIAL (1920x1080): 1087 fields/s MIXER TEMPORAL_SPATIAL + IVTC (1920x1080): 1087 fields/s MIXER TEMPORAL_SPATIAL + SKIP_CHROMA (1920x1080): 1088 fields/s MIXER TEMPORAL_SPATIAL (720x576 video to 1920x1080 display): 1162 fields/s MULTITHREADED MPEG DECODING (1920x1080): 70 frames/s MULTITHREADED MIXER TEMPORAL (1920x1080): 1118 fields/s RE: Radeon OSS with vdpau (howto) - Claudio.Sjo - 2013-10-03 fritsch, please highlith this thread (and possibly remove the attention from the old one) RE: Radeon OSS with vdpau (howto) - Orcie - 2013-10-03 Could you point out what the performance is vs xvba? Is the limitation in fps noticeble? Should people move away from xvba towards a solution with the OSS driver? RE: Radeon OSS with vdpau (howto) - laric - 2013-10-03 Performance is fine on my a6-3500 as you see above.. And it supports HD audio so well worth to change into. RE: Radeon OSS with vdpau (howto) - deadite66 - 2013-10-03 does this mean oibaf has glinterop in mesa again? RE: Radeon OSS with vdpau (howto) - locomot1f - 2013-10-03 i just get a whole lot of tearing... here's my debug log -- http://pastebin.com/EBqDiDZ5 fresh install. A6-6400 i tried the generic Mesa drivers. better.. no tearing, but not a very image. am I missing something? or is my Radeon GPU not supported yet? HD 6000 series since i don't have any other X sessions, i can't run the other commands to get the info. is there another way through ssh terminal to get what you need? ------------------------------- FYI: videos play fine.. great quality. just the XBMC interface... just lots of tearing. RE: Radeon OSS with vdpau (howto) - BenvanDamme - 2013-10-03 Do you have any knowledge on how to use this on arch linux ? Kind Regards RE: Radeon OSS with vdpau (howto) - fritsch - 2013-10-03 @locomot1f: Please provide all the logfiles that are mentioned above. Turn on debug logging before Code: sudo apt-get install pastebinit @BenvanDamme: It is not difficult. Use your standard arch way of installing packages and just add the relevant patches to your aur build source. RE: Radeon OSS with vdpau (howto) - locomot1f - 2013-10-03 @BenvanDamme -- http://forum.xbmc.org/showthread.php?tid=116996&pid=1518647#pid1518647 RE: Radeon OSS with vdpau (howto) - goldbär - 2013-10-03 Hello, I get some errors after the dist-upgrade That's what I did: Code: sudo apt-add-repository ppa:oibaf/graphics-drivers Then I got these unresolved dependencies Code: Paketlisten werden gelesen... Fertig Then I tried with Code: sudo apt-get -f install What can I do to solve the problem? RE: Radeon OSS with vdpau (howto) - fritsch - 2013-10-03 Following command is a one liner: Code: sudo dpkg -i --force-all /var/cache/apt/archives/libwayland-client0_1.2.1-1~r~gd_amd64.deb /var/cache/apt/archives/libwayland-server0_1.2.1-1~r~gd_amd64.deb /var/cache/apt/archives/libwayland-cursor0_1.2.1-1~r~gd_amd64.deb PS: That error was expected. RE: Radeon OSS with vdpau (howto) - BenvanDamme - 2013-10-03 Thank you for your help RE: Radeon OSS with vdpau (howto) - goldbär - 2013-10-03 Thank you very much for your fast reply. That fixed it. |