[FFmpeg-devel] _t POSIX namespace issues

Diego Biurrun diego
Thu Dec 11 09:31:43 CET 2008


So names ending in _t are reserved by POSIX.  Nonetheless we have tons
of them.  I thought about fixing these issues myself, but coming up with
good new names is tedious, so I propose to have each maintainer address
the problem in the files they maintain.  Here is a the result of a grep
for problematic names with maintainers, in no particular order:


Stefan Gehrer:
libavcodec/cavs.h:} dec_2dvlc_t;
libavcodec/cavs.h:enum block_t {
libavcodec/cavs.h:enum intra_chroma_t {
libavcodec/cavs.h:enum intra_luma_t {
libavcodec/cavs.h:enum mb_t {
libavcodec/cavs.h:enum mv_loc_t {
libavcodec/cavs.h:enum mv_pred_t {
libavcodec/cavs.h:enum sub_mb_t {
libavcodec/cavs.h:} vector_t;


Roberto Togni:
libavcodec/cinepak.c:} cvid_codebook_t;
libavcodec/cinepak.c:} cvid_strip_t;


Mike Melanson:
libavcodec/idcinvideo.c:} hnode_t;
libavcodec/svq1dec.c:} svq1_pmv_t;
libavformat/segafilm.c:} film_sample_t;
libavformat/sierravmd.c:} vmd_frame_t;


Mans Rullgard:
libavformat/mpegts.c:} Program_t;


Jason Garrett-Glaser:
libavcodec/libx264.c:    x264_nal_t *nal;
libavcodec/libx264.c:    x264_param_t params;
libavcodec/libx264.c:    x264_picture_t pic;


Luca Barbato:
libavcodec/ppc/imgresample_altivec.c:} vec_ss_t;
libavcodec/ppc/imgresample_altivec.c:} vec_uc_t;


Roman Shaposhnik:
libavcodec/pthread.c:    action_t *func;
libavcodec/pthread.c:    pthread_cond_t current_job_cond;
libavcodec/pthread.c:    pthread_cond_t last_job_cond;
libavcodec/pthread.c:    pthread_mutex_t current_job_lock;
libavcodec/pthread.c:    pthread_t *workers;


Vitor Sessak:
libavcodec/roqaudioenc.c:} ROQDPCMContext_t;
libavcodec/roqvideoenc.c:} cel_evaluation_t;
libavcodec/roqvideoenc.c:} roq_codebooks_t;
libavcodec/roqvideoenc.c:} roq_tempdata_t;
libavcodec/roqvideoenc.c:} subcel_evaluation_t;


Ivan Kalvachev:
libavcodec/xvmc_render.h:} xvmc_render_state_t;


Reimar Doeffinger:
libavformat/gxf.c:} st_info_t;
libavformat/gxf.h:} mat_tag_t;
libavformat/gxf.h:} pkt_type_t;
libavformat/gxf.h:} track_tag_t;


Jai Menon:
libavformat/iff.c:typedef enum {COMP_NONE, COMP_FIB, COMP_EXP} svx8_compression_t;


Oded Shimon:
libavcodec/vorbis_enc.c:} codebook_t;
libavcodec/vorbis_enc.c:} floor_class_t;
libavcodec/vorbis_enc.c:} floor_t;
libavcodec/vorbis_enc.c:} mapping_t;
libavcodec/vorbis_enc.c:} residue_t;
libavcodec/vorbis_enc.c:} venc_context_t;
libavcodec/vorbis_enc.c:} vorbis_mode_t;
libavcodec/vorbis.h:} floor1_entry_t;
libavformat/libnut.c:    nut_context_t * nut;
libavformat/libnut.c:    nut_demuxer_opts_t dopts = {
libavformat/libnut.c:    nut_muxer_opts_t mopts = {
libavformat/libnut.c:    nut_packet_t p;
libavformat/libnut.c:    nut_stream_header_t * s;


Baptiste Coudurier:
libavformat/isom.h:} MOV_stts_t;
libavformat/mov.c:    if(entries >= UINT_MAX / sizeof(MOV_stts_t))
libavformat/mov.c:} MOV_atom_t;
libavformat/mov.c:} MOV_dref_t;
libavformat/mov.c:} MOV_stsc_t;
libavformat/mov.c:    MOV_stsc_t *sample_to_chunk;
libavformat/mov.c:    MOV_stts_t *ctts_data;


Aurelien Jacobs:
libavcodec/avs.c:} avs_block_type_t;
libavcodec/avs.c:} avs_context_t;
libavcodec/avs.c:} avs_video_sub_type_t;
libavcodec/huffman.h:typedef int (*huff_cmp_t)(const void *va, const void *vb);
libavcodec/vp56.c:    vp56_frame_t ref_frame;
libavcodec/vp56data.h:} vp56_frame_t;
libavcodec/vp56data.h:} vp56_mb_t;
libavcodec/vp56data.h:} vp56_tree_t;
libavcodec/vp56.h:typedef int (*vp56_adjust_t)(int v, int t);
libavcodec/vp56.h:typedef int (*vp56_parse_header_t)(vp56_context_t *s, const uint8_t *buf,
libavcodec/vp56.h:typedef struct vp56_context vp56_context_t;
libavcodec/vp56.h:typedef struct vp56_mv vp56_mv_t;
libavcodec/vp56.h:typedef void (*vp56_default_models_init_t)(vp56_context_t *s);
libavcodec/vp56.h:typedef void (*vp56_filter_t)(vp56_context_t *s, uint8_t *dst, uint8_t *src,
libavcodec/vp56.h:typedef void (*vp56_parse_coeff_models_t)(vp56_context_t *s);
libavcodec/vp56.h:typedef void (*vp56_parse_coeff_t)(vp56_context_t *s);
libavcodec/vp56.h:typedef void (*vp56_parse_vector_adjustment_t)(vp56_context_t *s,
libavcodec/vp56.h:typedef void (*vp56_parse_vector_models_t)(vp56_context_t *s);
libavcodec/vp56.h:} vp56_macroblock_t;
libavcodec/vp56.h:} vp56_model_t;
libavcodec/vp56.h:} vp56_range_coder_t;
libavcodec/vp56.h:} vp56_ref_dc_t;
libavcodec/vp5.c:    sizeof(vp56_context_t),
libavcodec/i386/dsputil_mmx.h:typedef struct { uint64_t a, b; } xmm_t;
libavcodec/i386/mmx.h:} mmx_t;        /* On an 8-byte (64-bit) boundary */
libavformat/avs.c:} avs_block_type_t;
libavformat/avs.c:} avs_format_t;
libavformat/avs.c:    voc_dec_context_t voc;
libavformat/c93.c:    voc_dec_context_t voc;
libavformat/vocenc.c:} voc_enc_context_t;
libavformat/voc.h:} voc_dec_context_t;
libavformat/voc.h:} voc_type_t;


Michael Niedermayer:
libavcodec/h263.c:        if(qp_t)
libavcodec/huffyuv.c:} heap_elem_t;
libavcodec/libxvid_rc.c:    xvid_plg_create_t xvid_plg_create;
libavcodec/libxvid_rc.c:    xvid_plg_data_t xvid_plg_data;
libavcodec/libxvid_rc.c:    xvid_plg_destroy_t xvid_plg_destroy;
libavcodec/snow.c:} dwt_compose_t;
libavformat/nutenc.c:static void put_t(NUTContext *nut, StreamContext *nus, ByteIOContext *bc, uint64_t val){
libavformat/nut.h:}flag_t;
libavformat/nut.h:} StreamContext;// maybe s/StreamContext/streamcontext_t/
libavformat/nut.h:} syncpoint_t;
libavformat/nuv.c:} frametype_t;
libpostproc/postprocess.h:typedef void pp_context_t;
libpostproc/postprocess.h:typedef void pp_mode_t;
libpostproc/postprocess.h:void pp_free_context(pp_context_t *ppContext);
libpostproc/postprocess.h:void pp_free_mode(pp_mode_t *mode);
libswscale/yuv2rgb_bfin.c:                            ltransform_t lcscf, int rgb, int masks)
libswscale/yuv2rgb_bfin.c:typedef void (* ltransform_t)(uint8_t *Y, uint8_t *U, uint8_t *V, uint8_t *out,


Anuradha Suraparaju:
libavcodec/libdiracdec.c:    dirac_decoder_t* p_decoder;
libavcodec/libdiracdec.c:            dirac_sourceparams_t *src_params =
libavcodec/libdiracenc.c:    dirac_encoder_context_t enc_ctx;
libavcodec/libdiracenc.c:    dirac_encoder_state_t state;
libavcodec/libdiracenc.c:    dirac_encoder_t* p_encoder;
libavcodec/libdirac.h:    dirac_chroma_t dirac_pix_fmt;


Luca Abeni:
libavformat/rtp.h:} rtcp_sdes_type_t;
libavformat/rtp.h:} rtcp_type_t;
libavformat/rtp.h:} rtp_payload_data_t;
libavformat/rtsp.c:} attrname_map_t;
libavformat/rtsp.c:static const attrname_map_t attr_names[]=


unmaintained:
libavcodec/indeo3.c:} ustr_t;
libavcodec/libxvidff.c:static int xvid_ff_2pass_create(xvid_plg_create_t * param,
libavcodec/libxvidff.c:} xvid_context_t;
libavcodec/libxvidff.c:    xvid_enc_create_t xvid_enc_create;
libavcodec/libxvidff.c:    xvid_enc_frame_t xvid_enc_frame;
libavcodec/libxvidff.c:    xvid_enc_plugin_t plugins[7];
libavcodec/libxvidff.c:    xvid_enc_stats_t xvid_enc_stats;
libavcodec/libxvidff.c:    xvid_gbl_init_t xvid_gbl_init;
libavcodec/libxvidff.c:                                xvid_plg_data_t *param) {
libavcodec/libxvidff.c:                                xvid_plg_destroy_t *param) {
libavcodec/libxvidff.c:    xvid_plugin_single_t single;
libavdevice/x11grab.c:} x11_grab_t;
libavformat/os_support.h:typedef unsigned long nfds_t;

Diego




More information about the ffmpeg-devel mailing list