forked from ruffle-rs/ruffle
-
Notifications
You must be signed in to change notification settings - Fork 0
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
Just to try to get Github Actions to run on a fork #1
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This is ultimately intended to replace `Vec<u8>` in both `SwfMovie` and `NetStream`, but for the time being we only apply this to streams. SWF-related types are deeply embedded elsewhere and the changes to slice dereferencing will be quite invasive. We also remove some unnecessary reader drops in `NetStream.tick` at the same time.
…ffer`. A `Substream` can be read in one of two ways: * Converting it to an iterator that yields individual chunks of the substream in `Slice` form. * Converting it to a `SubstreamCursor`, which implements `Read` for bytewise read access. Chunk-based reading is intended for code that needs to know about chunk boundaries. Self-terminating chunk formats should be read with the cursor type.
* `start_substream` plays audio data from a `Substream`, giving back a `SoundInstanceHandle` that can be manipulated the same way as the one from `start_stream` * `append_substream` adds more data to an already playing `Substream` backed `SoundInstance`. In the event that a sound has finished playing, `append_substream` will fail, and you have to start a new sound stream. This is ultimately intended to replace the current streaming audio setup, which is SWF-specific and has a number of unused parameters. It is also designed to support progressive download in the future. We also include stub impls for `NullAudioBackend`.
This also removes `append_substream` since `Substream` now handles that internally. This requires duplicating a huge chunk of the decoder code to work with `Buffer` types instead of `SwfMovie` types. Eventually we'll want to wipe out all the SWF-specific stuff and use `Buffer` exclusively.
`NetStream`s in AVM1 do not play audio unless attached to a `MovieClip`. As far as I can tell there doesn't seem to be any equivalent API in AVM2.
…ll failure modes into returning `None` in `AudioManager`
…liceRef` for debugging.
…to try and get rid of audio stuttering Spolier alert: this doesn't work, I'm just committing this for archival purposes.
… sound. This prevents the sound from finishing before we can add a second slice to it.
… I don't know why the compiler didn't flag this
This would ordinarily be a separate branch but the fix deadlocks without the new buffer type.
…the existing data out first. `init_buffer` will remove all existing buffer state and prepare the `NetStream` to accept a new/different video.
…n't throw out the rest of it
They do not execute until the next stream tick. We also implement a few new status events, including some AVM2 exclusive ones.
AVM `NetStream` reports and accepts values in seconds, so all the unit conversions went there now.
…or video to play before tracking time and seeking.
…ess and loader impl screws up timing
Our list of 'playing' streams is now a list of 'active' streams. This nomenclature change also indicates a rule change: streams are activated whenever there is work for them to do, and they are only ever deactivated by themselves when they're out of work to do. We no longer deactivate streams when they are paused as they may still have a queued seek to process.
We are not interested in testing the timing of buffer loads (since that will vary based on hardware), we just need to know that we got a buffer load event. Furthermore all our seeks are in-buffer so multiple buffer full events shouldn't happen in Ruffle.
sleepycatcoding
changed the title
Just to try to get Github Actions to run a fork
Just to try to get Github Actions to run on a fork
Oct 13, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.