Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FFprobe for File::aux_metadata disabled #186

Open
FelixMcFelix opened this issue May 21, 2023 · 1 comment
Open

FFprobe for File::aux_metadata disabled #186

FelixMcFelix opened this issue May 21, 2023 · 1 comment
Labels
bug Something isn't working help wanted Extra attention is needed input Relates to raw audio data handling. tracks Relates to audio control, state, or lifecycle management.

Comments

@FelixMcFelix
Copy link
Member

Songbird version: next

Rust version (rustc -V): rustc 1.69.0 (84c898d65 2023-04-16)

Serenity/Twilight version: N/A

Description:
Testing on #179 showed that ffprobe-based aux_metadata support is broken on two fronts:

  1. serde_aux::prelude::deserialize_option_number_from_string does not correctly map a missing field into None.
  2. Executing ffprobe with the default tokio parameters on some (particularly short) files leads to a deadlock, despite Command::output being the recommended tool for doing so.

Currently, the aux_metadata calling point is commented out until these points can be figured out.

Steps to reproduce:
Call aux_metadata on any File.

@FelixMcFelix FelixMcFelix added bug Something isn't working help wanted Extra attention is needed input Relates to raw audio data handling. tracks Relates to audio control, state, or lifecycle management. labels May 21, 2023
@voidentente
Copy link

voidentente commented Dec 10, 2024

Maybe instead spawn a tokio thread and await it in aux_metadata and have symphonia parse the metadata instead? This way you don't need ffprobe and no need to deserialize any ffprobe output.

Edit: This is more or less what Metadata<'_> is doing. What's the point of having AuxMetadata call ffprobe if it states it doesn't need the file?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help wanted Extra attention is needed input Relates to raw audio data handling. tracks Relates to audio control, state, or lifecycle management.
Projects
None yet
Development

No branches or pull requests

2 participants