# HG changeset patch # User bcoudurier # Date 1202739029 0 # Node ID 6acb70995546d9fb2d4b6dcdcb1644b687c3754c # Parent 41d68d056417bb8349f274ee274ed327d8cf6cc6 more correct and simpler diff -r 41d68d056417 -r 6acb70995546 mov.c --- a/mov.c Mon Feb 11 03:30:42 2008 +0000 +++ b/mov.c Mon Feb 11 14:10:29 2008 +0000 @@ -1539,20 +1539,13 @@ sc->ffindex, sample->pos); return -1; } -#ifdef CONFIG_DV_DEMUXER - if (sc->dv_audio_container) { - dv_get_packet(mov->dv_demux, pkt); - dprintf(s, "dv audio pkt size %d\n", pkt->size); - } else { -#endif av_get_packet(s->pb, pkt, sample->size); #ifdef CONFIG_DV_DEMUXER - if (mov->dv_demux) { - void *pkt_destruct_func = pkt->destruct; + if (mov->dv_demux && sc->dv_audio_container) { dv_produce_packet(mov->dv_demux, pkt, pkt->data, pkt->size); - pkt->destruct = pkt_destruct_func; + av_free(pkt->data); + dv_get_packet(mov->dv_demux, pkt); } - } #endif pkt->stream_index = sc->ffindex; pkt->dts = sample->timestamp;