aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristophe Gisquet <christophe.gisquet@gmail.com>2014-11-30 00:45:52 +0000
committerMichael Niedermayer <michaelni@gmx.at>2014-11-30 04:15:40 +0100
commit6a2bfd52e50bf6fb87de1cb5de5b17d294f97a50 (patch)
tree14b76dc0f9ac43ac509d003a929de1ec6fe4d38b
parente74f2be1edde688cbf91614faa20bb89558be91d (diff)
downloadffmpeg-6a2bfd52e50bf6fb87de1cb5de5b17d294f97a50.tar.gz
h264_ps: move and export aspect_ratio
Needed for filters that may need it, like an SPS bsf. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/h264_ps.c26
-rw-r--r--libavcodec/h264data.h19
2 files changed, 22 insertions, 23 deletions
diff --git a/libavcodec/h264_ps.c b/libavcodec/h264_ps.c
index 20136704d4..4070490e46 100644
--- a/libavcodec/h264_ps.c
+++ b/libavcodec/h264_ps.c
@@ -31,32 +31,12 @@
#include "internal.h"
#include "avcodec.h"
#include "h264.h"
-#include "h264data.h" //FIXME FIXME FIXME (just for zigzag_scan)
+#include "h264data.h"
#include "golomb.h"
#define MAX_LOG2_MAX_FRAME_NUM (12 + 4)
#define MIN_LOG2_MAX_FRAME_NUM 4
-static const AVRational pixel_aspect[17] = {
- { 0, 1 },
- { 1, 1 },
- { 12, 11 },
- { 10, 11 },
- { 16, 11 },
- { 40, 33 },
- { 24, 11 },
- { 20, 11 },
- { 32, 11 },
- { 80, 33 },
- { 18, 11 },
- { 15, 11 },
- { 64, 33 },
- { 160, 99 },
- { 4, 3 },
- { 3, 2 },
- { 2, 1 },
-};
-
#define QP(qP, depth) ((qP) + 6 * ((depth) - 8))
#define CHROMA_QP_TABLE_END(d) \
@@ -164,8 +144,8 @@ static inline int decode_vui_parameters(H264Context *h, SPS *sps)
if (aspect_ratio_idc == EXTENDED_SAR) {
sps->sar.num = get_bits(&h->gb, 16);
sps->sar.den = get_bits(&h->gb, 16);
- } else if (aspect_ratio_idc < FF_ARRAY_ELEMS(pixel_aspect)) {
- sps->sar = pixel_aspect[aspect_ratio_idc];
+ } else if (aspect_ratio_idc < FF_ARRAY_ELEMS(ff_h264_pixel_aspect)) {
+ sps->sar = ff_h264_pixel_aspect[aspect_ratio_idc];
} else {
av_log(h->avctx, AV_LOG_ERROR, "illegal aspect ratio\n");
return AVERROR_INVALIDDATA;
diff --git a/libavcodec/h264data.h b/libavcodec/h264data.h
index 38f32583f6..95ea385deb 100644
--- a/libavcodec/h264data.h
+++ b/libavcodec/h264data.h
@@ -167,4 +167,23 @@ static const PMbInfo b_sub_mb_type_info[13] = {
{ MB_TYPE_8x8 | MB_TYPE_P0L0 | MB_TYPE_P0L1 | MB_TYPE_P1L0 | MB_TYPE_P1L1, 4, },
};
+static const AVRational ff_h264_pixel_aspect[17] = {
+ { 0, 1 },
+ { 1, 1 },
+ { 12, 11 },
+ { 10, 11 },
+ { 16, 11 },
+ { 40, 33 },
+ { 24, 11 },
+ { 20, 11 },
+ { 32, 11 },
+ { 80, 33 },
+ { 18, 11 },
+ { 15, 11 },
+ { 64, 33 },
+ { 160, 99 },
+ { 4, 3 },
+ { 3, 2 },
+ { 2, 1 },
+};
#endif /* AVCODEC_H264DATA_H */