You've already forked FFmpeg
							
							
				mirror of
				https://github.com/FFmpeg/FFmpeg.git
				synced 2025-10-30 23:18:11 +02:00 
			
		
		
		
	avformat/mxfenc: Only store user comment related tags when needed
Also support disabling them as they seem to cause problems to some
Users. They are also not allowed in IRT D-10 thus the default for
mxf_d10 is not to write them
This also decreases the filesize when no user comment are stored
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit d9726893f3)
Conflicts:
	libavformat/mxfenc.c
			
			
This commit is contained in:
		| @@ -839,6 +839,21 @@ ffmpeg -i file.mpg -c copy \ | ||||
|      -y out.ts | ||||
| @end example | ||||
|  | ||||
| @section mxf, mxf_d10 | ||||
|  | ||||
| MXF muxer. | ||||
|  | ||||
| @subsection Options | ||||
|  | ||||
| The muxer options are: | ||||
|  | ||||
| @table @option | ||||
| @item store_user_comments @var{bool} | ||||
| Set if user comments should be stored if available or never. | ||||
| IRT D-10 does not allow user comments. The default is thus to write them for | ||||
| mxf but not for mxf_d10 | ||||
| @end table | ||||
|  | ||||
| @section null | ||||
|  | ||||
| Null muxer. | ||||
|   | ||||
| @@ -19,7 +19,8 @@ | ||||
|  * License along with FFmpeg; if not, write to the Free Software | ||||
|  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | ||||
|  * | ||||
|  * signal_standard, color_siting and klv_fill_key version fixes sponsored by NOA GmbH | ||||
|  * signal_standard, color_siting, store_user_comments and klv_fill_key version | ||||
|  * fixes sponsored by NOA GmbH | ||||
|  */ | ||||
|  | ||||
| /* | ||||
| @@ -321,6 +322,7 @@ typedef struct MXFContext { | ||||
|     int signal_standard; | ||||
|     uint32_t tagged_value_count; | ||||
|     AVRational audio_edit_rate; | ||||
|     int store_user_comments; | ||||
| } MXFContext; | ||||
|  | ||||
| static const uint8_t uuid_base[]            = { 0xAD,0xAB,0x44,0x24,0x2f,0x25,0x4d,0xc7,0x92,0xff,0x29,0xbd }; | ||||
| @@ -378,7 +380,6 @@ static const MXFLocalTagPair mxf_local_tag_batch[] = { | ||||
|     { 0x4404, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x07,0x02,0x01,0x10,0x02,0x05,0x00,0x00}}, /* Package Modified Date */ | ||||
|     { 0x4402, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x01,0x01,0x03,0x03,0x02,0x01,0x00,0x00,0x00}}, /* Package Name */ | ||||
|     { 0x4403, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x06,0x01,0x01,0x04,0x06,0x05,0x00,0x00}}, /* Tracks Strong reference array */ | ||||
|     { 0x4406, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x03,0x02,0x01,0x02,0x0C,0x00,0x00,0x00}}, /* User Comments */ | ||||
|     { 0x4701, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x06,0x01,0x01,0x04,0x02,0x03,0x00,0x00}}, /* Descriptor */ | ||||
|     // Track | ||||
|     { 0x4801, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x01,0x07,0x01,0x01,0x00,0x00,0x00,0x00}}, /* Track ID */ | ||||
| @@ -398,9 +399,6 @@ static const MXFLocalTagPair mxf_local_tag_batch[] = { | ||||
|     { 0x1501, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x07,0x02,0x01,0x03,0x01,0x05,0x00,0x00}}, /* Start Time Code */ | ||||
|     { 0x1502, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x04,0x04,0x01,0x01,0x02,0x06,0x00,0x00}}, /* Rounded Time Code Base */ | ||||
|     { 0x1503, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x01,0x04,0x04,0x01,0x01,0x05,0x00,0x00,0x00}}, /* Drop Frame */ | ||||
|     // Tagged Value | ||||
|     { 0x5001, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x03,0x02,0x01,0x02,0x09,0x01,0x00,0x00}}, /* Name */ | ||||
|     { 0x5003, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x03,0x02,0x01,0x02,0x0A,0x01,0x00,0x00}}, /* Value */ | ||||
|     // File Descriptor | ||||
|     { 0x3F01, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x04,0x06,0x01,0x01,0x04,0x06,0x0B,0x00,0x00}}, /* Sub Descriptors reference array */ | ||||
|     { 0x3006, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x05,0x06,0x01,0x01,0x03,0x05,0x00,0x00,0x00}}, /* Linked Track ID */ | ||||
| @@ -446,6 +444,12 @@ static const MXFLocalTagPair mxf_local_tag_batch[] = { | ||||
|     { 0x3D0A, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x05,0x04,0x02,0x03,0x02,0x01,0x00,0x00,0x00}}, /* Block Align */ | ||||
| }; | ||||
|  | ||||
| static const MXFLocalTagPair mxf_user_comments_local_tag[] = { | ||||
|     { 0x4406, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x03,0x02,0x01,0x02,0x0C,0x00,0x00,0x00}}, /* User Comments */ | ||||
|     { 0x5001, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x03,0x02,0x01,0x02,0x09,0x01,0x00,0x00}}, /* Name */ | ||||
|     { 0x5003, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x03,0x02,0x01,0x02,0x0A,0x01,0x00,0x00}}, /* Value */ | ||||
| }; | ||||
|  | ||||
| static void mxf_write_uuid(AVIOContext *pb, enum MXFMetadataSetType type, int value) | ||||
| { | ||||
|     avio_write(pb, uuid_base, 12); | ||||
| @@ -523,10 +527,12 @@ static int mxf_get_essence_container_ul_index(enum AVCodecID id) | ||||
|  | ||||
| static void mxf_write_primer_pack(AVFormatContext *s) | ||||
| { | ||||
|     MXFContext *mxf = s->priv_data; | ||||
|     AVIOContext *pb = s->pb; | ||||
|     int local_tag_number, i = 0; | ||||
|  | ||||
|     local_tag_number = FF_ARRAY_ELEMS(mxf_local_tag_batch); | ||||
|     local_tag_number += mxf->store_user_comments * FF_ARRAY_ELEMS(mxf_user_comments_local_tag); | ||||
|  | ||||
|     avio_write(pb, primer_pack_key, 16); | ||||
|     klv_encode_ber_length(pb, local_tag_number * 18 + 8); | ||||
| @@ -534,10 +540,15 @@ static void mxf_write_primer_pack(AVFormatContext *s) | ||||
|     avio_wb32(pb, local_tag_number); // local_tag num | ||||
|     avio_wb32(pb, 18); // item size, always 18 according to the specs | ||||
|  | ||||
|     for (i = 0; i < local_tag_number; i++) { | ||||
|     for (i = 0; i < FF_ARRAY_ELEMS(mxf_local_tag_batch); i++) { | ||||
|         avio_wb16(pb, mxf_local_tag_batch[i].local_tag); | ||||
|         avio_write(pb, mxf_local_tag_batch[i].uid, 16); | ||||
|     } | ||||
|     if (mxf->store_user_comments) | ||||
|         for (i = 0; i < FF_ARRAY_ELEMS(mxf_user_comments_local_tag); i++) { | ||||
|             avio_wb16(pb, mxf_user_comments_local_tag[i].local_tag); | ||||
|             avio_write(pb, mxf_user_comments_local_tag[i].uid, 16); | ||||
|         } | ||||
| } | ||||
|  | ||||
| static void mxf_write_local_tag(AVIOContext *pb, int size, int tag) | ||||
| @@ -1251,14 +1262,15 @@ static void mxf_write_package(AVFormatContext *s, enum MXFMetadataSetType type, | ||||
|     int user_comment_count = 0; | ||||
|  | ||||
|     if (type == MaterialPackage) { | ||||
|         user_comment_count = mxf_write_user_comments(s, s->metadata); | ||||
|         if (mxf->store_user_comments) | ||||
|             user_comment_count = mxf_write_user_comments(s, s->metadata); | ||||
|         mxf_write_metadata_key(pb, 0x013600); | ||||
|         PRINT_KEY(s, "Material Package key", pb->buf_ptr - 16); | ||||
|         klv_encode_ber_length(pb, 104 + name_size + (16*track_count) + (16*user_comment_count)); | ||||
|         klv_encode_ber_length(pb, 92 + name_size + (16*track_count) + (16*user_comment_count) + 12*mxf->store_user_comments); | ||||
|     } else { | ||||
|         mxf_write_metadata_key(pb, 0x013700); | ||||
|         PRINT_KEY(s, "Source Package key", pb->buf_ptr - 16); | ||||
|         klv_encode_ber_length(pb, 124 + name_size + (16*track_count)); // 20 bytes length for descriptor reference | ||||
|         klv_encode_ber_length(pb, 112 + name_size + (16*track_count) + 12*mxf->store_user_comments); // 20 bytes length for descriptor reference | ||||
|     } | ||||
|  | ||||
|     // write uid | ||||
| @@ -1293,10 +1305,12 @@ static void mxf_write_package(AVFormatContext *s, enum MXFMetadataSetType type, | ||||
|         mxf_write_uuid(pb, type == MaterialPackage ? Track : Track + TypeBottom, i); | ||||
|  | ||||
|     // write user comment refs | ||||
|     mxf_write_local_tag(pb, user_comment_count*16 + 8, 0x4406); | ||||
|     mxf_write_refs_count(pb, user_comment_count); | ||||
|     for (i = 0; i < user_comment_count; i++) | ||||
|          mxf_write_uuid(pb, TaggedValue, mxf->tagged_value_count - user_comment_count + i); | ||||
|     if (mxf->store_user_comments) { | ||||
|         mxf_write_local_tag(pb, user_comment_count*16 + 8, 0x4406); | ||||
|         mxf_write_refs_count(pb, user_comment_count); | ||||
|         for (i = 0; i < user_comment_count; i++) | ||||
|             mxf_write_uuid(pb, TaggedValue, mxf->tagged_value_count - user_comment_count + i); | ||||
|     } | ||||
|  | ||||
|     // write multiple descriptor reference | ||||
|     if (type == SourcePackage) { | ||||
| @@ -2036,6 +2050,9 @@ static int mxf_write_header(AVFormatContext *s) | ||||
|         return -1; | ||||
|     } | ||||
|  | ||||
|     if (!av_dict_get(s->metadata, "comment_", NULL, AV_DICT_IGNORE_SUFFIX)) | ||||
|         mxf->store_user_comments = 0; | ||||
|  | ||||
|     for (i = 0; i < s->nb_streams; i++) { | ||||
|         AVStream *st = s->streams[i]; | ||||
|         MXFStreamContext *sc = av_mallocz(sizeof(*sc)); | ||||
| @@ -2654,6 +2671,8 @@ static int mxf_interleave(AVFormatContext *s, AVPacket *out, AVPacket *pkt, int | ||||
|  | ||||
| static const AVOption mxf_options[] = { | ||||
|     MXF_COMMON_OPTIONS | ||||
|     { "store_user_comments", "", | ||||
|       offsetof(MXFContext, store_user_comments), AV_OPT_TYPE_INT, {.i64 = 1}, 0, 1, AV_OPT_FLAG_ENCODING_PARAM}, | ||||
|     { NULL }, | ||||
| }; | ||||
|  | ||||
| @@ -2668,6 +2687,8 @@ static const AVOption d10_options[] = { | ||||
|     { "d10_channelcount", "Force/set channelcount in generic sound essence descriptor", | ||||
|       offsetof(MXFContext, channel_count), AV_OPT_TYPE_INT, {.i64 = -1}, -1, 8, AV_OPT_FLAG_ENCODING_PARAM}, | ||||
|     MXF_COMMON_OPTIONS | ||||
|     { "store_user_comments", "", | ||||
|       offsetof(MXFContext, store_user_comments), AV_OPT_TYPE_INT, {.i64 = 0}, 0, 1, AV_OPT_FLAG_ENCODING_PARAM}, | ||||
|     { NULL }, | ||||
| }; | ||||
|  | ||||
|   | ||||
| @@ -1,9 +1,9 @@ | ||||
| 030961ae56ab1c264390fd5ef0a95069 *./tests/data/lavf/lavf.mxf | ||||
| 525881 ./tests/data/lavf/lavf.mxf | ||||
| 6d00bf68ec95d0aac959defccdb0190e *./tests/data/lavf/lavf.mxf | ||||
| 525369 ./tests/data/lavf/lavf.mxf | ||||
| ./tests/data/lavf/lavf.mxf CRC=0xdbfff6f1 | ||||
| b90dc91dee50a24c8b20a08a063f501a *./tests/data/lavf/lavf.mxf | ||||
| 561209 ./tests/data/lavf/lavf.mxf | ||||
| 0bbdd13de78db8ab9314f083b7da0f30 *./tests/data/lavf/lavf.mxf | ||||
| 560697 ./tests/data/lavf/lavf.mxf | ||||
| ./tests/data/lavf/lavf.mxf CRC=0x11a6178e | ||||
| a0cfffed795686127061feae8cde07d1 *./tests/data/lavf/lavf.mxf | ||||
| 525881 ./tests/data/lavf/lavf.mxf | ||||
| 462f95f19b3e0fd119a204a96eb6f424 *./tests/data/lavf/lavf.mxf | ||||
| 525369 ./tests/data/lavf/lavf.mxf | ||||
| ./tests/data/lavf/lavf.mxf CRC=0xdbfff6f1 | ||||
|   | ||||
| @@ -1,3 +1,3 @@ | ||||
| 9b5bad981e08fa3eaeb9de818762218c *./tests/data/lavf/lavf.mxf_d10 | ||||
| 73c0cb416548c33d0651c59519a8f7e2 *./tests/data/lavf/lavf.mxf_d10 | ||||
| 5330989 ./tests/data/lavf/lavf.mxf_d10 | ||||
| ./tests/data/lavf/lavf.mxf_d10 CRC=0x6c74d488 | ||||
|   | ||||
| @@ -1,3 +1,3 @@ | ||||
| 6cab8f702746ca7184c608b4c06a224b *./tests/data/lavf/lavf.mxf_opatom | ||||
| 2205907020248f73876eaad745d2f5b5 *./tests/data/lavf/lavf.mxf_opatom | ||||
| 4717113 ./tests/data/lavf/lavf.mxf_opatom | ||||
| ./tests/data/lavf/lavf.mxf_opatom CRC=0xbdd696b9 | ||||
|   | ||||
| @@ -1,3 +1,3 @@ | ||||
| 6c6064f154688e455ec494d425b525f5 *./tests/data/lavf/lavf.mxf_opatom_audio | ||||
| 102457 ./tests/data/lavf/lavf.mxf_opatom_audio | ||||
| d4ad5a0faf410a9d9e99b3328143e89d *./tests/data/lavf/lavf.mxf_opatom_audio | ||||
| 101945 ./tests/data/lavf/lavf.mxf_opatom_audio | ||||
| ./tests/data/lavf/lavf.mxf_opatom_audio CRC=0xd155c6ff | ||||
|   | ||||
| @@ -1,48 +1,48 @@ | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6656 size: 24801 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6144 size: 24801 | ||||
| ret: 0         st:-1 flags:0  ts:-1.000000 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6656 size: 24801 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6144 size: 24801 | ||||
| ret: 0         st:-1 flags:1  ts: 1.894167 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460800 size: 24711 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460288 size: 24711 | ||||
| ret: 0         st: 0 flags:0  ts: 0.800000 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460800 size: 24711 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460288 size: 24711 | ||||
| ret: 0         st: 0 flags:1  ts:-0.320000 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6656 size: 24801 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6144 size: 24801 | ||||
| ret:-1         st: 1 flags:0  ts: 2.576667 | ||||
| ret: 0         st: 1 flags:1  ts: 1.470833 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460800 size: 24711 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460288 size: 24711 | ||||
| ret: 0         st:-1 flags:0  ts: 0.365002 | ||||
| ret: 0         st: 0 flags:1 dts: 0.360000 pts: 0.480000 pos: 211968 size: 24786 | ||||
| ret: 0         st: 0 flags:1 dts: 0.360000 pts: 0.480000 pos: 211456 size: 24786 | ||||
| ret: 0         st:-1 flags:1  ts:-0.740831 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6656 size: 24801 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6144 size: 24801 | ||||
| ret:-1         st: 0 flags:0  ts: 2.160000 | ||||
| ret: 0         st: 0 flags:1  ts: 1.040000 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460800 size: 24711 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460288 size: 24711 | ||||
| ret: 0         st: 1 flags:0  ts:-0.058333 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6656 size: 24801 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6144 size: 24801 | ||||
| ret: 0         st: 1 flags:1  ts: 2.835833 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460800 size: 24711 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460288 size: 24711 | ||||
| ret:-1         st:-1 flags:0  ts: 1.730004 | ||||
| ret: 0         st:-1 flags:1  ts: 0.624171 | ||||
| ret: 0         st: 0 flags:1 dts: 0.360000 pts: 0.480000 pos: 211968 size: 24786 | ||||
| ret: 0         st: 0 flags:1 dts: 0.360000 pts: 0.480000 pos: 211456 size: 24786 | ||||
| ret: 0         st: 0 flags:0  ts:-0.480000 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6656 size: 24801 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6144 size: 24801 | ||||
| ret: 0         st: 0 flags:1  ts: 2.400000 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460800 size: 24711 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460288 size: 24711 | ||||
| ret:-1         st: 1 flags:0  ts: 1.306667 | ||||
| ret: 0         st: 1 flags:1  ts: 0.200833 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6656 size: 24801 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6144 size: 24801 | ||||
| ret: 0         st:-1 flags:0  ts:-0.904994 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6656 size: 24801 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6144 size: 24801 | ||||
| ret: 0         st:-1 flags:1  ts: 1.989173 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460800 size: 24711 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460288 size: 24711 | ||||
| ret: 0         st: 0 flags:0  ts: 0.880000 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460800 size: 24711 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460288 size: 24711 | ||||
| ret: 0         st: 0 flags:1  ts:-0.240000 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6656 size: 24801 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6144 size: 24801 | ||||
| ret:-1         st: 1 flags:0  ts: 2.671667 | ||||
| ret: 0         st: 1 flags:1  ts: 1.565833 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460800 size: 24711 | ||||
| ret: 0         st: 0 flags:1 dts: 0.840000 pts: 0.960000 pos: 460288 size: 24711 | ||||
| ret: 0         st:-1 flags:0  ts: 0.460008 | ||||
| ret: 0         st: 0 flags:1 dts: 0.360000 pts: 0.480000 pos: 211968 size: 24786 | ||||
| ret: 0         st: 0 flags:1 dts: 0.360000 pts: 0.480000 pos: 211456 size: 24786 | ||||
| ret: 0         st:-1 flags:1  ts:-0.645825 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6656 size: 24801 | ||||
| ret: 0         st: 0 flags:1 dts:-0.040000 pts: 0.000000 pos:   6144 size: 24801 | ||||
|   | ||||
| @@ -1,53 +1,53 @@ | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5145 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   4633 size:  3840 | ||||
| ret: 0         st:-1 flags:0  ts:-1.000000 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5145 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   4633 size:  3840 | ||||
| ret: 0         st:-1 flags:1  ts: 1.894167 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 101143 size:     2 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 100631 size:     2 | ||||
| ret: 0         st: 0 flags:0  ts: 0.788333 | ||||
| ret: 0         st: 0 flags:1 dts: 0.788333 pts: 0.788333 pos:  80825 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.788333 pts: 0.788333 pos:  80313 size:  3840 | ||||
| ret: 0         st: 0 flags:1  ts:-0.317500 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5145 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   4633 size:  3840 | ||||
| ret: 0         st:-1 flags:0  ts: 2.576668 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 101143 size:     2 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 100631 size:     2 | ||||
| ret: 0         st:-1 flags:1  ts: 1.470835 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 101143 size:     2 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 100631 size:     2 | ||||
| ret: 0         st: 0 flags:0  ts: 0.365000 | ||||
| ret: 0         st: 0 flags:1 dts: 0.365000 pts: 0.365000 pos:  40185 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.365000 pts: 0.365000 pos:  39673 size:  3840 | ||||
| ret: 0         st: 0 flags:1  ts:-0.740833 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5145 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   4633 size:  3840 | ||||
| ret: 0         st:-1 flags:0  ts: 2.153336 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 101143 size:     2 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 100631 size:     2 | ||||
| ret: 0         st:-1 flags:1  ts: 1.047503 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 101143 size:     2 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 100631 size:     2 | ||||
| ret: 0         st: 0 flags:0  ts:-0.058333 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5145 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   4633 size:  3840 | ||||
| ret: 0         st: 0 flags:1  ts: 2.835833 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 101143 size:     2 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 100631 size:     2 | ||||
| ret: 0         st:-1 flags:0  ts: 1.730004 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 101143 size:     2 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 100631 size:     2 | ||||
| ret: 0         st:-1 flags:1  ts: 0.624171 | ||||
| ret: 0         st: 0 flags:1 dts: 0.624167 pts: 0.624167 pos:  65065 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.624167 pts: 0.624167 pos:  64553 size:  3840 | ||||
| ret: 0         st: 0 flags:0  ts:-0.481667 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5145 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   4633 size:  3840 | ||||
| ret: 0         st: 0 flags:1  ts: 2.412500 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 101143 size:     2 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 100631 size:     2 | ||||
| ret: 0         st:-1 flags:0  ts: 1.306672 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 101143 size:     2 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 100631 size:     2 | ||||
| ret: 0         st:-1 flags:1  ts: 0.200839 | ||||
| ret: 0         st: 0 flags:1 dts: 0.200833 pts: 0.200833 pos:  24425 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.200833 pts: 0.200833 pos:  23913 size:  3840 | ||||
| ret: 0         st: 0 flags:0  ts:-0.905000 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5145 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   4633 size:  3840 | ||||
| ret: 0         st: 0 flags:1  ts: 1.989167 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 101143 size:     2 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 100631 size:     2 | ||||
| ret: 0         st:-1 flags:0  ts: 0.883340 | ||||
| ret: 0         st: 0 flags:1 dts: 0.883333 pts: 0.883333 pos:  89945 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.883333 pts: 0.883333 pos:  89433 size:  3840 | ||||
| ret: 0         st:-1 flags:1  ts:-0.222493 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5145 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   4633 size:  3840 | ||||
| ret: 0         st: 0 flags:0  ts: 2.671667 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 101143 size:     2 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 100631 size:     2 | ||||
| ret: 0         st: 0 flags:1  ts: 1.565833 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 101143 size:     2 | ||||
| ret: 0         st: 0 flags:1 dts: 0.999979 pts: 0.999979 pos: 100631 size:     2 | ||||
| ret: 0         st:-1 flags:0  ts: 0.460008 | ||||
| ret: 0         st: 0 flags:1 dts: 0.460000 pts: 0.460000 pos:  49305 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.460000 pts: 0.460000 pos:  48793 size:  3840 | ||||
| ret: 0         st:-1 flags:1  ts:-0.645825 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   5145 size:  3840 | ||||
| ret: 0         st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos:   4633 size:  3840 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user