03/22/19 [elphel-web-393][thud] by Oleg Dzhimiev: comments
Oleg Dzhimiev committed changes to the Elphel git project :
comments
comments
03/21/19 [elphel-web-393][thud] by Oleg Dzhimiev: values for flash_erase are read from sysfs for all partitions
Oleg Dzhimiev committed changes to the Elphel git project :
values for flash_erase are read from sysfs for all partitions
values for flash_erase are read from sysfs for all partitions
03/21/19 [elphel-web-393][thud] by Oleg Dzhimiev: flash_erase for rootfs does not depend on hardcoded value anymore - depends on sysfs (device tree) instead
Oleg Dzhimiev committed changes to the Elphel git project :
flash_erase for rootfs does not depend on hardcoded value anymore - depends on sysfs (device tree) instead
flash_erase for rootfs does not depend on hardcoded value anymore - depends on sysfs (device tree) instead
03/21/19 [meta-elphel393][thud] by Oleg Dzhimiev: mtd-utils: roll back from 2.0.2 to a working version: 2.0.0 - patches were copied back from rocko branch
Oleg Dzhimiev committed changes to the Elphel git project :
mtd-utils: roll back from 2.0.2 to a working version: 2.0.0 - patches were copied back from rocko branch
mtd-utils: roll back from 2.0.2 to a working version: 2.0.0 - patches were copied back from rocko branch
03/21/19 [elphel-web-393][thud] by Oleg Dzhimiev: updated to erase flash to 2560 LEBs for UBI, TODO: get rid of this dep
Oleg Dzhimiev committed changes to the Elphel git project :
updated to erase flash to 2560 LEBs for UBI, TODO: get rid of this dep
updated to erase flash to 2560 LEBs for UBI, TODO: get rid of this dep
03/21/19 [meta-elphel393][rocko] by Oleg Dzhimiev: removed copy-pasting from accident middle-clicks
Oleg Dzhimiev committed changes to the Elphel git project :
removed copy-pasting from accident middle-clicks
removed copy-pasting from accident middle-clicks
03/21/19 [meta-elphel393][rocko] by Oleg Dzhimiev: Merge branch 'rocko' of https://git.elphel.com/Elphel/meta-elphel393 into rocko
Oleg Dzhimiev committed changes to the Elphel git project :
Merge branch 'rocko' of https://git.elphel.com/Elphel/meta-elphel393 into rocko
Merge branch 'rocko' of https://git.elphel.com/Elphel/meta-elphel393 into rocko
03/21/19 [meta-elphel393][rocko] by Oleg Dzhimiev: check if .depend contains WORKDIR paths -> delete if not
Oleg Dzhimiev committed changes to the Elphel git project :
check if .depend contains WORKDIR paths -> delete if not
check if .depend contains WORKDIR paths -> delete if not
03/21/19 [meta-elphel393][thud] by Oleg Dzhimiev: 1. binutils 2. tcpdump 3. increased rootfs size + comments for nand
Oleg Dzhimiev committed changes to the Elphel git project :
1. binutils 2. tcpdump 3. increased rootfs size + comments for nand
1. binutils 2. tcpdump 3. increased rootfs size + comments for nand
03/21/19 [meta-elphel393][thud] by Oleg Dzhimiev: check if .depend contains WORKDIR paths -> delete if not
Oleg Dzhimiev committed changes to the Elphel git project :
check if .depend contains WORKDIR paths -> delete if not
check if .depend contains WORKDIR paths -> delete if not
03/21/19 [x393][lwir] by AndreyFilippov: Working on compression bypassing in raw data mode
AndreyFilippov committed changes to the Elphel git project :
Working on compression bypassing in raw data mode
Working on compression bypassing in raw data mode
03/21/19 [x393][lwir] by AndreyFilippov: New module to be used instead of mcntrl_tiled_rw for compressor to bypass actual compression
AndreyFilippov committed changes to the Elphel git project :
New module to be used instead of mcntrl_tiled_rw for compressor to bypass actual compression
New module to be used instead of mcntrl_tiled_rw for compressor to bypass actual compression
10393 manual
Changelog
← Older revision Revision as of 17:54, 21 March 2019 (2 intermediate revisions by the same user not shown)Line 330: Line 330: ==<font color="blue">Firmware images</font>== ==<font color="blue">Firmware images</font>== −* [https://community.elphel.com/files/393/20180511/ '''20180511''']+* [https://community.elphel.com/files/393/20190321/ '''20190321'''] +* [https://community.elphel.com/files/393/20180511/ 20180511] * [https://community.elphel.com/files/393/20180416/ 20180416] * [https://community.elphel.com/files/393/20180416/ 20180416] −* [https://community.elphel.com/files/393/20180406/ 20180406] ===Changelog=== ===Changelog=== − <font size='1'>'''==20180511=='''+ <font size='1'>'''==20190321==''' + * overall minor changes + * fixed photofinish demo + '''==20180511==''' * added cron program * added cron program * multi cameras control interface * multi cameras control interface Oleg03/20/19 [elphel-apps-php-extension][rocko] by AndreyFilippov: updated to exif/tiff
AndreyFilippov committed changes to the Elphel git project :
updated to exif/tiff
updated to exif/tiff
03/20/19 [linux-elphel][thud] by Oleg Dzhimiev: updated ubi partition size (mtd4) to match new rootfs size
Oleg Dzhimiev committed changes to the Elphel git project :
updated ubi partition size (mtd4) to match new rootfs size
updated ubi partition size (mtd4) to match new rootfs size
RTSP over UDP
Notes
← Older revision Revision as of 18:20, 20 March 2019 (11 intermediate revisions by the same user not shown)Line 6: Line 6: ==Notes== ==Notes== −* In situations when streaming across middleboxes (switches and other devices) make sure the camera link is the slowest one.+* '''In situations when streaming across middleboxes (switches and other devices) make sure the camera link to the closest network device is the slowest one or keep the image size small enough so it does not overflow any middlebox's buffers'''. * Example congestion situatation: * Example congestion situatation: − ''camera <-- 1000Mbps --> Gigabit switch <-- 100Mbps (PC NIC limited) --> PC''+ <font size=2>'''camera''' <-- 1000Mbps --> '''Gigabit switch''' <-- 100Mbps (PC NIC limited) --> '''PC'''</font> PC might not get all the packets depending on switch's buffers sizes (e.g. for netgear GS105 has 128kB which gets overflowed at image sizes 200+kB) PC might not get all the packets depending on switch's buffers sizes (e.g. for netgear GS105 has 128kB which gets overflowed at image sizes 200+kB) * Setting link speed examples: * Setting link speed examples: Line 15: Line 15: * dump UDP packets log on the camera (tcpdump if installed): * dump UDP packets log on the camera (tcpdump if installed): tcpdump -i eth0 -n udp port <someport> -w packets.pcap tcpdump -i eth0 -n udp port <someport> -w packets.pcap +* log network packets on PC: + '''wireshark''' works fine * live555 is used by vlc and mplayer while gstreamer is standalone * live555 is used by vlc and mplayer while gstreamer is standalone As UDP has no congestion control there might be several workarounds: As UDP has no congestion control there might be several workarounds: Line 21: Line 23: * Patching live555 options: * Patching live555 options: 1. Stick close to [https://tools.ietf.org/html/rfc4585 RFC4585] and [https://tools.ietf.org/html/rfc6679 RFC6679], also checkout [https://tools.ietf.org/html/rfc8087 RFC8087] & [https://tools.ietf.org/html/rfc8311 RFC8311]? 1. Stick close to [https://tools.ietf.org/html/rfc4585 RFC4585] and [https://tools.ietf.org/html/rfc6679 RFC6679], also checkout [https://tools.ietf.org/html/rfc8087 RFC8087] & [https://tools.ietf.org/html/rfc8311 RFC8311]? − 2. In live555 make RTCP RR reports sent out by the receiver for every 50 (or any other number) packets received - implement handling this info in the sender (camera)+ 2. Make RTCP RR reports sent out by the receiver for every 50 (or any other number) packets received - implement handling this info in the sender (camera) Implementing 2: Implementing 2: <font size=2>'''RTCP.c:''' <font size=2>'''RTCP.c:''' Line 41: Line 43: '''// here fRTCPInstanceForMultiplexedRTCPPackets is just reused''' '''// here fRTCPInstanceForMultiplexedRTCPPackets is just reused''' fRTCPInstanceForMultiplexedRTCPPackets->sendReport(); fRTCPInstanceForMultiplexedRTCPPackets->sendReport(); − }+ } − }</font>+ }</font> +* Patching gstreamer: + First, need to find how to make gstreamer send RR reports. Then proceed as with live555. ==Other links== ==Other links== +* [https://www.dataexpedition.com/support/notes/tn0021.html Loss, Latency, and Speed] - some general info +* [https://tools.ietf.org/html/rfc4585 RFC4585]: Extended RTP Profile for Real-time Transport Control Protocol (RTCP)-Based Feedback (RTP/AVPF) +* [https://tools.ietf.org/html/rfc6679 RFC6679]: Explicit Congestion Notification (ECN) for RTP over UDP +* [https://tools.ietf.org/html/rfc8087 RFC8087]: The Benefits of Using Explicit Congestion Notification (ECN) +* [https://tools.ietf.org/html/rfc8311 RFC8311]: Relaxing Restrictions on Explicit Congestion Notification (ECN) Experimentation [[Category:393]] [[Category:393]] OlegRTSP over UDP
Notes
← Older revision Revision as of 18:17, 20 March 2019 (8 intermediate revisions by the same user not shown)Line 8: Line 8: * In situations when streaming across middleboxes (switches and other devices) make sure the camera link is the slowest one. * In situations when streaming across middleboxes (switches and other devices) make sure the camera link is the slowest one. * Example congestion situatation: * Example congestion situatation: − ''camera <-- 1000Mbps --> Gigabit switch <-- 100Mbps (PC NIC limited) --> PC''+ <font size=2>'''camera''' <-- 1000Mbps --> '''Gigabit switch''' <-- 100Mbps (PC NIC limited) --> '''PC'''</font> PC might not get all the packets depending on switch's buffers sizes (e.g. for netgear GS105 has 128kB which gets overflowed at image sizes 200+kB) PC might not get all the packets depending on switch's buffers sizes (e.g. for netgear GS105 has 128kB which gets overflowed at image sizes 200+kB) * Setting link speed examples: * Setting link speed examples: Line 15: Line 15: * dump UDP packets log on the camera (tcpdump if installed): * dump UDP packets log on the camera (tcpdump if installed): tcpdump -i eth0 -n udp port <someport> -w packets.pcap tcpdump -i eth0 -n udp port <someport> -w packets.pcap +* log network packets on PC: + '''wireshark''' works fine * live555 is used by vlc and mplayer while gstreamer is standalone * live555 is used by vlc and mplayer while gstreamer is standalone As UDP has no congestion control there might be several workarounds: As UDP has no congestion control there might be several workarounds: Line 21: Line 23: * Patching live555 options: * Patching live555 options: 1. Stick close to [https://tools.ietf.org/html/rfc4585 RFC4585] and [https://tools.ietf.org/html/rfc6679 RFC6679], also checkout [https://tools.ietf.org/html/rfc8087 RFC8087] & [https://tools.ietf.org/html/rfc8311 RFC8311]? 1. Stick close to [https://tools.ietf.org/html/rfc4585 RFC4585] and [https://tools.ietf.org/html/rfc6679 RFC6679], also checkout [https://tools.ietf.org/html/rfc8087 RFC8087] & [https://tools.ietf.org/html/rfc8311 RFC8311]? − 2. In live555 make RTCP RR reports sent out by the receiver for every 50 (or any other number) packets received - implement handling this info in the sender (camera)+ 2. Make RTCP RR reports sent out by the receiver for every 50 (or any other number) packets received - implement handling this info in the sender (camera) Implementing 2: Implementing 2: <font size=2>'''RTCP.c:''' <font size=2>'''RTCP.c:''' Line 41: Line 43: '''// here fRTCPInstanceForMultiplexedRTCPPackets is just reused''' '''// here fRTCPInstanceForMultiplexedRTCPPackets is just reused''' fRTCPInstanceForMultiplexedRTCPPackets->sendReport(); fRTCPInstanceForMultiplexedRTCPPackets->sendReport(); − }+ } − }</font>+ }</font> +* Patching gstreamer: + First, need to find how to make gstreamer send RR reports. Then proceed as with live555. ==Other links== ==Other links== +* [https://www.dataexpedition.com/support/notes/tn0021.html Loss, Latency, and Speed] - some general info +* [https://tools.ietf.org/html/rfc4585 RFC4585]: Extended RTP Profile for Real-time Transport Control Protocol (RTCP)-Based Feedback (RTP/AVPF) +* [https://tools.ietf.org/html/rfc6679 RFC6679]: Explicit Congestion Notification (ECN) for RTP over UDP +* [https://tools.ietf.org/html/rfc8087 RFC8087]: The Benefits of Using Explicit Congestion Notification (ECN) +* [https://tools.ietf.org/html/rfc8311 RFC8311]: Relaxing Restrictions on Explicit Congestion Notification (ECN) Experimentation [[Category:393]] [[Category:393]] OlegRTSP over UDP
Created page with "==About== * 10393 series * /usr/bin/str ==Notes== * In situations when streaming across middleboxes (switches and other devices) make sure the camera link is the slowest on..."
New page
==About==* 10393 series
* /usr/bin/str
==Notes==
* In situations when streaming across middleboxes (switches and other devices) make sure the camera link is the slowest one.
* Example congestion situatation:
''camera <-- 1000Mbps --> Gigabit switch <-- 100Mbps (PC NIC limited) --> PC''
PC might not get all the packets depending on switch's buffers sizes (e.g. for netgear GS105 has 128kB which gets overflowed at image sizes 200+kB)
* Setting link speed examples:
ethtool -s eth0 speed 100 duplex half autoneg off
ethtool -s eth0 speed 1000 duplex full autoneg off
* dump UDP packets log on the camera (tcpdump if installed):
tcpdump -i eth0 -n udp port <someport> -w packets.pcap
* live555 is used by vlc and mplayer while gstreamer is standalone
As UDP has no congestion control there might be several workarounds:
1. patch live555 and gstreamer
2. slow down camera link
* Patching live555 options:
1. Stick close to [https://tools.ietf.org/html/rfc4585 RFC4585] and [https://tools.ietf.org/html/rfc6679 RFC6679], also checkout [https://tools.ietf.org/html/rfc8087 RFC8087] & [https://tools.ietf.org/html/rfc8311 RFC8311]?
2. In live555 make RTCP RR reports sent out by the receiver for every 50 (or any other number) packets received - implement handling this info in the sender (camera)
Implementing 2:
<font size=2>'''RTCP.c:'''
if (fSource != NULL && fSource->RTPgs() == RTCPgs) {
// We're receiving RTCP reports that are multiplexed with RTP, so ask the RTP source
// to give them to us:
fSource->registerForMultiplexedRTCPPackets(this);
} else {
'''// need to register our RTCP instance here it will be passed to MultiFramedRTPSource.c which receive RTP packets'''
'''// just reused the instance for multiplexed packets'''
fSource->registerForMultiplexedRTCPPackets(this);
}
'''MultiFramedRTPSource.c:'''
receptionStatsDB().noteIncomingPacket(...)
'''// insert after this line something like:'''
int pnum = receptionStatsDB().totNumPacketsReceived();
if ((pnum%50)==0){
if (fRTCPInstanceForMultiplexedRTCPPackets!=NULL){
'''// here fRTCPInstanceForMultiplexedRTCPPackets is just reused'''
fRTCPInstanceForMultiplexedRTCPPackets->sendReport();
}
}</font>
==Other links==
[[Category:393]]
[[Category:streamer]]
[[Category:str]]
[[Category:gstreamer]]
[[Category:rtsp]]
[[Category:udp]] Oleg
03/19/19 [x393][master] by AndreyFilippov: started modifications for tiff images and lwir sensors
AndreyFilippov committed changes to the Elphel git project :
started modifications for tiff images and lwir sensors
started modifications for tiff images and lwir sensors
03/19/19 [elphel-web-393][rocko] by Oleg Dzhimiev: fixed location
Oleg Dzhimiev committed changes to the Elphel git project :
fixed location
fixed location
Pages
