Lukas Herman
18b81bfba6
WIP
2020-11-04 05:43:40 +00:00
Lukas Herman
9d98eb8aaf
Go mod tidy
2020-11-03 07:27:32 +00:00
Lukas Herman
3ea35bebab
Fix broken mediastream unit test
2020-11-02 23:05:59 -08:00
Lukas Herman
83c08e6c5f
Recreate facedetection example with the new APIs
2020-11-02 23:04:58 -08:00
Lukas Herman
2f17017450
Rename rtp-send to rtp
2020-11-02 22:31:46 -08:00
Lukas Herman
7cbda134b0
Add NewRTPReader to Track interface
2020-11-02 22:28:01 -08:00
Lukas Herman
115be126ec
Add documentation around Reader interfaces
2020-11-02 22:22:19 -08:00
Lukas Herman
79dcb4f1af
Add video and audio RTP readers
2020-11-02 22:12:43 -08:00
Lukas Herman
5db4007e73
Enable non-webrtc sampler
2020-11-01 15:31:36 -08:00
Lukas Herman
77ebcecac6
Add codec selector by string names
2020-11-01 15:14:08 -08:00
Renovate Bot
a0d0949954
Update golang.org/x/sys commit hash to 201ba4d
...
Generated by Renovate Bot
2020-11-01 01:12:10 -07:00
Lukas Herman
f396092609
Default high profile for x264 when possible
v0.1.3
2020-11-01 01:08:03 -07:00
Lukas Herman
ee6cf08c44
Use miniaudio in favor of implementing ourselves
...
miniaudio supports various backends. This will help reducing code
surface
2020-11-01 00:48:54 -07:00
Lukas Herman
6a211aa19f
Use x264 as default in example
2020-11-01 00:38:42 -07:00
Lukas Herman
b089610c27
Fix incorrect audio latency
2020-11-01 00:32:20 -07:00
Lukas Herman
1d34ec9c5d
Fix broken vpx example
2020-10-31 23:55:46 -07:00
Lukas Herman
7bd3efc8b7
Fix broken conditional build
2020-10-31 11:19:02 -07:00
Lukas Herman
8396fd7aac
Add an end-to-end benchmark
2020-10-31 10:35:53 -07:00
Lukas Herman
3787158dba
WIP
2020-10-31 01:12:14 -07:00
Lukas Herman
640eeb0cc0
Fix panic when printing non-reference types
2020-10-30 17:50:55 -07:00
Lukas Herman
16ceb45c25
Replace <nil> -> any in prop pretty format
2020-10-30 17:42:07 -07:00
Lukas Herman
c98b3b0909
Enhance driver discovery logging
2020-10-30 17:32:40 -07:00
Lukas Herman
e6c98a844f
Remove unused fmt
2020-10-30 10:01:07 -07:00
Lukas Herman
2a70c031b8
Remove unwanted logging
2020-10-30 09:04:51 -07:00
Lukas Herman
047013be95
Fix division by 0 when sample rate is not filled
2020-10-30 08:58:46 -07:00
Lukas Herman
765318feb6
Fix webrtc example
2020-10-30 01:19:03 -07:00
Lukas Herman
af6d31fde5
Revert go.mod
v0.1.2
2020-10-30 00:37:38 -07:00
Lukas Herman
2f5e4ee914
New mediadevices design
...
Changelog:
* Better support for non-webrtc use cases
* Enable multiple readers
* Enhance codec selectors
* Update APIs to reflect on the new v3 webrtc design
* Cleaner APIs
2020-10-30 00:33:55 -07:00
Lukas Herman
1720eee38c
Fix unpropagated audio sampling rate from microphones
2020-10-29 22:41:10 -07:00
Lukas Herman
00877c74a0
Add audio latency detection
2020-10-29 22:37:29 -07:00
Lukas Herman
559c6a13a1
Update readers to be memory pool friendly
2020-10-29 00:04:12 -07:00
Lukas Herman
f4a4edcabd
Update codec.Reader interface to return byte slice
2020-10-29 04:48:47 +00:00
Lukas Herman
c8547c4597
Rename simple -> webrtc
2020-10-27 21:13:07 -07:00
Lukas Herman
21bb12dd6b
Reduce examples to increase maintainability
...
Changes:
* Remove facedetection, rtp-send, and screenshare examples
* Rename simple to webrtc
2020-10-27 21:10:50 -07:00
Lukas Herman
fd43659fed
Remove code owners
2020-10-27 21:09:19 -07:00
Lukas Herman
82f33cb572
Skip mmal package in CI
2020-10-27 21:08:12 -07:00
Lukas Herman
4f9822349a
Add mmal hardware video encoder support
...
Using mmal significantly boosts video fps by offloading the encoding
work from CPU to GPU. On a Raspberry Pi 3, libx264 only gives 480p18,
whereas mmal can give 720p30.
2020-10-27 21:08:12 -07:00
Lukas Herman
16bcd0b7dd
Fix step wise resolutions in linux camera
...
Some cameras support a range of resolutions with step wise. The fix is
to not only capture the highest resolutions but uses the step wise to
determine if we can support the hardcoded standard resolutions,
https://commons.wikimedia.org/wiki/File:Vector_Video_Standards2.svg .
In the future, we should use a custom data structure to capture more
resolutions that are outside of the listed standard resolutions.
2020-10-26 21:26:03 -07:00
Lukas Herman
2022a4b7f7
Fix undiscovered some camera devices
...
/dev/v4l/by-path doesn't return all available devices. So, to make sure
that we include all available devices, the list of devices will also
complement with /dev/video*.
2020-10-26 20:22:40 -07:00
Renovate Bot
0b6549eb8f
Update actions/setup-go action to v2
...
Generated by Renovate Bot
2020-10-27 10:26:29 +09:00
Renovate Bot
1b0a237438
Update github.com/jfreymuth/pulse commit hash to 1e525c4
...
Generated by Renovate Bot
2020-10-20 12:40:12 +09:00
Lukas Herman
36edbd9485
Add meta reader helper
...
Since broadcaster has a ring buffer, we can take advantage of this
property to read the meta data for video/audio without losing any data.
2020-10-15 22:28:37 -04:00
Lukas Herman
eb689a3c79
Remove buffer in linux camera
2020-10-15 00:12:55 -04:00
Lukas Herman
e4b1b1aaba
Fix included unsupported formats
2020-10-14 12:18:17 -04:00
Lukas Herman
0f5df05c16
Update lherman-cs/opus to remove libopusfile
2020-10-12 01:32:22 -04:00
Lukas Herman
9dcfaf1c1e
Switch from type alias to embedded struct
...
Embedded struct provides more future compatibility
2020-10-11 23:32:58 -04:00
Lukas Herman
238f190e71
Use MediaDeviceInfo instead of webrtc.RTPCodecType
...
Changes:
* Add unit tests for mediastream
* Remove webrtc.RTPCodecType dependency in mediastream
* Add Kind to Tracker interface
2020-10-11 01:29:59 -04:00
Lukas Herman
0210ec6ca6
Add audio change detection
2020-10-10 23:47:35 -04:00
Lukas Herman
abdd96e6b2
Replace Name with RTPCodec in codec builder
...
Allowing users to implement RTPCodec will give users freedom to have
a custom encoder with custom RTP payload.
2020-10-08 11:33:38 -04:00
Lukas Herman
c9779e7f73
Add audio pull-based broadcast
2020-10-05 22:30:03 -04:00