1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-01-24 13:56:33 +02:00

avformat: replace some odd 30-60 rates by higher less odd ones in get_std_framerate()

Fixes Ticket4012

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2014-11-21 12:37:59 +01:00
parent f0ae0354d3
commit 367c9d33d6
7 changed files with 15 additions and 9 deletions

View File

@ -916,7 +916,7 @@ typedef struct AVStream {
/** /**
* Stream information used internally by av_find_stream_info() * Stream information used internally by av_find_stream_info()
*/ */
#define MAX_STD_TIMEBASES (60*12+6) #define MAX_STD_TIMEBASES (30*12+7+6)
struct { struct {
int64_t last_dts; int64_t last_dts;
int64_t duration_gcd; int64_t duration_gcd;

View File

@ -2787,10 +2787,16 @@ static void compute_chapters_end(AVFormatContext *s)
static int get_std_framerate(int i) static int get_std_framerate(int i)
{ {
if (i < 60 * 12) if (i < 30*12)
return (i + 1) * 1001; return (i + 1) * 1001;
else i -= 30*12;
return ((const int[]) { 24, 30, 60, 12, 15, 48 })[i - 60 * 12] * 1000 * 12;
if (i < 7)
return ((const int[]) { 40, 48, 50, 60, 80, 120, 240})[i] * 1001 * 12;
i -= 7;
return ((const int[]) { 24, 30, 60, 12, 15, 48 })[i] * 1000 * 12;
} }
/* Is the time base unreliable? /* Is the time base unreliable?

View File

@ -31,7 +31,7 @@
#define LIBAVFORMAT_VERSION_MAJOR 56 #define LIBAVFORMAT_VERSION_MAJOR 56
#define LIBAVFORMAT_VERSION_MINOR 14 #define LIBAVFORMAT_VERSION_MINOR 14
#define LIBAVFORMAT_VERSION_MICRO 100 #define LIBAVFORMAT_VERSION_MICRO 101
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \ #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
LIBAVFORMAT_VERSION_MINOR, \ LIBAVFORMAT_VERSION_MINOR, \

View File

@ -1,4 +1,4 @@
#tb 0: 12/601 #tb 0: 1/50
0, 0, 0, 1, 63180, 0xcda82c16 0, 0, 0, 1, 63180, 0xcda82c16
0, 1, 1, 1, 63180, 0xa6097bf9 0, 1, 1, 1, 63180, 0xa6097bf9
0, 2, 2, 1, 63180, 0x4c2fb091 0, 2, 2, 1, 63180, 0x4c2fb091

View File

@ -1,2 +1,2 @@
#tb 0: 3/158 #tb 0: 12/281
0, 0, 0, 1, 67584, 0xce0cade5 0, 0, 0, 1, 67584, 0xce0cade5

View File

@ -1,4 +1,4 @@
#tb 0: 12/601 #tb 0: 1/50
0, 0, 0, 1, 67584, 0x5eae629b 0, 0, 0, 1, 67584, 0x5eae629b
0, 1, 1, 1, 67584, 0x32591227 0, 1, 1, 1, 67584, 0x32591227
0, 2, 2, 1, 67584, 0x4e4424c7 0, 2, 2, 1, 67584, 0x4e4424c7

View File

@ -1,4 +1,4 @@
#tb 0: 16701/250000 #tb 0: 1001/15000
0, 0, 0, 1, 38016, 0x50e93e0d 0, 0, 0, 1, 38016, 0x50e93e0d
0, 1, 1, 1, 38016, 0x6ac8627d 0, 1, 1, 1, 38016, 0x6ac8627d
0, 2, 2, 1, 38016, 0x6f38661e 0, 2, 2, 1, 38016, 0x6f38661e