📄 box_dump.c
字号:
GF_Err nump_dump(GF_Box *a, FILE * trace){ GF_NUMPBox *p; p = (GF_NUMPBox *)a; fprintf(trace, "<LargeTotalPacketBox PacketsSent=\""LLD"\">\n", LLD_CAST p->nbPackets); DumpBox(a, trace); fprintf(trace, "</LargeTotalPacketBox>\n"); return GF_OK;}GF_Err npck_dump(GF_Box *a, FILE * trace){ GF_NPCKBox *p; p = (GF_NPCKBox *)a; fprintf(trace, "<TotalPacketBox packetsSent=\"%d\">\n", p->nbPackets); DumpBox(a, trace); fprintf(trace, "</TotalPacketBox>\n"); return GF_OK;}GF_Err tpyl_dump(GF_Box *a, FILE * trace){ GF_NTYLBox *p; p = (GF_NTYLBox *)a; fprintf(trace, "<LargeTotalMediaBytesBox BytesSent=\""LLD"\">\n", LLD_CAST p->nbBytes); DumpBox(a, trace); fprintf(trace, "</LargeTotalMediaBytesBox>\n"); return GF_OK;}GF_Err tpay_dump(GF_Box *a, FILE * trace){ GF_TPAYBox *p; p = (GF_TPAYBox *)a; fprintf(trace, "<TotalMediaBytesBox BytesSent=\"%d\">\n", p->nbBytes); DumpBox(a, trace); fprintf(trace, "</TotalMediaBytesBox>\n"); return GF_OK;}GF_Err maxr_dump(GF_Box *a, FILE * trace){ GF_MAXRBox *p; p = (GF_MAXRBox *)a; fprintf(trace, "<MaxDataRateBox MaxDataRate=\"%d\" Granularity=\"%d\">\n", p->maxDataRate, p->granularity); DumpBox(a, trace); fprintf(trace, "</MaxDataRateBox>\n"); return GF_OK;}GF_Err dmed_dump(GF_Box *a, FILE * trace){ GF_DMEDBox *p; p = (GF_DMEDBox *)a; fprintf(trace, "<BytesFromMediaTrackBox BytesSent=\""LLD"\">\n", LLD_CAST p->nbBytes); DumpBox(a, trace); fprintf(trace, "</BytesFromMediaTrackBox>\n"); return GF_OK;}GF_Err dimm_dump(GF_Box *a, FILE * trace){ GF_DIMMBox *p; p = (GF_DIMMBox *)a; fprintf(trace, "<ImmediateDataBytesBox BytesSent=\""LLD"\">\n", LLD_CAST p->nbBytes); DumpBox(a, trace); fprintf(trace, "</ImmediateDataBytesBox>\n"); return GF_OK;}GF_Err drep_dump(GF_Box *a, FILE * trace){ GF_DREPBox *p; p = (GF_DREPBox *)a; fprintf(trace, "<RepeatedDataBytesBox RepeatedBytes=\""LLD"\">\n", LLD_CAST p->nbBytes); DumpBox(a, trace); fprintf(trace, "</RepeatedDataBytesBox>\n"); return GF_OK;}GF_Err tmin_dump(GF_Box *a, FILE * trace){ GF_TMINBox *p; p = (GF_TMINBox *)a; fprintf(trace, "<MinTransmissionTimeBox MinimumTransmitTime=\"%d\">\n", p->minTime); DumpBox(a, trace); fprintf(trace, "</MinTransmissionTimeBox>\n"); return GF_OK;}GF_Err tmax_dump(GF_Box *a, FILE * trace){ GF_TMAXBox *p; p = (GF_TMAXBox *)a; fprintf(trace, "<MaxTransmissionTimeBox MaximumTransmitTime=\"%d\">\n", p->maxTime); DumpBox(a, trace); fprintf(trace, "</MaxTransmissionTimeBox>\n"); return GF_OK;}GF_Err pmax_dump(GF_Box *a, FILE * trace){ GF_PMAXBox *p; p = (GF_PMAXBox *)a; fprintf(trace, "<MaxPacketSizeBox MaximumSize=\"%d\">\n", p->maxSize); DumpBox(a, trace); fprintf(trace, "</MaxPacketSizeBox>\n"); return GF_OK;}GF_Err dmax_dump(GF_Box *a, FILE * trace){ GF_DMAXBox *p; p = (GF_DMAXBox *)a; fprintf(trace, "<MaxPacketDurationBox MaximumDuration=\"%d\">\n", p->maxDur); DumpBox(a, trace); fprintf(trace, "</MaxPacketDurationBox>\n"); return GF_OK;}GF_Err payt_dump(GF_Box *a, FILE * trace){ GF_PAYTBox *p; p = (GF_PAYTBox *)a; fprintf(trace, "<PayloadTypeBox PayloadID=\"%d\" PayloadString=\"%s\">\n", p->payloadCode, p->payloadString); DumpBox(a, trace); fprintf(trace, "</PayloadTypeBox>\n"); return GF_OK;}GF_Err name_dump(GF_Box *a, FILE * trace){ GF_NameBox *p; p = (GF_NameBox *)a; fprintf(trace, "<NameBox Name=\"%s\">\n", p->string); DumpBox(a, trace); fprintf(trace, "</NameBox>\n"); return GF_OK;}GF_Err rely_dump(GF_Box *a, FILE * trace){ GF_RelyHintBox *p; p = (GF_RelyHintBox *)a; fprintf(trace, "<RelyTransmissionBox Prefered=\"%d\" required=\"%d\">\n", p->prefered, p->required); DumpBox(a, trace); fprintf(trace, "</RelyTransmissionBox>\n"); return GF_OK;}GF_Err snro_dump(GF_Box *a, FILE * trace){ GF_SeqOffHintEntryBox *p; p = (GF_SeqOffHintEntryBox *)a; fprintf(trace, "<PacketSequenceOffsetBox SeqNumOffset=\"%d\">\n", p->SeqOffset); DumpBox(a, trace); fprintf(trace, "</PacketSequenceOffsetBox>\n"); return GF_OK;}GF_Err tims_dump(GF_Box *a, FILE * trace){ GF_TSHintEntryBox *p; p = (GF_TSHintEntryBox *)a; fprintf(trace, "<RTPTimeScaleBox TimeScale=\"%d\">\n", p->timeScale); DumpBox(a, trace); fprintf(trace, "</RTPTimeScaleBox>\n"); return GF_OK;}GF_Err tsro_dump(GF_Box *a, FILE * trace){ GF_TimeOffHintEntryBox *p; p = (GF_TimeOffHintEntryBox *)a; fprintf(trace, "<TimeStampOffsetBox TimeStampOffset=\"%d\">\n", p->TimeOffset); DumpBox(a, trace); fprintf(trace, "</TimeStampOffsetBox>\n"); return GF_OK;}GF_Err ghnt_dump(GF_Box *a, FILE * trace){ GF_HintSampleEntryBox *p; p = (GF_HintSampleEntryBox *)a; fprintf(trace, "<GenericHintSampleEntryBox EntrySubType=\"%s\" DataReferenceIndex=\"%d\" HintTrackVersion=\"%d\" LastCompatibleVersion=\"%d\" MaxPacketSize=\"%d\">\n", gf_4cc_to_str(p->type), p->dataReferenceIndex, p->HintTrackVersion, p->LastCompatibleVersion, p->MaxPacketSize); DumpBox(a, trace); gf_box_array_dump(p->HintDataTable, trace); fprintf(trace, "</GenericHintSampleEntryBox>\n"); return GF_OK;}GF_Err hnti_dump(GF_Box *a, FILE * trace){ GF_HintTrackInfoBox *p; GF_Box *ptr; GF_RTPBox *rtp; u32 i; p = (GF_HintTrackInfoBox *)a; fprintf(trace, "<HintTrackInfoBox>\n"); DumpBox(a, trace); i=0; while ((ptr = (GF_Box *)gf_list_enum(p->boxList, &i))) { if (ptr->type !=GF_ISOM_BOX_TYPE_RTP) { gf_box_dump(ptr, trace); } else { rtp = (GF_RTPBox *)ptr; fprintf(trace, "<RTPInfoBox subType=\"%s\">\n", gf_4cc_to_str(rtp->subType)); fprintf(trace, "<!-- sdp text: %s -->\n", rtp->sdpText); fprintf(trace, "</RTPInfoBox>\n"); } } fprintf(trace, "</HintTrackInfoBox>\n"); return GF_OK;}GF_Err sdp_dump(GF_Box *a, FILE * trace){ GF_SDPBox *p; p = (GF_SDPBox *)a; fprintf(trace, "<SDPBox>\n"); DumpBox(a, trace); fprintf(trace, "<!-- sdp text: %s -->\n", p->sdpText); fprintf(trace, "</SDPBox>\n"); return GF_OK;}GF_Err rtpo_dump(GF_Box *a, FILE * trace){ GF_RTPOBox *p; p = (GF_RTPOBox *)a; fprintf(trace, "<RTPTimeOffsetBox PacketTimeOffset=\"%d\">\n", p->timeOffset); DumpBox(a, trace); fprintf(trace, "</RTPTimeOffsetBox>\n"); return GF_OK;}#ifndef GF_ISOM_NO_FRAGMENTSGF_Err mvex_dump(GF_Box *a, FILE * trace){ GF_MovieExtendsBox *p; p = (GF_MovieExtendsBox *)a; fprintf(trace, "<MovieExtendsBox>\n"); DumpBox(a, trace); if (p->mehd) gf_box_dump(p->mehd, trace); gf_box_array_dump(p->TrackExList, trace); fprintf(trace, "</MovieExtendsBox>\n"); return GF_OK;}GF_Err mehd_dump(GF_Box *a, FILE * trace){ GF_MovieExtendsHeaderBox *p = (GF_MovieExtendsHeaderBox*)a; fprintf(trace, "<MovieExtendsHeaderBox fragmentDuration=\""LLD"\" >\n", LLD_CAST p->fragment_duration); DumpBox(a, trace); gf_full_box_dump(a, trace); fprintf(trace, "</MovieExtendsHeaderBox>\n"); return GF_OK;}GF_Err trex_dump(GF_Box *a, FILE * trace){ GF_TrackExtendsBox *p; p = (GF_TrackExtendsBox *)a; fprintf(trace, "<TrackExtendsBox TrackID=\"%d\"", p->trackID); fprintf(trace, " SampleDescriptionIndex=\"%d\" SampleDuration=\"%d\" SampleSize=\"%d\"", p->def_sample_desc_index, p->def_sample_duration, p->def_sample_size); fprintf(trace, " SamplePadding=\"%d\" SampleSync=\"%d\" SampleDegradationPriority=\"%d\"", GF_ISOM_GET_FRAG_PAD(p->def_sample_flags), GF_ISOM_GET_FRAG_SYNC(p->def_sample_flags), GF_ISOM_GET_FRAG_DEG(p->def_sample_flags)); fprintf(trace, ">\n"); DumpBox(a, trace); gf_full_box_dump(a, trace); fprintf(trace, "</TrackExtendsBox>\n"); return GF_OK;}GF_Err moof_dump(GF_Box *a, FILE * trace){ GF_MovieFragmentBox *p; p = (GF_MovieFragmentBox *)a; fprintf(trace, "<MovieFragmentBox TrackFragments=\"%d\">\n", gf_list_count(p->TrackList)); DumpBox(a, trace); if (p->mfhd) gf_box_dump(p->mfhd, trace); gf_box_array_dump(p->TrackList, trace); fprintf(trace, "</MovieFragmentBox>\n"); return GF_OK;}GF_Err mfhd_dump(GF_Box *a, FILE * trace){ GF_MovieFragmentHeaderBox *p; p = (GF_MovieFragmentHeaderBox *)a; fprintf(trace, "<MovieFragmentHeaderBox FragmentSequenceNumber=\"%d\">\n", p->sequence_number); DumpBox(a, trace); gf_full_box_dump(a, trace); fprintf(trace, "</MovieFragmentHeaderBox>\n"); return GF_OK;}GF_Err traf_dump(GF_Box *a, FILE * trace){ GF_TrackFragmentBox *p; p = (GF_TrackFragmentBox *)a; fprintf(trace, "<TrackFragmentBox>\n"); DumpBox(a, trace); if (p->tfhd) gf_box_dump(p->tfhd, trace); gf_box_array_dump(p->TrackRuns, trace); fprintf(trace, "</TrackFragmentBox>\n"); return GF_OK;}GF_Err tfhd_dump(GF_Box *a, FILE * trace){ GF_TrackFragmentHeaderBox *p; p = (GF_TrackFragmentHeaderBox *)a; fprintf(trace, "<TrackFragmentHeaderBox TrackID=\"%d\"", p->trackID); if (p->flags & GF_ISOM_TRAF_BASE_OFFSET) { fprintf(trace, " BaseDataOffset=\""LLD"\"", LLD_CAST p->base_data_offset); } if (p->flags & GF_ISOM_TRAF_SAMPLE_DESC) fprintf(trace, "SampleDescriptionIndex=\"%d\"", p->sample_desc_index); if (p->flags & GF_ISOM_TRAF_SAMPLE_DUR) fprintf(trace, " SampleDuration=\"%d\"", p->def_sample_duration); if (p->flags & GF_ISOM_TRAF_SAMPLE_SIZE) fprintf(trace, " SampleSize=\"%d\"", p->def_sample_size); if (p->flags & GF_ISOM_TRAF_SAMPLE_FLAGS) { fprintf(trace, " SamplePadding=\"%d\"", GF_ISOM_GET_FRAG_PAD(p->def_sample_flags)); fprintf(trace, " SampleSync=\"%d\"", GF_ISOM_GET_FRAG_SYNC(p->def_sample_flags)); fprintf(trace, " SampleDegradationPriority=\"%d\"", GF_ISOM_GET_FRAG_DEG(p->def_sample_flags)); } fprintf(trace, ">\n"); DumpBox(a, trace); gf_full_box_dump(a, trace); fprintf(trace, "</TrackFragmentHeaderBox>\n"); return GF_OK;}GF_Err trun_dump(GF_Box *a, FILE * trace){ u32 i; GF_TrunEntry *ent; GF_TrackFragmentRunBox *p; p = (GF_TrackFragmentRunBox *)a; fprintf(trace, "<TrackRunBox SampleCount=\"%d\"", p->sample_count); if (p->flags & GF_ISOM_TRUN_DATA_OFFSET) fprintf(trace, " DataOffset=\"%d\"", p->data_offset); if (p->flags & GF_ISOM_TRUN_FIRST_FLAG) { fprintf(trace, " FirstSamplePadding=\"%d\" FirstSampleSync=\"%d\" FirstSampleDegradationPriority=\"%d\"", GF_ISOM_GET_FRAG_PAD(p->first_sample_flags), GF_ISOM_GET_FRAG_SYNC(p->first_sample_flags), GF_ISOM_GET_FRAG_DEG(p->first_sample_flags)); } fprintf(trace, ">\n"); DumpBox(a, trace); gf_full_box_dump(a, trace); if (p->flags & (GF_ISOM_TRUN_DURATION|GF_ISOM_TRUN_SIZE|GF_ISOM_TRUN_CTS_OFFSET|GF_ISOM_TRUN_FLAGS)) { i=0; while ((ent = (GF_TrunEntry *)gf_list_enum(p->entries, &i))) { fprintf(trace, "<TrackRunEntry"); if (p->flags & GF_ISOM_TRUN_DURATION) fprintf(trace, " Duration=\"%d\"", ent->Duration); if (p->flags & GF_ISOM_TRUN_SIZE) fprintf(trace, " Size=\"%d\"", ent->size); if (p->flags & GF_ISOM_TRUN_CTS_OFFSET) fprintf(trace, " CTSOffset=\"%d\"", ent->CTS_Offset); if (p->flags & GF_ISOM_TRUN_FLAGS) { fprintf(trace, " SamplePadding=\"%d\" Sync=\"%d\" DegradationPriority=\"%d\"", GF_ISOM_GET_FRAG_PAD(ent->flags), GF_ISOM_GET_FRAG_SYNC(ent->flags), GF_ISOM_GET_FRAG_DEG(ent->flags)); } fprintf(trace, "/>\n"); } } else { fprintf(trace, "<!-- all default values used -->\n"); } fprintf(trace, "</TrackRunBox>\n"); return GF_OK;}#endifGF_Err DTE_Dump(GF_List *dte, FILE * trace){ GF_GenericDTE *p; GF_ImmediateDTE *i_p; GF_SampleDTE *s_p; GF_StreamDescDTE *sd_p; u32 i, count; count = gf_list_count(dte); for (i=0; i<count; i++) { p = (GF_GenericDTE *)gf_list_get(dte, i); switch (p->source) { case 0: fprintf(trace, "<EmptyDataEntry/>\n"); break;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -