annotate libmpdemux/mpeg_packetizer.h @ 22997:fd0fda0c6555

skip MMX code in rgb24tobgr24 if the size of the input is smaller than the size of the units the MMX code processes
author ivo
date Wed, 18 Apr 2007 09:27:59 +0000
parents 73d8ea32ebb8
children 3f0d00abc073
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
19141
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
1 /*
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
2 * Copyright (C) 2006 Benjamin Zores
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
3 * Set of helper routines for building MPEG 1/2 PS/PES packets.
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
4 *
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
5 * Based on various code bororwed from vo_mpegpes/vo_dxr2 :
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
6 * (C) 2000 Ralph Metzler <ralph@convergence.de>
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
7 * Marcus Metzler <marcus@convergence.de>
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
8 * Gerard Lantau
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
9 *
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
10 * This program is free software; you can redistribute it and/or modify
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
11 * it under the terms of the GNU General Public License as published by
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
12 * the Free Software Foundation; either version 2 of the License, or
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
13 * (at your option) any later version.
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
14 *
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
15 * This program is distributed in the hope that it will be useful,
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
18 * GNU General Public License for more details.
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
19 *
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
20 * You should have received a copy of the GNU General Public License
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
21 * along with this program; if not, write to the Free Software Foundation,
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
22 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
23 */
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
24
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
25 #ifndef _MPEG_PACKETIZER_H_
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
26 #define _MPEG_PACKETIZER_H_
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
27
19149
73d8ea32ebb8 cosmetics: comments and reindentation asked by gxben
nicodvb
parents: 19148
diff changeset
28 /* Send MPEG <type> PES packet */
73d8ea32ebb8 cosmetics: comments and reindentation asked by gxben
nicodvb
parents: 19148
diff changeset
29 int send_mpeg_pes_packet (unsigned char *data, int len, int id, uint64_t pts,
73d8ea32ebb8 cosmetics: comments and reindentation asked by gxben
nicodvb
parents: 19148
diff changeset
30 int type, int my_write (unsigned char *data, int len));
19141
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
31
19149
73d8ea32ebb8 cosmetics: comments and reindentation asked by gxben
nicodvb
parents: 19148
diff changeset
32 /* Send MPEG <type> PS packet */
73d8ea32ebb8 cosmetics: comments and reindentation asked by gxben
nicodvb
parents: 19148
diff changeset
33 int send_mpeg_ps_packet (unsigned char *data, int len, int id, uint64_t pts,
73d8ea32ebb8 cosmetics: comments and reindentation asked by gxben
nicodvb
parents: 19148
diff changeset
34 int type,int my_write (unsigned char *data, int len));
19141
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
35
19149
73d8ea32ebb8 cosmetics: comments and reindentation asked by gxben
nicodvb
parents: 19148
diff changeset
36 /* Send MPEG 2 LPCM packet */
19141
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
37 int send_mpeg_lpcm_packet (unsigned char *data, int len,
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
38 int id, uint64_t pts, int freq_id,
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
39 int my_write (unsigned char *data, int len));
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
40
6e6ca469073b moved mpeg_packetizer helpers to libmpdemux
ben
parents:
diff changeset
41 #endif /* _MPEG_PACKETIZER_H_ */