Mercurial > libavformat.hg
comparison gxfenc.c @ 4673:c8161db9d863 libavformat
remove unneeded and empty user data
author | bcoudurier |
---|---|
date | Sun, 08 Mar 2009 22:12:56 +0000 |
parents | f5d61e72fec5 |
children | c727d4a90177 |
comparison
equal
deleted
inserted
replaced
4672:f5d61e72fec5 | 4673:c8161db9d863 |
---|---|
51 uint16_t mpeg_tracks; | 51 uint16_t mpeg_tracks; |
52 int64_t creation_time; | 52 int64_t creation_time; |
53 uint32_t umf_start_offset; | 53 uint32_t umf_start_offset; |
54 uint32_t umf_track_offset; | 54 uint32_t umf_track_offset; |
55 uint32_t umf_media_offset; | 55 uint32_t umf_media_offset; |
56 uint32_t umf_user_data_offset; | |
57 uint32_t umf_user_data_size; | |
58 uint32_t umf_length; | 56 uint32_t umf_length; |
59 uint16_t umf_track_size; | 57 uint16_t umf_track_size; |
60 uint16_t umf_media_size; | 58 uint16_t umf_media_size; |
61 int sample_rate; | 59 int sample_rate; |
62 int flags; | 60 int flags; |
404 put_le32(pb, gxf->umf_track_offset); /* umf track section offset */ | 402 put_le32(pb, gxf->umf_track_offset); /* umf track section offset */ |
405 put_le32(pb, gxf->umf_track_size); | 403 put_le32(pb, gxf->umf_track_size); |
406 put_le32(pb, s->nb_streams); | 404 put_le32(pb, s->nb_streams); |
407 put_le32(pb, gxf->umf_media_offset); | 405 put_le32(pb, gxf->umf_media_offset); |
408 put_le32(pb, gxf->umf_media_size); | 406 put_le32(pb, gxf->umf_media_size); |
409 put_le32(pb, gxf->umf_user_data_offset); /* user data offset */ | 407 put_le32(pb, gxf->umf_length); /* user data offset */ |
410 put_le32(pb, gxf->umf_user_data_size); /* user data size */ | 408 put_le32(pb, 0); /* user data size */ |
411 put_le32(pb, 0); /* reserved */ | 409 put_le32(pb, 0); /* reserved */ |
412 put_le32(pb, 0); /* reserved */ | 410 put_le32(pb, 0); /* reserved */ |
413 return 48; | 411 return 48; |
414 } | 412 } |
415 | 413 |
566 url_fseek(pb, curpos, SEEK_SET); | 564 url_fseek(pb, curpos, SEEK_SET); |
567 } | 565 } |
568 return url_ftell(pb) - pos; | 566 return url_ftell(pb) - pos; |
569 } | 567 } |
570 | 568 |
571 static int gxf_write_umf_user_data(AVFormatContext *s) | |
572 { | |
573 GXFContext *gxf = s->priv_data; | |
574 ByteIOContext *pb = s->pb; | |
575 int64_t pos = url_ftell(pb); | |
576 gxf->umf_user_data_offset = pos - gxf->umf_start_offset; | |
577 put_le32(pb, 20); | |
578 put_le32(pb, 0); | |
579 put_le16(pb, 0); | |
580 put_le16(pb, 0); | |
581 put_le32(pb, 0); | |
582 put_byte(pb, 0); | |
583 put_byte(pb, 0); | |
584 put_byte(pb, 0); | |
585 put_byte(pb, 0); | |
586 return 20; | |
587 } | |
588 | |
589 static int gxf_write_umf_packet(AVFormatContext *s) | 569 static int gxf_write_umf_packet(AVFormatContext *s) |
590 { | 570 { |
591 GXFContext *gxf = s->priv_data; | 571 GXFContext *gxf = s->priv_data; |
592 ByteIOContext *pb = s->pb; | 572 ByteIOContext *pb = s->pb; |
593 int64_t pos = url_ftell(pb); | 573 int64_t pos = url_ftell(pb); |
601 gxf->umf_start_offset = url_ftell(pb); | 581 gxf->umf_start_offset = url_ftell(pb); |
602 gxf_write_umf_payload(s); | 582 gxf_write_umf_payload(s); |
603 gxf_write_umf_material_description(s); | 583 gxf_write_umf_material_description(s); |
604 gxf->umf_track_size = gxf_write_umf_track_description(s); | 584 gxf->umf_track_size = gxf_write_umf_track_description(s); |
605 gxf->umf_media_size = gxf_write_umf_media_description(s); | 585 gxf->umf_media_size = gxf_write_umf_media_description(s); |
606 gxf->umf_user_data_size = gxf_write_umf_user_data(s); | |
607 gxf->umf_length = url_ftell(pb) - gxf->umf_start_offset; | 586 gxf->umf_length = url_ftell(pb) - gxf->umf_start_offset; |
608 return updatePacketSize(pb, pos); | 587 return updatePacketSize(pb, pos); |
609 } | 588 } |
610 | 589 |
611 static const int GXF_samples_per_frame[] = { 32768, 0 }; | 590 static const int GXF_samples_per_frame[] = { 32768, 0 }; |