Use common `VideoFrameTypeToString` helper

This CL cleans up all local conversions, in favor of the common helper
function.

Bug: webrtc:15210
Change-Id: Id77e1c6b1151a2542d92e220e91d5b11285479b8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/311060
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Jianhui J Dai <jianhui.j.dai@intel.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40420}
diff --git a/api/video/BUILD.gn b/api/video/BUILD.gn
index c46f3d0..c07cda5 100644
--- a/api/video/BUILD.gn
+++ b/api/video/BUILD.gn
@@ -126,6 +126,7 @@
   visibility = [ "*" ]
   sources = [ "video_frame_type.h" ]
   absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
+  deps = [ "../../rtc_base:checks" ]
 }
 
 rtc_source_set("render_resolution") {
diff --git a/api/video/video_frame_type.h b/api/video/video_frame_type.h
index 9f0a34c..9079829 100644
--- a/api/video/video_frame_type.h
+++ b/api/video/video_frame_type.h
@@ -12,6 +12,7 @@
 #define API_VIDEO_VIDEO_FRAME_TYPE_H_
 
 #include "absl/strings/string_view.h"
+#include "rtc_base/checks.h"
 
 namespace webrtc {
 
@@ -25,15 +26,15 @@
 
 inline constexpr absl::string_view VideoFrameTypeToString(
     VideoFrameType frame_type) {
-  if (frame_type == VideoFrameType::kEmptyFrame) {
-    return "empty";
+  switch (frame_type) {
+    case VideoFrameType::kEmptyFrame:
+      return "empty";
+    case VideoFrameType::kVideoFrameKey:
+      return "key";
+    case VideoFrameType::kVideoFrameDelta:
+      return "delta";
   }
-  if (frame_type == VideoFrameType::kVideoFrameKey) {
-    return "key";
-  }
-  if (frame_type == VideoFrameType::kVideoFrameDelta) {
-    return "delta";
-  }
+  RTC_CHECK_NOTREACHED();
   return "";
 }
 
diff --git a/modules/rtp_rtcp/source/rtp_sender_video.cc b/modules/rtp_rtcp/source/rtp_sender_video.cc
index af447e9..d2aaefb 100644
--- a/modules/rtp_rtcp/source/rtp_sender_video.cc
+++ b/modules/rtp_rtcp/source/rtp_sender_video.cc
@@ -94,20 +94,6 @@
   return true;
 }
 
-[[maybe_unused]] const char* FrameTypeToString(VideoFrameType frame_type) {
-  switch (frame_type) {
-    case VideoFrameType::kEmptyFrame:
-      return "empty";
-    case VideoFrameType::kVideoFrameKey:
-      return "video_key";
-    case VideoFrameType::kVideoFrameDelta:
-      return "video_delta";
-    default:
-      RTC_DCHECK_NOTREACHED();
-      return "";
-  }
-}
-
 bool IsNoopDelay(const VideoPlayoutDelay& delay) {
   return delay.min_ms == -1 && delay.max_ms == -1;
 }
@@ -491,8 +477,9 @@
     RTPVideoHeader video_header,
     absl::optional<int64_t> expected_retransmission_time_ms,
     std::vector<uint32_t> csrcs) {
-  TRACE_EVENT_ASYNC_STEP1("webrtc", "Video", capture_time_ms, "Send", "type",
-                          FrameTypeToString(video_header.frame_type));
+  TRACE_EVENT_ASYNC_STEP1(
+      "webrtc", "Video", capture_time_ms, "Send", "type",
+      std::string(VideoFrameTypeToString(video_header.frame_type)));
   RTC_CHECK_RUNS_SERIALIZED(&send_checker_);
 
   if (video_header.frame_type == VideoFrameType::kEmptyFrame)
diff --git a/rtc_tools/video_encoder/video_encoder.cc b/rtc_tools/video_encoder/video_encoder.cc
index fe2c5b1..e37bad0 100644
--- a/rtc_tools/video_encoder/video_encoder.cc
+++ b/rtc_tools/video_encoder/video_encoder.cc
@@ -69,19 +69,6 @@
 // See `WebRtcVideoSendChannel::kDefaultQpMax`.
 constexpr unsigned int kDefaultQpMax = 56;
 
-const char* FrameTypeToString(const VideoFrameType& frame_type) {
-  switch (frame_type) {
-    case VideoFrameType::kEmptyFrame:
-      return "empty";
-    case VideoFrameType::kVideoFrameKey:
-      return "key";
-    case VideoFrameType::kVideoFrameDelta:
-      return "delta";
-  }
-  RTC_CHECK_NOTREACHED();
-  return "";
-}
-
 [[maybe_unused]] const char* InterLayerPredModeToString(
     const InterLayerPredMode& inter_layer_pred_mode) {
   switch (inter_layer_pred_mode) {
@@ -100,7 +87,7 @@
   char buffer[1024];
   rtc::SimpleStringBuilder ss(buffer);
 
-  ss << FrameTypeToString(encoded_image._frameType)
+  ss << VideoFrameTypeToString(encoded_image._frameType)
      << ", size=" << encoded_image.size() << ", qp=" << encoded_image.qp_
      << ", timestamp=" << encoded_image.Timestamp();