microsoft / microsoft/microsoft-ui-xaml
Proposal: More MusicProperties properties
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 8.4k
- Forks
- 942
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 105
Description
# Proposal: More MusicProperties properties
## Summary
Having access to more music data properties from an audio file.
This includes getting and setting values to those properties.
## Rationale
* The current list is very minimal.
* Other properties that you can't access are: Audio Channels, AudioSampleRate, Total track count, Disc number, Total disc numers, BPM, etc...
* Currently you'll need third party libraries to access all properties of MusicProperties. Even Windows explorer can show the data, but StorageFile cannot.
## Scope
| Capability | Priority |
| :---------- | :------- |
| Setting and Getting more MusicProperties for Mediaplayer inspired WinUI 3 apps | Must |
## Important Notes
```c#
MusicProperties data = await file.Properties.GetMusicPropertiesAsync();
uint bpm = data.BeatPerMinute;
uint discNumber = data.DiscNumber;
int channels = data.AudioChannels;
int audioSampleRate= data.AudioSampleRate;
data.TotalDiscs = 4;
```
## Open Questions
Why? Because the current list is unfinished and can get a lot bigger. Windows explorer is able to show all of the details of the audio file. So should StorageFile.
Developers that need those properties for their mediaplayer app would love more properties and control.
This can even be for when you want to create an audio file from WinUI 3. Having the option to set all the correct properties.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the StorageFile.GetMusicPropertiesAsync and MusicProperties entry points mentioned in the proposal; compare the current exposed properties with the requested audio metadata. Done means the scope and API behavior for getting and setting the additional properties are defined and validated for WinUI 3 media-player apps.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, csharp
- Domain
- api, desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100