Mercurial > libavformat.hg
comparison ogg.c @ 454:7fa377b2f533 libavformat
export pts if available
author | michael |
---|---|
date | Tue, 27 Apr 2004 03:35:14 +0000 |
parents | b6949d80b7a9 |
children | b69898ffc92a |
comparison
equal
deleted
inserted
replaced
453:a699cf5c703d | 454:7fa377b2f533 |
---|---|
170 AVCodecContext *codec; | 170 AVCodecContext *codec; |
171 uint8_t *p; | 171 uint8_t *p; |
172 int i; | 172 int i; |
173 | 173 |
174 avfcontext->ctx_flags |= AVFMTCTX_NOHEADER; | 174 avfcontext->ctx_flags |= AVFMTCTX_NOHEADER; |
175 av_set_pts_info(avfcontext, 60, 1, AV_TIME_BASE); | |
175 | 176 |
176 ogg_sync_init(&context->oy) ; | 177 ogg_sync_init(&context->oy) ; |
177 buf = ogg_sync_buffer(&context->oy, DECODER_BUFFER_SIZE) ; | 178 buf = ogg_sync_buffer(&context->oy, DECODER_BUFFER_SIZE) ; |
178 | 179 |
179 if(get_buffer(&avfcontext->pb, buf, DECODER_BUFFER_SIZE) <= 0) | 180 if(get_buffer(&avfcontext->pb, buf, DECODER_BUFFER_SIZE) <= 0) |
216 return -EIO ; | 217 return -EIO ; |
217 if(av_new_packet(pkt, op.bytes) < 0) | 218 if(av_new_packet(pkt, op.bytes) < 0) |
218 return -EIO ; | 219 return -EIO ; |
219 pkt->stream_index = 0 ; | 220 pkt->stream_index = 0 ; |
220 memcpy(pkt->data, op.packet, op.bytes); | 221 memcpy(pkt->data, op.packet, op.bytes); |
222 if(avfcontext->streams[0]->codec.sample_rate && op.granulepos!=-1) | |
223 pkt->pts= av_rescale(op.granulepos, AV_TIME_BASE, avfcontext->streams[0]->codec.sample_rate); | |
224 // printf("%lld %d %d\n", pkt->pts, (int)op.granulepos, avfcontext->streams[0]->codec.sample_rate); | |
221 | 225 |
222 return op.bytes; | 226 return op.bytes; |
223 } | 227 } |
224 | 228 |
225 | 229 |