| OLD | NEW |
| 1 /* | 1 /* |
| 2 * H.264 encoding using the x264 library | 2 * H.264 encoding using the x264 library |
| 3 * Copyright (C) 2005 Mans Rullgard <mans@mansr.com> | 3 * Copyright (C) 2005 Mans Rullgard <mans@mansr.com> |
| 4 * | 4 * |
| 5 * This file is part of FFmpeg. | 5 * This file is part of FFmpeg. |
| 6 * | 6 * |
| 7 * FFmpeg is free software; you can redistribute it and/or | 7 * FFmpeg is free software; you can redistribute it and/or |
| 8 * modify it under the terms of the GNU Lesser General Public | 8 * modify it under the terms of the GNU Lesser General Public |
| 9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
| 10 * version 2.1 of the License, or (at your option) any later version. | 10 * version 2.1 of the License, or (at your option) any later version. |
| (...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 287 x4->params.analyse.b_psnr = avctx->flags & CODEC_FLAG_PSNR; | 287 x4->params.analyse.b_psnr = avctx->flags & CODEC_FLAG_PSNR; |
| 288 x4->params.analyse.b_ssim = avctx->flags2 & CODEC_FLAG2_SSIM; | 288 x4->params.analyse.b_ssim = avctx->flags2 & CODEC_FLAG2_SSIM; |
| 289 x4->params.i_log_level = X264_LOG_DEBUG; | 289 x4->params.i_log_level = X264_LOG_DEBUG; |
| 290 | 290 |
| 291 x4->params.b_aud = avctx->flags2 & CODEC_FLAG2_AUD; | 291 x4->params.b_aud = avctx->flags2 & CODEC_FLAG2_AUD; |
| 292 | 292 |
| 293 x4->params.i_threads = avctx->thread_count; | 293 x4->params.i_threads = avctx->thread_count; |
| 294 | 294 |
| 295 x4->params.b_interlaced = avctx->flags & CODEC_FLAG_INTERLACED_DCT; | 295 x4->params.b_interlaced = avctx->flags & CODEC_FLAG_INTERLACED_DCT; |
| 296 | 296 |
| 297 x4->params.i_slice_count = avctx->slices; |
| 298 |
| 297 if (avctx->flags & CODEC_FLAG_GLOBAL_HEADER) | 299 if (avctx->flags & CODEC_FLAG_GLOBAL_HEADER) |
| 298 x4->params.b_repeat_headers = 0; | 300 x4->params.b_repeat_headers = 0; |
| 299 | 301 |
| 300 x4->enc = x264_encoder_open(&x4->params); | 302 x4->enc = x264_encoder_open(&x4->params); |
| 301 if (!x4->enc) | 303 if (!x4->enc) |
| 302 return -1; | 304 return -1; |
| 303 | 305 |
| 304 avctx->coded_frame = &x4->out_pic; | 306 avctx->coded_frame = &x4->out_pic; |
| 305 | 307 |
| 306 if (avctx->flags & CODEC_FLAG_GLOBAL_HEADER) { | 308 if (avctx->flags & CODEC_FLAG_GLOBAL_HEADER) { |
| (...skipping 18 matching lines...) Expand all Loading... |
| 325 .type = AVMEDIA_TYPE_VIDEO, | 327 .type = AVMEDIA_TYPE_VIDEO, |
| 326 .id = CODEC_ID_H264, | 328 .id = CODEC_ID_H264, |
| 327 .priv_data_size = sizeof(X264Context), | 329 .priv_data_size = sizeof(X264Context), |
| 328 .init = X264_init, | 330 .init = X264_init, |
| 329 .encode = X264_frame, | 331 .encode = X264_frame, |
| 330 .close = X264_close, | 332 .close = X264_close, |
| 331 .capabilities = CODEC_CAP_DELAY, | 333 .capabilities = CODEC_CAP_DELAY, |
| 332 .pix_fmts = (const enum PixelFormat[]) { PIX_FMT_YUV420P, PIX_FMT_NONE
}, | 334 .pix_fmts = (const enum PixelFormat[]) { PIX_FMT_YUV420P, PIX_FMT_NONE
}, |
| 333 .long_name = NULL_IF_CONFIG_SMALL("libx264 H.264 / AVC / MPEG-4 AVC / M
PEG-4 part 10"), | 335 .long_name = NULL_IF_CONFIG_SMALL("libx264 H.264 / AVC / MPEG-4 AVC / M
PEG-4 part 10"), |
| 334 }; | 336 }; |
| OLD | NEW |