aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/libx264.c
diff options
context:
space:
mode:
authorLyubomir Marinov <lyubomir.marinov@jitsi.org>2012-09-16 12:46:27 +0300
committerMichael Niedermayer <michaelni@gmx.at>2012-09-17 21:31:57 +0200
commitfd9cd8cd5ab6042731fa0fab3a5158e35dce773a (patch)
treea94dc7c77d26e03a98629328d96cf52782f96975 /libavcodec/libx264.c
parent07d2d063954251bdefe34d7d1f8de751eec606be (diff)
downloadffmpeg-fd9cd8cd5ab6042731fa0fab3a5158e35dce773a.tar.gz
libx264: connect AVCodecContext.rtp_payload_size to x264_params_t.i_slice_max_size
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/libx264.c')
-rw-r--r--libavcodec/libx264.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/libavcodec/libx264.c b/libavcodec/libx264.c
index f2f899024f..4435a2abb1 100644
--- a/libavcodec/libx264.c
+++ b/libavcodec/libx264.c
@@ -443,6 +443,16 @@ static av_cold int X264_init(AVCodecContext *avctx)
if (x4->slice_max_size >= 0)
x4->params.i_slice_max_size = x4->slice_max_size;
+ else {
+ /*
+ * Allow x264 to be instructed through AVCodecContext about the maximum
+ * size of the RTP payload. For example, this enables the production of
+ * payload suitable for the H.264 RTP packetization-mode 0 i.e. single
+ * NAL unit per RTP packet.
+ */
+ if (avctx->rtp_payload_size)
+ x4->params.i_slice_max_size = avctx->rtp_payload_size;
+ }
if (x4->fastfirstpass)
x264_param_apply_fastfirstpass(&x4->params);