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

Add websocket compatibility + other improvements #77

Merged
merged 18 commits into from
Aug 31, 2022
Merged

Conversation

juanmc2005
Copy link
Owner

@juanmc2005 juanmc2005 commented Jul 28, 2022

This PR addresses issue #9, #73, #79 and partly #68.

Changelog

  • Add WebSocketAudioSource
  • Add websockets>=10.3 dependency
  • Add websocket tutorial in the README
  • Add dynamic resampling when sample rates don't match instead of failing
  • Add Resample block
  • Add --segmentation and --embedding arguments to diart.stream, diart.benchmark and diart.tune
    • These are only compatible with pyannote models. Loading models outside of pyannote are left for a future version
  • Add diart.blocks.AdjustVolume to dynamically change the volume of chunks
  • Make TemporalFeatureFormatter more flexible
    • It now allows the same instance to be used with different feature types
  • Add attach_hooks() and attach_observers() to RealTimeInference so users can receive pipeline outputs and perform custom operations without rewriting the inference code
  • Add to_dict() and to_inverse_dict() to SpeakerMap to handle assignments more easily
  • Replace Optimizer.optimize(...) with Optimizer.__call__() to be consistent with the rest of the API
  • Add possibility to set latency="max" or latency="min" in PipelineConfig
  • Add possibility to set config=None in OnlineSpeakerDiarization, which will instantiate a default config
  • Add diart.sinks.DiarizationPredictionAccumulator to accumulate diarization predictions in memory without writing to disk
  • Make DiarizationPredictionAccumulator and RTTMWriter accept any tuple as long as the first element is an Annotation

@juanmc2005 juanmc2005 added the feature New feature or request label Jul 28, 2022
@juanmc2005 juanmc2005 added this to the Version 0.5 milestone Jul 28, 2022
@juanmc2005 juanmc2005 changed the title Add websocket compatibility Add websocket compatibility + API improvements Jul 29, 2022
@juanmc2005
Copy link
Owner Author

TODO: Rename RTTMAccumulator to something like DiarizationPredictionAccumulator.

This object has nothing to do with RTTM files

@juanmc2005 juanmc2005 changed the title Add websocket compatibility + API improvements Add websocket compatibility + other improvements Aug 30, 2022
@juanmc2005 juanmc2005 marked this pull request as ready for review August 30, 2022 19:19
@juanmc2005
Copy link
Owner Author

juanmc2005 commented Aug 31, 2022

Test the following:

  • Websocket server and client
  • Dynamic resampling with diart.stream
  • --segmentation and --embedding
  • AdjustVolume
  • diart.benchmark
  • diart.tune

@juanmc2005 juanmc2005 mentioned this pull request Aug 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants