fryshorts
3031cb4b4c
Minor code refactoring in v4l2 plugin.
2014-08-11 23:00:57 +02:00
jp9000
04712b5fe9
(API Change) Unsquish obs_data_* names
...
Changed: To:
-----------------------------------------------
obs_data_getjson obs_data_get_json
obs_data_getstring obs_data_get_string
obs_data_getint obs_data_get_int
obs_data_getdouble obs_data_get_double
obs_data_getbool obs_data_get_bool
obs_data_getobj obs_data_get_obj
obs_data_getarray obs_data_get_array
obs_data_setstring obs_data_set_string
obs_data_setint obs_data_set_int
obs_data_setdouble obs_data_set_double
obs_data_setbool obs_data_set_bool
obs_data_setobj obs_data_set_obj
obs_data_setarray obs_data_set_array
obs_data_item_getstring obs_data_item_get_string
obs_data_item_getint obs_data_item_get_int
obs_data_item_getdouble obs_data_item_get_double
obs_data_item_getbool obs_data_item_get_bool
obs_data_item_getobj obs_data_item_get_obj
obs_data_item_getarray obs_data_item_get_array
obs_data_item_setstring obs_data_item_set_string
obs_data_item_setint obs_data_item_set_int
obs_data_item_setdouble obs_data_item_set_double
obs_data_item_setbool obs_data_item_set_bool
obs_data_item_setobj obs_data_item_set_obj
obs_data_item_setarray obs_data_item_set_array
2014-08-09 11:57:36 -07:00
jp9000
2d606dd8d8
(API Change) Use 'get' convention: API callbacks
...
Renamed: To:
-------------------------------------------------------
obs_source_info::defaults obs_source_info::get_defaults
obs_source_info::properties obs_source_info::get_properties
obs_output_info::defaults obs_output_info::get_defaults
obs_output_info::properties obs_output_info::get_properties
obs_output_info::total_bytes obs_output_info::get_total_bytes
obs_output_info::dropped_frames obs_output_info::get_dropped_frames
obs_encoder_info::defaults obs_encoder_info::get_defaults
obs_encoder_info::properties obs_encoder_info::get_properties
obs_encoder_info::extra_data obs_encoder_info::get_extra_data
obs_encoder_info::sei_data obs_encoder_info::get_sei_data
obs_encoder_info::audio_info obs_encoder_info::get_audio_info
obs_encoder_info::video_info obs_encoder_info::get_video_fino
obs_service_info::defaults obs_service_info::get_defaults
obs_service_info::properties obs_service_info::get_properties
2014-08-09 11:57:30 -07:00
jp9000
c83d05117f
(API Change) Unsquish libobs API callback names
...
Renamed: To:
-------------------------------------------------------
obs_source_info::getname obs_source_info::get_name
obs_source_info::getwidth obs_source_info::get_width
obs_source_info::getheight obs_source_info::get_height
obs_output_info::getname obs_output_info::get_name
obs_encoder_info::getname obs_encoder_info::get_name
obs_service_info::getname obs_service_info::get_name
2014-08-08 11:04:46 -07:00
jp9000
4122a5b9b5
(API Change) Rename 'source_frame' + related
...
For the sake of naming consistency with the rest of obs.h, prefix this
structure and associated functions with obs_.
Renamed structures:
- struct source_frame (now obs_source_frame)
Renamed functions:
- source_frame_init (now obs_source_frame_init)
- source_frame_free (now obs_source_frame_free)
- source_frame_create (now obs_source_frame_create)
- source_frame_destroy (now obs_source_frame_destroy)
Affected functions:
- obs_source_output_video
- obs_source_get_frame
- obs_source_release_frame
2014-08-08 11:04:42 -07:00
Jim
eecc9ab937
Merge pull request #202 from fryshorts/v4l2-input
...
Add libv4l2 as dependency for the v4l2 plugin
2014-07-29 11:39:43 -07:00
jp9000
892fdea83e
Remove macro to free locale
...
This functionality can now be handled automatically because locale can
now be freed seaparately from obs_module_unload with
obs_module_free_locale, which is called automatically when the module is
being freed.
2014-07-27 17:29:10 -07:00
jp9000
f0ac19abba
Remove version parameter from obs_module_load
...
Replaced by obs_get_version() API
2014-07-27 17:29:10 -07:00
fryshorts
273c244eff
Improved Documentation and Logging for mmap functions in v4l2 plugin.
...
This adds some documentation to the mmap functions and also
improves the logging by bumping errors to LOG_ERROR.
2014-07-26 19:55:57 +02:00
fryshorts
276a97877b
Add const keyword to fixed lists in v4l2 plugin.
...
This should save a little bit of memory memory.
2014-07-26 19:29:08 +02:00
fryshorts
25f71fd71d
Improved Documentation and Logging for update in v4l2 plugin.
...
This adds some documentation to the update function and also
improves the logging by adding some info and bumping errors
to LOG_ERROR.
2014-07-26 19:29:08 +02:00
fryshorts
b88fe5078c
Remove the getwidth/getheight functions from v4l2 plugin.
...
Those functions are actually causing more problems than
helping out with the preview because the width/height is
updated immediately while the actual size of the frames
displayed changes later.
2014-07-26 19:29:08 +02:00
fryshorts
b629087513
Reorganized data struct and update function for v4l2 plugin.
...
Due to the plugin creating a thread to retrieve and output the
captured image data, care must taken to not modify data the
thread reads from the outside while the thread is running.
In previous revisions some settings accessed by the capture
thread were written to in the update function which could cause
image corruption and in the worst case crashes.
The members of the data struct are now split into two groups,
those that are used by the thread while it is running and must
not be changed from the outside, and those can be changed at any
time.
2014-07-26 19:29:08 +02:00
fryshorts
05ddbeb1fe
Add function to prepare frame structure to v4l2 plugin.
...
This adds a function to prepare the source_frame struct for use
with obs_source_output_video. Since all of the values except for
the timestamp and data pointers are known in before it makes
little sense to compute them over and over again.
Due to the fact that v4l2 uses a single continuous memory segment
for multi planar formats we can also precompute memory offsets for
the planes.
2014-07-26 19:29:08 +02:00
fryshorts
a5e53d5a8d
Fix handling of multiplanar pixelformats in v4l2 plugin.
...
The data provided by v4l2 for multiplanar formats is one
consecutive block that just needs to be splitted for obs.
2014-07-26 19:29:08 +02:00
fryshorts
a6bb42c367
Display emulated formats as such in v4l2 plugin.
...
Formats that are emulated by v4l2 are marked by appending
"(Emulated)" to them.
2014-07-26 19:29:08 +02:00
fryshorts
9a573bb456
Replace all system calls with there counterpart in libv4l2.
...
By using the wrapper functions supplied by libv4l2 we gain
support for formats not natively supported by obs.
The library intercepts certain system calls to transparently
enable recoding.
2014-07-26 19:29:08 +02:00
fryshorts
d6f65be966
Add libv4l2 as requirement for the v4l2 plugin.
...
In order to convert formats not natively supported by obs the
v4l2 userspace library is required. This patch adds a cmake
script to find the library.
2014-07-26 19:29:08 +02:00
benklett
4b2010aa4e
Add 720x576 (DV-PAL) as another fallback v4l2 framesize
2014-07-25 15:46:38 +02:00
Jim
eeb6fc6e9c
Merge pull request #180 from fryshorts/v4l2-input
...
Assorted fixes for the v4l2 plugin
2014-07-18 23:54:47 -07:00
BtbN
38c2fc87aa
Move all data into the subdir it belongs to
...
Completely removes the build dir in favor of cmake based build layouting
2014-07-19 01:38:41 +02:00
fryshorts
87a527701a
Use default color space in v4l2 plugin
2014-07-16 23:42:55 +02:00
fryshorts
ba3c093156
Add fallback sizes and framerates to v4l2 plugin.
...
Until a proper fix is found to support devices that use stepwise
or continuous values for framesize and framerate this adds fixed
values that can be selected.
For devices that support discrete values those are still queried
and used.
2014-07-16 23:42:55 +02:00
fryshorts
27297e7009
Add more logging to v4l2 plugin.
...
This adds some mostly user focused logging statements.
2014-07-16 23:42:55 +02:00
fryshorts
720f159274
Use macro for prefixing log messages in v4l2 plugin
2014-07-16 23:42:55 +02:00
fryshorts
d8f3761cad
Fix a possibly left open file descriptor in v4l2 plugin
2014-07-16 23:42:55 +02:00
fryshorts
d03c94a000
Some minor code refactoring in v4l2 plugin
...
Small code changes to decrease indentation a little.
2014-07-16 23:42:55 +02:00
jp9000
482791c5b6
Add locale for modules
2014-07-11 17:29:00 -07:00
fryshorts
1cf19d06f9
Fix infinite loop in v4l2 plugin
...
With no device present the capability callbacks would cause an
infinite loop.
2014-07-11 17:48:12 +02:00
jp9000
0b4a259e56
Remove 'locale' parameter from all callbacks
...
The locale parameter was a mistake, because it puts extra needless
burden upon the module developer to have to handle this variable for
each and every single callback function. The parameter is being removed
in favor of a single centralized module callback function that
specifically updates locale information for a module only when needed.
2014-06-25 12:36:26 -07:00
jp9000
74b4743bce
Remove 'locale' from properties
...
Having the value stored here is somewhat pointless, so this is one step
in fixing the locale handling. Locale should be handled by the modules
themselves with their own loaded locale lookup information.
2014-06-25 12:36:26 -07:00
Azat Khasanshin
32911f774c
v4l2 plugin properties
...
added ability to choose device, pixel format, resolution
and frame rate
2014-06-18 23:37:19 +04:00
fryshorts
5f8a6db816
Add initial implementation of a v4l2 capture plugin
...
This patch adds a plugin to capture video data from v4l2 devices under linux.
2014-06-18 21:31:23 +02:00