blob: bbafc1a2ed10120d78e5eac4ff1dd79893c89df2 [file] [log] [blame]
niklase@google.com470e71d2011-07-07 08:21:25 +00001/*
turaj@webrtc.org837bc7b2012-07-14 00:34:54 +00002 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
niklase@google.com470e71d2011-07-07 08:21:25 +00003 *
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/******************************************************************
12
13 iLBC Speech Coder ANSI-C Source Code
14
15 WebRtcIlbcfix_SwapBytes.c
16
17******************************************************************/
18
Timothy Gu31117832020-12-18 22:25:57 -080019#include "modules/audio_coding/codecs/ilbc/swap_bytes.h"
niklase@google.com470e71d2011-07-07 08:21:25 +000020
21/*----------------------------------------------------------------*
22 * Swap bytes (to simplify operations on Little Endian machines)
23 *---------------------------------------------------------------*/
24
25void WebRtcIlbcfix_SwapBytes(
pbos@webrtc.org0946a562013-04-09 00:28:06 +000026 const uint16_t* input, /* (i) the sequence to swap */
Peter Kastingdce40cf2015-08-24 14:52:23 -070027 size_t wordLength, /* (i) number or uint16_t to swap */
pbos@webrtc.org0946a562013-04-09 00:28:06 +000028 uint16_t* output /* (o) the swapped sequence */
niklase@google.com470e71d2011-07-07 08:21:25 +000029 ) {
Peter Kastingdce40cf2015-08-24 14:52:23 -070030 size_t k;
turaj@webrtc.org837bc7b2012-07-14 00:34:54 +000031 for (k = wordLength; k > 0; k--) {
32 *output++ = (*input >> 8)|(*input << 8);
33 input++;
niklase@google.com470e71d2011-07-07 08:21:25 +000034 }
35}