OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. | 2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 #ifndef VPX_VPX_ENCODER_H_ | 10 #ifndef VPX_VPX_ENCODER_H_ |
(...skipping 586 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
597 * a keyframe if one has not been coded in the last kf_max_dist frames. | 597 * a keyframe if one has not been coded in the last kf_max_dist frames. |
598 * A value of 0 implies all frames will be keyframes. Set kf_min_dist | 598 * A value of 0 implies all frames will be keyframes. Set kf_min_dist |
599 * equal to kf_max_dist for a fixed interval. | 599 * equal to kf_max_dist for a fixed interval. |
600 */ | 600 */ |
601 unsigned int kf_max_dist; | 601 unsigned int kf_max_dist; |
602 | 602 |
603 /* | 603 /* |
604 * Spatial scalability settings (ss) | 604 * Spatial scalability settings (ss) |
605 */ | 605 */ |
606 | 606 |
607 /*!\brief Number of coding layers (spatial) | 607 /*!\brief Number of spatial coding layers. |
608 * | 608 * |
609 * This value specifies the number of coding layers to be used. | 609 * This value specifies the number of spatial coding layers to be used. |
610 */ | 610 */ |
611 unsigned int ss_number_layers; | 611 unsigned int ss_number_layers; |
612 | 612 |
613 /*!\brief Number of coding layers | 613 /*!\brief Number of temporal coding layers. |
614 * | 614 * |
615 * This value specifies the number of coding layers to be used. | 615 * This value specifies the number of temporal layers to be used. |
616 */ | 616 */ |
617 unsigned int ts_number_layers; | 617 unsigned int ts_number_layers; |
618 | 618 |
619 /*!\brief Target bitrate for each layer | 619 /*!\brief Target bitrate for each temporal layer. |
620 * | 620 * |
621 * These values specify the target coding bitrate for each coding layer. | 621 * These values specify the target coding bitrate to be used for each |
| 622 * temporal layer. |
622 */ | 623 */ |
623 unsigned int ts_target_bitrate[VPX_TS_MAX_LAYERS]; | 624 unsigned int ts_target_bitrate[VPX_TS_MAX_LAYERS]; |
624 | 625 |
625 /*!\brief Frame rate decimation factor for each layer | 626 /*!\brief Frame rate decimation factor for each temporal layer. |
626 * | 627 * |
627 * These values specify the frame rate decimation factors to apply | 628 * These values specify the frame rate decimation factors to apply |
628 * to each layer. | 629 * to each temporal layer. |
629 */ | 630 */ |
630 unsigned int ts_rate_decimator[VPX_TS_MAX_LAYERS]; | 631 unsigned int ts_rate_decimator[VPX_TS_MAX_LAYERS]; |
631 | 632 |
632 /*!\brief Length of the sequence defining frame layer membership | 633 /*!\brief Length of the sequence defining frame temporal layer membership. |
633 * | 634 * |
634 * This value specifies the length of the sequence that defines the | 635 * This value specifies the length of the sequence that defines the |
635 * membership of frames to layers. For example, if ts_periodicity=8 then | 636 * membership of frames to temporal layers. For example, if the |
636 * frames are assigned to coding layers with a repeated sequence of | 637 * ts_periodicity = 8, then the frames are assigned to coding layers with a |
637 * length 8. | 638 * repeated sequence of length 8. |
638 */ | 639 */ |
639 unsigned int ts_periodicity; | 640 unsigned int ts_periodicity; |
640 | 641 |
641 /*!\brief Template defining the membership of frames to coding layers | 642 /*!\brief Template defining the membership of frames to temporal layers. |
642 * | 643 * |
643 * This array defines the membership of frames to coding layers. For a | 644 * This array defines the membership of frames to temporal coding layers. |
644 * 2-layer encoding that assigns even numbered frames to one layer (0) | 645 * For a 2-layer encoding that assigns even numbered frames to one temporal |
645 * and odd numbered frames to a second layer (1) with ts_periodicity=8, | 646 * layer (0) and odd numbered frames to a second temporal layer (1) with |
646 * then ts_layer_id = (0,1,0,1,0,1,0,1). | 647 * ts_periodicity=8, then ts_layer_id = (0,1,0,1,0,1,0,1). |
647 */ | 648 */ |
648 unsigned int ts_layer_id[VPX_TS_MAX_PERIODICITY]; | 649 unsigned int ts_layer_id[VPX_TS_MAX_PERIODICITY]; |
649 } vpx_codec_enc_cfg_t; /**< alias for struct vpx_codec_enc_cfg */ | 650 } vpx_codec_enc_cfg_t; /**< alias for struct vpx_codec_enc_cfg */ |
650 | 651 |
651 | 652 |
652 /*!\brief Initialize an encoder instance | 653 /*!\brief Initialize an encoder instance |
653 * | 654 * |
654 * Initializes a encoder context using the given interface. Applications | 655 * Initializes a encoder context using the given interface. Applications |
655 * should call the vpx_codec_enc_init convenience macro instead of this | 656 * should call the vpx_codec_enc_init convenience macro instead of this |
656 * function directly, to ensure that the ABI version number parameter | 657 * function directly, to ensure that the ABI version number parameter |
657 * is properly initialized. | 658 * is properly initialized. |
(...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
927 */ | 928 */ |
928 const vpx_image_t *vpx_codec_get_preview_frame(vpx_codec_ctx_t *ctx); | 929 const vpx_image_t *vpx_codec_get_preview_frame(vpx_codec_ctx_t *ctx); |
929 | 930 |
930 | 931 |
931 /*!@} - end defgroup encoder*/ | 932 /*!@} - end defgroup encoder*/ |
932 #ifdef __cplusplus | 933 #ifdef __cplusplus |
933 } | 934 } |
934 #endif | 935 #endif |
935 #endif // VPX_VPX_ENCODER_H_ | 936 #endif // VPX_VPX_ENCODER_H_ |
936 | 937 |
OLD | NEW |