diff --git a/doc/formats.svg b/doc/formats.svg index e69de29b..69b3f72a 100644 --- a/doc/formats.svg +++ b/doc/formats.svg @@ -0,0 +1,1621 @@ + + + + + + +formats + + + +adts + +adts + +adts_frame + + + +adts_frame + +adts_frame + +aac_frame + + + +adts:e->adts_frame:n + + + + + +aac_frame + +aac_frame + + + +adts_frame:e->aac_frame:n + + + + + +apev2 + +apev2 + +image + + + +image + +image + + + +apev2:e->image:n + + + + + +jpeg + +jpeg + +exif + +icc_profile + + + +image->jpeg:n + + + + + +mp4 + +mp4 + +aac_frame + +av1_ccr + +av1_frame + +flac_frame + +flac_metadatablocks + +id3v2 + +image + +jpeg + +mp3_frame + +avc_au + +avc_dcr + +mpeg_es + +hevc_au + +hevc_dcr + +mpeg_pes_packet + +opus_packet + +protobuf_widevine + +pssh_playready + +vorbis_packet + +vp9_frame + +vpx_ccr + + + +image->mp4:n + + + + + +png + +png + +icc_profile + +exif + + + +image->png:n + + + + + +tiff + +tiff + +icc_profile + + + +image->tiff:n + + + + + +webp + +webp + +vp8_frame + + + +image->webp:n + + + + + +gif + +gif + + + +image->gif:n + + + + + +ar + +ar + +probe + + + +probe + +probe + + + +ar:e->probe:n + + + + + +probe->adts:n + + + + + +probe->ar:n + + + + + +bzip2 + +bzip2 + +probe + + + +probe->bzip2:n + + + + + +flac + +flac + +flac_metadatablocks + +flac_frame + + + +probe->flac:n + + + + + +gzip + +gzip + +probe + + + +probe->gzip:n + + + + + +probe->jpeg:n + + + + + +matroska + +matroska + +aac_frame + +av1_ccr + +av1_frame + +avc_au + +avc_dcr + +flac_frame + +flac_metadatablocks + +hevc_au + +hevc_dcr + +image + +mp3_frame + +mpeg_asc + +mpeg_pes_packet + +mpeg_spu + +opus_packet + +vorbis_packet + +vp8_frame + +vp9_cfm + +vp9_frame + + + +probe->matroska:n + + + + + +mp3 + +mp3 + +id3v2 + +id3v1 + +id3v11 + +apev2 + +mp3_frame + + + +probe->mp3:n + + + + + +probe->mp4:n + + + + + +ogg + +ogg + +ogg_page + +vorbis_packet + +opus_packet + +flac_metadatablock + +flac_frame + + + +probe->ogg:n + + + + + +pcap + +pcap + +link_frame + +tcp_stream + +ipv4_packet + + + +probe->pcap:n + + + + + +pcapng + +pcapng + +link_frame + +tcp_stream + +ipv4_packet + + + +probe->pcapng:n + + + + + +probe->png:n + + + + + +tar + +tar + +probe + + + +probe->tar:n + + + + + +probe->tiff:n + + + + + +wav + +wav + +id3v2 + +id3v1 + +id3v11 + + + +probe->wav:n + + + + + +probe->webp:n + + + + + +zip + +zip + +probe + + + +probe->zip:n + + + + + +avro_ocf + +avro_ocf + + + +probe->avro_ocf:n + + + + + +elf + +elf + + + +probe->elf:n + + + + + +probe->gif:n + + + + + +json + +json + + + +probe->json:n + + + + + +mpeg_ts + +mpeg_ts + + + +probe->mpeg_ts:n + + + + + +av1_frame + +av1_frame + +av1_obu + + + +av1_obu + +av1_obu + + + +av1_frame:e->av1_obu:n + + + + + +avc_annexb + +avc_annexb + +avc_nalu + + + +avc_nalu + +avc_nalu + +avc_sps + +avc_pps + +avc_sei + + + +avc_annexb:e->avc_nalu:n + + + + + +avc_sps + +avc_sps + + + +avc_nalu:e->avc_sps:n + + + + + +avc_pps + +avc_pps + + + +avc_nalu:e->avc_pps:n + + + + + +avc_sei + +avc_sei + + + +avc_nalu:e->avc_sei:n + + + + + +avc_au + +avc_au + +avc_nalu + + + +avc_au:e->avc_nalu:n + + + + + +avc_dcr + +avc_dcr + +avc_nalu + + + +avc_dcr:e->avc_nalu:n + + + + + +bsd_loopback_frame + +bsd_loopback_frame + +ipv4_packet + + + +ipv4_packet + +ipv4_packet + +udp_datagram + +tcp_segment + +icmp + + + +bsd_loopback_frame:e->ipv4_packet:n + + + + + +udp_datagram + +udp_datagram + +udp_payload + + + +ipv4_packet:e->udp_datagram:n + + + + + +tcp_segment + +tcp_segment + + + +ipv4_packet:e->tcp_segment:n + + + + + +icmp + +icmp + + + +ipv4_packet:e->icmp:n + + + + + +bzip2:e->probe:n + + + + + +ether8023_frame + +ether8023_frame + +ipv4_packet + + + +ether8023_frame:e->ipv4_packet:n + + + + + +flac_metadatablocks + +flac_metadatablocks + +flac_metadatablock + + + +flac:e->flac_metadatablocks:n + + + + + +flac_frame + +flac_frame + + + +flac:e->flac_frame:n + + + + + +flac_metadatablock + +flac_metadatablock + +flac_streaminfo + +flac_picture + +vorbis_comment + + + +flac_metadatablocks:e->flac_metadatablock:n + + + + + +flac_streaminfo + +flac_streaminfo + + + +flac_metadatablock:e->flac_streaminfo:n + + + + + +flac_picture + +flac_picture + +image + + + +flac_metadatablock:e->flac_picture:n + + + + + +vorbis_comment + +vorbis_comment + +flac_picture + + + +flac_metadatablock:e->vorbis_comment:n + + + + + +flac_picture:e->image:n + + + + + +vorbis_comment:e->flac_picture:n + + + + + +gzip:e->probe:n + + + + + +hevc_annexb + +hevc_annexb + +hevc_nalu + + + +hevc_nalu + +hevc_nalu + + + +hevc_annexb:e->hevc_nalu:n + + + + + +hevc_au + +hevc_au + +hevc_nalu + + + +hevc_au:e->hevc_nalu:n + + + + + +hevc_dcr + +hevc_dcr + +hevc_nalu + + + +hevc_dcr:e->hevc_nalu:n + + + + + +id3v2 + +id3v2 + +image + + + +id3v2:e->image:n + + + + + +udp_payload + +udp_payload + + + +udp_datagram:e->udp_payload:n + + + + + +exif + +exif + + + +jpeg:e->exif:n + + + + + +icc_profile + +icc_profile + + + +jpeg:e->icc_profile:n + + + + + +matroska:e->aac_frame:n + + + + + +matroska:e->image:n + + + + + +matroska:e->av1_frame:n + + + + + +matroska:e->avc_au:n + + + + + +matroska:e->avc_dcr:n + + + + + +matroska:e->flac_metadatablocks:n + + + + + +matroska:e->flac_frame:n + + + + + +matroska:e->hevc_au:n + + + + + +matroska:e->hevc_dcr:n + + + + + +av1_ccr + +av1_ccr + + + +matroska:e->av1_ccr:n + + + + + +mp3_frame + +mp3_frame + +xing + + + +matroska:e->mp3_frame:n + + + + + +mpeg_asc + +mpeg_asc + + + +matroska:e->mpeg_asc:n + + + + + +mpeg_pes_packet + +mpeg_pes_packet + + + +matroska:e->mpeg_pes_packet:n + + + + + +mpeg_spu + +mpeg_spu + + + +matroska:e->mpeg_spu:n + + + + + +opus_packet + +opus_packet + +vorbis_comment + + + +matroska:e->opus_packet:n + + + + + +vorbis_packet + +vorbis_packet + +vorbis_comment + + + +matroska:e->vorbis_packet:n + + + + + +vp8_frame + +vp8_frame + + + +matroska:e->vp8_frame:n + + + + + +vp9_cfm + +vp9_cfm + + + +matroska:e->vp9_cfm:n + + + + + +vp9_frame + +vp9_frame + + + +matroska:e->vp9_frame:n + + + + + +xing + +xing + + + +mp3_frame:e->xing:n + + + + + +opus_packet:e->vorbis_comment:n + + + + + +vorbis_packet:e->vorbis_comment:n + + + + + +mp3:e->apev2:n + + + + + +mp3:e->id3v2:n + + + + + +mp3:e->mp3_frame:n + + + + + +id3v1 + +id3v1 + + + +mp3:e->id3v1:n + + + + + +id3v11 + +id3v11 + + + +mp3:e->id3v11:n + + + + + +mp4:e->aac_frame:n + + + + + +mp4:e->image:n + + + + + +mp4:e->av1_frame:n + + + + + +mp4:e->avc_au:n + + + + + +mp4:e->avc_dcr:n + + + + + +mp4:e->flac_metadatablocks:n + + + + + +mp4:e->flac_frame:n + + + + + +mp4:e->hevc_au:n + + + + + +mp4:e->hevc_dcr:n + + + + + +mp4:e->id3v2:n + + + + + +mp4:e->jpeg:n + + + + + +mp4:e->av1_ccr:n + + + + + +mp4:e->mp3_frame:n + + + + + +mp4:e->mpeg_pes_packet:n + + + + + +mp4:e->opus_packet:n + + + + + +mp4:e->vorbis_packet:n + + + + + +mp4:e->vp9_frame:n + + + + + +mpeg_es + +mpeg_es + +mpeg_asc + +vorbis_packet + + + +mp4:e->mpeg_es:n + + + + + +protobuf_widevine + +protobuf_widevine + +protobuf + + + +mp4:e->protobuf_widevine:n + + + + + +pssh_playready + +pssh_playready + + + +mp4:e->pssh_playready:n + + + + + +vpx_ccr + +vpx_ccr + + + +mp4:e->vpx_ccr:n + + + + + +mpeg_es:e->mpeg_asc:n + + + + + +mpeg_es:e->vorbis_packet:n + + + + + +protobuf + +protobuf + + + +protobuf_widevine:e->protobuf:n + + + + + +mpeg_pes + +mpeg_pes + +mpeg_pes_packet + +mpeg_spu + + + +mpeg_pes:e->mpeg_pes_packet:n + + + + + +mpeg_pes:e->mpeg_spu:n + + + + + +ogg:e->flac_frame:n + + + + + +ogg:e->flac_metadatablock:n + + + + + +ogg:e->opus_packet:n + + + + + +ogg:e->vorbis_packet:n + + + + + +ogg_page + +ogg_page + + + +ogg:e->ogg_page:n + + + + + +pcap:e->ipv4_packet:n + + + + + +link_frame + +link_frame + + + +pcap:e->link_frame:n + + + + + +tcp_stream + +tcp_stream + + + +pcap:e->tcp_stream:n + + + + + +link_frame->bsd_loopback_frame:n + + + + + +link_frame->ether8023_frame:n + + + + + +sll2_packet + +sll2_packet + +ether8023_frame + + + +link_frame->sll2_packet:n + + + + + +sll_packet + +sll_packet + +ether8023_frame + + + +link_frame->sll_packet:n + + + + + +dns + +dns + + + +tcp_stream->dns:n + + + + + +pcapng:e->ipv4_packet:n + + + + + +pcapng:e->link_frame:n + + + + + +pcapng:e->tcp_stream:n + + + + + +png:e->exif:n + + + + + +png:e->icc_profile:n + + + + + +sll2_packet:e->ether8023_frame:n + + + + + +sll_packet:e->ether8023_frame:n + + + + + +tar:e->probe:n + + + + + +tiff:e->icc_profile:n + + + + + +udp_payload->dns:n + + + + + +wav:e->id3v2:n + + + + + +wav:e->id3v1:n + + + + + +wav:e->id3v11:n + + + + + +webp:e->vp8_frame:n + + + + + +zip:e->probe:n + + + + + +asn1_ber + +asn1_ber + + + +bencode + +bencode + + + +bson + +bson + + + +cbor + +cbor + + + +dns_tcp + +dns_tcp + + + +msgpack + +msgpack + + + +raw + +raw + + + diff --git a/doc/formats_diagram.jq b/doc/formats_diagram.jq index 55034988..aebbf963 100755 --- a/doc/formats_diagram.jq +++ b/doc/formats_diagram.jq @@ -1,7 +1,7 @@ #!/usr/bin/env fq -rnf def color: - md5 | [.[range(3)]] | map(band(.; 0x7f)+60 | radix16 | "0"[length:]+.) | join(""); + md5 | [.[range(3)]] | map(band(.; 0x7f)+60 | toradix(16) | "0"[length:]+.) | join(""); def _formats_dot: def _record($title; $fields):