lifning
7b06ed61d1
constructor for RetroComponentBase
2021-08-11 01:08:22 -07:00
lifning
47d7113b03
implement the rest of the callbacks in the dispatcher
2021-08-11 00:42:13 -07:00
lifning
2b73e3d836
document env callbacks & continue sketching component api
2021-08-10 17:59:00 -07:00
viv
4a38b99c5e
add unserialize flag to ffmpeg_recorder
2021-08-09 22:32:22 -07:00
Vivian Lim
d8d0038643
Merge pull request 'wrapper: invoke handler.set_memory_maps()' ( #10 ) from viv/call-set-memory-maps into matriarch
...
Reviewed-on: https://git.vvn.space/cinnabon/rustro/pulls/10
2021-08-03 08:11:05 +00:00
viv
3cad3b1e29
Don't try to write an audio frame if there aren't any planes
2021-08-01 00:08:18 -07:00
Viv Lim
3beb1a8519
fix audio sync when being played by quicktime
...
the thing I was doing is on the audio, i was setting the pts (presentation timestamp) after the frame was filtered by ffmpeg, which could be frames later, and could be batched.
i set the pts before filtering, but that made things worse. for some reason, the audio filter is remapping the pts I use (frame count, 1/60) to the time base 1/44100.
the video filter does not do this, which is why I specifically remap it later
I had to make that remap step I added later skip the audio channel
2021-07-28 23:54:40 -07:00
Viv Lim
7c03aac388
Don't panic if the emulator doesn't have frames ready to render, use angrylion with parallel-n64
2021-07-27 00:50:11 -07:00
Viv Lim
ee9678af68
cleaner pts rescaling at packet write time. writing headers can change time_base by design so just adapt to it
2021-07-26 01:10:48 -07:00
Viv Lim
ea771c8dd7
synced a/v on some players at least. ideally i'd like to write the header with the right time bases set.
2021-07-26 00:42:06 -07:00
Viv Lim
57530da214
able to record ok-sounding audio from picodrive
2021-07-25 22:02:40 -07:00
Vivian Lim
41da935d42
actually write real audio (was sending aframe instead of filtered_aframe to encoder)
...
and a few other fixes / shufflings
2021-04-25 19:31:06 -07:00
Vivian Lim
7920d944d4
dedupe code for receiving and writing packets
2021-04-24 02:18:06 -07:00
Vivian Lim
d660a9cc94
shuffle some stuff around
2021-04-23 23:55:26 -07:00
Vivian Lim
eac635dc71
video with slightly more correct time scale
2021-04-23 20:02:07 -07:00
Vivian Lim
88d1ab0b0e
actually write a video!!!!!
2021-04-22 00:16:09 -07:00
Vivian Lim
d3a88573d7
move around some things but now my debugger doesn't work for some inexplicable reason
2021-04-20 23:57:39 -07:00
Vivian Lim
2408654651
writes some garbage to file each frame (using .mp4 output). i'm not sure if this is an improvement
2021-04-19 01:06:47 -07:00
Vivian Lim
ba90e89cdb
hardcoded match for sega genesis video geometry
2020-11-29 15:13:45 -08:00
Vivian Lim
c119c5eacd
audio sample rate hacks. todo: review which ones are actually needed
2020-11-29 15:13:24 -08:00
Vivian Lim
439e575982
make audio encode failure non-fatal so we can run to the end at least
2020-11-29 15:12:48 -08:00
Vivian Lim
c78d1cb9fd
reduce # of frames run while poking around
2020-11-29 15:12:27 -08:00
Vivian Lim
15c830f0b1
add a lot of debug output
2020-11-29 15:12:10 -08:00
Vivian Lim
bdba596d07
stop frame properties from changing after starting, ffmpeg doesn't like that
2020-11-29 02:27:37 -08:00
Vivian Lim
764485b2b5
update crate ref
2020-11-29 02:02:32 -08:00
Vivian Lim
997be77c8a
switch to ffmpeg-next
2020-11-29 02:01:39 -08:00
Vivian Lim
d1e7019902
some fumbling
2020-11-29 02:01:07 -08:00
lif
f94f5c836f
WIP: getting closer to actually encoding a frame!!
2020-01-25 19:32:12 -08:00
lif
abff72a694
fix a warning & the cargo version of ffmpeg4
2020-01-25 12:18:35 -08:00
lif
b1bde52bb0
WIP - fixing some parameters in video filter
2020-01-25 12:15:59 -08:00
lif
e4046986d2
WIP get compiling again
2020-01-24 23:58:27 -08:00
Vivian Lim
a440c1a190
Merge branch 'viv/sdl_keyboard' of cinnabon/rustro into matriarch
2019-12-24 05:27:21 +00:00
Vivian Lim
801896cff6
Merge branch 'viv/inf_spf' of cinnabon/rustro into matriarch
2019-12-24 05:27:09 +00:00
Vivian Lim
6ae54e8ea2
add check for infinite framerate, which I saw on gambatte/windows
2019-12-23 21:24:45 -08:00
Vivian Lim
84973982b4
use gamepad_state for any non-zero value, instead of just positive ones.
2019-12-23 21:23:18 -08:00
Vivian Lim
243d5b3889
wrapper: invoke handler.set_memory_maps()
2019-12-23 21:20:45 -08:00
Vivian Lim
032956d343
Add keyboard input bindings
2019-12-23 00:22:35 -08:00
lif
b9023a0131
WIP ffmpeg filter graphs
2019-12-09 00:01:27 -08:00
lif
ffc53708d1
WIP more - now gets meaningful ffmpeg errors, still need to make a filter pipeline to do resampling and pixel format conv
2019-11-24 22:55:30 -08:00
lif
dafe029b01
WIP ffmpeg example, no real functionality yet
2019-11-24 01:14:22 -08:00
lif
3a37efea02
fix default pixfmt in sdl2 example, add ffmpeg4 to dev-dependencies in preparation for ffmpeg example
2019-11-24 01:13:14 -08:00
lif
e0e02397a7
use cargo examples semantically
2019-11-23 21:19:15 -08:00
lif
74952f0678
fix intellij-rust nag about serialize_size
2019-11-23 20:28:56 -08:00
lif
14a3f14b71
fix example post-rename and reorganize
2019-11-23 20:21:20 -08:00
lif
f36518d2e6
reorganize wrapped types & pass through sensor and perf counter methods
2019-11-23 20:18:52 -08:00
lif
ea3aa70936
update name and authors
2019-11-23 20:18:31 -08:00
lif
3f31cf6625
implement ENVIRONMENT_SET_INPUT_DESCRIPTORS
2019-11-23 19:37:18 -08:00
lif
49aa491904
implement ENVIRONMENT_SET_SUBSYSTEM_INFO
2019-11-19 00:31:14 -08:00
lif
7b50e6b975
implement ENVIRONMENT_GET_PROC_ADDRESS
2019-11-18 01:01:33 -08:00
lif
7f36723025
fixes for genplusgx
2019-11-18 01:01:12 -08:00