annotate osdep/swab.c @ 26089:e2f35d90ad39
Set audio->sh correctly when switching audio tracks. The same for video tracks.
Demuxers almost never update audio->sh or sub->sh when swithing tracks. It is
especially bad when switching to no sound, and results in "too many audio
packets" error.
author |
eugeni |
date |
Fri, 29 Feb 2008 17:25:48 +0000 |
parents |
936209c39ed1 |
children |
5cfef41a1771 |
rev |
line source |
16985
|
1 #include "config.h"
|
13612
|
2
|
|
3 /* system has no swab. emulate via bswap */
|
21852
|
4 #include "mpbswap.h"
|
13612
|
5 #include <unistd.h>
|
|
6
|
|
7 void swab(const void *from, void *to, ssize_t n) {
|
|
8 const int16_t *in = (int16_t*)from;
|
|
9 int16_t *out = (int16_t*)to;
|
|
10 int i;
|
|
11 n /= 2;
|
|
12 for (i = 0 ; i < n; i++) {
|
|
13 out[i] = bswap_16(in[i]);
|
|
14 }
|
|
15 }
|