Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1565)

Unified Diff: content/common/gpu/media/vaapi_wrapper.h

Issue 825843002: Add JPEG decoder for VAAPI JPEG decode acceleration (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@mjpeg-vaapi-jpeg-parser
Patch Set: Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/common/gpu/media/vaapi_wrapper.h
diff --git a/content/common/gpu/media/vaapi_wrapper.h b/content/common/gpu/media/vaapi_wrapper.h
index fe53552336badfe6bf46a3d3b624506820bf352f..49c854ba1b66c5c11ac7bbe3ec12ef4e3606826e 100644
--- a/content/common/gpu/media/vaapi_wrapper.h
+++ b/content/common/gpu/media/vaapi_wrapper.h
@@ -45,10 +45,20 @@ class CONTENT_EXPORT VaapiWrapper {
kEncode,
};
+ // Create VaapiWrapper.
// |report_error_to_uma_cb| will be called independently from reporting
// errors to clients via method return values.
static scoped_ptr<VaapiWrapper> Create(
CodecMode mode,
+ VAProfile profile,
+ const base::Closure& report_error_to_uma_cb);
+
+ // Create VaapiWrapper for video codec. It maps VideoCodecProfile |profile|
+ // to VAProfile according to supported profiles.
+ // |report_error_to_uma_cb| will be called independently from reporting
+ // errors to clients via method return values.
+ static scoped_ptr<VaapiWrapper> CreateForVideoCodec(
+ CodecMode mode,
media::VideoCodecProfile profile,
const base::Closure& report_error_to_uma_cb);
@@ -118,16 +128,27 @@ class CONTENT_EXPORT VaapiWrapper {
// Returns true if the VAAPI version is less than the specified version.
bool VAAPIVersionLessThan(int major, int minor);
- // Get a VAImage from a VASurface and map it into memory. The VAImage should
- // be released using the ReturnVaImage function. Returns true when successful.
- // This is intended for testing only.
- bool GetVaImageForTesting(VASurfaceID va_surface_id,
- VAImage* image,
- void** mem);
+ // Get a VAImage from a VASurface and map it into memory. The size and format
+ // are derived from the surface. The VAImage should be released using the
+ // ReturnVaImage function. Returns true when successful. This is intended
+ // for testing only.
+ bool GetDerivedVaImageForTesting(VASurfaceID va_surface_id,
+ VAImage* image,
+ void** mem);
+
+ // Get a VAImage from a VASurface |va_surface_id| and map it into memory with
+ // given |format| and |size|. The output is |image| and the mapped memory is
+ // |mem|. The VAImage should be released using the ReturnVaImage function.
+ // Returns true when successful.
+ bool GetVaImage(VASurfaceID va_surface_id,
wuchengli 2015/01/20 07:55:54 GetDerivedVaImageForTesting, GetVaImage, and Retur
kcwu 2015/01/21 12:23:48 Done.
+ VAImageFormat* format,
+ const gfx::Size& size,
+ VAImage* image,
+ void** mem);
// Release the VAImage (and the associated memory mapping) obtained from
- // GetVaImage(). This is intended for testing only.
- void ReturnVaImageForTesting(VAImage* image);
+ // GetVaImage().
+ void ReturnVaImage(VAImage* image);
// Upload contents of |frame| into |va_surface_id| for encode.
bool UploadVideoFrameToSurface(const scoped_refptr<media::VideoFrame>& frame,
@@ -163,7 +184,7 @@ class CONTENT_EXPORT VaapiWrapper {
VaapiWrapper();
bool Initialize(CodecMode mode,
- media::VideoCodecProfile profile,
+ VAProfile va_profile,
const base::Closure& report_error__to_uma_cb);
void Deinitialize();
bool VaInitialize(const base::Closure& report_error_to_uma_cb);

Powered by Google App Engine
This is Rietveld 408576698