Mercurial > libavformat.hg
comparison libnut.c @ 2771:d52c718e83f9 libavformat
Use dynamically allocated ByteIOContext in AVFormatContext
patch by: Bj«Órn Axelsson, bjorn d axelsson a intinor d se
thread: [PATCH] Remove static ByteIOContexts, 06 nov 2007
author | andoma |
---|---|
date | Wed, 21 Nov 2007 07:41:00 +0000 |
parents | 53b9a531f490 |
children | 7a0230981402 |
comparison
equal
deleted
inserted
replaced
2770:a7e42cf4b364 | 2771:d52c718e83f9 |
---|---|
52 return len; | 52 return len; |
53 } | 53 } |
54 | 54 |
55 static int nut_write_header(AVFormatContext * avf) { | 55 static int nut_write_header(AVFormatContext * avf) { |
56 NUTContext * priv = avf->priv_data; | 56 NUTContext * priv = avf->priv_data; |
57 ByteIOContext * bc = &avf->pb; | 57 ByteIOContext * bc = avf->pb; |
58 nut_muxer_opts_t mopts = { | 58 nut_muxer_opts_t mopts = { |
59 .output = { | 59 .output = { |
60 .priv = bc, | 60 .priv = bc, |
61 .write = av_write, | 61 .write = av_write, |
62 }, | 62 }, |
135 | 135 |
136 return 0; | 136 return 0; |
137 } | 137 } |
138 | 138 |
139 static int nut_write_trailer(AVFormatContext * avf) { | 139 static int nut_write_trailer(AVFormatContext * avf) { |
140 ByteIOContext * bc = &avf->pb; | 140 ByteIOContext * bc = avf->pb; |
141 NUTContext * priv = avf->priv_data; | 141 NUTContext * priv = avf->priv_data; |
142 int i; | 142 int i; |
143 | 143 |
144 nut_muxer_uninit_reorder(priv->nut); | 144 nut_muxer_uninit_reorder(priv->nut); |
145 put_flush_packet(bc); | 145 put_flush_packet(bc); |
185 return url_fseek(bc, pos, whence); | 185 return url_fseek(bc, pos, whence); |
186 } | 186 } |
187 | 187 |
188 static int nut_read_header(AVFormatContext * avf, AVFormatParameters * ap) { | 188 static int nut_read_header(AVFormatContext * avf, AVFormatParameters * ap) { |
189 NUTContext * priv = avf->priv_data; | 189 NUTContext * priv = avf->priv_data; |
190 ByteIOContext * bc = &avf->pb; | 190 ByteIOContext * bc = avf->pb; |
191 nut_demuxer_opts_t dopts = { | 191 nut_demuxer_opts_t dopts = { |
192 .input = { | 192 .input = { |
193 .priv = bc, | 193 .priv = bc, |
194 .seek = av_seek, | 194 .seek = av_seek, |
195 .read = av_read, | 195 .read = av_read, |
270 } | 270 } |
271 | 271 |
272 if (pd.flags & NUT_FLAG_KEY) pkt->flags |= PKT_FLAG_KEY; | 272 if (pd.flags & NUT_FLAG_KEY) pkt->flags |= PKT_FLAG_KEY; |
273 pkt->pts = pd.pts; | 273 pkt->pts = pd.pts; |
274 pkt->stream_index = pd.stream; | 274 pkt->stream_index = pd.stream; |
275 pkt->pos = url_ftell(&avf->pb); | 275 pkt->pos = url_ftell(avf->pb); |
276 | 276 |
277 ret = nut_read_frame(priv->nut, &pd.len, pkt->data); | 277 ret = nut_read_frame(priv->nut, &pd.len, pkt->data); |
278 | 278 |
279 return ret; | 279 return ret; |
280 } | 280 } |