123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227 |
- digraph picture_pipeline {
- label="Initialization dependencies of elements";
- subgraph cluster_environment {
- label="Graphics environment";
- style=dotted;
- {
- decoderdevice [label="vlc_decoder_device_t"];
- window [label="vout_window_t"];
- }
- }
- subgraph cluster_picture_chain {
- label="Picture pipeline";
- labelloc="b";
- margin="10,40";
- rank=same;
- {
- rank=same;
- decoder [label="decoder_t"];
- filter1 [label="filter_t"];
- filter2 [label="filter_t"];
- display [label="vout_display_t"];
- edge[style=invis,minlen=5];
- decoder -> filter1 -> filter2 -> display;
- }
- subgraph cluster_context_chain {
- node [style=filled,color=white,shape=box];
- {rank = same;
- videocontext0 [label="vlc_video_context_t"];
- videocontext1 [label="vlc_video_context_t"];
- videocontext2 [label="vlc_video_context_t"];}
- label="video context pipeline";
- color="grey";
- style="filled";
- }
- }
- decoder -> videocontext0;
- filter1 -> videocontext1;
- filter2 -> videocontext2;
- videocontext0 -> filter1;
- videocontext1 -> filter2;
- videocontext2 -> display;
- window -> decoderdevice;
- window -> display [constraint=false];
- decoderdevice -> decoder;
- decoderdevice -> filter1;
- decoderdevice -> filter2;
- }
- digraph picture_pipeline {
- label="Push pipeline";
- subgraph cluster_picture_chain {
- label="Picture pipeline";
- labelloc="b";
- margin="10,40";
- rank=same;
- {
- rank=same;
- { node [shape=box];
- decoder [label="decoder_t"];
- filter1 [label="filter_t"];
- filter2 [label="filter_t"];
- display [label="vout_display_t"]; }
- picture0 [label="picture_t"];
- picture1 [label="picture_t"];
- picture2 [label="picture_t"];
- { edge[style=invis];
- decoder -> filter1 -> filter2 -> display; }
- decoder -> picture0;
- filter1 -> picture1;
- filter2 -> picture2;
- picture0 -> filter1;
- picture1 -> filter2;
- picture2 -> display;
- }
- subgraph cluster_context_chain {
- node [style=filled,color=white,shape=box];
- {rank = same;
- videocontext0 [label="vlc_video_context_t"];
- videocontext1 [label="vlc_video_context_t"];
- videocontext2 [label="vlc_video_context_t"];}
- label="video context pipeline";
- labelloc="t";
- color="grey"
- style="filled"
- }
- }
- videocontext0 -> picture0;
- videocontext1 -> picture1;
- videocontext2 -> picture2;
- }
- digraph picture_pipeline {
- graph[splines=ortho];
- label="Push pipeline";
- compound=true;
- subgraph cluster_decoder {
- label="Decoder";
- decoder [label="decoder_t"];
- videocontext0_0 [label="vlc_video_context_t"];
- videocontext0_1 [label="vlc_video_context_t"];
- { edge[style="invis"];
- decoder -> videocontext0_0 -> videocontext0_1; }
- }
- subgraph cluster_filter1 {
- label="Filter 1";
- filter1 [label="filter_t"];
- videocontext1_0 [label="vlc_video_context_t"];
- videocontext1_1 [label="vlc_video_context_t"];
- { edge[style="invis"];
- filter1 -> videocontext1_0 -> videocontext1_1; }
- }
- subgraph cluster_filter2 {
- label="Filter 2";
- filter2 [label="filter_t"];
- videocontext2_0 [label="vlc_video_context_t"];
- { edge [style="invis"];
- filter2 -> videocontext2_0; }
- }
- subgraph cluster_decoder_pictures {
- label="Pictures from decoder";
- node[shape=box];
- picture0_0 [label="picture_t"];
- picture0_1 [label="picture_t"];
- picture0_2 [label="picture_t"];
- { edge[constraint=false];
- picture0_0 -> videocontext0_0;
- picture0_1 -> videocontext0_0;
- picture0_2 -> videocontext0_1; }
- { edge[style="invis"];
- picture0_0 -> picture0_1 -> picture0_2; }
- }
- subgraph cluster_filter1_pictures {
- label="Pictures from filter 1";
- node[shape=box];
- picture1_0 [label="picture_t"];
- picture1_1 [label="picture_t"];
- picture1_2 [label="picture_t"];
- { edge[constraint=false];
- picture1_0 -> videocontext1_0;
- picture1_1 -> videocontext1_0;
- picture1_2 -> videocontext1_1; }
- { edge[style="invis"];
- picture1_0 -> picture1_1 ->picture1_2; }
- }
- subgraph cluster_filter2_pictures {
- label="Pictures from filter 2";
- node[shape=box];
- picture2_0 [label="picture_t"];
- { edge[constraint=false];
- picture2_0 -> videocontext2_0; }
- }
- subgraph cluster_vout {
- label="Video output";
- display [label="vout_display_t"];
- }
- edge[constraint=false,minlen=8];
- decoder -> picture0_0[lhead=cluster_decoder_pictures];
- //decoder -> picture0_0;
- //decoder -> picture0_1;
- //decoder -> picture0_2;
- picture0_0 -> filter1[ltail=cluster_decoder_pictures];
- //picture0_0 -> filter1;
- //picture0_1 -> filter1;
- //picture0_2 -> filter1;
- filter1 -> picture1_0[lhead=cluster_filter1_pictures];
- //filter1 -> picture1_0;
- //filter1 -> picture1_1;
- //filter1 -> picture1_2;
- picture1_0 -> filter2[ltail=cluster_filter2_pictures];
- //picture1_0 -> filter2;
- //picture1_1 -> filter2;
- //picture1_2 -> filter2;
- filter2 -> picture2_0[lhead=cluster_filter2_pictures];
- picture2_0 -> display[ltail=cluster_filter2_pictures];
- }
|