BinBashBanana
2d3c18e48d
Emscripten improvements pt. 4
2025-05-08 11:01:43 -07:00
kwyxz
e78898f379
default to FFmpeg libavfilter virtual input device
2025-05-04 01:48:15 +00:00
pstef
6d2e7e4ec9
Remove unused variable
2025-04-12 23:02:22 +00:00
Jesse Talavera
334519167b
Make the condition for using `camera_ffmpeg` consistent with the Makefile
...
- Should fix a link error
2025-04-06 19:05:34 -04:00
Eric Warmenhoven
8c729fd029
apple: enable JoeMatt's avfoundation-based camera driver
2025-03-03 23:20:59 -05:00
Jesse Talavera
e9e12eed66
Move a variable declaration up to adhere to C89 rules
2025-03-02 17:00:40 -05:00
Jesse Talavera
80044dd282
Clarify a comment
2025-03-02 17:00:24 -05:00
Jesse Talavera
e7142903ea
Use `av_dict_get` instead of `av_dict_iterate`
...
- The latter seems to be newer, and therefore not available in all common installations of libavdevice
2025-02-23 15:26:58 -05:00
Jesse Talavera
527b977587
Simplify ffmpeg backend selection
2025-02-20 16:35:06 -05:00
Jesse Talavera
dd49f8fa0d
Remove camera device list functions from camera drivers
...
- Those will come in a future PR instead
2025-02-20 15:42:02 -05:00
Jesse Talavera
63d965753f
Merge branch 'refs/heads/master' into jtg/libavdevice-camera-driver
...
# Conflicts:
# camera/camera_driver.c
# configuration.c
2025-02-20 11:28:54 -05:00
Viačasłaŭ
5b9d5a9086
Buildfix for Debian 12 ( #17522 )
2025-02-06 02:10:06 +01:00
Viačasłaŭ
65014a46b4
Add PipeWire camera driver ( #17507 )
2025-02-03 04:30:13 +01:00
LibretroAdmin
18c85b5ccd
Cleanups -
...
* Less string copies
* Some general cleanups
* Add extra param to runloop_message_queue_push so we can pass size_t
of the message
* Consistent conventions for local variable usage for certain things
2024-12-27 15:13:45 +01:00
Jesse Talavera
3cdb95a602
Construct device URLs differently based on the ffmpeg backend
2024-12-18 21:05:30 -05:00
Jesse Talavera
b68a588ede
Split some ffmpeg camera logic into functions
2024-12-18 20:32:19 -05:00
Jesse Talavera
9ee56da6b0
Prioritize certain backends
2024-12-18 20:31:44 -05:00
Jesse Talavera
4beb80c290
Revert "Forward ffmpeg's logging to RetroArch"
...
This reverts commit 4aac4d5b9e
.
2024-12-18 14:52:28 -05:00
Jesse Talavera
4aac4d5b9e
Forward ffmpeg's logging to RetroArch
2024-12-18 14:28:49 -05:00
Jesse Talavera
7586ae7dbe
Remove stray whitespace
2024-12-17 14:57:36 -05:00
Jesse Talavera
88b6342bb5
Move up some declarations
2024-12-17 14:57:06 -05:00
Jesse Talavera
7b21ed5f93
Set options for the camera and accompanying AV structures
2024-12-17 14:37:29 -05:00
Jesse Talavera
ce1f31af8d
Don't pass in the driver context to `camera_driver::device_list_new`
...
- Unlike some other drivers, the camera driver is only initialized when a core actually asks for it
- Therefore, the driver context isn't available when it's time to ask for devices
- I could refactor the camera driver to be created earlier, but then I'd need to refactor the other drivers as well
- That'll come later in another PR
2024-12-16 21:53:37 -05:00
Jesse Talavera
3c73b36cca
Remove `const` from some fields
2024-12-16 16:45:12 -05:00
Jesse Talavera
7d31c65af1
Fix compatibility with libswscale < 6.1.100
...
- sws_scale_frame was introduced in 6.1.100
- Before this change, the driver wouldn't build on my Ubuntu Jammy VM
2024-12-16 16:38:15 -05:00
Jesse Talavera
47e0a163f3
Don't try to link the ffmpeg camera driver twice
...
- Whoops
2024-12-16 16:28:34 -05:00
Jesse Talavera
33b574198c
Swap the buffers after copying the most recent camera frame, but only upon success
2024-12-15 21:39:48 -05:00
Jesse Talavera
024fd873ec
Moved polling in the new ffmpeg camera driver to another thread
2024-12-15 21:21:08 -05:00
Jesse Talavera
2bd45eeb6f
Remove an unneeded comment
2024-12-13 14:52:11 -05:00
Jesse Talavera
391be66361
Unref the packet and frame correctly
2024-12-12 18:55:05 -05:00
Jesse Talavera
2d2e9d840c
Fix the channels being swapped
...
- Whoops, wrong format
2024-12-12 18:54:49 -05:00
Jesse Talavera
0e347391e8
Clean up ffmpeg_camera_free
...
- Release resources in the opposite order they were initialized
- Don't release resources twice (even for cases of a noop)
2024-12-12 18:18:01 -05:00
Jesse Talavera
716be2bb22
Silence some warnings
2024-12-12 18:16:24 -05:00
Jesse Talavera
0bdf616836
Fix some swapped arguments
2024-12-12 18:13:14 -05:00
Jesse Talavera
22301bd3d5
Fix a crash when closing the ffmpeg camera driver
...
- Allocate the target buffer aligned to 4-byte addresses
- Consolidate resource cleanup to mitigate similar issues
2024-12-12 11:25:43 -05:00
Jesse Talavera
b1eb37b394
Capture an image and display it (as tested with 3DEngine)
...
- Still crashes upon closing
- Colors are all wrong, too
2024-12-12 11:09:31 -05:00
Jesse Talavera
af1c4a3e7f
First crack at implementing the ffmpeg camera driver
2024-12-11 21:26:15 -05:00
Jesse Talavera
1d618bf232
Mark the `ffmpeg_camera` functions as `static`
...
- Other translation units don't need to worry about them
2024-12-03 14:59:14 -05:00
Jesse Talavera
4f88c4eb09
Forgot a comma
2024-12-02 20:41:28 -05:00
Jesse Talavera
29f31b3457
Remove some stray whitespace
...
- Excluding this trivial change from commits is gonna drive me nuts
2024-12-02 14:11:29 -05:00
Jesse Talavera
de3abdb556
Add some new camera_driver functions for retrieving a list of devices
...
- Only ffmpeg will support these right now
2024-12-01 19:34:08 -05:00
Jesse Talavera
ed04e1060a
Allocate the ffmpeg camera driver
2024-11-30 18:59:26 -05:00
Jesse Talavera
9c82e9304b
Merge branch 'master' into jtg/libavdevice-camera-driver
2024-11-30 16:37:54 -05:00
libretroadmin
82e4504968
Revert "(pt. 2) static variables are initialized to '0' automatically as per C rules"
...
This reverts commit 47410df7a3
.
2024-11-19 03:03:05 +01:00
libretroadmin
47410df7a3
(pt. 2) static variables are initialized to '0' automatically as per C rules
2024-11-18 15:59:46 +01:00
libretroadmin
b8391e233f
* PATH_MAX_LENGTH redefined from 4096 to 2048
...
* Massive reduction in heap space allocation, going from settings struct
264kb to 119Kb
* Use NAME_MAX_LENGTH for base paths/names, etc
* Use DIR_MAX_LENGTH for directory sizes
2024-09-09 05:47:32 +02:00
Jesse Talavera-Greenberg
d9207c924e
Add a stub ffmpeg camera driver
2023-07-20 15:28:16 -04:00
Jesse Talavera-Greenberg
3e10389106
Create the file where the ffmpeg camera driver will be implemented
2023-07-20 15:14:30 -04:00
libretroadmin
daa9e352cc
Remove asserts
2023-01-09 00:51:05 +01:00
twinaphex
b9c77a48c9
Buildfixes
2021-11-12 21:49:19 +01:00