123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 |
- <mxfile host="Electron" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/27.0.9 Chrome/134.0.6998.205 Electron/35.4.0 Safari/537.36" version="27.0.9">
- <diagram name="Page-1" id="_q9Hk0N0-nweOAnfAhH3">
- <mxGraphModel dx="2253" dy="809" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
- <root>
- <mxCell id="0" />
- <mxCell id="1" parent="0" />
- <mxCell id="PJICHrniSQ2v9oinf_Ty-1" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" parent="1" source="PJICHrniSQ2v9oinf_Ty-2" target="PJICHrniSQ2v9oinf_Ty-4" edge="1">
- <mxGeometry relative="1" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-2" value="录音线程,获取到原始数据SrcData" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
- <mxGeometry x="-215" y="230" width="120" height="60" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-4" value="数据分发线程<br>将原始的录音数据进行分发" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
- <mxGeometry x="-5" y="230" width="130" height="60" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-5" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="PJICHrniSQ2v9oinf_Ty-4" target="PJICHrniSQ2v9oinf_Ty-7" edge="1">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint y="360" as="sourcePoint" />
- <mxPoint x="-140" y="430" as="targetPoint" />
- <Array as="points" />
- </mxGeometry>
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-7" value="生成WAV小文件线程" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
- <mxGeometry y="330" width="120" height="60" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-10" value="WAV小文件<br>" style="ellipse;whiteSpace=wrap;html=1;" parent="1" vertex="1">
- <mxGeometry x="80" y="440" width="120" height="80" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-11" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" parent="1" source="PJICHrniSQ2v9oinf_Ty-12" target="PJICHrniSQ2v9oinf_Ty-15" edge="1">
- <mxGeometry relative="1" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-12" value="计算出音量值、反相相关的数据线程" style="whiteSpace=wrap;html=1;rounded=1;" parent="1" vertex="1">
- <mxGeometry x="217.5" y="330" width="120" height="60" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-13" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.954;exitY=1.007;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitPerimeter=0;" parent="1" source="PJICHrniSQ2v9oinf_Ty-4" target="PJICHrniSQ2v9oinf_Ty-12" edge="1">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint x="50" y="560" as="sourcePoint" />
- <mxPoint x="100" y="510" as="targetPoint" />
- </mxGeometry>
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-15" value="环形队列,存储计算出来的音量值" style="ellipse;whiteSpace=wrap;html=1;" parent="1" vertex="1">
- <mxGeometry x="217.5" y="440" width="120" height="80" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-16" value="相似度比对线程<br>调用第三方动态库进行比对;<br>获取WAV小文件,进行处理;" style="shape=process;whiteSpace=wrap;html=1;backgroundOutline=1;" parent="1" vertex="1">
- <mxGeometry x="-5" y="660" width="130" height="100" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-17" value="环形队列,存储wav小文件路径" style="ellipse;whiteSpace=wrap;html=1;" parent="1" vertex="1">
- <mxGeometry x="-60" y="440" width="120" height="80" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-18" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.25;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="PJICHrniSQ2v9oinf_Ty-7" target="PJICHrniSQ2v9oinf_Ty-17" edge="1">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint x="-340" y="460" as="sourcePoint" />
- <mxPoint x="-290" y="410" as="targetPoint" />
- </mxGeometry>
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-21" value="噪音检测线程<br>调用三方动态库进行检测<br>" style="shape=process;whiteSpace=wrap;html=1;backgroundOutline=1;" parent="1" vertex="1">
- <mxGeometry x="-220" y="660" width="125" height="90" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-22" value="静音、过载、反相检测线程,比对出一致性" style="shape=process;whiteSpace=wrap;html=1;backgroundOutline=1;" parent="1" vertex="1">
- <mxGeometry x="215" y="665" width="125" height="90" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-23" value="TCP服务,监听客户端消息,并发送消息" style="rounded=1;whiteSpace=wrap;html=1;" parent="1" vertex="1">
- <mxGeometry x="-310" y="915" width="120" height="60" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-24" value="数据发送函数<br>,获取信息发送给客户端" style="rhombus;whiteSpace=wrap;html=1;" parent="1" vertex="1">
- <mxGeometry x="-45" y="880" width="210" height="130" as="geometry" />
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-26" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="PJICHrniSQ2v9oinf_Ty-15" target="PJICHrniSQ2v9oinf_Ty-22" edge="1">
- <mxGeometry relative="1" as="geometry">
- <mxPoint x="70" y="610" as="sourcePoint" />
- <mxPoint x="70" y="675" as="targetPoint" />
- </mxGeometry>
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-27" value="" style="endArrow=classic;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="PJICHrniSQ2v9oinf_Ty-16" target="PJICHrniSQ2v9oinf_Ty-22" edge="1">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint x="50" y="700" as="sourcePoint" />
- <mxPoint x="-10" y="640" as="targetPoint" />
- <Array as="points" />
- </mxGeometry>
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-28" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="PJICHrniSQ2v9oinf_Ty-21" target="PJICHrniSQ2v9oinf_Ty-24" edge="1">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint x="-160" y="770" as="sourcePoint" />
- <mxPoint x="20" y="975" as="targetPoint" />
- </mxGeometry>
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-29" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="PJICHrniSQ2v9oinf_Ty-22" target="PJICHrniSQ2v9oinf_Ty-24" edge="1">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint x="70" y="765" as="sourcePoint" />
- <mxPoint x="100" y="910" as="targetPoint" />
- </mxGeometry>
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-30" value="" style="endArrow=classic;startArrow=classic;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" parent="1" source="PJICHrniSQ2v9oinf_Ty-23" target="PJICHrniSQ2v9oinf_Ty-24" edge="1">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint x="50" y="690" as="sourcePoint" />
- <mxPoint x="100" y="640" as="targetPoint" />
- </mxGeometry>
- </mxCell>
- <mxCell id="PJICHrniSQ2v9oinf_Ty-32" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0.75;exitY=1;exitDx=0;exitDy=0;" parent="1" source="PJICHrniSQ2v9oinf_Ty-7" target="PJICHrniSQ2v9oinf_Ty-10" edge="1">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint x="-170" y="670" as="sourcePoint" />
- <mxPoint x="-240" y="720" as="targetPoint" />
- </mxGeometry>
- </mxCell>
- <mxCell id="gz7Ag7FggBXV80HZ7l5Y-2" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="PJICHrniSQ2v9oinf_Ty-17" target="PJICHrniSQ2v9oinf_Ty-16" edge="1">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint x="-170" y="570" as="sourcePoint" />
- <mxPoint x="65" y="560" as="targetPoint" />
- </mxGeometry>
- </mxCell>
- <mxCell id="gz7Ag7FggBXV80HZ7l5Y-3" value="" style="endArrow=classic;html=1;rounded=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" parent="1" source="PJICHrniSQ2v9oinf_Ty-10" target="PJICHrniSQ2v9oinf_Ty-16" edge="1">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint x="-410" y="560" as="sourcePoint" />
- <mxPoint x="65" y="560" as="targetPoint" />
- </mxGeometry>
- </mxCell>
- <mxCell id="j5mIEffdRgkVqhNrF_-w-1" value="将数据分开,分成左右声道(应该可以集成到其他线程中)" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="1">
- <mxGeometry x="-217.5" y="330" width="120" height="60" as="geometry" />
- </mxCell>
- <mxCell id="j5mIEffdRgkVqhNrF_-w-2" value="" style="endArrow=classic;html=1;rounded=0;entryX=1;entryY=0;entryDx=0;entryDy=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="PJICHrniSQ2v9oinf_Ty-4" target="j5mIEffdRgkVqhNrF_-w-1">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint x="-230" y="520" as="sourcePoint" />
- <mxPoint x="-180" y="470" as="targetPoint" />
- </mxGeometry>
- </mxCell>
- <mxCell id="j5mIEffdRgkVqhNrF_-w-3" value="环形队列,存储分开的左右声道原始数据" style="ellipse;whiteSpace=wrap;html=1;" vertex="1" parent="1">
- <mxGeometry x="-217.5" y="440" width="120" height="80" as="geometry" />
- </mxCell>
- <mxCell id="j5mIEffdRgkVqhNrF_-w-4" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="1" source="j5mIEffdRgkVqhNrF_-w-1" target="j5mIEffdRgkVqhNrF_-w-3">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint x="-370" y="520" as="sourcePoint" />
- <mxPoint x="-400" y="570" as="targetPoint" />
- </mxGeometry>
- </mxCell>
- <mxCell id="j5mIEffdRgkVqhNrF_-w-5" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="j5mIEffdRgkVqhNrF_-w-3" target="PJICHrniSQ2v9oinf_Ty-21">
- <mxGeometry width="50" height="50" relative="1" as="geometry">
- <mxPoint x="-260" y="590" as="sourcePoint" />
- <mxPoint x="-290" y="640" as="targetPoint" />
- </mxGeometry>
- </mxCell>
- </root>
- </mxGraphModel>
- </diagram>
- </mxfile>
|