Announcement

Collapse
No announcement yet.

AMD Releases Open-Source UVD Video Support

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Originally posted by duby229 View Post
    Just for my own edification, um How then would you describe voltage and current. wattage is equal to voltage x current if 1W = 1J/s then how does currrent and voltage work its way in? Is voltage x current just simply a different way of stating J/s?
    Yes.

    Joule is a unit of energy. You can move charge over a difference in electric potential (electrical definition with Volts and Coulombs), or you can move weight over a difference of (say) height potential (physical definition with kgs and metres). Both require energy.

    Comment


    • Originally posted by chithanh View Post
      I have read that UVD on JUNIPER can only decode 1 HD + 1 SD stream simultaneously (for Blu-Ray PIP). In order to decode 2 HD streams on the 6770 (for Blu-Ray 3D) some sources claim that shaders are used[1] while others say that the UVD clocks are simply increased[2].

      [1] http://www.rage3d.com/articles/amd_j...enamed_hd6700/
      [2] http://www.anandtech.com/show/4296/a...n-5700-rebadge
      AMD marketing materials usally include or reference a quality guarantee. IOW, we don't guarantee quality above 1HD + 1SD (for a particular configuration of hardware, OS, and driver). You can decode more streams but we don't make any quality gurarantees so you may experience dropped frames, jitter, etc. For some applications (security cameras, pure decoding/transcoding to a file), quality is not important so you may not care. Of course, we don't make any guarantees witjh respect to the open source implementation so YMMV but the marketing materials are a useful guide for what you can reasonably expect.

      Tim

      Comment


      • Originally posted by twriter View Post
        AMD marketing materials usally include or reference a quality guarantee. IOW, we don't guarantee quality above 1HD + 1SD (for a particular configuration of hardware, OS, and driver). You can decode more streams but we don't make any quality gurarantees so you may experience dropped frames, jitter, etc. For some applications (security cameras, pure decoding/transcoding to a file), quality is not important so you may not care. Of course, we don't make any guarantees witjh respect to the open source implementation so YMMV but the marketing materials are a useful guide for what you can reasonably expect.

        Tim
        Hi Tim. I can think of one example where hi quality encodes will matter. I have a camera pointed down at the cash register drawer. Whenever i get 50s or 100s I flip through them in front of the camera in a way for it to see the serial number. Plus I have lower resolution camera pointed at the counter and another pointed at the entrance. Of course all that encoding is being done in software right now.

        Comment


        • Originally posted by duby229 View Post
          Hi Tim. I can think of one example where hi quality encodes will matter. I have a camera pointed down at the cash register drawer. Whenever i get 50s or 100s I flip through them in front of the camera in a way for it to see the serial number. Plus I have lower resolution camera pointed at the counter and another pointed at the entrance. Of course all that encoding is being done in software right now.
          He didn't say that NO security applications require high quality, but suggested that SOME DON'T.

          Comment


          • I believe Tim was also talking about decode, not encode.

            Comment


            • Hi DroidHacker, Bridgman,

              Do you plan to use glInterOp ? I use Xbmc daily and would like so much to leave catalyst/xvba to open source driver.


              Bibi

              Comment


              • Originally posted by bibi View Post
                Hi DroidHacker, Bridgman,

                Do you plan to use glInterOp ? I use Xbmc daily and would like so much to leave catalyst/xvba to open source driver.


                Bibi
                I think you must have me mistaken for somebody I'm not... I don't have anything to do with radeon or xbmc development.

                Comment


                • Originally posted by droidhacker View Post
                  ... I don't have anything to do with radeon or xbmc development.
                  Neither do I, but I still answer questions

                  bibi, are you talking about GL_NV_vdpau_interop ?
                  Last edited by bridgman; 04-23-2013, 11:51 AM.

                  Comment


                  • Yes, see here : http://forum.xbmc.org/showthread.php...16996&page=212 (post 2111).
                    I use catalyst because i need xvba but i get so much issues with it that i could pray God to get full OSS video driver implementation (VDPAU + hdmi passthrough)

                    Excuse me DroidHacker ^^.

                    Bibi

                    Comment


                    • I tried building the UDV enabled Videostack on one of my boxes with an HD6xxx card and it seems to work, which is really great. CPU Usage is low for my tested material and glitchfree, hooray !

                      One big piece I'm missing are deinterlacers, which are quiet relevant for watching TV and friends. Bridgman, Tim and fellows, can you give us any information if enabling deinterlacers via vdpau is on the roadmap ?

                      Greetings !
                      Hibbelharry

                      For all you others, this is the output for vdpauinfo:

                      Code:
                      wilken@hibbelhtpc:~$ vdpauinfo
                      display: :0   screen: 0
                      API version: 1
                      Information string: G3DVL VDPAU Driver Shared Library version 1.0
                      
                      Video surface:
                      
                      name   width height types
                      -------------------------------------------
                      420	16384 16384  NV12
                      422	16384 16384  NV12
                      444	16384 16384  NV12
                      
                      Decoder capabilities:
                      
                      name           	level macbs width height
                      -------------------------------------------
                      MPEG1            	16  9216  2048  1152
                      MPEG2_SIMPLE     	16  9216  2048  1152
                      MPEG2_MAIN       	16  9216  2048  1152
                      H264_BASELINE    	16  9216  2048  1152
                      H264_MAIN        	16  9216  2048  1152
                      H264_HIGH        	16  9216  2048  1152
                      VC1_SIMPLE       	16  9216  2048  1152
                      VC1_MAIN         	16  9216  2048  1152
                      VC1_ADVANCED     	16  9216  2048  1152
                      MPEG4_PART2_SP   	16  9216  2048  1152
                      MPEG4_PART2_ASP  	16  9216  2048  1152
                      
                      Output surface:
                      
                      name          	width height nat types
                      ----------------------------------------------------
                      B8G8R8A8     	16384 16384	y  NV12
                      R8G8B8A8     	16384 16384	y  NV12
                      R10G10B10A2  	16384 16384	y  NV12
                      B10G10R10A2  	16384 16384	y  NV12
                      
                      Bitmap surface:
                      
                      name          	width height
                      ------------------------------
                      B8G8R8A8     	16384 16384
                      R8G8B8A8     	16384 16384
                      R10G10B10A2  	16384 16384
                      B10G10R10A2  	16384 16384
                      A8           	16384 16384
                      
                      Video mixer:
                      
                      feature name                	sup
                      ------------------------------------
                      DEINTERLACE_TEMPORAL         	-
                      DEINTERLACE_TEMPORAL_SPATIAL 	-
                      INVERSE_TELECINE             	-
                      NOISE_REDUCTION              	y
                      SHARPNESS                    	y
                      LUMA_KEY                     	-
                      HIGH QUALITY SCALING - L1    	-
                      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    	48 	2048
                      VIDEO_SURFACE_HEIGHT         	y    	48 	1152
                      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

                      Comment


                      • Originally posted by Hibbelharry View Post
                        One big piece I'm missing are deinterlacers, which are quiet relevant for watching TV and friends. Bridgman, Tim and fellows, can you give us any information if enabling deinterlacers via vdpau is on the roadmap ?
                        I disagree... The better option would be to target working dynpm, or perhaps even better dynamic clocking... Manual profile-switching is not very convinient...

                        Comment


                        • Originally posted by Hibbelharry View Post
                          One big piece I'm missing are deinterlacers, which are quiet relevant for watching TV and friends. Bridgman, Tim and fellows, can you give us any information if enabling deinterlacers via vdpau is on the roadmap ?
                          Deinterlacing should be easy to add as a simple postprocessing shader, i would think, and a good place for outside contributions. I'd rather see the AMD guys work more on finishing their hardware support, and let somebody from the community add this to vdpau.

                          Comment


                          • Originally posted by brosis View Post
                            I disagree... The better option would be to target working dynpm, or perhaps even better dynamic clocking... Manual profile-switching is not very convinient...
                            Off topic :P

                            Comment


                            • Originally posted by brosis View Post
                              I disagree... The better option would be to target working dynpm, or perhaps even better dynamic clocking... Manual profile-switching is not very convinient...
                              Since when did the Intel troll get a say on what radeon should do? :P

                              Bridgman has said that there's better power management in the works (currently in legal review), which will replace the current code. Anyone who wants better dynpm is free to fix it, or sponsor someone if that's not an option, but it works well enough for me for the present, and when something better is already on the way I'm fine with AMD working on other aspects of the driver.
                              Also, alenbo is right: Off topic.

                              Comment


                              • Hi all,

                                I have been trying out the new UVD support for my built in Radeon HD 4250 and it works great playing 1080p video's in mplayer.
                                I am now trying to set it up in mythtv to be able to take advantage of the smooth playback provided by vdpau.

                                However I am getting an error in my mythtvfrontend.log:
                                Code:
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext tv_play.cpp:1017 (TV) TV: Creating TV object
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: N CoreContext mythmainwindow.cpp:2606 (PauseIdleTimer) Resuming idle timer
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: N CoreContext mythmainwindow.cpp:2601 (PauseIdleTimer) Suspending idle timer
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext tv_play.cpp:1232 (Init) TV: Created TvPlayWindow.
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext tv_play.cpp:2155 (HandleStateChange) TV: Attempting to change from None to WatchingPreRecorded
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: E CoreContext audio/audiooutputalsa.cpp:172 (GetPCMInfo) ALSA: snd_pcm_info_get_card: Operation not permitted
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: N CoreContext audioplayer.cpp:167 (ReinitAudio) AudioPlayer: Enabling Audio
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext avformatdecoder.cpp:2141 (ScanStreams) AFD: Opened codec 0x62e52a0, id(MPEG2VIDEO) type(Video)
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext avformatdecoder.cpp:1999 (ScanStreams) AFD: codec MP2 has 2 channels
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext avformatdecoder.cpp:2141 (ScanStreams) AFD: Opened codec 0x62d21e0, id(MP2) type(Audio)
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext audio/audiooutputbase.cpp:791 (Reconfigure) AO: Opening audio device 'default' ch 2(2) sr 48000 sf signed 16 bit reenc 0
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: E CoreContext mythrender_vdpau.cpp:1388 (DrawBitmap) VDPAU: Error at mythrender_vdpau.cpp:1388 (#3, An invalid handle value was provided. Either the handle does not exist at all, or refers to an object of an incorrect type.)
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: E CoreContext mythrender_vdpau.cpp:1388 (DrawBitmap) VDPAU: Error at mythrender_vdpau.cpp:1388 (#3, An invalid handle value was provided. Either the handle does not exist at all, or refers to an object of an incorrect type.)
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext mythrender_vdpau.cpp:1682 (CreatePresentationSurfaces) VDPAU: Created 2 output surfaces.
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext mythrender_vdpau.cpp:1716 (CheckHardwareSupport) VDPAU: Version 1
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext mythrender_vdpau.cpp:1723 (CheckHardwareSupport) VDPAU: Information G3DVL VDPAU Driver Shared Library version 1.0
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext mythrender_vdpau.cpp:402 (Create) VDPAU: Created VDPAU render device 1920x1080
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: E CoreContext mythrender_vdpau.cpp:850 (CreateVideoMixer) VDPAU: Error at mythrender_vdpau.cpp:850 (#4, An invalid pointer was provided. Typically, this means that a NULL pointer was provided for an 'output' parameter.)
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: N CoreContext mythplayer.cpp:520 (CheckExtraAudioDecode) Player(0): Forcing decode extra audio option on (Video method requires it).
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext mythplayer.cpp:1754 (InitAVSync) Player(0): Video timing method: DRM
                                Apr 28 23:58:16 mediapc mythlogserver: mythfrontend[3963]: I CoreContext tv_play.cpp:5240 (StartPlayer) TV: Created player.
                                From the log it can be seen that at mythrender_vdpau.cpp:1388 its failing.
                                This is calling the function vdp_output_surface_render_bitmap_surface().

                                I am not sure what to do to futhur debug this problem. I am a very capable C programer, I just don't know the links between mesa/vdpau/uvd/mythtv. If there is any output that I can get to help debug this problem that would be great (alternatively pointers on how to debug this myself would be handy)! I have been waiting so long for UVD support on ATi/AMD and to finally have it so close to mythtv playback is tantalising.

                                Comment

                                Working...
                                X