Move bit_buffer.h to webrtc namespace

Bug: webrtc:42232595
Change-Id: Idf97f90e7011976f214c0f84bc1040227ce0dfd5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/380400
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Auto-Submit: Evan Shrubsole <eshr@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#44074}
diff --git a/common_video/h264/pps_parser_unittest.cc b/common_video/h264/pps_parser_unittest.cc
index ea8c8ed..ad3c9e1 100644
--- a/common_video/h264/pps_parser_unittest.cc
+++ b/common_video/h264/pps_parser_unittest.cc
@@ -38,7 +38,7 @@
               int pic_size_in_map_units,
               rtc::Buffer* out_buffer) {
   uint8_t data[kPpsBufferMaxSize] = {0};
-  rtc::BitBufferWriter bit_buffer(data, kPpsBufferMaxSize);
+  BitBufferWriter bit_buffer(data, kPpsBufferMaxSize);
 
   // pic_parameter_set_id: ue(v)
   bit_buffer.WriteExponentialGolomb(pps.id);
diff --git a/common_video/h264/sps_parser_unittest.cc b/common_video/h264/sps_parser_unittest.cc
index 6904e8e..0e8f27b 100644
--- a/common_video/h264/sps_parser_unittest.cc
+++ b/common_video/h264/sps_parser_unittest.cc
@@ -47,7 +47,7 @@
                      uint32_t log2_max_pic_order_cnt_lsb_minus4,
                      rtc::Buffer* out_buffer) {
   uint8_t rbsp[kSpsBufferMaxSize] = {0};
-  rtc::BitBufferWriter writer(rbsp, kSpsBufferMaxSize);
+  BitBufferWriter writer(rbsp, kSpsBufferMaxSize);
   // Profile byte.
   writer.WriteUInt8(0);
   // Constraint sets and reserved zero bits.
diff --git a/common_video/h264/sps_vui_rewriter.cc b/common_video/h264/sps_vui_rewriter.cc
index 236ecb8..14f28f1 100644
--- a/common_video/h264/sps_vui_rewriter.cc
+++ b/common_video/h264/sps_vui_rewriter.cc
@@ -54,7 +54,7 @@
     }                                                                  \
   } while (0)
 
-uint8_t CopyUInt8(BitstreamReader& source, rtc::BitBufferWriter& destination) {
+uint8_t CopyUInt8(BitstreamReader& source, BitBufferWriter& destination) {
   uint8_t tmp = source.Read<uint8_t>();
   if (!destination.WriteUInt8(tmp)) {
     source.Invalidate();
@@ -62,8 +62,7 @@
   return tmp;
 }
 
-uint32_t CopyExpGolomb(BitstreamReader& source,
-                       rtc::BitBufferWriter& destination) {
+uint32_t CopyExpGolomb(BitstreamReader& source, BitBufferWriter& destination) {
   uint32_t tmp = source.ReadExponentialGolomb();
   if (!destination.WriteExponentialGolomb(tmp)) {
     source.Invalidate();
@@ -73,7 +72,7 @@
 
 uint32_t CopyBits(int bits,
                   BitstreamReader& source,
-                  rtc::BitBufferWriter& destination) {
+                  BitBufferWriter& destination) {
   RTC_DCHECK_GT(bits, 0);
   RTC_DCHECK_LE(bits, 32);
   uint64_t tmp = source.ReadBits(bits);
@@ -85,24 +84,22 @@
 
 bool CopyAndRewriteVui(const SpsParser::SpsState& sps,
                        BitstreamReader& source,
-                       rtc::BitBufferWriter& destination,
+                       BitBufferWriter& destination,
                        const webrtc::ColorSpace* color_space,
                        SpsVuiRewriter::ParseResult& out_vui_rewritten);
 
-void CopyHrdParameters(BitstreamReader& source,
-                       rtc::BitBufferWriter& destination);
-bool AddBitstreamRestriction(rtc::BitBufferWriter* destination,
+void CopyHrdParameters(BitstreamReader& source, BitBufferWriter& destination);
+bool AddBitstreamRestriction(BitBufferWriter* destination,
                              uint32_t max_num_ref_frames);
 bool IsDefaultColorSpace(const ColorSpace& color_space);
-bool AddVideoSignalTypeInfo(rtc::BitBufferWriter& destination,
+bool AddVideoSignalTypeInfo(BitBufferWriter& destination,
                             const ColorSpace& color_space);
 bool CopyOrRewriteVideoSignalTypeInfo(
     BitstreamReader& source,
-    rtc::BitBufferWriter& destination,
+    BitBufferWriter& destination,
     const ColorSpace* color_space,
     SpsVuiRewriter::ParseResult& out_vui_rewritten);
-bool CopyRemainingBits(BitstreamReader& source,
-                       rtc::BitBufferWriter& destination);
+bool CopyRemainingBits(BitstreamReader& source, BitBufferWriter& destination);
 }  // namespace
 
 void SpsVuiRewriter::UpdateStats(ParseResult result, Direction direction) {
@@ -153,7 +150,7 @@
   // We're going to completely muck up alignment, so we need a BitBufferWriter
   // to write with.
   rtc::Buffer out_buffer(buffer.size() + kMaxVuiSpsIncrease);
-  rtc::BitBufferWriter sps_writer(out_buffer.data(), out_buffer.size());
+  BitBufferWriter sps_writer(out_buffer.data(), out_buffer.size());
 
   // Check how far the SpsParser has read, and copy that data in bulk.
   RTC_DCHECK(source_buffer.Ok());
@@ -283,7 +280,7 @@
 namespace {
 bool CopyAndRewriteVui(const SpsParser::SpsState& sps,
                        BitstreamReader& source,
-                       rtc::BitBufferWriter& destination,
+                       BitBufferWriter& destination,
                        const webrtc::ColorSpace* color_space,
                        SpsVuiRewriter::ParseResult& out_vui_rewritten) {
   out_vui_rewritten = SpsVuiRewriter::ParseResult::kVuiOk;
@@ -416,8 +413,7 @@
 }
 
 // Copies a VUI HRD parameters segment.
-void CopyHrdParameters(BitstreamReader& source,
-                       rtc::BitBufferWriter& destination) {
+void CopyHrdParameters(BitstreamReader& source, BitBufferWriter& destination) {
   // cbp_cnt_minus1: ue(v)
   uint32_t cbp_cnt_minus1 = CopyExpGolomb(source, destination);
   // bit_rate_scale and cbp_size_scale: u(4) each
@@ -441,7 +437,7 @@
 // http://www.itu.int/rec/T-REC-H.264
 
 // Adds a bitstream restriction VUI segment.
-bool AddBitstreamRestriction(rtc::BitBufferWriter* destination,
+bool AddBitstreamRestriction(BitBufferWriter* destination,
                              uint32_t max_num_ref_frames) {
   // motion_vectors_over_pic_boundaries_flag: u(1)
   // Default is 1 when not present.
@@ -473,7 +469,7 @@
          color_space.matrix() == ColorSpace::MatrixID::kUnspecified;
 }
 
-bool AddVideoSignalTypeInfo(rtc::BitBufferWriter& destination,
+bool AddVideoSignalTypeInfo(BitBufferWriter& destination,
                             const ColorSpace& color_space) {
   // video_format: u(3).
   RETURN_FALSE_ON_FAIL(destination.WriteBits(5, 3));  // 5 = Unspecified
@@ -496,7 +492,7 @@
 
 bool CopyOrRewriteVideoSignalTypeInfo(
     BitstreamReader& source,
-    rtc::BitBufferWriter& destination,
+    BitBufferWriter& destination,
     const ColorSpace* color_space,
     SpsVuiRewriter::ParseResult& out_vui_rewritten) {
   // Read.
@@ -589,8 +585,7 @@
   return true;
 }
 
-bool CopyRemainingBits(BitstreamReader& source,
-                       rtc::BitBufferWriter& destination) {
+bool CopyRemainingBits(BitstreamReader& source, BitBufferWriter& destination) {
   // Try to get at least the destination aligned.
   if (source.RemainingBitCount() > 0 && source.RemainingBitCount() % 8 != 0) {
     size_t misaligned_bits = source.RemainingBitCount() % 8;
diff --git a/common_video/h264/sps_vui_rewriter_unittest.cc b/common_video/h264/sps_vui_rewriter_unittest.cc
index 4fbfdfe..f0f7b4d 100644
--- a/common_video/h264/sps_vui_rewriter_unittest.cc
+++ b/common_video/h264/sps_vui_rewriter_unittest.cc
@@ -195,7 +195,7 @@
 // level_idc, to make sure the parser doesn't eat all 0x3 bytes.
 void GenerateFakeSps(const VuiHeader& vui, rtc::Buffer* out_buffer) {
   uint8_t rbsp[kSpsBufferMaxSize] = {0};
-  rtc::BitBufferWriter writer(rbsp, kSpsBufferMaxSize);
+  BitBufferWriter writer(rbsp, kSpsBufferMaxSize);
   // Profile byte.
   writer.WriteUInt8(0);
   // Constraint sets and reserved zero bits.
diff --git a/common_video/h265/h265_pps_parser_unittest.cc b/common_video/h265/h265_pps_parser_unittest.cc
index 61cf0a5..d725e570 100644
--- a/common_video/h265/h265_pps_parser_unittest.cc
+++ b/common_video/h265/h265_pps_parser_unittest.cc
@@ -37,7 +37,7 @@
               bool scaling_list_pred_mode_flag,
               rtc::Buffer* out_buffer) {
   uint8_t data[kPpsBufferMaxSize] = {0};
-  rtc::BitBufferWriter bit_buffer(data, kPpsBufferMaxSize);
+  BitBufferWriter bit_buffer(data, kPpsBufferMaxSize);
 
   // pic_parameter_set_id: ue(v)
   bit_buffer.WriteExponentialGolomb(pps.pps_id);
diff --git a/common_video/h265/h265_sps_parser_unittest.cc b/common_video/h265/h265_sps_parser_unittest.cc
index 1c8537b..53890e9 100644
--- a/common_video/h265/h265_sps_parser_unittest.cc
+++ b/common_video/h265/h265_sps_parser_unittest.cc
@@ -36,7 +36,7 @@
               bool long_term_ref_pics_present_flag,
               rtc::Buffer* out_buffer) {
   uint8_t rbsp[kSpsBufferMaxSize] = {0};
-  rtc::BitBufferWriter writer(rbsp, kSpsBufferMaxSize);
+  BitBufferWriter writer(rbsp, kSpsBufferMaxSize);
   // sps_video_parameter_set_id
   writer.WriteBits(0, 4);
   // sps_max_sub_layers_minus1
diff --git a/logging/rtc_event_log/encoder/bit_writer.h b/logging/rtc_event_log/encoder/bit_writer.h
index a40b7dc..449c07f 100644
--- a/logging/rtc_event_log/encoder/bit_writer.h
+++ b/logging/rtc_event_log/encoder/bit_writer.h
@@ -47,7 +47,7 @@
 
  private:
   std::string buffer_;
-  rtc::BitBufferWriter bit_writer_;
+  BitBufferWriter bit_writer_;
   // Note: Counting bits instead of bytes wraps around earlier than it has to,
   // which means the maximum length is lower than it could be. We don't expect
   // to go anywhere near the limit, though, so this is good enough.
diff --git a/logging/rtc_event_log/encoder/optional_blob_encoding.cc b/logging/rtc_event_log/encoder/optional_blob_encoding.cc
index f93d3ad..3d225ba 100644
--- a/logging/rtc_event_log/encoder/optional_blob_encoding.cc
+++ b/logging/rtc_event_log/encoder/optional_blob_encoding.cc
@@ -35,7 +35,7 @@
     if (blob.has_value()) {
       ++num_blobs_present;
       reserve_size_bits +=
-          (rtc::BitBufferWriter::kMaxLeb128Length.bytes() + blob->size()) * 8;
+          (BitBufferWriter::kMaxLeb128Length.bytes() + blob->size()) * 8;
     }
   }
 
@@ -49,7 +49,7 @@
   }
 
   std::vector<uint8_t> buffer((reserve_size_bits + 7) / 8);
-  rtc::BitBufferWriter writer(buffer.data(), buffer.size());
+  BitBufferWriter writer(buffer.data(), buffer.size());
 
   // Write present bits if all blobs are not present.
   writer.WriteBits(all_blobs_present, 1);
diff --git a/modules/rtp_rtcp/source/rtp_dependency_descriptor_writer.cc b/modules/rtp_rtcp/source/rtp_dependency_descriptor_writer.cc
index 59a327a..5e9feb1 100644
--- a/modules/rtp_rtcp/source/rtp_dependency_descriptor_writer.cc
+++ b/modules/rtp_rtcp/source/rtp_dependency_descriptor_writer.cc
@@ -125,12 +125,12 @@
   for (const FrameDependencyTemplate& frame_template : structure_.templates) {
     bits += 5 * frame_template.frame_diffs.size();
   }
-  bits += rtc::BitBufferWriter::SizeNonSymmetricBits(
+  bits += BitBufferWriter::SizeNonSymmetricBits(
       structure_.num_chains, structure_.num_decode_targets + 1);
   if (structure_.num_chains > 0) {
     for (int protected_by : structure_.decode_target_protected_by_chain) {
-      bits += rtc::BitBufferWriter::SizeNonSymmetricBits(protected_by,
-                                                         structure_.num_chains);
+      bits += BitBufferWriter::SizeNonSymmetricBits(protected_by,
+                                                    structure_.num_chains);
     }
     bits += 4 * structure_.templates.size() * structure_.num_chains;
   }
diff --git a/modules/rtp_rtcp/source/rtp_dependency_descriptor_writer.h b/modules/rtp_rtcp/source/rtp_dependency_descriptor_writer.h
index 568e0a8..3a8f3bb 100644
--- a/modules/rtp_rtcp/source/rtp_dependency_descriptor_writer.h
+++ b/modules/rtp_rtcp/source/rtp_dependency_descriptor_writer.h
@@ -80,7 +80,7 @@
   const DependencyDescriptor& descriptor_;
   const FrameDependencyStructure& structure_;
   std::bitset<32> active_chains_;
-  rtc::BitBufferWriter bit_writer_;
+  BitBufferWriter bit_writer_;
   TemplateMatch best_template_;
 };
 
diff --git a/modules/rtp_rtcp/source/rtp_format_vp9.cc b/modules/rtp_rtcp/source/rtp_format_vp9.cc
index 5e03785..653feba 100644
--- a/modules/rtp_rtcp/source/rtp_format_vp9.cc
+++ b/modules/rtp_rtcp/source/rtp_format_vp9.cc
@@ -155,8 +155,7 @@
 // M:   | EXTENDED PID  |
 //      +-+-+-+-+-+-+-+-+
 //
-bool WritePictureId(const RTPVideoHeaderVP9& vp9,
-                    rtc::BitBufferWriter* writer) {
+bool WritePictureId(const RTPVideoHeaderVP9& vp9, BitBufferWriter* writer) {
   bool m_bit = (PictureIdLength(vp9) == 2);
   RETURN_FALSE_ON_ERROR(writer->WriteBits(m_bit ? 1 : 0, 1));
   RETURN_FALSE_ON_ERROR(writer->WriteBits(vp9.picture_id, m_bit ? 15 : 7));
@@ -172,7 +171,7 @@
 //      +-+-+-+-+-+-+-+-+
 //
 bool WriteLayerInfoCommon(const RTPVideoHeaderVP9& vp9,
-                          rtc::BitBufferWriter* writer) {
+                          BitBufferWriter* writer) {
   RETURN_FALSE_ON_ERROR(writer->WriteBits(TemporalIdxField(vp9, 0), 3));
   RETURN_FALSE_ON_ERROR(writer->WriteBits(vp9.temporal_up_switch ? 1 : 0, 1));
   RETURN_FALSE_ON_ERROR(writer->WriteBits(SpatialIdxField(vp9, 0), 3));
@@ -190,13 +189,12 @@
 //      +-+-+-+-+-+-+-+-+
 //
 bool WriteLayerInfoNonFlexibleMode(const RTPVideoHeaderVP9& vp9,
-                                   rtc::BitBufferWriter* writer) {
+                                   BitBufferWriter* writer) {
   RETURN_FALSE_ON_ERROR(writer->WriteUInt8(Tl0PicIdxField(vp9, 0)));
   return true;
 }
 
-bool WriteLayerInfo(const RTPVideoHeaderVP9& vp9,
-                    rtc::BitBufferWriter* writer) {
+bool WriteLayerInfo(const RTPVideoHeaderVP9& vp9, BitBufferWriter* writer) {
   if (!WriteLayerInfoCommon(vp9, writer))
     return false;
 
@@ -213,8 +211,7 @@
 //      +-+-+-+-+-+-+-+-+                    N=1: An additional P_DIFF follows
 //                                                current P_DIFF.
 //
-bool WriteRefIndices(const RTPVideoHeaderVP9& vp9,
-                     rtc::BitBufferWriter* writer) {
+bool WriteRefIndices(const RTPVideoHeaderVP9& vp9, BitBufferWriter* writer) {
   if (!PictureIdPresent(vp9) || vp9.num_ref_pics == 0 ||
       vp9.num_ref_pics > kMaxVp9RefPics) {
     return false;
@@ -247,7 +244,7 @@
 //      |    P_DIFF     | (OPTIONAL)    . R times    .
 //      +-+-+-+-+-+-+-+-+              -|           -|
 //
-bool WriteSsData(const RTPVideoHeaderVP9& vp9, rtc::BitBufferWriter* writer) {
+bool WriteSsData(const RTPVideoHeaderVP9& vp9, BitBufferWriter* writer) {
   RTC_CHECK_GT(vp9.num_spatial_layers, 0U);
   RTC_CHECK_LE(vp9.num_spatial_layers, kMaxVp9NumberOfSpatialLayers);
   RTC_CHECK_LE(vp9.gof.num_frames_in_gof, kMaxVp9FramesInGof);
@@ -415,7 +412,7 @@
   bool v_bit = hdr_.ss_data_available && b_bit;
   bool z_bit = hdr_.non_ref_for_inter_layer_pred;
 
-  rtc::BitBufferWriter writer(buffer.data(), buffer.size());
+  BitBufferWriter writer(buffer.data(), buffer.size());
   RETURN_FALSE_ON_ERROR(writer.WriteBits(i_bit ? 1 : 0, 1));
   RETURN_FALSE_ON_ERROR(writer.WriteBits(p_bit ? 1 : 0, 1));
   RETURN_FALSE_ON_ERROR(writer.WriteBits(l_bit ? 1 : 0, 1));
diff --git a/rtc_base/bit_buffer.cc b/rtc_base/bit_buffer.cc
index fd57e13..e94a3c0 100644
--- a/rtc_base/bit_buffer.cc
+++ b/rtc_base/bit_buffer.cc
@@ -48,7 +48,7 @@
 
 }  // namespace
 
-namespace rtc {
+namespace webrtc {
 
 BitBufferWriter::BitBufferWriter(uint8_t* bytes, size_t byte_count)
     : writable_bytes_(bytes),
@@ -227,4 +227,4 @@
   return success;
 }
 
-}  // namespace rtc
+}  // namespace webrtc
diff --git a/rtc_base/bit_buffer.h b/rtc_base/bit_buffer.h
index fe50b2b..736093e 100644
--- a/rtc_base/bit_buffer.h
+++ b/rtc_base/bit_buffer.h
@@ -17,7 +17,7 @@
 #include "absl/strings/string_view.h"
 #include "api/units/data_size.h"
 
-namespace rtc {
+namespace webrtc {
 
 // A BitBuffer API for write operations. Supports symmetric write APIs to the
 // reading APIs of BitstreamReader.
@@ -25,8 +25,7 @@
 // Byte order is assumed big-endian/network.
 class BitBufferWriter {
  public:
-  static constexpr webrtc::DataSize kMaxLeb128Length =
-      webrtc::DataSize::Bytes(10);
+  static constexpr DataSize kMaxLeb128Length = webrtc::DataSize::Bytes(10);
 
   // Constructs a bit buffer for the writable buffer of `bytes`.
   BitBufferWriter(uint8_t* bytes, size_t byte_count);
@@ -95,6 +94,12 @@
   size_t bit_offset_;
 };
 
+}  //  namespace webrtc
+
+// Re-export symbols from the webrtc namespace for backwards compatibility.
+// TODO(bugs.webrtc.org/4222596): Remove once all references are updated.
+namespace rtc {
+using ::webrtc::BitBufferWriter;
 }  // namespace rtc
 
 #endif  // RTC_BASE_BIT_BUFFER_H_
diff --git a/rtc_base/bit_buffer_unittest.cc b/rtc_base/bit_buffer_unittest.cc
index 7dfe0c8..ec65cae 100644
--- a/rtc_base/bit_buffer_unittest.cc
+++ b/rtc_base/bit_buffer_unittest.cc
@@ -19,7 +19,7 @@
 #include "test/gmock.h"
 #include "test/gtest.h"
 
-namespace rtc {
+namespace webrtc {
 
 using ::testing::ElementsAre;
 using ::webrtc::BitstreamReader;
@@ -253,4 +253,4 @@
   EXPECT_FALSE(writer.WriteString("abc"));
 }
 
-}  // namespace rtc
+}  // namespace webrtc