Instead of using now() when the RTP packet is created, use the earlier packet->frame_timestamp that we're already collecting for host latency stats. This timestamp is more accurate to when we captured the frame, and the same timestamp value is shared by all RTP packets that make up the same video frame. Duplicate frames without capture timestamps use the ratecontrol timestamp.
* Isolated display - web and backend
Isolated display - web and backend
* Moved settings outside of the advanced display
* Update virtual_display.cpp with isolated setting for better maintenance
Update virtual_display.cpp with isolated setting for better maintenance. The isolated routine becomes an additional routine instead of a replacement for the original one.
* Changed source formatting, removed English in non-English languages, removed test code
Changed source formatting, removed English in non-English languages, removed test code
* change blank/unused lines in config.cpp
change blank/unused lines in config.cpp
* Change blank lines in DisplayDeviceOptions.vue
Change blank lines in DisplayDeviceOptions.vue
* Change line spacing in config.h
Change line spacing in config.h
* Changed line spacing in config.cpp
Changed line spacing in config.cpp
* Changed lines/line spacing in virtual_display.cpp
Changed lines/line spacing in virtual_display.cpp
* Fix spaceing on virtual_display.cpp
Fix spaceing on virtual_display.cpp
* Added check to not do anything if the virtual display is not active.
Added check to not do anything to the order of the displays if the isolated checkbox is set and if the virtual display is not active.
* Minor formatting fix w/ add Chinese locale
* Expose `matchDisplay` though not used for now
---------
Co-authored-by: Yukino Song <nutosservice@gmail.com>