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

Flash ByteArray to .ogg #16

Closed
BrandInMotion opened this issue May 13, 2015 · 2 comments
Closed

Flash ByteArray to .ogg #16

BrandInMotion opened this issue May 13, 2015 · 2 comments

Comments

@BrandInMotion
Copy link

Hi Chris,

Thanks for taking the time to develop and share this amazing codebase, it has really helped in our JS implementation of a web-based recording app.

We're thinking of using a Flash fallback for browsers that don't support getUserMedia() (stand up Safari!) which is working, but we're ending up with WAV files which is not ideal. What I'd like to do is pipe the Flash ByteArray data in realtime to recorderjs so that an .ogg can be made on the fly. In your opinion, would this be possible?

Thanks again, your library has been invaluable!

@chris-rudmin
Copy link
Owner

Yes, perhaps the easiest way would be to instantiate your own instance of the webworker and send ArrayBuffers to the worker after initializing with an appropriate config. If you want the events and recorder interface, theoretically heres what you would do:

  • Disable check for getUserMedia and disable InitStream call inside constructor
  • Init the recorder instance.
  • Insert logic to create audio buffers using recorder.audioContext.createBufferSource() from your flash data and connect it to the appropriate nodes whenever you receive data.
  • You should be ready to record as normal now

@BrandInMotion
Copy link
Author

Thanks for getting back to me so quickly Chris.

The js would essentially be headless with all events and interface handled
by Flash. I will give your suggestion a go and let you know how it turns
out. Once done, I'd be happy to share the AS3 code for anyone wanting
similar functionality.

Regards,
Dominic

Dominic Lee
Head of Product Development t. 021 762 7671 c. 082 838 3529 e.
dominic@brandinmotion.co.za skype. dominic.lee.za web.
www.brandinmotion.co.za a. regent square - office A004, cnr. doncaster
road & rosmead ave, kenilworth, cape town, south africa
http://www.brandinmotion.co.za https://www.facebook.com/BrandInMotionSA
http://www.linkedin.com/company/brand-in-motion Confidentiality
Disclaimer Notice:

This email contains the BrandinMotion and/or its subsidiaries confidential
information. It is intended only for the person to whom it is addressed and
access to this e-mail by anyone else is unauthorised. Any recipient who is
not a named as an addressee is not entitled to read this email, disclose
its contents to any person or make copies. If you have received this email
in error, please notify the BrandinMotion and/or its subsidiaries
immediately by return email. Whilst all reasonable steps are taken to
ensure the accuracy and integrity of information and/or data transmitted
electronically and to preserve the confidentiality thereof, no liability or
responsibility whatsoever is accepted if information or data is, for
whatever reason, corrupted or does not reach its intended destination. In
the event that this e-mail is of a personal nature and not business
related, the recipient accepts that this e-mail is not authorised by, or
sent on behalf of the BrandinMotion and/or its subsidiaries.

On Wed, May 13, 2015 at 2:40 PM, Chris Rudmin notifications@github.com
wrote:

Yes, perhaps the easiest way would be to instantiate your own instance of
the webworker and send ArrayBuffers to the worker after initializing with
an appropriate config. If you want the events and recorder interface,
theoretically heres what you would do:

  • Disable check for getUserMedia and disable InitStream call inside
    constructor
  • Init the recorder instance.
  • Override the InitStream method to create audio buffers from your
    flash data and connect it to the appropriate nodes.
  • Call InitStream()
  • You should be ready to record as normal now


Reply to this email directly or view it on GitHub
#16 (comment)
.

chris-rudmin added a commit that referenced this issue Jul 15, 2020
Edge now DOES support native playback of opus files.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants