module
Fluorite::Docs::B_PROBE::MEDIA_PROBING
Overview
Deep Media Probing and Inspection
Fluorite provides a strongly-typed parser and model hierarchy for ffprobe JSON output.
It enables instant inspection of container durations, file sizes, audio/video stream properties,
framerate fractions, aspect ratios, and metadata tags.
Executive Summary & Key Topics
| Topic | Method / Anchor | Description |
|---|---|---|
| Probing Media Files | .topic_01_probing_files |
Using Fluorite.probe to retrieve structured media info. |
| Stream Analysis | .topic_02_stream_analysis |
Querying individual video and audio streams. |
Related Guides & Source References
- src/fluorite/probe/models.cr
- src/fluorite/probe/runner.cr
Defined in:
fluorite/docs/b_probe/media_probing.crClass Method Summary
-
.topic_01_probing_files : Nil
Probing Media Files: Using Fluorite.probe to retrieve structured media info.
-
.topic_02_stream_analysis : Nil
Stream Analysis: Querying individual video and audio streams.
Class Method Detail
def self.topic_01_probing_files : Nil
#
Probing Media Files: Using Fluorite.probe to retrieve structured media info.
Inspect any local file or network stream with Fluorite.probe:
info = Fluorite.probe("gameplay.mkv")
puts "Format: #{info.format_name} (#{info.human_size})"
puts "Duration: #{info.duration_formatted}"
puts "Video: #{info.video_summary}" # e.g. "H.264 1920x1080 @ 60.0 fps (yuv420p)"
puts "Audio: #{info.audio_summary}" # e.g. "AAC 2.0 @ 192 kbps, 48000 Hz"
def self.topic_02_stream_analysis : Nil
#
Stream Analysis: Querying individual video and audio streams.
You can filter and query multiple audio or video tracks:
info.audio_streams.each_with_index do |track, idx|
puts "Track ##{idx + 1}: #{track.codec_name} #{track.channels} channels (#{track.sample_rate} Hz)"
end