diff --git a/services/media/framework/packet.cc b/services/media/framework/packet.cc
index eef3e3e..3c96701 100644
--- a/services/media/framework/packet.cc
+++ b/services/media/framework/packet.cc
@@ -32,7 +32,7 @@
     // payload() and handling deallocation themselves, so allocator_ can be
     // nullptr even when payload() is not.
     if (payload() != nullptr && allocator_ != nullptr) {
-      allocator_->ReleasePayloadBuffer(size(), payload());
+      allocator_->ReleasePayloadBuffer(payload());
     }
     delete this;
   }
diff --git a/services/media/framework/payload_allocator.cc b/services/media/framework/payload_allocator.cc
index 3687100..45198f8 100644
--- a/services/media/framework/payload_allocator.cc
+++ b/services/media/framework/payload_allocator.cc
@@ -19,7 +19,7 @@
   // PayloadAllocator implementation.
   void* AllocatePayloadBuffer(size_t size) override;
 
-  void ReleasePayloadBuffer(size_t size, void* buffer) override;
+  void ReleasePayloadBuffer(void* buffer) override;
 };
 
 void* DefaultAllocator::AllocatePayloadBuffer(size_t size) {
@@ -27,8 +27,7 @@
   return std::malloc(static_cast<size_t>(size));
 }
 
-void DefaultAllocator::ReleasePayloadBuffer(size_t size, void* buffer) {
-  DCHECK(size > 0);
+void DefaultAllocator::ReleasePayloadBuffer(void* buffer) {
   DCHECK(buffer);
   std::free(buffer);
 }
diff --git a/services/media/framework/payload_allocator.h b/services/media/framework/payload_allocator.h
index 8e398f3..633cdaa 100644
--- a/services/media/framework/payload_allocator.h
+++ b/services/media/framework/payload_allocator.h
@@ -21,7 +21,7 @@
   virtual void* AllocatePayloadBuffer(size_t size) = 0;
 
   // Releases a buffer previously allocated via AllocatePayloadBuffer.
-  virtual void ReleasePayloadBuffer(size_t size, void* buffer) = 0;
+  virtual void ReleasePayloadBuffer(void* buffer) = 0;
 };
 
 }  // namespace media
diff --git a/services/media/framework_ffmpeg/ffmpeg_decoder_base.h b/services/media/framework_ffmpeg/ffmpeg_decoder_base.h
index 63dd2ed..e829fca 100644
--- a/services/media/framework_ffmpeg/ffmpeg_decoder_base.h
+++ b/services/media/framework_ffmpeg/ffmpeg_decoder_base.h
@@ -57,7 +57,7 @@
 
       if (size_ != 0) {
         DCHECK(buffer_ != nullptr);
-        allocator_->ReleasePayloadBuffer(size_, buffer_);
+        allocator_->ReleasePayloadBuffer(buffer_);
         return;
       }
 
diff --git a/services/media/framework_mojo/mojo_allocator.cc b/services/media/framework_mojo/mojo_allocator.cc
index 6622357..65298fd 100644
--- a/services/media/framework_mojo/mojo_allocator.cc
+++ b/services/media/framework_mojo/mojo_allocator.cc
@@ -13,8 +13,8 @@
   return AllocateRegion(size);
 }
 
-void MojoAllocator::ReleasePayloadBuffer(size_t size, void* buffer) {
-  ReleaseRegion(size, buffer);
+void MojoAllocator::ReleasePayloadBuffer(void* buffer) {
+  ReleaseRegion(buffer);
 }
 
 }  // namespace media
diff --git a/services/media/framework_mojo/mojo_allocator.h b/services/media/framework_mojo/mojo_allocator.h
index 75a8371..a32d600 100644
--- a/services/media/framework_mojo/mojo_allocator.h
+++ b/services/media/framework_mojo/mojo_allocator.h
@@ -20,7 +20,7 @@
   // PayloadAllocator implementation.
   void* AllocatePayloadBuffer(size_t size) override;
 
-  void ReleasePayloadBuffer(size_t size, void* buffer) override;
+  void ReleasePayloadBuffer(void* buffer) override;
 };
 
 }  // namespace media
