annotate libmpeg2/attributes.h @ 13168:ce046ef860da

EDL enhancement/fixes: *Some edl's code moved from mplayer.c to edl.c (mencoder will use the same functions) * slighty faster * removed MAX_EDL_ENTRIES limit (just reserve the memory we really need) * really treat edl_records as a linked list (coz it is) * edl now 'remembers' pending operations after a manual _seek_ * better way of handling Mute/Umute eliminates some nasty bugs when manual seeking (scrwed up mute/unmute order, no audio after seek, etc) * seeking while on -edl mode now _WORKS_ Patch by Reynaldo H. Verdejo Pinochet (reynaldo at opendot dot cl)
author rtognimp
date Sat, 28 Aug 2004 00:46:05 +0000
parents f283e0e499bf
children 1385ec491ffb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
1 /*
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
2 * attributes.h
12932
d0a8810e155c Importing libmpeg2 from mpeg2dec-0.4.0b
henry
parents: 9852
diff changeset
3 * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
9852
47984e3f54ce Importing libmpeg2 from mpeg2dec-0.3.1
arpi
parents: 8957
diff changeset
4 * Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
5 *
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
6 * This file is part of mpeg2dec, a free MPEG-2 video stream decoder.
9852
47984e3f54ce Importing libmpeg2 from mpeg2dec-0.3.1
arpi
parents: 8957
diff changeset
7 * See http://libmpeg2.sourceforge.net/ for updates.
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
8 *
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
9 * mpeg2dec is free software; you can redistribute it and/or modify
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
10 * it under the terms of the GNU General Public License as published by
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
11 * the Free Software Foundation; either version 2 of the License, or
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
12 * (at your option) any later version.
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
13 *
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
14 * mpeg2dec is distributed in the hope that it will be useful,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
17 * GNU General Public License for more details.
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
18 *
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
19 * You should have received a copy of the GNU General Public License
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
20 * along with this program; if not, write to the Free Software
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
22 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
23
36
846535ace7a2 libmpeg2-0.2.0 merge
arpi_esp
parents: 1
diff changeset
24 /* use gcc attribs to align critical data structures */
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
25 #ifdef ATTRIBUTE_ALIGNED_MAX
9852
47984e3f54ce Importing libmpeg2 from mpeg2dec-0.3.1
arpi
parents: 8957
diff changeset
26 #define ATTR_ALIGN(align) __attribute__ ((__aligned__ ((ATTRIBUTE_ALIGNED_MAX < align) ? ATTRIBUTE_ALIGNED_MAX : align)))
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
27 #else
13133
f283e0e499bf allow alignment without ATTRIBUTE_ALIGNED_MAX been defined, it fixes sparc unaligned memory access
iive
parents: 12932
diff changeset
28 #define ATTR_ALIGN(align) __attribute__ ((__aligned__ ((16 < align) ? 16 : align)))
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
29 #endif
9852
47984e3f54ce Importing libmpeg2 from mpeg2dec-0.3.1
arpi
parents: 8957
diff changeset
30
47984e3f54ce Importing libmpeg2 from mpeg2dec-0.3.1
arpi
parents: 8957
diff changeset
31 #ifdef HAVE_BUILTIN_EXPECT
47984e3f54ce Importing libmpeg2 from mpeg2dec-0.3.1
arpi
parents: 8957
diff changeset
32 #define likely(x) __builtin_expect ((x) != 0, 1)
47984e3f54ce Importing libmpeg2 from mpeg2dec-0.3.1
arpi
parents: 8957
diff changeset
33 #define unlikely(x) __builtin_expect ((x) != 0, 0)
47984e3f54ce Importing libmpeg2 from mpeg2dec-0.3.1
arpi
parents: 8957
diff changeset
34 #else
47984e3f54ce Importing libmpeg2 from mpeg2dec-0.3.1
arpi
parents: 8957
diff changeset
35 #define likely(x) (x)
47984e3f54ce Importing libmpeg2 from mpeg2dec-0.3.1
arpi
parents: 8957
diff changeset
36 #define unlikely(x) (x)
47984e3f54ce Importing libmpeg2 from mpeg2dec-0.3.1
arpi
parents: 8957
diff changeset
37 #endif