Mercurial > mplayer.hg
comparison libmpdemux/demux_viv.c @ 3068:572a94255d1e
added support for demux_info
author | alex |
---|---|
date | Thu, 22 Nov 2001 15:08:39 +0000 |
parents | 3f8798f1f4bc |
children | e6bbc5e6a054 |
comparison
equal
deleted
inserted
replaced
3067:1207bd5de2b2 | 3068:572a94255d1e |
---|---|
127 | 127 |
128 /* only for displaying some informations about movie*/ | 128 /* only for displaying some informations about movie*/ |
129 if (!strcmp(opt, "Title")) | 129 if (!strcmp(opt, "Title")) |
130 { | 130 { |
131 mp_msg(MSGT_DEMUX, MSGL_INFO, " Title: %s\n", param); | 131 mp_msg(MSGT_DEMUX, MSGL_INFO, " Title: %s\n", param); |
132 demux_info_add(demux, "name", param); | |
132 priv->title = malloc(strlen(param)); | 133 priv->title = malloc(strlen(param)); |
133 strcpy(priv->title, param); | 134 strcpy(priv->title, param); |
134 } | 135 } |
135 if (!strcmp(opt, "Author")) | 136 if (!strcmp(opt, "Author")) |
136 { | 137 { |
137 mp_msg(MSGT_DEMUX, MSGL_INFO, " Author: %s\n", param); | 138 mp_msg(MSGT_DEMUX, MSGL_INFO, " Author: %s\n", param); |
139 demux_info_add(demux, "author", param); | |
138 priv->author = malloc(strlen(param)); | 140 priv->author = malloc(strlen(param)); |
139 strcpy(priv->author, param); | 141 strcpy(priv->author, param); |
140 } | 142 } |
141 if (!strcmp(opt, "Copyright")) | 143 if (!strcmp(opt, "Copyright")) |
142 { | 144 { |
143 mp_msg(MSGT_DEMUX, MSGL_INFO, " Copyright: %s\n", param); | 145 mp_msg(MSGT_DEMUX, MSGL_INFO, " Copyright: %s\n", param); |
146 demux_info_add(demux, "copyright", param); | |
144 priv->copyright = malloc(strlen(param)); | 147 priv->copyright = malloc(strlen(param)); |
145 strcpy(priv->copyright, param); | 148 strcpy(priv->copyright, param); |
146 } | 149 } |
147 if (!strcmp(opt, "Producer")) | 150 if (!strcmp(opt, "Producer")) |
148 { | 151 { |
149 mp_msg(MSGT_DEMUX, MSGL_INFO, " Producer: %s\n", param); | 152 mp_msg(MSGT_DEMUX, MSGL_INFO, " Producer: %s\n", param); |
153 demux_info_add(demux, "software", param); | |
150 priv->producer = malloc(strlen(param)); | 154 priv->producer = malloc(strlen(param)); |
151 strcpy(priv->producer, param); | 155 strcpy(priv->producer, param); |
152 } | 156 } |
153 | 157 |
154 /* get next token */ | 158 /* get next token */ |
265 break; | 269 break; |
266 case 0x20: // video packet | 270 case 0x20: // video packet |
267 len=stream_read_char(demux->stream); | 271 len=stream_read_char(demux->stream); |
268 ds=demux->video; | 272 ds=demux->video; |
269 break; | 273 break; |
270 case 0x30: // audio ? | 274 case 0x30: // audio packet |
271 len=0x28; | 275 len=40; /* 40kbps */ |
272 ds=demux->audio; | 276 ds=demux->audio; |
273 break; | 277 break; |
274 case 0x40: // audio packet | 278 case 0x40: // audio packet |
275 len=24; | 279 len=24; /* 24kbps */ |
276 ds=demux->audio; | 280 ds=demux->audio; |
277 break; | 281 break; |
278 default: | 282 default: |
279 mp_msg(MSGT_DEMUX,MSGL_WARN,"VIVO - unknown ID found: %02X contact author!\n",c); | 283 mp_msg(MSGT_DEMUX,MSGL_WARN,"VIVO - unknown ID found: %02X contact author!\n",c); |
280 } | 284 } |
520 mp_msg(MSGT_DEMUX,MSGL_ERR,"VIVO: " MSGTR_MissingAudioStream); | 524 mp_msg(MSGT_DEMUX,MSGL_ERR,"VIVO: " MSGTR_MissingAudioStream); |
521 } else | 525 } else |
522 { sh_audio_t* sh=new_sh_audio(demuxer,1); | 526 { sh_audio_t* sh=new_sh_audio(demuxer,1); |
523 | 527 |
524 sh->format=0x111; // 0x112 | 528 sh->format=0x111; // 0x112 |
529 // if (sh->format == 0x111) /* G.723 */ | |
530 // sh->samplesize = demuxer->audio->buffer_size; | |
531 // printf("samplesize: %d\n", sh->samplesize); | |
525 // Emulate WAVEFORMATEX struct: | 532 // Emulate WAVEFORMATEX struct: |
526 sh->wf=malloc(sizeof(WAVEFORMATEX)); | 533 sh->wf=malloc(sizeof(WAVEFORMATEX)); |
527 memset(sh->wf,0,sizeof(WAVEFORMATEX)); | 534 memset(sh->wf,0,sizeof(WAVEFORMATEX)); |
528 sh->wf->nChannels=1; | 535 sh->wf->nChannels=1; |
529 sh->wf->wBitsPerSample=16; | 536 sh->wf->wBitsPerSample=16; |