Add back AsV4L2[H264/VP8/VP9]Picture function

These functions need to be overridden by V4L2[H264/VP8/VP9]Picture
implementation and shouldn't be removed.

Bug: 62360273
Test: mmm external/v4l2_codec2
Change-Id: I58908610fe473f4076568d11c74de605b6960c10
diff --git a/vda/h264_dpb.cc b/vda/h264_dpb.cc
index fb4a98d..0e1b411 100644
--- a/vda/h264_dpb.cc
+++ b/vda/h264_dpb.cc
@@ -46,6 +46,10 @@
 
 H264Picture::~H264Picture() {}
 
+V4L2H264Picture* H264Picture::AsV4L2H264Picture() {
+  return nullptr;
+}
+
 H264DPB::H264DPB() : max_num_pics_(0) {}
 H264DPB::~H264DPB() {}
 
diff --git a/vda/h264_dpb.h b/vda/h264_dpb.h
index 703f5e3..6be9f21 100644
--- a/vda/h264_dpb.h
+++ b/vda/h264_dpb.h
@@ -18,6 +18,8 @@
 
 namespace media {
 
+class V4L2H264Picture;
+
 // A picture (a frame or a field) in the H.264 spec sense.
 // See spec at http://www.itu.int/rec/T-REC-H.264
 class H264Picture : public base::RefCounted<H264Picture> {
@@ -32,6 +34,8 @@
 
   H264Picture();
 
+  virtual V4L2H264Picture* AsV4L2H264Picture();
+
   // Values calculated per H.264 specification or taken from slice header.
   // See spec for more details on each (some names have been converted from
   // CamelCase in spec to Chromium-style names).
diff --git a/vda/vp8_picture.cc b/vda/vp8_picture.cc
index 7c01a11..59938aa 100644
--- a/vda/vp8_picture.cc
+++ b/vda/vp8_picture.cc
@@ -10,4 +10,8 @@
 
 VP8Picture::~VP8Picture() {}
 
+V4L2VP8Picture* VP8Picture::AsV4L2VP8Picture() {
+  return nullptr;
+}
+
 }  // namespace media
diff --git a/vda/vp8_picture.h b/vda/vp8_picture.h
index b8e7417..eb253a4 100644
--- a/vda/vp8_picture.h
+++ b/vda/vp8_picture.h
@@ -10,10 +10,14 @@
 
 namespace media {
 
+class V4L2VP8Picture;
+
 class VP8Picture : public base::RefCounted<VP8Picture> {
  public:
   VP8Picture();
 
+  virtual V4L2VP8Picture* AsV4L2VP8Picture();
+
  protected:
   friend class base::RefCounted<VP8Picture>;
   virtual ~VP8Picture();
diff --git a/vda/vp9_picture.cc b/vda/vp9_picture.cc
index ed3c65a..a99427f 100644
--- a/vda/vp9_picture.cc
+++ b/vda/vp9_picture.cc
@@ -10,4 +10,8 @@
 
 VP9Picture::~VP9Picture() {}
 
+V4L2VP9Picture* VP9Picture::AsV4L2VP9Picture() {
+  return nullptr;
+}
+
 }  // namespace media
diff --git a/vda/vp9_picture.h b/vda/vp9_picture.h
index 2bd5bbc..23e299b 100644
--- a/vda/vp9_picture.h
+++ b/vda/vp9_picture.h
@@ -13,10 +13,14 @@
 
 namespace media {
 
+class V4L2VP9Picture;
+
 class VP9Picture : public base::RefCounted<VP9Picture> {
  public:
   VP9Picture();
 
+  virtual V4L2VP9Picture* AsV4L2VP9Picture();
+
   std::unique_ptr<Vp9FrameHeader> frame_hdr;
 
  protected: