speaking from Agent Loaders by IconsDB · Animated · animated · MIT Free for personal and commercial use.

Name
speaking
Set
Agent Loaders
Style
Animated
Animation
Animated SVG (SMIL)
Viewbox
24×24
License
MIT

Use the speaking icon

SVG

<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><path d="M11 4.5 6.5 8.5h-3v7h3L11 19.5z"/><path d="M14.8 9.2a4 4 0 0 1 0 5.6"><animate attributeName="opacity" values=".2;1;.2" dur="1.3s" begin="0s" repeatCount="indefinite"/></path><path d="M17.6 6.6a8 8 0 0 1 0 10.8"><animate attributeName="opacity" values=".2;1;.2" dur="1.3s" begin="0.2s" repeatCount="indefinite"/></path><path d="M20.4 4a12 12 0 0 1 0 16"><animate attributeName="opacity" values=".2;1;.2" dur="1.3s" begin="0.4s" repeatCount="indefinite"/></path></g></svg>

React

import type { SVGProps } from "react";

export function AgentLoadersSpeaking(props: SVGProps<SVGSVGElement>) {
  return (
    <svg {...props} xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round"><path d="M11 4.5 6.5 8.5h-3v7h3L11 19.5z"/><path d="M14.8 9.2a4 4 0 0 1 0 5.6"><animate attributeName="opacity" values=".2;1;.2" dur="1.3s" begin="0s" repeatCount="indefinite"/></path><path d="M17.6 6.6a8 8 0 0 1 0 10.8"><animate attributeName="opacity" values=".2;1;.2" dur="1.3s" begin="0.2s" repeatCount="indefinite"/></path><path d="M20.4 4a12 12 0 0 1 0 16"><animate attributeName="opacity" values=".2;1;.2" dur="1.3s" begin="0.4s" repeatCount="indefinite"/></path></g></svg>
  );
}

Vue

<template>
  <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><path d="M11 4.5 6.5 8.5h-3v7h3L11 19.5z"/><path d="M14.8 9.2a4 4 0 0 1 0 5.6"><animate attributeName="opacity" values=".2;1;.2" dur="1.3s" begin="0s" repeatCount="indefinite"/></path><path d="M17.6 6.6a8 8 0 0 1 0 10.8"><animate attributeName="opacity" values=".2;1;.2" dur="1.3s" begin="0.2s" repeatCount="indefinite"/></path><path d="M20.4 4a12 12 0 0 1 0 16"><animate attributeName="opacity" values=".2;1;.2" dur="1.3s" begin="0.4s" repeatCount="indefinite"/></path></g></svg>
</template>

CSS

.icon-speaking {
  width: 24px;
  height: 24px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221em%22%20height%3D%221em%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M11%204.5%206.5%208.5h-3v7h3L11%2019.5z%22%2F%3E%3Cpath%20d%3D%22M14.8%209.2a4%204%200%200%201%200%205.6%22%20opacity%3D%221%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M17.6%206.6a8%208%200%200%201%200%2010.8%22%20opacity%3D%221%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M20.4%204a12%2012%200%200%201%200%2016%22%20opacity%3D%221%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221em%22%20height%3D%221em%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M11%204.5%206.5%208.5h-3v7h3L11%2019.5z%22%2F%3E%3Cpath%20d%3D%22M14.8%209.2a4%204%200%200%201%200%205.6%22%20opacity%3D%221%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M17.6%206.6a8%208%200%200%201%200%2010.8%22%20opacity%3D%221%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M20.4%204a12%2012%200%200%201%200%2016%22%20opacity%3D%221%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center / contain;
}

This icon is animated. Browsers do not run SVG animation inside a CSS mask, so the rule above uses a still of the drawn icon. Inline the SVG (or use the React/Vue/Svelte snippet) to keep the animation.

Direct links: SVG · download · JSON · https://iconsdb.app/api/v1/icon/agent-loaders/speaking.svg?color=%231a73e8&size=48