diff --git a/modules/audio_coding/BUILD.gn b/modules/audio_coding/BUILD.gn
index 4c2602b..1867d93 100644
--- a/modules/audio_coding/BUILD.gn
+++ b/modules/audio_coding/BUILD.gn
@@ -1111,6 +1111,7 @@
     "neteq/tools/audio_sink.h",
     "neteq/tools/encode_neteq_input.cc",
     "neteq/tools/encode_neteq_input.h",
+    "neteq/tools/neteq_input.cc",
     "neteq/tools/neteq_input.h",
     "neteq/tools/neteq_test.cc",
     "neteq/tools/neteq_test.h",
diff --git a/modules/audio_coding/neteq/tools/neteq_input.cc b/modules/audio_coding/neteq/tools/neteq_input.cc
new file mode 100644
index 0000000..752bb29
--- /dev/null
+++ b/modules/audio_coding/neteq/tools/neteq_input.cc
@@ -0,0 +1,32 @@
+/*
+ *  Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
+ *
+ *  Use of this source code is governed by a BSD-style license
+ *  that can be found in the LICENSE file in the root of the source
+ *  tree. An additional intellectual property rights grant can be found
+ *  in the file PATENTS.  All contributing project authors may
+ *  be found in the AUTHORS file in the root of the source tree.
+ */
+
+#include "webrtc/modules/audio_coding/neteq/tools/neteq_input.h"
+
+#include <sstream>
+
+namespace webrtc {
+namespace test {
+
+std::string NetEqInput::PacketData::ToString() const {
+  std::stringstream ss;
+  ss << "{"
+     << "time_ms: " << static_cast<int64_t>(time_ms) << ", "
+     << "header: {"
+     << "pt: " << static_cast<int>(header.payloadType) << ", "
+     << "sn: " << header.sequenceNumber << ", "
+     << "ts: " << header.timestamp << ", "
+     << "ssrc: " << header.ssrc << "}, "
+     << "payload bytes: " << payload.size() << "}";
+  return ss.str();
+}
+
+}  // namespace test
+}  // namespace webrtc
diff --git a/modules/audio_coding/neteq/tools/neteq_input.h b/modules/audio_coding/neteq/tools/neteq_input.h
index 3bb64a6..a1e51a3 100644
--- a/modules/audio_coding/neteq/tools/neteq_input.h
+++ b/modules/audio_coding/neteq/tools/neteq_input.h
@@ -13,6 +13,7 @@
 
 #include <algorithm>
 #include <memory>
+#include <string>
 
 #include "webrtc/base/buffer.h"
 #include "webrtc/base/optional.h"
@@ -27,6 +28,8 @@
 class NetEqInput {
  public:
   struct PacketData {
+    std::string ToString() const;
+
     RTPHeader header;
     rtc::Buffer payload;
     double time_ms;
diff --git a/modules/audio_coding/neteq/tools/neteq_test.cc b/modules/audio_coding/neteq/tools/neteq_test.cc
index fb00025..7cca0fe 100644
--- a/modules/audio_coding/neteq/tools/neteq_test.cc
+++ b/modules/audio_coding/neteq/tools/neteq_test.cc
@@ -26,12 +26,8 @@
               << std::endl;
   } else {
     std::cerr << "InsertPacket returned error code " << error_code << std::endl;
-    std::cerr << "Header data:" << std::endl;
-    std::cerr << "  PT = " << static_cast<int>(packet.header.payloadType)
-              << std::endl;
-    std::cerr << "  SN = " << packet.header.sequenceNumber << std::endl;
-    std::cerr << "  TS = " << packet.header.timestamp << std::endl;
   }
+  std::cerr << "Packet data: " << packet.ToString() << std::endl;
   FATAL();
 }
 
