tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

rtpcat.cc (1479B)


      1 /*
      2 *  Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
      3 *
      4 *  Use of this source code is governed by a BSD-style license
      5 *  that can be found in the LICENSE file in the root of the source
      6 *  tree. An additional intellectual property rights grant can be found
      7 *  in the file PATENTS.  All contributing project authors may
      8 *  be found in the AUTHORS file in the root of the source tree.
      9 */
     10 
     11 #include <cstdio>
     12 #include <cstdlib>
     13 #include <memory>
     14 
     15 #include "rtc_base/checks.h"
     16 #include "test/rtp_file_reader.h"
     17 #include "test/rtp_file_writer.h"
     18 
     19 using webrtc::test::RtpFileReader;
     20 using webrtc::test::RtpFileWriter;
     21 
     22 int main(int argc, char* argv[]) {
     23  if (argc < 3) {
     24    printf("Concatenates multiple rtpdump files into one.\n");
     25    printf("Usage: rtpcat in1.rtp int2.rtp [...] out.rtp\n");
     26    exit(1);
     27  }
     28 
     29  std::unique_ptr<RtpFileWriter> output(
     30      RtpFileWriter::Create(RtpFileWriter::kRtpDump, argv[argc - 1]));
     31  RTC_CHECK(output.get() != nullptr) << "Cannot open output file.";
     32  printf("Output RTP file: %s\n", argv[argc - 1]);
     33 
     34  for (int i = 1; i < argc - 1; i++) {
     35    std::unique_ptr<RtpFileReader> input(
     36        RtpFileReader::Create(RtpFileReader::kRtpDump, argv[i]));
     37    RTC_CHECK(input.get() != nullptr) << "Cannot open input file " << argv[i];
     38    printf("Input RTP file: %s\n", argv[i]);
     39 
     40    webrtc::test::RtpPacket packet;
     41    while (input->NextPacket(&packet))
     42      RTC_CHECK(output->WritePacket(&packet));
     43  }
     44  return 0;
     45 }