*Sorry, my post covers generating smoke as a single mesh in Blender 2.79, and not an entire smoke sim anim, due a buggy particle system (or smoke cache). Blender 2.83 doesnt have texture type **Voxel Data**. 2.83 comes with a new **object type - Volume**, but that doesn't solve nothing in your case, but future is always bright :)*

---
 
My goal was to ...
- use voxel data to generate particle cloud from texture (01) or vertex weight (02)
- particles represent by metaballs
- animation export as Alembic or Wavefront, that converts metaballs (smoke) into Mesh Sequence animation

---

test 01 - Mesh from Voxel Data Texture
---
Blender 2.79 contains texture type **Voxel Data** that use this kind of data as 3D texture. [Blender Manual describes][1] this quite straight forward. And it works for *8-bit RAW* and *Image Sequence* file format (like CT scan or MRI).

[![enter image description here][2]][2]

It means - it is possible (with some headaches*) to generate mesh from particle system represented by metaball objects, like this ...
[![enter image description here][3]][3]

Troubles comes with voxel file format **Smoke** (that should be able to reuse data of existing Smoke Domain on another object) and **Blender Voxel** (that should use externally saved simulation bake) ...
[![enter image description here][4]][4]
... I could see Material Preview in Texture Properties, but nothing was rendered.

Usage of these baked smoke simulations (externally) is buggy for years. Smoke doesn't appear in domain at all / or is shifted / or just a few frames of sim is visible. Not always, and that it makes more difficult to hunt issue. (One for all [bug report here][5] - as many of them were closed/archived.)

Anyway ... for your needs, when I assigned particle system directly to domain and Domain was set as Texture for particle density I was able to generate a particle cloud and to mesh one frame of smoke, but not entire animation. Probably for the reason mentioned above - bug. I'm not sure how  that one frame is selected, probably current frame set on timeline when assigned? Can't confirm due the refresh issue.

---

For those interested - in case smoke sim is baked ...
- add Metaball object
- select Smoke Domain
- add Particle system - Emission>Start1 End1 / Source>Volume / Distribution>Grid> / Velocity>zero / Texture>New (**Cycles only**) / Field Weight>Gravity=zero
- go to Texture (Particles) Properties - Type>Voxel Data / Voxel Data>Smoke / Color>Ramp=ON to adjust density / Influence>Density=ON 

[![enter image description here][6]][6]

 - set render particles as Object>Mbals
 - export (Mball) as Wavefront(.obj) or Alembic (.abc) that converts metaballs into Mesh Sequence animation  
 - (in case someone will fix the bug :) )

[![enter image description here][7]][7]
[![enter image description here][8]][8]

[<img src="https://blend-exchange.giantcowfilms.com/embedImage.png?bid=J0mvwS4x" />](https://blend-exchange.giantcowfilms.com/b/J0mvwS4x/)

---

*... another pain as hell is particle system refreshing https://developer.blender.org/T52160 . Even you have visible particle cloud, opening file again hides the particles. To make them visible again I discovered only one weird way - switch to Blender Internal engine into RenderView mode in 3Dview, change particle resolution to something, it refresh particle appearance, switch back to Cycles if needed.*

---

test02 - Mesh from Dynamic Paint - Weight
---
Dynamic Paint in [video of Miikah][9] can use a smoke sim as a "brush" to paint, so I wanted Weight paint into a dense grid using voxel data. Vertex Weight becomes Particle size solver. But ... I don't even thing this was implemented or I do something wrong here.
(I could only approved dynamic paint vertex-weight can generate animated particle cloud, but not driven by smoke.)

---

Resume - faked Fluid Particles seems to be a way to go ... :(

---

Notes to fix setup of your second blend file
---
(this part I will delete later)

**Particle System Properties**
- Influence > enable Density
- Field Weights > Gravity = 0
- Render > Size is very small, try 0.4
- looks better to use Random for Emission>Grid

**Texture (Particles) Properties**
- Color > enable Ramp and move White to left to increase smoke density

**Mball Properties**
- keep in mind all metaballs in a scene use resolution from first existing meta object in a scene (doesn't matter what other meta objects are set). That means - lowres for Preview and small particle size value make them invisible for its low res grid.

**Time range**
- you have set Smoke cache frame range 1-90 even scene is set 1-150
- also particles system *Life Time* is only 50 should be 150

Screens below use – Grid Res 200 / Particle Size 0.1 / Mball Preview 0.2

Smoke Default Preview
[![enter image description here][10]][10]
Smoke Viewports Display Color Ramp
[![enter image description here][11]][11]
Mball Particles
[![enter image description here][12]][12]

Hight Grid Resolution + Smaller Particle Size + Smaller Metaballs resolution = More detailed final mesh

Bake smoke sim first. If particles are not visible check italic paragraph under my first blend file.
[<img src="https://blend-exchange.giantcowfilms.com/embedImage.png?bid=zydpM8aA" />](https://blend-exchange.giantcowfilms.com/b/zydpM8aA/)

  [1]: https://docs.blender.org/manual/en/2.79/render/blender_render/textures/types/volume/voxel_data.html
  [2]: https://i.sstatic.net/F4wOJ.png
  [3]: https://i.sstatic.net/rUZLF.png
  [4]: https://i.sstatic.net/m6AKQ.png
  [5]: https://developer.blender.org/T40820
  [6]: https://i.sstatic.net/eeMzU.png
  [7]: https://i.sstatic.net/fRUcf.png
  [8]: https://i.sstatic.net/5D4Oc.png
  [9]: https://www.google.com/url?sa=i&url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DjL1KluUE-gU&psig=AOvVaw0S5MJBZOGJq6HRPsEg-pqq&ust=1592254996289000&source=images&cd=vfe&ved=0CA0QjhxqFwoTCPCEwJ6aguoCFQAAAAAdAAAAABAD
  [10]: https://i.sstatic.net/fcESx.jpg
  [11]: https://i.sstatic.net/rz5Hc.jpg
  [12]: https://i.sstatic.net/znVAA.jpg
  [13]: https://i.sstatic.net/sl1pw.jpg
  [14]: https://i.sstatic.net/anIzE.jpg