Handle new H.264 profile in recent ffmpeg versions.

This commit is contained in:
Justin Maggard 2013-10-22 19:02:02 -07:00
parent e00d462a75
commit 8d6ce5e8b5
2 changed files with 28 additions and 20 deletions

25
libav.h
View File

@ -41,3 +41,28 @@
#include <avformat.h>
#endif
#ifndef FF_PROFILE_H264_BASELINE
#define FF_PROFILE_H264_BASELINE 66
#endif
#ifndef FF_PROFILE_H264_CONSTRAINED_BASELINE
#define FF_PROFILE_H264_CONSTRAINED_BASELINE 578
#endif
#ifndef FF_PROFILE_H264_MAIN
#define FF_PROFILE_H264_MAIN 77
#endif
#ifndef FF_PROFILE_H264_HIGH
#define FF_PROFILE_H264_HIGH 100
#endif
#ifndef FF_PROFILE_SKIP
#define FF_PROFILE_SKIP -100
#endif
#if LIBAVCODEC_VERSION_MAJOR < 53
#define AVMEDIA_TYPE_AUDIO CODEC_TYPE_AUDIO
#define AVMEDIA_TYPE_VIDEO CODEC_TYPE_VIDEO
#endif
#if LIBAVUTIL_VERSION_INT < ((50<<16)+(13<<8)+0)
#define av_strerror(x, y, z) snprintf(y, z, "%d", x)
#endif

View File

@ -44,26 +44,6 @@
#include "sql.h"
#include "log.h"
#ifndef FF_PROFILE_H264_BASELINE
#define FF_PROFILE_H264_BASELINE 66
#endif
#ifndef FF_PROFILE_H264_MAIN
#define FF_PROFILE_H264_MAIN 77
#endif
#ifndef FF_PROFILE_H264_HIGH
#define FF_PROFILE_H264_HIGH 100
#endif
#define FF_PROFILE_SKIP -100
#if LIBAVCODEC_VERSION_MAJOR < 53
#define AVMEDIA_TYPE_AUDIO CODEC_TYPE_AUDIO
#define AVMEDIA_TYPE_VIDEO CODEC_TYPE_VIDEO
#endif
#if LIBAVUTIL_VERSION_INT < ((50<<16)+(13<<8)+0)
#define av_strerror(x, y, z) snprintf(y, z, "%d", x)
#endif
#define FLAG_TITLE 0x00000001
#define FLAG_ARTIST 0x00000002
#define FLAG_ALBUM 0x00000004
@ -1042,6 +1022,7 @@ GetVideoMetadata(const char *path, char *name)
switch( vc->profile )
{
case FF_PROFILE_H264_BASELINE:
case FF_PROFILE_H264_CONSTRAINED_BASELINE:
off += sprintf(m.dlna_pn+off, "BL_");
if( vc->width <= 352 &&
vc->height <= 288 &&
@ -1064,6 +1045,7 @@ GetVideoMetadata(const char *path, char *name)
case FF_PROFILE_H264_MAIN:
off += sprintf(m.dlna_pn+off, "MP_");
if( vc->profile != FF_PROFILE_H264_BASELINE &&
vc->profile != FF_PROFILE_H264_CONSTRAINED_BASELINE &&
vc->profile != FF_PROFILE_H264_MAIN )
{
DPRINTF(E_DEBUG, L_METADATA, "Unknown AVC profile %d; assuming MP. [%s]\n",
@ -1167,6 +1149,7 @@ GetVideoMetadata(const char *path, char *name)
switch( vc->profile ) {
case FF_PROFILE_H264_BASELINE:
case FF_PROFILE_H264_CONSTRAINED_BASELINE:
if( vc->width <= 352 &&
vc->height <= 288 )
{