Supports native binding for ffprobe

Open
#25 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
node.js, rust

Research direction

Start by reviewing the existing cross-platform static library builds in CI and how napi-rs is used for the current WebCodecs implementation. Compare the requested ffprobe stream fields and command output with the binding API design; done means a cross-platform native Node.js binding that exposes equivalent information and supports the stated WebCodecs testing goal.

Written by the indexing model from the issue text.

Description

ffprobe is a crucial tool for extracting audio and video information.

Currently, there are almost no native NAPI bindings available for Node.js(https://www.npmjs.com/search?q=ffprobe).
Existing libraries either involve cumbersome installation processes or lack cross-platform compatibility.

We've already implemented cross-platform static library builds in our CI, so let's have napi-rs handle it. This will also help us test our webcodecs implementation.

See also node-av: https://www.reddit.com/r/node/comments/1n3y6ye/comment/nbk8p2z/


ffprobe -v error -select_streams v:0 -show_entries stream=r_frame_rate,avg_frame_rate,time_base,start_pts,duration,has_b_frame foo.mp4

# output
[STREAM]
has_b_frames=2
r_frame_rate=30/1
avg_frame_rate=30/1
time_base=1/15360
start_pts=0
duration=3.000000
[/STREAM]
Dominant language
Rust
Stars
94
Forks
2
Avg merge
14h 15m
Merged PRs (30d)
4

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Brooooooklyn/webcodecs-node

All issues in Brooooooklyn/webcodecs-node

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.