diff options
Diffstat (limited to 'libavcodec/encode.h')
-rw-r--r-- | libavcodec/encode.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/libavcodec/encode.h b/libavcodec/encode.h index bc77918d8f..d660a81d87 100644 --- a/libavcodec/encode.h +++ b/libavcodec/encode.h @@ -21,7 +21,10 @@ #ifndef AVCODEC_ENCODE_H #define AVCODEC_ENCODE_H +#include "libavutil/attributes.h" +#include "libavutil/avutil.h" #include "libavutil/frame.h" +#include "libavutil/mathematics.h" #include "avcodec.h" #include "packet.h" @@ -75,4 +78,16 @@ int ff_alloc_packet(AVCodecContext *avctx, AVPacket *avpkt, int64_t size); */ int ff_encode_preinit(AVCodecContext *avctx); +/** + * Rescale from sample rate to AVCodecContext.time_base. + */ +static av_always_inline int64_t ff_samples_to_time_base(AVCodecContext *avctx, + int64_t samples) +{ + if(samples == AV_NOPTS_VALUE) + return AV_NOPTS_VALUE; + return av_rescale_q(samples, (AVRational){ 1, avctx->sample_rate }, + avctx->time_base); +} + #endif /* AVCODEC_ENCODE_H */ |