|
楼主 |
发表于 2003-5-8 19:45:14
|
显示全部楼层
还是回复一下吧
[/quote]
虽然你是吃饱了撑的,不过xvid应该支持div3的解码,但目前还在努力中。
BTW,fourcc是M$的东西,mplayer没有。[/quote]
你要为fourcc贴上政治标签,我没有任何问题.我不认为他属于某个公司,或则某个播放器.
mplayer没有自己的音视频格式,可他还是知道这么个东东的.
[code:1]
cfg-mencoder.h: {"ffourcc", &force_fourcc, CONF_TYPE_STRING, 0, 4, 4, NULL},
codec-cfg.c:static int add_to_fourcc(char *s, char *alias, unsigned int *fourcc,
codec-cfg.c: for (i = 0; i < CODECS_MAX_FOURCC && fourcc[i] != 0xffffffff; i++)
codec-cfg.c: if (tmp == fourcc[j])
codec-cfg.c: fourcc[i] = tmp;
codec-cfg.c: mp_msg(MSGT_CODECCFG,MSGL_ERR,"duplicated fourcc");
codec-cfg.c: mp_msg(MSGT_CODECCFG,MSGL_ERR,"too many fourcc/format...");
codec-cfg.c:static int add_to_format(char *s, char *alias,unsigned int *fourcc, unsigned int *fourccmap)
codec-cfg.c: for (i = 0; i < CODECS_MAX_FOURCC && fourcc[i] != 0xffffffff; i++)
codec-cfg.c: mp_msg(MSGT_CODECCFG,MSGL_ERR,"too many fourcc/format...");
codec-cfg.c: fourcc[i]=strtoul(s,&endptr,0);
codec-cfg.c: fourccmap[i]=strtoul(alias,&endptr,0);
codec-cfg.c: fourccmap[i]=fourcc[i];
codec-cfg.c: if (fourcc[j] == fourcc[i]) {
codec-cfg.c: if (c->fourcc[0] == 0xffffffff) {
codec-cfg.c: mp_msg(MSGT_CODECCFG,MSGL_ERR,"\ncodec(%s) does not have fourcc/format!\n", c->name);
codec-cfg.c: memset(codec->fourcc, 0xff, sizeof(codec->fourcc));
codec-cfg.c: } else if (!strcmp(token[0], "fourcc")) {
codec-cfg.c: if (!add_to_fourcc(token[0], token[1],
codec-cfg.c: codec->fourcc,
codec-cfg.c: codec->fourccmap))
codec-cfg.c: codec->fourcc,codec->fourccmap))
codec-cfg.c:codecs_t *find_audio_codec(unsigned int fourcc, unsigned int *fourccmap,
codec-cfg.c: return find_codec(fourcc, fourccmap, start, 1);
codec-cfg.c:codecs_t *find_video_codec(unsigned int fourcc, unsigned int *fourccmap,
codec-cfg.c: return find_codec(fourcc, fourccmap, start, 0);
codec-cfg.c:codecs_t* find_codec(unsigned int fourcc,unsigned int *fourccmap,
codec-cfg.c: if (start->fourcc[j] == fourcc) {
codec-cfg.c: if (fourccmap)
codec-cfg.c: *fourccmap = start->fourccmap[j];
codec-cfg.c: if (c->fourcc[j]==fourcc || !strcmp(c->drv,"null")) {
codec-cfg.c: if (fourccmap)
codec-cfg.c: *fourccmap = c->fourccmap[j];
codec-cfg.c: if(!d || codec->fourcc[d]!=0xFFFFFFFF)
codec-cfg.c: fprintf(f2,"%s%.4s",d?"<br>":"",(codec->fourcc[d]==0xFFFFFFFF || codec->fourcc[d]<0x20202020)?!d?"-":"":(char*) &codec->fourcc[d]);
codec-cfg.c: if(codec->fourcc[d]!=0xFFFFFFFF)
codec-cfg.c: fprintf(f2,"%s0x%X",d?"<br>":"",codec->fourcc[d]);
codec-cfg.c: print_int_array(cod[i][j].fourcc, CODECS_MAX_FOURCC);
codec-cfg.c: printf(", /* fourcc */\n");
codec-cfg.c: print_int_array(cod[i][j].fourccmap, CODECS_MAX_FOURCC);
codec-cfg.c: printf(", /* fourccmap */\n");
codec-cfg.c: if(c->fourcc[j]!=0xFFFFFFFF){
codec-cfg.c: printf("fourcc %02d: %08X (%.4s) ===> %08X (%.4s)\n",j,c->fourcc[j],(char *) &c->fourcc[j],c->fourccmap[j],(char *) &c->fourccmap[j]);
codec-cfg.h: unsigned int fourcc[CODECS_MAX_FOURCC];
codec-cfg.h: unsigned int fourccmap[CODECS_MAX_FOURCC];
codec-cfg.h:codecs_t* find_video_codec(unsigned int fourcc, unsigned int *fourccmap, codecs_t *start);
codec-cfg.h:codecs_t* find_audio_codec(unsigned int fourcc, unsigned int *fourccmap, codecs_t *start);
codec-cfg.h:codecs_t* find_codec(unsigned int fourcc,unsigned int *fourccmap,codecs_t *start,int audioflag);
mencoder.c:char *force_fourcc=NULL;
mencoder.c: mp_msg(MSGT_MENCODER,MSGL_INFO,"[V] filefmt:%d fourcc:0x%X size:%dx%d fps:%5.2f ftime:=%6.4f\n",
mencoder.c: printf("videocodec: framecopy (%dx%d %dbpp fourcc=%x)\n",
mencoder.c:/* force output fourcc to .. */
mencoder.c:if ((force_fourcc != NULL) && (strlen(force_fourcc) >= 4))
mencoder.c:
[/code:1] |
|