Updated FFmpeg.

This commit is contained in:
Christopher Snowhill 2017-10-14 16:45:41 -07:00
parent ba0b03de76
commit 4b2f2471d6
24 changed files with 336 additions and 64 deletions

View File

@ -447,6 +447,7 @@ enum AVCodecID {
AV_CODEC_ID_SRGC, AV_CODEC_ID_SRGC,
AV_CODEC_ID_SVG, AV_CODEC_ID_SVG,
AV_CODEC_ID_GDV, AV_CODEC_ID_GDV,
AV_CODEC_ID_FITS,
/* various PCM "codecs" */ /* various PCM "codecs" */
AV_CODEC_ID_FIRST_AUDIO = 0x10000, ///< A dummy id pointing at the start of audio codecs AV_CODEC_ID_FIRST_AUDIO = 0x10000, ///< A dummy id pointing at the start of audio codecs
@ -1598,6 +1599,13 @@ enum AVPacketSideDataType {
*/ */
AV_PKT_DATA_CONTENT_LIGHT_LEVEL, AV_PKT_DATA_CONTENT_LIGHT_LEVEL,
/**
* ATSC A53 Part 4 Closed Captions. This metadata should be associated with
* a video stream. A53 CC bitstream is stored as uint8_t in AVPacketSideData.data.
* The number of bytes of CC data is AVPacketSideData.size.
*/
AV_PKT_DATA_A53_CC,
/** /**
* The number of side data elements (in fact a bit more than it). * The number of side data elements (in fact a bit more than it).
* This is not part of the public API/ABI in the sense that it may * This is not part of the public API/ABI in the sense that it may
@ -1708,6 +1716,13 @@ typedef struct AVPacket {
* after decoding. * after decoding.
**/ **/
#define AV_PKT_FLAG_DISCARD 0x0004 #define AV_PKT_FLAG_DISCARD 0x0004
/**
* The packet comes from a trusted source.
*
* Otherwise-unsafe constructs such as arbitrary pointers to data
* outside the packet may be followed.
*/
#define AV_PKT_FLAG_TRUSTED 0x0008
enum AVSideDataParamChangeFlags { enum AVSideDataParamChangeFlags {
AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT = 0x0001, AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT = 0x0001,
@ -2675,6 +2690,7 @@ typedef struct AVCodecContext {
* - encoding: unused * - encoding: unused
* - decoding: set by the caller before avcodec_open2(). * - decoding: set by the caller before avcodec_open2().
*/ */
attribute_deprecated
int refcounted_frames; int refcounted_frames;
/* - encoding parameters */ /* - encoding parameters */
@ -3130,6 +3146,7 @@ typedef struct AVCodecContext {
#if FF_API_ARCH_ALPHA #if FF_API_ARCH_ALPHA
#define FF_IDCT_SIMPLEALPHA 23 #define FF_IDCT_SIMPLEALPHA 23
#endif #endif
#define FF_IDCT_NONE 24 /* Used by XvMC to extract IDCT coefficients with FF_IDCT_PERM_NONE */
#define FF_IDCT_SIMPLEAUTO 128 #define FF_IDCT_SIMPLEAUTO 128
/** /**
@ -3556,7 +3573,7 @@ typedef struct AVCodecContext {
*/ */
char *codec_whitelist; char *codec_whitelist;
/* /**
* Properties of the stream that gets decoded * Properties of the stream that gets decoded
* - encoding: unused * - encoding: unused
* - decoding: set by libavcodec * - decoding: set by libavcodec
@ -3878,7 +3895,7 @@ typedef struct AVHWAccel {
/** /**
* Hardware accelerated codec capabilities. * Hardware accelerated codec capabilities.
* see HWACCEL_CODEC_CAP_* * see AV_HWACCEL_CODEC_CAP_*
*/ */
int capabilities; int capabilities;
@ -3986,6 +4003,12 @@ typedef struct AVHWAccel {
int caps_internal; int caps_internal;
} AVHWAccel; } AVHWAccel;
/**
* HWAccel is experimental and is thus avoided in favor of non experimental
* codecs
*/
#define AV_HWACCEL_CODEC_CAP_EXPERIMENTAL 0x0200
/** /**
* Hardware acceleration should be used for decoding even if the codec level * Hardware acceleration should be used for decoding even if the codec level
* used is unknown or higher than the maximum supported level reported by the * used is unknown or higher than the maximum supported level reported by the
@ -4600,14 +4623,20 @@ int av_dup_packet(AVPacket *pkt);
* Copy packet, including contents * Copy packet, including contents
* *
* @return 0 on success, negative AVERROR on fail * @return 0 on success, negative AVERROR on fail
*
* @deprecated Use av_packet_ref
*/ */
attribute_deprecated
int av_copy_packet(AVPacket *dst, const AVPacket *src); int av_copy_packet(AVPacket *dst, const AVPacket *src);
/** /**
* Copy packet side data * Copy packet side data
* *
* @return 0 on success, negative AVERROR on fail * @return 0 on success, negative AVERROR on fail
*
* @deprecated Use av_packet_copy_props
*/ */
attribute_deprecated
int av_copy_packet_side_data(AVPacket *dst, const AVPacket *src); int av_copy_packet_side_data(AVPacket *dst, const AVPacket *src);
/** /**

View File

@ -28,7 +28,7 @@
#include "libavutil/version.h" #include "libavutil/version.h"
#define LIBAVCODEC_VERSION_MAJOR 57 #define LIBAVCODEC_VERSION_MAJOR 57
#define LIBAVCODEC_VERSION_MINOR 103 #define LIBAVCODEC_VERSION_MINOR 108
#define LIBAVCODEC_VERSION_MICRO 100 #define LIBAVCODEC_VERSION_MICRO 100
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \

View File

@ -439,7 +439,7 @@ void avio_free_directory_entry(AVIODirEntry **entry);
/** /**
* Allocate and initialize an AVIOContext for buffered I/O. It must be later * Allocate and initialize an AVIOContext for buffered I/O. It must be later
* freed with av_free(). * freed with avio_context_free().
* *
* @param buffer Memory block for input/output operations via AVIOContext. * @param buffer Memory block for input/output operations via AVIOContext.
* The buffer must be allocated with av_malloc() and friends. * The buffer must be allocated with av_malloc() and friends.
@ -467,6 +467,14 @@ AVIOContext *avio_alloc_context(
int (*write_packet)(void *opaque, uint8_t *buf, int buf_size), int (*write_packet)(void *opaque, uint8_t *buf, int buf_size),
int64_t (*seek)(void *opaque, int64_t offset, int whence)); int64_t (*seek)(void *opaque, int64_t offset, int whence));
/**
* Free the supplied IO context and everything associated with it.
*
* @param s Double pointer to the IO context. This function will write NULL
* into s.
*/
void avio_context_free(AVIOContext **s);
void avio_w8(AVIOContext *s, int b); void avio_w8(AVIOContext *s, int b);
void avio_write(AVIOContext *s, const unsigned char *buf, int size); void avio_write(AVIOContext *s, const unsigned char *buf, int size);
void avio_wl64(AVIOContext *s, uint64_t val); void avio_wl64(AVIOContext *s, uint64_t val);
@ -590,6 +598,15 @@ void avio_flush(AVIOContext *s);
*/ */
int avio_read(AVIOContext *s, unsigned char *buf, int size); int avio_read(AVIOContext *s, unsigned char *buf, int size);
/**
* Read size bytes from AVIOContext into buf. Unlike avio_read(), this is allowed
* to read fewer bytes than requested. The missing bytes can be read in the next
* call. This always tries to read at least 1 byte.
* Useful to reduce latency in certain cases.
* @return number of bytes read or AVERROR
*/
int avio_read_partial(AVIOContext *s, unsigned char *buf, int size);
/** /**
* @name Functions for reading from AVIOContext * @name Functions for reading from AVIOContext
* @{ * @{

View File

@ -32,7 +32,7 @@
// Major bumping may affect Ticket5467, 5421, 5451(compatibility with Chromium) // Major bumping may affect Ticket5467, 5421, 5451(compatibility with Chromium)
// Also please add any ticket numbers that you believe might be affected here // Also please add any ticket numbers that you believe might be affected here
#define LIBAVFORMAT_VERSION_MAJOR 57 #define LIBAVFORMAT_VERSION_MAJOR 57
#define LIBAVFORMAT_VERSION_MINOR 77 #define LIBAVFORMAT_VERSION_MINOR 84
#define LIBAVFORMAT_VERSION_MICRO 100 #define LIBAVFORMAT_VERSION_MICRO 100
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \ #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \

View File

@ -21,6 +21,8 @@
#ifndef AVUTIL_CPU_H #ifndef AVUTIL_CPU_H
#define AVUTIL_CPU_H #define AVUTIL_CPU_H
#include <stddef.h>
#include "attributes.h" #include "attributes.h"
#define AV_CPU_FLAG_FORCE 0x80000000 /* force usage of selected flags (OR) */ #define AV_CPU_FLAG_FORCE 0x80000000 /* force usage of selected flags (OR) */
@ -113,4 +115,15 @@ int av_parse_cpu_caps(unsigned *flags, const char *s);
*/ */
int av_cpu_count(void); int av_cpu_count(void);
/**
* Get the maximum data alignment that may be required by FFmpeg.
*
* Note that this is affected by the build configuration and the CPU flags mask,
* so e.g. if the CPU supports AVX, but libavutil has been built with
* --disable-avx or the AV_CPU_FLAG_AVX flag has been disabled through
* av_set_cpu_flags_mask(), then this function will behave as if AVX is not
* present.
*/
size_t av_cpu_max_align(void);
#endif /* AVUTIL_CPU_H */ #endif /* AVUTIL_CPU_H */

View File

@ -1,5 +1,5 @@
/* Automatically generated by version.sh, do not manually edit! */ /* Automatically generated by version.sh, do not manually edit! */
#ifndef AVUTIL_FFVERSION_H #ifndef AVUTIL_FFVERSION_H
#define AVUTIL_FFVERSION_H #define AVUTIL_FFVERSION_H
#define FFMPEG_VERSION "N-87071-gf77e7dd324" #define FFMPEG_VERSION "N-87863-g4b6f1d2a6c"
#endif /* AVUTIL_FFVERSION_H */ #endif /* AVUTIL_FFVERSION_H */

View File

@ -681,7 +681,9 @@ void av_frame_move_ref(AVFrame *dst, AVFrame *src);
* cases. * cases.
* *
* @param frame frame in which to store the new buffers. * @param frame frame in which to store the new buffers.
* @param align required buffer size alignment * @param align Required buffer size alignment. If equal to 0, alignment will be
* chosen automatically for the current CPU. It is highly
* recommended to pass 0 here unless you know what you are doing.
* *
* @return 0 on success, a negative AVERROR on error. * @return 0 on success, a negative AVERROR on error.
*/ */
@ -781,8 +783,8 @@ enum {
/** /**
* Apply the maximum possible cropping, even if it requires setting the * Apply the maximum possible cropping, even if it requires setting the
* AVFrame.data[] entries to unaligned pointers. Passing unaligned data * AVFrame.data[] entries to unaligned pointers. Passing unaligned data
* to Libav API is generally not allowed, and causes undefined behavior * to FFmpeg API is generally not allowed, and causes undefined behavior
* (such as crashes). You can pass unaligned data only to Libav APIs that * (such as crashes). You can pass unaligned data only to FFmpeg APIs that
* are explicitly documented to accept it. Use this flag only if you * are explicitly documented to accept it. Use this flag only if you
* absolutely know what you are doing. * absolutely know what you are doing.
*/ */

View File

@ -33,6 +33,7 @@ enum AVHWDeviceType {
AV_HWDEVICE_TYPE_VIDEOTOOLBOX, AV_HWDEVICE_TYPE_VIDEOTOOLBOX,
AV_HWDEVICE_TYPE_NONE, AV_HWDEVICE_TYPE_NONE,
AV_HWDEVICE_TYPE_D3D11VA, AV_HWDEVICE_TYPE_D3D11VA,
AV_HWDEVICE_TYPE_DRM,
}; };
typedef struct AVHWDeviceInternal AVHWDeviceInternal; typedef struct AVHWDeviceInternal AVHWDeviceInternal;

View File

@ -0,0 +1,166 @@
/*
* This file is part of FFmpeg.
*
* FFmpeg is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* FFmpeg is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with FFmpeg; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef AVUTIL_HWCONTEXT_DRM_H
#define AVUTIL_HWCONTEXT_DRM_H
#include <stddef.h>
#include <stdint.h>
/**
* @file
* API-specific header for AV_HWDEVICE_TYPE_DRM.
*
* Internal frame allocation is not currently supported - all frames
* must be allocated by the user. Thus AVHWFramesContext is always
* NULL, though this may change if support for frame allocation is
* added in future.
*/
enum {
/**
* The maximum number of layers/planes in a DRM frame.
*/
AV_DRM_MAX_PLANES = 4
};
/**
* DRM object descriptor.
*
* Describes a single DRM object, addressing it as a PRIME file
* descriptor.
*/
typedef struct AVDRMObjectDescriptor {
/**
* DRM PRIME fd for the object.
*/
int fd;
/**
* Total size of the object.
*
* (This includes any parts not which do not contain image data.)
*/
size_t size;
/**
* Format modifier applied to the object (DRM_FORMAT_MOD_*).
*/
uint64_t format_modifier;
} AVDRMObjectDescriptor;
/**
* DRM plane descriptor.
*
* Describes a single plane of a layer, which is contained within
* a single object.
*/
typedef struct AVDRMPlaneDescriptor {
/**
* Index of the object containing this plane in the objects
* array of the enclosing frame descriptor.
*/
int object_index;
/**
* Offset within that object of this plane.
*/
ptrdiff_t offset;
/**
* Pitch (linesize) of this plane.
*/
ptrdiff_t pitch;
} AVDRMPlaneDescriptor;
/**
* DRM layer descriptor.
*
* Describes a single layer within a frame. This has the structure
* defined by its format, and will contain one or more planes.
*/
typedef struct AVDRMLayerDescriptor {
/**
* Format of the layer (DRM_FORMAT_*).
*/
uint32_t format;
/**
* Number of planes in the layer.
*
* This must match the number of planes required by format.
*/
int nb_planes;
/**
* Array of planes in this layer.
*/
AVDRMPlaneDescriptor planes[AV_DRM_MAX_PLANES];
} AVDRMLayerDescriptor;
/**
* DRM frame descriptor.
*
* This is used as the data pointer for AV_PIX_FMT_DRM_PRIME frames.
* It is also used by user-allocated frame pools - allocating in
* AVHWFramesContext.pool must return AVBufferRefs which contain
* an object of this type.
*
* The fields of this structure should be set such it can be
* imported directly by EGL using the EGL_EXT_image_dma_buf_import
* and EGL_EXT_image_dma_buf_import_modifiers extensions.
* (Note that the exact layout of a particular format may vary between
* platforms - we only specify that the same platform should be able
* to import it.)
*
* The total number of planes must not exceed AV_DRM_MAX_PLANES, and
* the order of the planes by increasing layer index followed by
* increasing plane index must be the same as the order which would
* be used for the data pointers in the equivalent software format.
*/
typedef struct AVDRMFrameDescriptor {
/**
* Number of DRM objects making up this frame.
*/
int nb_objects;
/**
* Array of objects making up the frame.
*/
AVDRMObjectDescriptor objects[AV_DRM_MAX_PLANES];
/**
* Number of layers in the frame.
*/
int nb_layers;
/**
* Array of layers in the frame.
*/
AVDRMLayerDescriptor layers[AV_DRM_MAX_PLANES];
} AVDRMFrameDescriptor;
/**
* DRM device.
*
* Allocated as AVHWDeviceContext.hwctx.
*/
typedef struct AVDRMDeviceContext {
/**
* File descriptor of DRM device.
*
* This is used as the device to create frames on, and may also be
* used in some derivation and mapping operations.
*
* If no device is required, set to -1.
*/
int fd;
} AVDRMDeviceContext;
#endif /* AVUTIL_HWCONTEXT_DRM_H */

View File

@ -172,7 +172,11 @@ int av_image_fill_arrays(uint8_t *dst_data[4], int dst_linesize[4],
* Return the size in bytes of the amount of data required to store an * Return the size in bytes of the amount of data required to store an
* image with the given parameters. * image with the given parameters.
* *
* @param[in] align the assumed linesize alignment * @param pix_fmt the pixel format of the image
* @param width the width of the image in pixels
* @param height the height of the image in pixels
* @param align the assumed linesize alignment
* @return the buffer size in bytes, a negative error code in case of failure
*/ */
int av_image_get_buffer_size(enum AVPixelFormat pix_fmt, int width, int height, int align); int av_image_get_buffer_size(enum AVPixelFormat pix_fmt, int width, int height, int align);

View File

@ -254,26 +254,51 @@ int av_pix_fmt_count_planes(enum AVPixelFormat pix_fmt);
*/ */
const char *av_color_range_name(enum AVColorRange range); const char *av_color_range_name(enum AVColorRange range);
/**
* @return the AVColorRange value for name or an AVError if not found.
*/
int av_color_range_from_name(const char *name);
/** /**
* @return the name for provided color primaries or NULL if unknown. * @return the name for provided color primaries or NULL if unknown.
*/ */
const char *av_color_primaries_name(enum AVColorPrimaries primaries); const char *av_color_primaries_name(enum AVColorPrimaries primaries);
/**
* @return the AVColorPrimaries value for name or an AVError if not found.
*/
int av_color_primaries_from_name(const char *name);
/** /**
* @return the name for provided color transfer or NULL if unknown. * @return the name for provided color transfer or NULL if unknown.
*/ */
const char *av_color_transfer_name(enum AVColorTransferCharacteristic transfer); const char *av_color_transfer_name(enum AVColorTransferCharacteristic transfer);
/**
* @return the AVColorTransferCharacteristic value for name or an AVError if not found.
*/
int av_color_transfer_from_name(const char *name);
/** /**
* @return the name for provided color space or NULL if unknown. * @return the name for provided color space or NULL if unknown.
*/ */
const char *av_color_space_name(enum AVColorSpace space); const char *av_color_space_name(enum AVColorSpace space);
/**
* @return the AVColorSpace value for name or an AVError if not found.
*/
int av_color_space_from_name(const char *name);
/** /**
* @return the name for provided chroma location or NULL if unknown. * @return the name for provided chroma location or NULL if unknown.
*/ */
const char *av_chroma_location_name(enum AVChromaLocation location); const char *av_chroma_location_name(enum AVChromaLocation location);
/**
* @return the AVChromaLocation value for name or an AVError if not found.
*/
int av_chroma_location_from_name(const char *name);
/** /**
* Return the pixel format corresponding to name. * Return the pixel format corresponding to name.
* *

View File

@ -334,6 +334,13 @@ enum AVPixelFormat {
AV_PIX_FMT_GBRAPF32BE, ///< IEEE-754 single precision planar GBRA 4:4:4:4, 128bpp, big-endian AV_PIX_FMT_GBRAPF32BE, ///< IEEE-754 single precision planar GBRA 4:4:4:4, 128bpp, big-endian
AV_PIX_FMT_GBRAPF32LE, ///< IEEE-754 single precision planar GBRA 4:4:4:4, 128bpp, little-endian AV_PIX_FMT_GBRAPF32LE, ///< IEEE-754 single precision planar GBRA 4:4:4:4, 128bpp, little-endian
/**
* DRM-managed buffers exposed through PRIME buffer sharing.
*
* data[0] points to an AVDRMFrameDescriptor.
*/
AV_PIX_FMT_DRM_PRIME,
AV_PIX_FMT_NB ///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions AV_PIX_FMT_NB ///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions
}; };

View File

@ -80,7 +80,7 @@
#define LIBAVUTIL_VERSION_MAJOR 55 #define LIBAVUTIL_VERSION_MAJOR 55
#define LIBAVUTIL_VERSION_MINOR 74 #define LIBAVUTIL_VERSION_MINOR 79
#define LIBAVUTIL_VERSION_MICRO 100 #define LIBAVUTIL_VERSION_MICRO 100
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \

View File

@ -29,7 +29,7 @@
#include "libavutil/avutil.h" #include "libavutil/avutil.h"
#define LIBSWRESAMPLE_VERSION_MAJOR 2 #define LIBSWRESAMPLE_VERSION_MAJOR 2
#define LIBSWRESAMPLE_VERSION_MINOR 8 #define LIBSWRESAMPLE_VERSION_MINOR 10
#define LIBSWRESAMPLE_VERSION_MICRO 100 #define LIBSWRESAMPLE_VERSION_MICRO 100
#define LIBSWRESAMPLE_VERSION_INT AV_VERSION_INT(LIBSWRESAMPLE_VERSION_MAJOR, \ #define LIBSWRESAMPLE_VERSION_INT AV_VERSION_INT(LIBSWRESAMPLE_VERSION_MAJOR, \

Binary file not shown.

View File

@ -1,17 +1,17 @@
-----BEGIN PGP SIGNATURE----- -----BEGIN PGP SIGNATURE-----
Version: GnuPG v2 Version: GnuPG v2
iQIcBAABCAAGBQJZyDeWAAoJEI1smEefSt5xmPYQAJZb5BEGTRg4o4KD2tvtyXIH iQIcBAABCAAGBQJZ4qGHAAoJEI1smEefSt5xCv4QAIoP2CJMW/vWD64ZGpRYQ0fm
qY10ub7WSTFoEJ4rnXwg3rPVVMmgXGoIcfiald6lNU1cXmMcN/dfPz2HuL19hXz3 8mxN7wyAwLbsWt03CK7RM4g9t9T+RfF1SIFVJkCOiZX8M9S2EFpEBwq8Td54CCTn
d0B3NAy2HhZVV47D4ixjN3GmKeLjX8UZO3Qa3LsZZSKhNqpAAJPd0efsEjo2P9Rp SeQeCP6KdLiZj/gk3pJU6dFsDDhF74IJHRoYEcWCun5E6vjRlHoOJh2NbUEH5kf/
b7uq3/B72cn1a1EfeANhOwmzmUPMBLJD5ZCnhDff9jkvakMiSnge+PlsK5eXyOXd w+EKMqdYN8UKcWi0nDsS4hTA8NZaxeXmK2EDtx/rjMk0vK3ecuEh4M0cpXgxoCcj
5KcjSXnhHmjsWyccBYbie3LZjcEKyk3h1K8VBE16OIX2NkUyi+LFTmPil51jeH/9 /Q8RgQCUJyOZeT0PnjEjYOSohnYl401Tg3XrbsyIDUs2IVCC1LG93GEH1yQdqE/F
36L+zISwvJyZoTqVLPQhIhv9hWVMPVBwLr9C0KC3iOrFw72LBkfeCuufv9+xxIwX 6wjhcF2iD1B1L3U0abNw0PJAOlNKimbEspPpFXFifGrH8ssi0k2cVyGC/M5+nK1f
lz4+bCsD8aplk9xBmRjo9NVUaawXBmC9HweCv/ImQ8L04EVqwl7efJU64zlpukXP bUhSdlcADYb4r5B6hYNNbS6C2BMAN58TYhRlez5g027iEOy89zGnLHGLEo+RzSma
N25QpIim4uG/AMhaxOVUeQwXRDmmoY+Y879VwY0jgZKkS5vQm97kS0PwwG8xgb+B 2ygEJD68NVIYoVYr+Gjprjq5IOfEogv5jhN5yIuC6B5ze1cxzOkW9L0eO8Sp8Gxp
q9v6l6vLdRRCIU5b9toSeZEJJ2Hbf9y1ZBKM1+JjOA17GAm118KrPL7YARCcsvRD 9ohQSQdcyAtbzSuB1RB8XZzEDcFRDxodmkiU4P1heHxT59AVqyvMe/Zc0JJvV82a
IuiamwXRLjfFS4sNsVUC0c11NClAhnyi4egsbLof440Lzk6yvBc+1DER4gWkNeVr bJ90bwpV6WCOS3q4zunpTXH7f5dmnfI7R4uT+o1DybBHCAdIYaBgvlsL1YJU08eh
aCBCqU9A7v/jnEyszh4C5R0J9xKNAHeV/H/PdqcKzuhlkR6Pe8a5z5WpyJTMw5Rq TQDPnTgeyaKhuLVpXGl06go7mzHlC5G/E/7PpoAKWdJlewmNuKQ6Y4cRxWJqFWbz
iE+OAEeuA3D1zEW6HbYq x1e7cE195yr3I6PRy3rU
=U168 =sgGw
-----END PGP SIGNATURE----- -----END PGP SIGNATURE-----

View File

@ -113,6 +113,7 @@ EXPORTS
avio_close_dir avio_close_dir
avio_close_dyn_buf avio_close_dyn_buf
avio_closep avio_closep
avio_context_free
avio_enum_protocols avio_enum_protocols
avio_feof avio_feof
avio_find_protocol_name avio_find_protocol_name
@ -139,6 +140,7 @@ EXPORTS
avio_rb64 avio_rb64
avio_read avio_read
avio_read_dir avio_read_dir
avio_read_partial
avio_read_to_bprint avio_read_to_bprint
avio_rl16 avio_rl16
avio_rl24 avio_rl24

Binary file not shown.

View File

@ -1,17 +1,17 @@
-----BEGIN PGP SIGNATURE----- -----BEGIN PGP SIGNATURE-----
Version: GnuPG v2 Version: GnuPG v2
iQIcBAABCAAGBQJZyDeYAAoJEI1smEefSt5xtrYP/1FtdtlFhjAqb1LKlUZVQ7Am iQIcBAABCAAGBQJZ4qGIAAoJEI1smEefSt5xelQP/0r08Ia06MClhd41w7+NKqSS
C9qXTlxlyuABRK/pznjBeFFFuZsg3VEy0v+aspUuW9frWoFJ4bL754shhXvIfZ0m mLoa4KZ51D8cunZSp/OLc8BxqWkAYEM+D1K9kJ8c52534RN3dAOxO33yBGlz4CP1
bYSJzFPZDkh0dIjani17zIXZtCyXlWJx4gLZ087IWiZU5XGgaQfdUxNYYwF9Zdoe g67dR0cMw77CgFlInajJfURa0eVk3qDeg+bVITwNsejBdlN1GObzv90yikOMbYbn
13L93QdyPHjyw1HnWMX2/sDtz/jB9GZjrO4GkaqQEBDJktF+6vu4Iqq08BmexWYd YwgUZ/PYSPi9q+5QxziSoQXnXMS3uDmhm1MSikLfh0O1XVGAiuaUTgcHImltbpmg
3eLN0BTobPdo+slBgRTukmUuVihVlvfi82B567kzcBxxlspdgvIp9XFcD/M1Fy2W SmiKmvAMdVdDC/ExUEfk1tXMLzyxo+CLVWbxAcehbN6ZxoPSw9L5A3PxLwJ0RJe/
u2/3+zwxceF3EdYY1yEvJLrTCArkBmjUO01KUyiuolxi9BjfAV9xHriql1Ti8FBb H4GqJmT+G5TqdEDDhlROL0MjG6MKQ6T5RoUycCuKWvW7aRNUa6FrSPLrl6Y9DxiD
mxJjt5OST3490jk/fAlsfIGD1LtCUKfrFr62qiryz3iUIMPMlmfbjSAtN6V9DLV8 4+p7nnd6UFu1mHcKaIgLXR/zXZoufPuTekWbSaNswJx0gFNx4eTEhCJWs2s47Tnw
81GoGi20bPd5wDISDiQJUpnUfcxlQ2FsjGxVXdUdDQhgyN0DLb1o0n4GcnNpvCaI lXge6y4kq9P5SEkEjt1w162CeqGp+Cg2a7hJO0tPFyieA8XOYJFFtOcXJVlcp+sa
q+o70wqD3zT+9vrFtwixZurKNJjRAT1QOju5zRdV+FBtWtY/85Abdx2HFrivOuQZ RtGhAJsGyGBvpnQyoiKeVG+Cb5iIeDvpkzEwIIxL8lFMOu+5pK3yBvdE7HX+KLu9
mDHlRyUIFqlL+iBtuDmaaZvby9FPBLCycTswBBosvfc4flYFA4O7nJu6WKuk9L1w 5hNeL6ii4EWQdhazECDgjrkiDBSVIiUDJQw5Nm3yE/2K/LTunUiNygnX+UUyzhWr
YKFYDdcoz3vgSdKSuueDCITLU6EQJTiXWpSFyLqaNzLvBbwzLvkm5HGLSJ//Mb7L M6WijaXV7D+CbNt3OsPY5KodeFZWBUWYSZUzLmW8OLMXgYer0M/MqGWSYbocixrc
bLqqW8+LPjvcaqcbYBc+ izUEJLaxO5QqyedpV0rp
=4AeT =Kx+V
-----END PGP SIGNATURE----- -----END PGP SIGNATURE-----

View File

@ -74,17 +74,23 @@ EXPORTS
av_cast5_init av_cast5_init
av_cast5_size DATA av_cast5_size DATA
av_channel_layout_extract_channel av_channel_layout_extract_channel
av_chroma_location_from_name
av_chroma_location_name av_chroma_location_name
av_cmp_i av_cmp_i
av_color_primaries_from_name
av_color_primaries_name av_color_primaries_name
av_color_range_from_name
av_color_range_name av_color_range_name
av_color_space_from_name
av_color_space_name av_color_space_name
av_color_transfer_from_name
av_color_transfer_name av_color_transfer_name
av_compare_mod av_compare_mod
av_compare_ts av_compare_ts
av_content_light_metadata_alloc av_content_light_metadata_alloc
av_content_light_metadata_create_side_data av_content_light_metadata_create_side_data
av_cpu_count av_cpu_count
av_cpu_max_align
av_crc av_crc
av_crc_get_table av_crc_get_table
av_crc_init av_crc_init

Binary file not shown.

View File

@ -1,17 +1,17 @@
-----BEGIN PGP SIGNATURE----- -----BEGIN PGP SIGNATURE-----
Version: GnuPG v2 Version: GnuPG v2
iQIcBAABCAAGBQJZyDeYAAoJEI1smEefSt5xsEUQAI3hfjwRcQZcHwbO0S3ZMMBt iQIcBAABCAAGBQJZ4qGIAAoJEI1smEefSt5xp8cP/10cqSHQw0aLTfMz382HrgB6
9bmJKfdH2cAZa4uqaLc9X8ujgLNu5jHe0pLwRp/UEBvjuovy3tgKYsKIaZfSTgoM TEuOcc9YttOH4qFxX2q7D/eCRjMyusMU0Q3kCXpvsH1I4nPAd//Cg2ExLZbvKEpK
EZqN7RBD3xTmd+54zannTU51xtCAMN9aCvq4j/1M4QaR9SL/mENYcJsrA58GGRKZ L2aSD4prspGVrHpFPuECsiAG2g01AibFJJnXKzq5m/jXW8cj+DWkdYDvgSQCbfMm
4rUDxkA+SMhQLO0qAc0zIoOppOghQVdvJmFKWHLVockSpOyNAcQuzaaXKCAzSFvi hhHoKJHTvRQQlIdlcD9Amk07Uez17KT0yzukspfWYuhJ58ZWb/V9sWxKW4J8AVtx
T/ZPeEdP22gn5g6jBRqXXuFnGIsPeZNZDa9N/NL9Rp4XiYjXVaWSrLQZA2j2BqhI s02Kvy1fowBvXJmtfmPZ1Tjq00c9dT75VIug6Mq8CkRJ1ShY44WXpe0cCKd4ScSC
FOQrhmVQj7HdsgNaqwQppaveW8vPiFnLpbXQ/XyUDh6ZzwqKDXaowEEUq4zTaChW lOxvwAR0ox/Jmxr+dGee83XrvINFPH0Pl918EyXzs+CgJb11di5ZR5vURK/sbLnV
YoMGRFNB9DnjBxAE2iPjonTnEtkpVO1Dwsy56ZAmCJwxCeixRxTi5dL2b0+Kf+ag idisdmh17xLXPpsvz6kmiYhb1xk3pYQ9XKKob13SO/I3ktoHgFjpbtUwJkPralL5
LPYOBNAPXfF07vi+cA/kgwz7ffuOhUVGEgLaIB1lFBG6Ssm0tHnKfNpwkfd2wHem x0DeN3zL6aIYPcEeO3eVvEV01iyVjEIh3ex0j0a7bO8ecO+U7Mw7LG5KD6jFdU5Q
pZT0Vk4fJFL8sQqqyeO6ZmS7cwY7elCfrHi3gbje4pZsoGOsoub7+TTXDSfVPayV FAJYOk8HKaL9llUEztjN/DagBLQbizDvqumHd5C2sukerWe7hVDBJagL/jE1F3Vm
SaXnb/6PzXfKL2w870EvQAlDBZoJfryHJpI4UwMSkDL+8v/3IEiznjXRbDgENEoP 5MWV1iZALknxdPPxaNpiKIx38jRUp+v5Lkfjxdy1QxC4DNk6s31NWhaMVHOICsfD
bx5Shi6C487LSgxKTmNBioZouLx/liLZnSg2aCbsglpPwCAcppvSy7UYeT1Zjp+8 CyMDZ9YM5CZR81jutCjaZZaWe08bvIFnykVN6tQo1xBAdxRtG7PpI9+oXMkFam7A
SgqdiBOZ8RFLbC8lg7Ll BaIQoYsDEEGM3TIbWtrN
=7dYx =S0oT
-----END PGP SIGNATURE----- -----END PGP SIGNATURE-----

Binary file not shown.

View File

@ -1,17 +1,17 @@
-----BEGIN PGP SIGNATURE----- -----BEGIN PGP SIGNATURE-----
Version: GnuPG v2 Version: GnuPG v2
iQIcBAABCAAGBQJZyDeWAAoJEI1smEefSt5xl5EP/0PQxGCcJt05qtMQJz7l3+nK iQIcBAABCAAGBQJZ4qGIAAoJEI1smEefSt5xPs4P/3soSNqau0s/i275ERspq2fX
8d79FJI3WCSsXc2prIssfsCYqnvJ+h0FoCS3QKLdy1pUm4zGu2vvmRgpxcIEAFES JGRiBFhS9tyj66VQ4gn0qdol4IHyUY5EiMcTQPi/u8wdnmKPjEjeCB5nmD43uCEb
OKFZD1h7qBhXgDV+YcWNWB8/k3P8TU9v/yIP7Ppa0AGGFk5hCuVINfUnYmG0N3lV 1D9Wl0Gi+culHaMVCLhq8mg9edZD5RrO6m6V8lj7eBh499/gI9OiopjR9ifjrMtH
ut3XXcdJ+OMwI6V3K+7fVBNCewvi2MSR+IsWyHf7GrJhB6HkDA7SgBPnzb9vnpWR /VfPZctHlkFAdp9WCLihWb0srJDOwL4M4rOMiBgB2g53Vo06zmY5vhStnjez+jNL
rV++XmvEnPuVX958UI/+L9OkHc1D0ZfWdprcq9b6qYhVw8bvZ8WBJasJOArZAObj wOyd2TKFXRAya0wLdG3e9szjUy/kvnyNjYenDQRu/SodKko0aof81qvhTG74tnZt
oxuonBUIV0xUR5DmX14iXOEG1O7rESiF534cDtdIi5G5VSUeEQkB3/WScB2AKt8p SlbU0YWBxH92X4XhA6gP/iDpwLT0v9li68RZSt9nSwwEbNltMNKbe5gzAbcVYM2g
SvD0xxutLkG3B4eRqveELZMOtAm792ZpKdIdlwHHkhmfYkqohF8IoLBy3pPu6nW6 ZuCmI4F4B1nID8wJzKiFFu5Wm/9nOZbQRNZOZrhoB9MxZz5qj6Wq7p5JVkffi8cr
bHJqBmtZFSDuOvXWibODMz7lIuhJNfzLwDUr1exbFizR04WOrNHsupbpv8Vf+Cjj pv8uCy4xsZyPJtr7kDl9p8uDICnh762Yhous5cMAoJNpC0Tibalt2dc5AQoi6etk
UCZ64r5Fph62hqmHemgZq5qCKnZkQL6LRytcweqHVTYpBsFEdrVlA+ASwFj8Ycl5 1SfDmmkXMh12ynUGVxV+79EsWZQRZasU0pbzKWB9z9I4atTyIyMpUyWJEh5nV8gC
4GYfuD78XgRWDhgYMJV87CvIthktjZN1uJEI6uHftzxI79GhEboW+MKEmVPcAnK2 /2k6fPx5LFBuntGBSgRpdzye64TaNtshaUKEqdvDnyVNhq3O5I27kNiyUD0jSS0R
fbhrHr6dOjO1hOpSCAySjxFUN9OETLr+2OP9u+okGgNt7+5oaReAPbmxpp24lyJP T5bsXKphp2HC+EGbC1LcadSouRbm0fMtWrcYm/Yecvv7BLDChB81qbZBwZgz5al0
CgPP7ykgxQN9Gu1FlfLm 8vxQCAxIFhrk1nEFqlAd
=br+F =cz4P
-----END PGP SIGNATURE----- -----END PGP SIGNATURE-----