Unified · Split
| @@ -15,6 +15,9 @@ libavutil: 2015-08-28 · 14 unmodified lines | |||
| 15 | 15 | ||
| 16 | API changes, most recent first: | 16 | API changes, most recent first: |
| 17 | 17 | ||
| 18 | 2016-10-22 - xxxxxxx - lavu 55.33.100 - avassert.h | ||
| 19 | Add av_assert0_fpu() / av_assert2_fpu() | ||
| 20 | |||
| 18 | 2016-xx-xx - xxxxxxx - lavc 57.61.100 / lavc 57.24.0 - avcodec.h | 21 | 2016-xx-xx - xxxxxxx - lavc 57.61.100 / lavc 57.24.0 - avcodec.h |
| 19 | Decoders now export the frame timestamp as AVFrame.pts. It was | 22 | Decoders now export the frame timestamp as AVFrame.pts. It was |
| 20 | previously exported as AVFrame.pkt_pts, which is now deprecated. | 23 | previously exported as AVFrame.pkt_pts, which is now deprecated. |
| @@ -59,8 +59,17 @@ · 58 unmodified lines | |||
| 59 | */ | 59 | */ |
| 60 | #if defined(ASSERT_LEVEL) && ASSERT_LEVEL > 1 | 60 | #if defined(ASSERT_LEVEL) && ASSERT_LEVEL > 1 |
| 61 | #define av_assert2(cond) av_assert0(cond) | 61 | #define av_assert2(cond) av_assert0(cond) |
| 62 | #define av_assert2_fpu() av_assert0_fpu() | ||
| 62 | #else | 63 | #else |
| 63 | #define av_assert2(cond) ((void)0) | 64 | #define av_assert2(cond) ((void)0) |
| 65 | #define av_assert2_fpu() ((void)0) | ||
| 64 | #endif | 66 | #endif |
| 65 | 67 | ||
| 68 | /** | ||
| 69 | * Assert that floating point opperations can be executed. | ||
| 70 | * | ||
| 71 | * This will av_assert0() that the cpu is not in MMX state on X86 | ||
| 72 | */ | ||
| 73 | void av_assert0_fpu(void); | ||
| 74 | |||
| 66 | #endif /* AVUTIL_AVASSERT_H */ | 75 | #endif /* AVUTIL_AVASSERT_H */ |
| @@ -125,3 +125,16 @@ AVRational av_get_time_base_q(void) · 124 unmodified lines | |||
| 125 | { | 125 | { |
| 126 | return (AVRational){1, AV_TIME_BASE}; | 126 | return (AVRational){1, AV_TIME_BASE}; |
| 127 | } | 127 | } |
| 128 | |||
| 129 | void av_assert0_fpu(void) { | ||
| 130 | #if HAVE_MMX_INLINE | ||
| 131 | uint16_t state[14]; | ||
| 132 | __asm volatile ( | ||
| 133 | "fstenv %0 \n\t" | ||
| 134 | : "+m" (state) | ||
| 135 | : | ||
| 136 | : "memory" | ||
| 137 | ); | ||
| 138 | av_assert0((state[4] & 3) == 3); | ||
| 139 | #endif | ||
| 140 | } | ||
| @@ -79,7 +79,7 @@ · 78 unmodified lines | |||
| 79 | */ | 79 | */ |
| 80 | 80 | ||
| 81 | #define LIBAVUTIL_VERSION_MAJOR 55 | 81 | #define LIBAVUTIL_VERSION_MAJOR 55 |
| 82 | #define LIBAVUTIL_VERSION_MINOR 32 | 82 | #define LIBAVUTIL_VERSION_MINOR 33 |
| 83 | #define LIBAVUTIL_VERSION_MICRO 100 | 83 | #define LIBAVUTIL_VERSION_MICRO 100 |
| 84 | 84 | ||
| 85 | #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ | 85 | #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ |