Exemplo n.º 1
0
/*----------------------------------------------------------------------
|   AP4_IpmpDescriptor::Inspect
+---------------------------------------------------------------------*/
AP4_Result
AP4_IpmpDescriptor::Inspect(AP4_AtomInspector& inspector)
{
    char info[64];
    AP4_FormatString(info, sizeof(info), "size=%ld+%ld", 
                     GetHeaderSize(),m_PayloadSize);
    inspector.StartElement("[IPMP_Descriptor]", info);
    inspector.AddField("IPMP_DescriptorID", m_DescriptorId);
    inspector.AddField("IPMPS_Type", m_IpmpsType, AP4_AtomInspector::HINT_HEX);
    if (m_DescriptorId == 0xFF && m_IpmpsType == 0xFFFF) {
        inspector.AddField("IPMP_DescriptorIDEx", m_DescriptorIdEx);
        inspector.AddField("IPMP_ToolID", (const unsigned char*)(&m_ToolId[0]), 16, AP4_AtomInspector::HINT_HEX);
        inspector.AddField("controlPointCode", m_ControlPointCode);
        if (m_ControlPointCode > 0) {
            inspector.AddField("sequenceCode", m_SequenceCode);
        }
    } else if (m_IpmpsType == 0) {
        inspector.AddField("URL", m_Url.GetChars());
    } else {
        inspector.AddField("data size", m_Data.GetDataSize());
    }

    inspector.EndElement();

    return AP4_SUCCESS;
}
Exemplo n.º 2
0
/*----------------------------------------------------------------------
|   AP4_Expandable::Inspect
+---------------------------------------------------------------------*/
AP4_Result
AP4_Expandable::Inspect(AP4_AtomInspector& inspector)
{
    char name[6];
    AP4_FormatString(name, sizeof(name), "[#:%02x]", m_ClassId);
    char info[64];
    AP4_FormatString(info, sizeof(info), "size=%ld+%ld",
                     GetHeaderSize(),
                     m_PayloadSize);
    inspector.StartElement(name, info);
    inspector.EndElement();

    return AP4_SUCCESS;
}
Exemplo n.º 3
0
/*----------------------------------------------------------------------
|   AP4_IpmpDescriptorPointer::Inspect
+---------------------------------------------------------------------*/
AP4_Result
AP4_IpmpDescriptorPointer::Inspect(AP4_AtomInspector& inspector)
{
    char info[64];
    AP4_FormatString(info, sizeof(info), "size=%ld+%ld", 
                     GetHeaderSize(),m_PayloadSize);
    inspector.StartElement("[IPMP_DescriptorPointer]", info);
    inspector.AddField("IPMP_DescriptorID", m_DescriptorId);
    if (m_DescriptorId == 0xFF) {
        inspector.AddField("IPMP_DescriptorIDEx", m_DescriptorIdEx);
        inspector.AddField("IPMP_ES_ID",          m_EsId);
    }

    inspector.EndElement();

    return AP4_SUCCESS;
}
Exemplo n.º 4
0
/*----------------------------------------------------------------------
|   AP4_SampleEntry::Inspect
+---------------------------------------------------------------------*/
AP4_Result
AP4_SampleEntry::Inspect(AP4_AtomInspector& inspector)
{
    // inspect the header
    InspectHeader(inspector);

    // inspect the fields
    InspectFields(inspector);

    // inspect children
    m_Children.Apply(AP4_AtomListInspector(inspector));

    // finish
    inspector.EndElement();

    return AP4_SUCCESS;
}