feTurbulence filter
parameters:
type: fractalNoise or turbulence
for each type:
baseFrequency: two positives values for x and
y. 
numOctaves: positive integer
seed: positive integer ( change random colors )
Using pattern, you can fill shape with texture.
Tools:  you can change parameters and type to see texture 
         add
feComponentTransfer filter to change colors of texture
         add
feColorMatrix filter to change colors of texture
Example: some examples with different values for
parameters
            some examples with feComponentTransfer
            some examples with feColorMatrix
             some
animations about texture
             using
feTurbulence and fecomposite to change picture
Example of code using feTurbulence to create pattern and fill shape:
<defs>
    <filter id="MyFilter" filterUnits="userSpaceOnUse" x="0" y="0" width="400" height="400">
    <feTurbulence type="fractalNoise" baseFrequency="0.01,0.1" numOctaves="4"
seed='1'/>
    </filter>
    <pattern id="motif" patternUnits="userSpaceOnUse" x="0" y="0" width="400" height="400">
    <use filter="url(#MyFilter)"/>
    </pattern> 
</defs>
<circle cx='200' cy='200' r='200' style='stroke:black;fill:url(#motif)'/>