mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Merge commit '5b4797a21db900b7d509660b7a4d49829089b004'
* commit '5b4797a21db900b7d509660b7a4d49829089b004': avframe: add AV_FRAME_DATA_MATRIXENCODING side data type. Conflicts: libavutil/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
4cf4da9dc5
@ -15,6 +15,10 @@ libavutil: 2012-10-22
|
||||
|
||||
API changes, most recent first:
|
||||
|
||||
2013-12-xx - xxxxxxx - lavu 53.2.0 - frame.h
|
||||
Add AV_FRAME_DATA_MATRIXENCODING value to the AVFrameSideDataType enum, which
|
||||
identifies AVMatrixEncoding data.
|
||||
|
||||
2013-12-xx - xxxxxxx - lavu 53.1.0 - channel_layout.h
|
||||
Add values for various Dolby flags to the AVMatrixEncoding enum.
|
||||
|
||||
|
@ -27,6 +27,7 @@
|
||||
#include <stdint.h>
|
||||
|
||||
#include "libavutil/buffer.h"
|
||||
#include "libavutil/channel_layout.h"
|
||||
#include "libavutil/mathematics.h"
|
||||
#include "libavutil/pixfmt.h"
|
||||
#include "avcodec.h"
|
||||
@ -238,4 +239,10 @@ const uint8_t *avpriv_find_start_code(const uint8_t *p,
|
||||
*/
|
||||
int ff_set_dimensions(AVCodecContext *s, int width, int height);
|
||||
|
||||
/**
|
||||
* Add or update AV_FRAME_DATA_MATRIXENCODING side data.
|
||||
*/
|
||||
int ff_side_data_update_matrix_encoding(AVFrame *frame,
|
||||
enum AVMatrixEncoding matrix_encoding);
|
||||
|
||||
#endif /* AVCODEC_INTERNAL_H */
|
||||
|
@ -252,6 +252,26 @@ int ff_set_dimensions(AVCodecContext *s, int width, int height)
|
||||
return ret;
|
||||
}
|
||||
|
||||
int ff_side_data_update_matrix_encoding(AVFrame *frame,
|
||||
enum AVMatrixEncoding matrix_encoding)
|
||||
{
|
||||
AVFrameSideData *side_data;
|
||||
enum AVMatrixEncoding *data;
|
||||
|
||||
side_data = av_frame_get_side_data(frame, AV_FRAME_DATA_MATRIXENCODING);
|
||||
if (!side_data)
|
||||
side_data = av_frame_new_side_data(frame, AV_FRAME_DATA_MATRIXENCODING,
|
||||
sizeof(enum AVMatrixEncoding));
|
||||
|
||||
if (!side_data)
|
||||
return AVERROR(ENOMEM);
|
||||
|
||||
data = (enum AVMatrixEncoding*)side_data->data;
|
||||
*data = matrix_encoding;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#if HAVE_NEON || ARCH_PPC || HAVE_MMX
|
||||
# define STRIDE_ALIGN 16
|
||||
#else
|
||||
|
@ -69,6 +69,10 @@ enum AVFrameSideDataType {
|
||||
* The data is the AVStereo3D struct defined in libavutil/stereo3d.h.
|
||||
*/
|
||||
AV_FRAME_DATA_STEREO3D,
|
||||
/**
|
||||
* The data is the AVMatrixEncoding enum defined in libavutil/channel_layout.h.
|
||||
*/
|
||||
AV_FRAME_DATA_MATRIXENCODING,
|
||||
};
|
||||
|
||||
typedef struct AVFrameSideData {
|
||||
|
@ -56,7 +56,7 @@
|
||||
*/
|
||||
|
||||
#define LIBAVUTIL_VERSION_MAJOR 52
|
||||
#define LIBAVUTIL_VERSION_MINOR 61
|
||||
#define LIBAVUTIL_VERSION_MINOR 62
|
||||
#define LIBAVUTIL_VERSION_MICRO 100
|
||||
|
||||
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
|
||||
|
Loading…
Reference in New Issue
Block a user