Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(68)

Side by Side Diff: source/patched-ffmpeg-mt/libavfilter/avfilter.h

Issue 4533003: patched ffmpeg nov 2 (Closed) Base URL: svn://chrome-svn/chrome/trunk/deps/third_party/ffmpeg/
Patch Set: '' Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * filter layer 2 * filter layer
3 * copyright (c) 2007 Bobby Bingham 3 * copyright (c) 2007 Bobby Bingham
4 * 4 *
5 * This file is part of FFmpeg. 5 * This file is part of FFmpeg.
6 * 6 *
7 * FFmpeg is free software; you can redistribute it and/or 7 * FFmpeg is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public 8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version. 10 * version 2.1 of the License, or (at your option) any later version.
11 * 11 *
12 * FFmpeg is distributed in the hope that it will be useful, 12 * FFmpeg is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details. 15 * Lesser General Public License for more details.
16 * 16 *
17 * You should have received a copy of the GNU Lesser General Public 17 * You should have received a copy of the GNU Lesser General Public
18 * License along with FFmpeg; if not, write to the Free Software 18 * License along with FFmpeg; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20 */ 20 */
21 21
22 #ifndef AVFILTER_AVFILTER_H 22 #ifndef AVFILTER_AVFILTER_H
23 #define AVFILTER_AVFILTER_H 23 #define AVFILTER_AVFILTER_H
24 24
25 #include "libavutil/avutil.h" 25 #include "libavutil/avutil.h"
26 26
27 #define LIBAVFILTER_VERSION_MAJOR 1 27 #define LIBAVFILTER_VERSION_MAJOR 1
28 #define LIBAVFILTER_VERSION_MINOR 48 28 #define LIBAVFILTER_VERSION_MINOR 53
29 #define LIBAVFILTER_VERSION_MICRO 0 29 #define LIBAVFILTER_VERSION_MICRO 0
30 30
31 #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ 31 #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
32 LIBAVFILTER_VERSION_MINOR, \ 32 LIBAVFILTER_VERSION_MINOR, \
33 LIBAVFILTER_VERSION_MICRO) 33 LIBAVFILTER_VERSION_MICRO)
34 #define LIBAVFILTER_VERSION AV_VERSION(LIBAVFILTER_VERSION_MAJOR, \ 34 #define LIBAVFILTER_VERSION AV_VERSION(LIBAVFILTER_VERSION_MAJOR, \
35 LIBAVFILTER_VERSION_MINOR, \ 35 LIBAVFILTER_VERSION_MINOR, \
36 LIBAVFILTER_VERSION_MICRO) 36 LIBAVFILTER_VERSION_MICRO)
37 #define LIBAVFILTER_BUILD LIBAVFILTER_VERSION_INT 37 #define LIBAVFILTER_BUILD LIBAVFILTER_VERSION_INT
38 38
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 * image flipping, frame to field filters, etc, and so is also per-reference. 120 * image flipping, frame to field filters, etc, and so is also per-reference.
121 * 121 *
122 * TODO: add anything necessary for frame reordering 122 * TODO: add anything necessary for frame reordering
123 */ 123 */
124 typedef struct AVFilterBufferRef { 124 typedef struct AVFilterBufferRef {
125 AVFilterBuffer *buf; ///< the buffer that this is a reference to 125 AVFilterBuffer *buf; ///< the buffer that this is a reference to
126 uint8_t *data[8]; ///< picture/audio data for each plane 126 uint8_t *data[8]; ///< picture/audio data for each plane
127 int linesize[8]; ///< number of bytes per line 127 int linesize[8]; ///< number of bytes per line
128 int format; ///< media format 128 int format; ///< media format
129 129
130 int64_t pts; ///< presentation timestamp in units of 1/AV_TIM E_BASE 130 /**
131 * presentation timestamp. The time unit may change during
132 * filtering, as it is specified in the link and the filter code
133 * may need to rescale the PTS accordingly.
134 */
135 int64_t pts;
131 int64_t pos; ///< byte position in stream, -1 if unknown 136 int64_t pos; ///< byte position in stream, -1 if unknown
132 137
133 int perms; ///< permissions, see the AV_PERM_* flags 138 int perms; ///< permissions, see the AV_PERM_* flags
134 139
135 enum AVMediaType type; ///< media type of buffer data 140 enum AVMediaType type; ///< media type of buffer data
136 AVFilterBufferRefVideoProps *video; ///< video buffer specific properties 141 AVFilterBufferRefVideoProps *video; ///< video buffer specific properties
137 AVFilterBufferRefAudioProps *audio; ///< audio buffer specific properties 142 AVFilterBufferRefAudioProps *audio; ///< audio buffer specific properties
138 } AVFilterBufferRef; 143 } AVFilterBufferRef;
139 144
140 /** 145 /**
(...skipping 450 matching lines...) Expand 10 before | Expand all | Expand 10 after
591 * The buffer reference currently being sent across the link by the source 596 * The buffer reference currently being sent across the link by the source
592 * filter. This is used internally by the filter system to allow 597 * filter. This is used internally by the filter system to allow
593 * automatic copying of buffers which do not have sufficient permissions 598 * automatic copying of buffers which do not have sufficient permissions
594 * for the destination. This should not be accessed directly by the 599 * for the destination. This should not be accessed directly by the
595 * filters. 600 * filters.
596 */ 601 */
597 AVFilterBufferRef *src_buf; 602 AVFilterBufferRef *src_buf;
598 603
599 AVFilterBufferRef *cur_buf; 604 AVFilterBufferRef *cur_buf;
600 AVFilterBufferRef *out_buf; 605 AVFilterBufferRef *out_buf;
606
607 /**
608 * Define the time base used by the PTS of the frames/samples
609 * which will pass through this link.
610 * During the configuration stage, each filter is supposed to
611 * change only the output timebase, while the timebase of the
612 * input link is assumed to be an unchangeable property.
613 */
614 AVRational time_base;
601 }; 615 };
602 616
603 /** 617 /**
604 * Link two filters together. 618 * Link two filters together.
605 * 619 *
606 * @param src the source filter 620 * @param src the source filter
607 * @param srcpad index of the output pad on the source filter 621 * @param srcpad index of the output pad on the source filter
608 * @param dst the destination filter 622 * @param dst the destination filter
609 * @param dstpad index of the input pad on the destination filter 623 * @param dstpad index of the input pad on the destination filter
610 * @return zero on success 624 * @return zero on success
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after
817 831
818 /** Insert a new output pad for the filter. */ 832 /** Insert a new output pad for the filter. */
819 static inline void avfilter_insert_outpad(AVFilterContext *f, unsigned index, 833 static inline void avfilter_insert_outpad(AVFilterContext *f, unsigned index,
820 AVFilterPad *p) 834 AVFilterPad *p)
821 { 835 {
822 avfilter_insert_pad(index, &f->output_count, offsetof(AVFilterLink, srcpad), 836 avfilter_insert_pad(index, &f->output_count, offsetof(AVFilterLink, srcpad),
823 &f->output_pads, &f->outputs, p); 837 &f->output_pads, &f->outputs, p);
824 } 838 }
825 839
826 #endif /* AVFILTER_AVFILTER_H */ 840 #endif /* AVFILTER_AVFILTER_H */
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698