Mercurial > libavformat.hg
comparison mxf.c @ 1191:976a91cec1ad libavformat
add error messages
author | bcoudurier |
---|---|
date | Fri, 28 Jul 2006 22:53:15 +0000 |
parents | 03c0b0e61e5b |
children | ad731bdb7365 |
comparison
equal
deleted
inserted
replaced
1190:03c0b0e61e5b | 1191:976a91cec1ad |
---|---|
220 static int mxf_read_packet(AVFormatContext *s, AVPacket *pkt) | 220 static int mxf_read_packet(AVFormatContext *s, AVPacket *pkt) |
221 { | 221 { |
222 KLVPacket klv; | 222 KLVPacket klv; |
223 | 223 |
224 while (!url_feof(&s->pb)) { | 224 while (!url_feof(&s->pb)) { |
225 if (klv_read_packet(&klv, &s->pb) < 0) | 225 if (klv_read_packet(&klv, &s->pb) < 0) { |
226 av_log(s, AV_LOG_ERROR, "error reading KLV packet\n"); | |
226 return -1; | 227 return -1; |
228 } | |
227 if (IS_KLV_KEY(klv.key, mxf_essence_element_key)) { | 229 if (IS_KLV_KEY(klv.key, mxf_essence_element_key)) { |
228 av_get_packet(&s->pb, pkt, klv.length); | 230 av_get_packet(&s->pb, pkt, klv.length); |
229 pkt->stream_index = mxf_get_stream_index(s, &klv); | 231 pkt->stream_index = mxf_get_stream_index(s, &klv); |
230 if (pkt->stream_index == -1) | 232 if (pkt->stream_index == -1) |
231 return -1; | 233 return -1; |
820 KLVPacket klv; | 822 KLVPacket klv; |
821 int ret = 0; | 823 int ret = 0; |
822 | 824 |
823 mxf->fc = s; | 825 mxf->fc = s; |
824 while (!url_feof(&s->pb)) { | 826 while (!url_feof(&s->pb)) { |
825 if (klv_read_packet(&klv, &s->pb) < 0) | 827 if (klv_read_packet(&klv, &s->pb) < 0) { |
828 av_log(s, AV_LOG_ERROR, "error reading KLV packet\n"); | |
826 return -1; | 829 return -1; |
830 } | |
827 if (IS_KLV_KEY(klv.key, mxf_metadata_track_key)) | 831 if (IS_KLV_KEY(klv.key, mxf_metadata_track_key)) |
828 ret = mxf_read_metadata_track(mxf, &klv); | 832 ret = mxf_read_metadata_track(mxf, &klv); |
829 else if (IS_KLV_KEY(klv.key, mxf_metadata_static_track_key)) | 833 else if (IS_KLV_KEY(klv.key, mxf_metadata_static_track_key)) |
830 ret = mxf_read_metadata_track(mxf, &klv); | 834 ret = mxf_read_metadata_track(mxf, &klv); |
831 else if (IS_KLV_KEY(klv.key, mxf_metadata_source_package_key)) | 835 else if (IS_KLV_KEY(klv.key, mxf_metadata_source_package_key)) |
854 /* FIXME avoid seek */ | 858 /* FIXME avoid seek */ |
855 url_fseek(&s->pb, klv.offset, SEEK_SET); | 859 url_fseek(&s->pb, klv.offset, SEEK_SET); |
856 break; | 860 break; |
857 } else | 861 } else |
858 url_fskip(&s->pb, klv.length); | 862 url_fskip(&s->pb, klv.length); |
859 if (ret < 0) | 863 if (ret < 0) { |
864 av_log(s, AV_LOG_ERROR, "error reading header metadata\n"); | |
860 return ret; | 865 return ret; |
866 } | |
861 } | 867 } |
862 return mxf_parse_structural_metadata(mxf); | 868 return mxf_parse_structural_metadata(mxf); |
863 } | 869 } |
864 | 870 |
865 static int mxf_read_close(AVFormatContext *s) | 871 static int mxf_read_close(AVFormatContext *s) |