[WebRTC] No audio when using G.711 16000 Hz?

Which version are you using?
v1.1.1
Which operating system are you using?

[ ] Linux amd64 standard
[ ] Linux amd64 Docker
[x] Linux arm64 standard
[ ] Linux arm64 Docker
[ ] Linux arm7 standard
[ ] Linux arm7 Docker
[ ] Linux arm6 standard
[ ] Linux arm6 Docker
[ ] Windows amd64 standard
[ ] Windows amd64 Docker (WSL backend)
[ ] macOS amd64 standard
[ ] macOS amd64 Docker
[ ] Other (please describe)

Describe the issue
No audio in WebRTC when using G.711 (alaw and mulaw) 16000 Hz.
Audio in other streams works as expected.
Seems to work fine if re-encoding to opus or using G711/8000.
Describe how to replicate the issue

start the server
publish with camera that is using g711/16,000 HZ
read with WebRTC

Did you attach the server logs?

no
Did you attach a network dump?

no

Hello, standard G711 streams only use 8khz, so we need to understand what you are trying to stream. Please provide at least a server log with option "logLevel" set to "debug" in which the handshaking with the camera is visible.

This is from a wyze cam which doesn't have native RTSP, so I'm using an SDK to pipe the audio and video into ffmpeg and publish to MTX.
| 2023/12/30 15:00:48 INF [RTSP] [conn <IP_ADDRESS>:53304] opened
| 2023/12/30 15:00:48 DEB [RTSP] [conn <IP_ADDRESS>:53304] [c->s] OPTIONS rtsp://<IP_ADDRESS>:8554/front-door RTSP/1.0
| CSeq: 1
| User-Agent: Lavf60.3.100
|
|
| 2023/12/30 15:00:48 DEB [RTSP] [conn <IP_ADDRESS>:53304] [s->c] RTSP/1.0 200 OK
| CSeq: 1
| Public: DESCRIBE, ANNOUNCE, SETUP, PLAY, RECORD, PAUSE, GET_PARAMETER, TEARDOWN
| Server: gortsplib
|
|
| 2023/12/30 15:00:48 DEB [RTSP] [conn <IP_ADDRESS>:53304] [c->s] ANNOUNCE rtsp://<IP_ADDRESS>:8554/front-door RTSP/1.0
| CSeq: 2
| Content-Length: 387
| Content-Type: application/sdp
| User-Agent: Lavf60.3.100
|
| v=0
| o=- 0 0 IN IP4 <IP_ADDRESS>
| s=No Name
| c=IN IP4 <IP_ADDRESS>
| t=0 0
| a=tool:libavformat 60.3.100
| m=video 0 RTP/AVP 96
| a=rtpmap:96 H264/90000
| a=fmtp:96 packetization-mode=1; sprop-parameter-sets=J00AKedAPAET8s1AQEB8AAADAAQAAAMAoMkAAr8gAEHrf/8CgA==,KO48gAA=; profile-level-id=4D0029
| a=control:streamid=0
| m=audio 0 RTP/AVP 97
| b=AS:128
| a=rtpmap:97 PCMA/16000/1
| a=control:streamid=1
|
| 2023/12/30 15:00:48 INF [RTSP] [session 0f43d095] created by <IP_ADDRESS>:53304
| 2023/12/30 15:00:48 DEB [RTSP] [conn <IP_ADDRESS>:53304] [s->c] RTSP/1.0 200 OK
| CSeq: 2
| Server: gortsplib
|
|
| 2023/12/30 15:00:48 DEB [RTSP] [conn <IP_ADDRESS>:53304] [c->s] SETUP rtsp://<IP_ADDRESS>:8554/front-door/streamid=0 RTSP/1.0
| CSeq: 3
| Transport: RTP/AVP/TCP;unicast;interleaved=0-1;mode=record
| User-Agent: Lavf60.3.100
|
|
| 2023/12/30 15:00:48 DEB [RTSP] [conn <IP_ADDRESS>:53304] [s->c] RTSP/1.0 200 OK
| CSeq: 3
| Server: gortsplib
| Session: 5938e4e0379f4111a0e6860763694215
| Transport: RTP/AVP/TCP;unicast;interleaved=0-1
|
|
| 2023/12/30 15:00:48 DEB [RTSP] [conn <IP_ADDRESS>:53304] [c->s] SETUP rtsp://<IP_ADDRESS>:8554/front-door/streamid=1 RTSP/1.0
| CSeq: 4
| Session: 5938e4e0379f4111a0e6860763694215
| Transport: RTP/AVP/TCP;unicast;interleaved=2-3;mode=record
| User-Agent: Lavf60.3.100
|
|
| 2023/12/30 15:00:48 DEB [RTSP] [conn <IP_ADDRESS>:53304] [s->c] RTSP/1.0 200 OK
| CSeq: 4
| Server: gortsplib
| Session: 5938e4e0379f4111a0e6860763694215
| Transport: RTP/AVP/TCP;unicast;interleaved=2-3
|
|
| 2023/12/30 15:00:48 DEB [RTSP] [conn <IP_ADDRESS>:53304] [c->s] RECORD rtsp://<IP_ADDRESS>:8554/front-door RTSP/1.0
| CSeq: 5
| Range: npt=0.000-
| Session: 5938e4e0379f4111a0e6860763694215
| User-Agent: Lavf60.3.100
|
|
| 2023/12/30 15:00:48 INF [path front-door] runOnReady command started
| 2023/12/30 15:00:48 INF [RTSP] [session 0f43d095] is publishing to path 'front-door', 2 tracks (H264, Generic)
| 2023/12/30 15:00:48 DEB [RTSP] [conn <IP_ADDRESS>:53304] [s->c] RTSP/1.0 200 OK
| CSeq: 5
| Server: gortsplib
| Session: 5938e4e0379f4111a0e6860763694215

After some testing it was discovered that Chrome currently blocks PCMU or PCMA tracks with a sample rate different than 8000, due to this line:
https://webrtc.googlesource.com/src/+/refs/heads/main/api/audio_codecs/g711/audio_decoder_g711.cc#26
Therefore we cannot add support for 16khz PCMU/PCMA in WebRTC.

even though we could convert PCMA/PCMU to PCM, which seems to be supported....


Perf: do not generate listings

The problem is not the time it takes to generate listings. It's the time it takes to traverse all the old listing objects and remove them during the GC phase. It takes about 13 minutes to delete about 36000 listing objects, which is too slow.
Previously, we couldn't generate listings dynamically because we didn't record directory entries in the metadata database. Now that we do, we can rebuild the listing index in the gateway and generate indexes on demand.

Done in v0.4.x by switching to Postgres, adding a parent column, and generating listings on the fly.


Invalid escape sequence

Hello,
I am using python 3.12 and mkdocs-material 9.5.28 with mkdocs-drawio 1.6.2 and have a weird effect.
On my development machine all goes well, I can serve and build with no problem. When I move the same setup to a python3.12-alpine, I receive the following error whenever I run mkdocs (serve or build):
12 9.648 INFO    -  SyntaxWarning: invalid escape sequence '\&'
#12 9.648   File "/usr/local/lib/python3.12/importlib/__init__.py", line 90, in import_module
#12 9.648     return _bootstrap._gcd_import(name[level:], package, level)
#12 9.648   File "/opt/poetry/venv/ltb-infradoc-vnuQW1G_-py3.12/lib/python3.12/site-packages/mkdocs_drawio/plugin.py", line 110, in
#12 9.648     str_xml = str_xml.replace('"', "\"")
#12 9.648

However, even with the error the build continues and the website seems to be working fine. All diagrams are correctly displayed.
Any idea what can cause this? From what I know \& is completely legit in python, or am I wrong?

Hi @mvtab,
interesting this is due to a change in python 3.12:
https://docs.python.org/dev/whatsnew/3.12.html#other-language-changes
As it is just a warning it might not be displayed on your local environment because of the log level you have setup.

I'll just have to update the code to use raw strings:
str_xml = str_xml.replace('"', r"\"")

Hi @mvtab,
I published v1.6.3 please check if it still occurs.

@mvtab were you able to check if the warning is gone? I'm not able to reproduce it anymore.

Hi @tuunit,
the error doesn't appear anymore, thank you!

Great now I can look at your other issue 😂


The storageGen.lua in the milo package does nothing

Running storageGen.lua and selecting the chests, overwriting the config and pressing yes does not add the chests. It does say it saved to the storage

I can't seem to reproduce this, make sure Milo is closed before merging the configs.

I could reproduce this, see #59


slashes in env variables in windows ?

When I run tests from meeus dir I get fails due to not finding the VSOP87B files. I did download them and set up a Windows environment variable. I'm a Go noob. I cant tell if the fails are due to the slash appended to the  windows env var is wrong or if the .txt extension isn't what is expected by the code, or if the code fixes I tried are actually being used as the code seems to refer to the GitHub versions directly. Is there a simple remedy I'm missing ?

Thank you for this issue.  I haven't tested this under Windows so you're likely seeing a problem that has always been there.  At a glance I spotted a hard coded / which was almost certainly a problem.  I fixed this on branch "envfix".  Can you try this and see if all tests pass under Windows?  If you can't test it, I'll likely merge the change anyway.  If you can try this but tests aren't yet passing, can you give more specific errors?  The VSOP87B files should not have a .txt extension by the way.  The extension should be one of ".mer", ".ven", ".ear", and so on.  If your download method added .txt to the files, you may have to manually remove it by renaming the files.  Thanks again.

Yes that seems to have fixed it now , and removing the .txt allows the
files to be found.
Just FYI , test output from my system included for reference.
Congratulations on implementing the algorithms !  Its interesting you chose
Go to implement them in. I havnt heard many people encourage its use.
Tanks.
AlexC
On Tue, May 8, 2018 at 11:10 PM, Sonia Keys<EMAIL_ADDRESS>wrote:

Thank you for this issue. I haven't tested this under Windows so you're
likely seeing a problem that has always been there. At a glance I spotted a
hard coded / which was almost certainly a problem. I fixed this on branch
"envfix". Can you try this and see if all tests pass under Windows? If you
can't test it, I'll likely merge the change anyway. If you can try this but
tests aren't yet passing, can you give more specific errors? The VSOP87B
files should not have a .txt extension by the way. The extension should be
one of ".mer", ".ven", ".ear", and so on. If your download method added
.txt to the files, you may have to manually remove it by renaming the
files. Thanks again.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/soniakeys/meeus/issues/14#issuecomment-387606867, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AHL7CahgDU2oFPSIaD_Sya2C4K2tH0Ulks5twl4ogaJpZM4T23Bj
.

?   	/C/Alex908/Meuus/meeus-envfix/v3	[no test files]
?   	   	/C/Alex908/Meuus/meeus-envfix/v3/semidiameter	[no test files]
=== RUN   ExampleMean_a
--- PASS: ExampleMean_a (0.00s)
=== RUN   ExampleMean_b
--- PASS: ExampleMean_b (0.00s)
PASS
ok  	/C/Alex908/Meuus/meeus-envfix/v3/sidereal	(cached)
=== RUN   ExampleApparentEquatorialVSOP87
--- PASS: ExampleApparentEquatorialVSOP87 (0.00s)
=== RUN   ExampleTrue
--- PASS: ExampleTrue (0.00s)
=== RUN   ExampleMeanAnomaly
--- PASS: ExampleMeanAnomaly (0.00s)
=== RUN   ExampleEccentricity
--- PASS: ExampleEccentricity (0.00s)
=== RUN   ExampleRadius
--- PASS: ExampleRadius (0.00s)
=== RUN   ExampleApparentLongitude
--- PASS: ExampleApparentLongitude (0.00s)
=== RUN   ExampleApparentEquatorial
--- PASS: ExampleApparentEquatorial (0.00s)
PASS
ok  	/C/Alex908/Meuus/meeus-envfix/v3/solar	(cached)
=== RUN   ExampleEphemeris
--- PASS: ExampleEphemeris (0.00s)
=== RUN   ExampleCycle
--- PASS: ExampleCycle (0.00s)
PASS
ok  	/C/Alex908/Meuus/meeus-envfix/v3/solardisk	(cached)
=== RUN   ExamplePosition
--- PASS: ExamplePosition (0.00s)
=== RUN   ExamplePositionJ2000
--- PASS: ExamplePositionJ2000 (0.00s)
=== RUN   ExamplePositionB1950
--- PASS: ExamplePositionB1950 (0.00s)
=== RUN   ExamplePositionEquinox
--- PASS: ExamplePositionEquinox (0.00s)
PASS
ok  	/C/Alex908/Meuus/meeus-envfix/v3/solarxyz	(cached)
=== RUN   Test2000
--- PASS: Test2000 (0.00s)
=== RUN   ExampleJune2
--- PASS: ExampleJune2 (0.00s)
=== RUN   ExampleJune
--- PASS: ExampleJune (0.00s)
PASS
ok  	/C/Alex908/Meuus/meeus-envfix/v3/solstice	(cached)
?   	/C/Alex908/Meuus/meeus-envfix/v3/sort	[no test files]
=== RUN   ExampleSum
--- PASS: ExampleSum (0.00s)
=== RUN   ExampleSumN_triple
--- PASS: ExampleSumN_triple (0.00s)
=== RUN   ExampleSumN_cluster
--- PASS: ExampleSumN_cluster (0.00s)
=== RUN   ExampleRatio
--- PASS: ExampleRatio (0.00s)
=== RUN   ExampleDifference
--- PASS: ExampleDifference (0.00s)
PASS
ok  	/C/Alex908/Meuus/meeus-envfix/v3/stellar	(cached)
=== RUN   ExampleGeneral_a
--- PASS: ExampleGeneral_a (0.00s)
=== RUN   ExampleGeneral_b
--- PASS: ExampleGeneral_b (0.00s)
=== RUN   ExampleGeneral_c
--- PASS: ExampleGeneral_c (0.00s)
PASS
ok  	/C/Alex908/Meuus/meeus-envfix/v3/sundial	(cached)

fixed in v3.0.1


Remove 300ms delay before logoless boot

Tested on hardware, removing the delay clears up the boot noise problem in issue #9

Findings:
Removing the delay mostly resolves it on hardware - though there's still a nigh-imperceptible one-frame flash of randomness..
I'm a little confused: Hoisting the pen(0, 0, 0); clear(); out of the #ifdef NO_STARTUP_LOGO (so it hits both branches) does not resolve the issue, even though it should, in theory.
Moving the backlight(75); into its own #ifdef NO_STARTUP_LOGO branch after the sleep(300);, also mostly resolves it, though with the same one-frame flash.
I was not able to get rid of the flash despite experimentation, and this is the simplest change that (mostly) succeeded, so I'm pulling this PR out of draft.

Pulling back to draft; I think what's going on is that the screen buffers aren't getting initialized.

Final one.
Incidentally, the program used for testing is just:
#include "picosystem.hpp"
using namespace picosystem;

void init() {
    // Whatever's on screen stays on screen for a second
    sleep(1000);
    // Called once at the start, this is an ideal place to do any setup for your project.
}

void update(uint32_t tick) {
    // Called at a fixed rate - by default every 10ms. Perform any tasks that update the
    // game world state. Because it is called at a fixed rate you can easily time movement
    //  and events. tick is the number of update() calls since the game started.
}

void draw() {
    // Called as often as possible, aiming for 60 fps
}


feat: Add aws:glue-dev-endpoint resource and delete action

Added the Dev Endpoints resource to glue.py and the delete action for
Dev Endpoints so custodian admins can deploy policies to find and delete
public dev endpoints in glue.

@kapilt I had a cluster F of branches and test files in my custodian fork so I just deleted it and re-forked it to get a clean slate and did a clean pull request ready for your review.


Guests popup

Closes #73
Children are not defined yet. Want to review this PR and children finish in different PR?

Please test these changes in Expo after build has finished:

I tried it and after I close the popup I can sometimes see little "blink" of the whole screen. Can you please check what's going on? It has very annoying effect...

@mrtnzlml Children are not defined yet. Want to review this PR and children finish in different PR?

There should be always at least 1 adult. Now you can enter 0 or even a negative value.

Thanks, I knew there was sth I wanted to do for this PR :) Fixed.

Integrated and umbrella issues opened.


Unable to display the .tif files exactly as displayed in the research paper

Hello
I am opening this issue, because I am unable to display the .tif files included in the dataset exactly as they are displayed in the paper. In the paper, the images are displayed in pinkish-purple colour (see Figure 1 on page 3 in the research paper https://arxiv.org/pdf/2206.08439.pdf ); and my lab says those are how exactly the H&E stains must look like.

To try displaying this image, I first used the dataset code provided by the authors in the link https://github.com/MLNeurosurg/opensrh/tree/main/opensrh/datasets by using their SRHClassificationDataset class and passing only the get_srh_base_aug() for transforms. However, the images that I got to display looked nothing like the paper's.
Since, the authors used the tifffile package in their github code a lot. I wrote this small code to copy only their importing the image, processing it as mentioned in the code and paper and displaying it
import tifffile
import numpy as np
image = tifffile.imread('dataset/studies/NIO_001/6/patches/NIO_001-6-2000_3000_300_600.tif').astype(np.float32)
print(image.shape,type(image))
# print(image_label_dictionary[4][0].shape)
tifffile.imshow(image[[0,1],:,:])

This is different colour than expected. Then I perform the post processing required to add a third channel and form a new 3 channel image using bumpy
ch2 = image[0, :, :]
ch3 = image[1, :, :]
ch1 = ch3 - ch2 + 5000 / 65536.0
new_im = np.stack((ch1, ch2, ch3), axis=0)
tifffile.imshow(new_im)

This is displayed in again a different colour than what's expected.
Further I normalise the image to have all values between 0 and 255
norm_im = []

for i in (0,1,2):
#     print(new_im[[i],:,:].shape)
    norm_im.append(scaler.fit_transform(new_im[[i],:,:].reshape(300,300)))

norm_im = np.array(norm_im)
print(norm_im,norm_im.shape,type(norm_im),norm_im.max(),norm_im.min ())
tifffile.imshow(norm_im)

which also gives a different than expected colour.
I want to know why can I not display the H&E stains as displayed in the paper using the provided code and data. Do I not need that colour?  Please clarify on this, as my experiment results on this dataset can be much more significant , if the images I am displaying are similar to the images that are being displayed by other authors and researchers working in this area.

The virtual H&E (the blue-pink color schemes) shown in figure 1 in the paper is generated by the SRH microscope using proprietary software from the manufacturer, and are for physician visualization purposes. If your research requires H&E pseudocolored images, the wholeslide virtual H&E colored images are released as their original dicom format in OpenSRH.
For our benchmarks and experiments, we generate separate RGB images using the strips that contain raw laser signals and transforms returned by get_srh_base_aug() as described in appendix A, and avoid the pseudocolored images because:

The proprietary color scheme is designed to simulate H&E for physicians, but does not reflect any biological process;
The coloring algorithm can change and contain improvements to the newer slides that introduce temporal inconsistencies; and most importantly
The 8-bit virtual H&E stain coloring removes high frequency laser signals contained in the 16 bit output.

To visualize SRH images similar to appendix A, you can use the following code snippet:
import os
from typing import List

import numpy as np
import matplotlib.pyplot as plt

import torch
from torchvision.transforms import Compose
from opensrh.datasets.improc import process_read_im, get_srh_base_aug

def viz_rescale_hist(im: torch.Tensor, bits: List[float] = [7, 8, 8]) -> np.ndarray:
    """Rescale SRH images and convert to numpy for visualization."""

    def hist_eq(im, bits=8):
        """Rescale one channel of image.

        see https://ianwitham.wordpress.com/tag/histogram-equalization/
        """
        num_bins = np.floor(2**bits).astype(np.uint16)
        hist, bins = np.histogram(im.flatten(), num_bins)
        hist[0] = 0

        cdf = hist.cumsum()
        cdf = (num_bins - 1) * cdf / cdf[-1]  # normalize

        im2 = np.interp(im.flatten(), bins[:-1], cdf)
        return np.array(im2).reshape(im.shape)

    stacked = np.dstack([
        hist_eq(im[0, ...], bits[0]),
        hist_eq(im[1, ...], bits[1]),
        hist_eq(im[2, ...], bits[2]),
    ])
    return stacked.astype(np.uint8)

db_root = "/path/to/opensrh/"
im_path = os.path.join(db_root, "studies/NIO_001/6/patches/NIO_001-6-2000_3000_300_600.tif")
xf = Compose(get_srh_base_aug())
im = xf(process_read_im(im_path))

fig, ax = plt.subplots(1, 1)
ax.imshow(viz_rescale_hist(im)); ax.axis("off")


Do you plan to provide FLAC support?

This is not an issue, but I would like to know that and I haven't found that info in your site/app

+1

+2


Update to Angular 8

do-not-edit-start-codetree-epic-issues
Issues in this epic:

Title
Milestone
Assignees
Stage
State

 Update to Angular 8 #274
N/A
flavens, kilchenmann
Untriaged
Open

do-not-edit-end-codetree-epic-issues

@subotic What do you mean with "do-not-edit-start-codetree-epic-issues"? We just started to use codetree and we have to understand how and where to add issues. Is there a guideline how to use it?

This issue shouldn't be an epic one. We will close it when it's done in September.


Update bake.md

This one could be
see what the factories look like
or
see how the factories look
Either would be more typical English language use.

Yes, true!


My log is full of "connect from localhost"

Hello
first of all thanks for this, great project!
My log is full of lines "connect from localhost": log-file
My compose-file
I've tried to see if there was anywhere to set a debug level as a parameter, or otherwise reduce the amount of logging, but I can't seem to find anything.
Is there a parameter, or do you know of anything I can include in my compose-file to not log this info.
Thanks in advance

Hello,
I have the some problem.
Have you resolved ?

Hello, I have the some problem. Have you resolved ?

Forgot about it.. Just looked at it now, it still does it but works anyway... Let me know if you find a solution!


fix top places layout bug

The top places list of cities was adding a top margin at the wrong breakpoint.

:+1:


[6.x] Add raw method to Eloquent Builder passthru

This PR adds the raw method to the Eloquent's Builder $passthru property, which results in returned an instance of the Expression class instead of the query builder itself.
echo get_class(Model::query()->raw('expression'));
// -> Expected: "Illuminate\Database\Query\Expression"
// ->   Actual: "Illuminate\Database\Eloquent\Builder"

This removes the need to use the DB facade or calling $query->getQuery() to use raw database expressions. Example:
Order::with(['customer' => function ($query) {
    // Before: $query->getQuery()->raw('...') -OR- DB::raw('...')
    return $query->select(['id', $query->raw('CONCAT(`first_name`, ' ', `last_name`)')]);
})->get();

I agree with this change but think we may want to send it to master branch in case people are already working around this behavior in their application and it would cause a breakage.


About us

Update the AboutUs documentation.
Content of portfolio not updated yet.
Missing photo of Tan Wei Jie.

Pull Request Test Coverage Report for Build 14

0 of 0 (NaN%) changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.06%) to 91.873%

Totals

Change from base Build 9:
0.06%

Covered Lines:
1481

Relevant Lines:
1612

💛  - Coveralls


Ensure competition environment integrity.

Ensure that SMARTS Observation class does not throw a recursion error on copy.deepcopy(..).
Context
deepcopy was used to prevent external users from modifying some of the infos objects later using additional env wrappers.
How does RecursionError occur and would a shallow copy be a sufficient tamper protection here?
Originally posted by @Adaickalavan in https://github.com/huawei-noah/SMARTS/pull/1537#discussion_r934061725

Metrics module has been revamped and this issue is not applicable anymore.


Arm64 support (take 2)

This is a second go at https://github.com/openpnp/openpnp-capture/pull/45.

@vonnieda Would you like me to try to build a working local release with Install4j (unsure if I can license-wise) or is it ok to go ahead merging this and fix the possible remaining integration bits left as we go (my preferred option)?
I don't anticipate many more hiccups in the way, but I've been wrong in the past :-S.

Will get back to this Tuesday. Currently out of town.
Jason
On Sun, May 30, 2021 at 4:57 PM Roman Valls Guimera <
@.***> wrote:

@vonnieda https://github.com/vonnieda Would you like me to try to build
a working local release with Install4j (unsure if I can license-wise) or is
it ok to go ahead merging this and fix the possible remaining integration
bits left as we go (my preferred option)?
I don't anticipate many more hiccups in the way, but I've been wrong in
the past :-S.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/openpnp/openpnp-capture/pull/47#issuecomment-851082542,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJAU4647QF5VV6YYDPT3DDTQLGHNANCNFSM45KILQKA
.

--
Sent from my BeOS enabled toaster

This looks great. Sorry for the long delay. Let's give it a try.

Ugh, not sure it's 100% ready like that but super happy to see you're giving it a try, yay! :D

@vonnieda What I meant with not 100% ready was that while working on this PR I had parallel efforts in those three commit stories since they are needed to all work in unison to get proper aarch64/arm64 support:
https://github.com/brainstorm/openpnp-capture/commits/arm64_support
https://github.com/brainstorm/openpnp-capture-java/commits/switch_to_jna_only
https://github.com/brainstorm/opencv/commits/apple_silicon
Please do check the commits/files since I believe it can save you some time and headache, excited you are looking at this regardless ;)

Oh, AFAIK it'll not break anything on this repo, what I meant is that it just needs more work on the JNI/JNAerator side of things for the OpenPnPCamera to work on aarch64/arm64 devices.
To finish this up, we'd have to:

Fix openpnp-capture so that native builds are included in github actions (pretty much done in https://github.com/brainstorm/openpnp-capture/commits/arm64_support).
Fix openpnp-capture-java accordingly (almost there in https://github.com/openpnp/openpnp-capture-java/pull/6)
Generate packages for the two above and ship it through the existing github actions from openpnp/openpnp.

Can't remember exactly what was the deal with OpenCV but I did address it too in https://github.com/brainstorm/opencv/commits/apple_silicon, or at least most of it IIRC (it has been a while)... I think that openpnp-capture (the native part) and openpnp-capture-java were the most problematic bits.
Hope that helps? The main problem is not OpenPnP running on arm64, which it already does, but adding the OpenPnPCamera on the GUI, which yields JNI errors and does not add the camera at all.

Actually, @vonnieda, I think I managed to fix it, here's the proof with an USB camera featuring my dog with OpenPnP running on an SBC:

The latest release of my OpenPnP-kiosk seems to work fine with my Jetson nano: https://github.com/CCHS-Melbourne/openpnp-kiosk

Up cam, down cam and dog cam! Nice.


Can't View Build Output

A couple of my builds are failing, but I'm unable to view the output from any failed builds, only successful ones. I thought it might be because of some console logs I saw in my browser relating to WebSockets and HTTPS, but those errors are shown on the working pages as well.

Is this still an issue?


JVM side MockKafkaRDD for streaming API functional test

embedded Kafka is a better option, but unfortunately not really working on Windows yet

Closing this issue for now


GoTestXXX  set timeout

I have seen this addressed in #365 but that doesn't seem to work. When I run GoTestFunc -a timeout=5s there's no error and the test runs as normal but doesn't timeout. -args timeout=5s is included in the floating window title, showing that it was seen but isn't being respected.

will https://github.com/ray-x/go.nvim/pull/435 fix the issue?

That fixed it!! Thanks!
Just for clarity for anyone else who sees this, the command has to run like GoTestFunc -a -test.timeout=5s, not GoTestFunc -a timeout=5s as in my original post.


Remove Strict mode option

It was a desperate effort to bypass a serious bug in FCS. The bug has been fixed long ago; it's safe to remove the hack.

Great, the less code the better :)


Unable to convert PDF (OSX 10.13 build 17A358a)

I'm aware I am running this on a Beta OS release but posting here to see if its an already known issue
➜  Epson Connect pypdfocr Epson_03092017170731.pdf
Starting conversion of Epson_03092017170731.pdf
Using 300 DPI
Traceback (most recent call last):
  File "/usr/local/bin/pypdfocr", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/site-packages/pypdfocr/pypdfocr.py", line 492, in main
    script.go(sys.argv[1:])
  File "/usr/local/lib/python2.7/site-packages/pypdfocr/pypdfocr.py", line 474, in go
    self._convert_and_file_email(self.pdf_filename)
  File "/usr/local/lib/python2.7/site-packages/pypdfocr/pypdfocr.py", line 480, in _convert_and_file_email
    ocr_pdffilename = self.run_conversion(pdf_filename)
  File "/usr/local/lib/python2.7/site-packages/pypdfocr/pypdfocr.py", line 363, in run_conversion
    ocr_pdf_filename = self.pdf.overlay_hocr_pages(img_dpi, hocr_filenames, pdf_filename)
  File "/usr/local/lib/python2.7/site-packages/pypdfocr/pypdfocr_pdf.py", line 166, in overlay_hocr_pages
    orig_pg = self._get_merged_single_page(orig_pg, text_pg)
  File "/usr/local/lib/python2.7/site-packages/pypdfocr/pypdfocr_pdf.py", line 190, in _get_merged_single_page
    orig_rotation_angle = int(original_page.get('/Rotate', 0))
TypeError: int() argument must be a string or a number, not 'IndirectObject'

I can see the intermediate files being created, then it tries to merge, and crashed out, leaving multiple blank PDF's

I'm also having this problem at the same line of code. I had to manually change the line
orig_rotation_angle = 0
that bypasses this problem code at whatever angle.
I don't see any problems with my rotations, but it put everything back together ok after I modified /usr/local/lib/python2.7/site-packages/pypdfocr/pypdfocr_pdf.py


Correctly model OSB-specific fields in the API

Currently, after #213, we have a number of fields in the API prefixed with OSB to indicate that they are for the Open Service Broker API.  Prefixing is a terrible way to handle this, and for the record, was never my plan -- just a temporary measure to isolate what is intrinsic to the kubernetes service catalog and what is a function of the OSB API.  The correct way to do this is to encapsulate api-specific fields in a subobject.  An example of an area that we already do this in is the volume API in kubernetes.  There is an API type called VolumeSource that is basically a union type which can be exactly one of a number of different volume-specific objects.  There is a validation that enforces that one and only one of these pointer fields can be set.  This gives us a way to isolate volume-type-specific fields and encapsulate them correctly.
For an example, let's look at the the ServiceClass object and see how we would apply that pattern.  Currently, as of this writing, that object looks like so in the API:
// ServiceClass represents an offering in the service catalog.
type ServiceClass struct {
	metav1.TypeMeta
	kapi.ObjectMeta

	// BrokerName is the reference to the Broker that provides this service.
	// Immutable.
	BrokerName string

	Bindable      bool
	Plans         []ServicePlan
	PlanUpdatable bool // Do we support this?

	// OSB-specific
	// OSBGUID is the identity of this object for use with the OSB API.
	// Immutable.
	OSBGUID string

	// OSB-specific
	OSBTags                    []string
	OSBRequires                []string
	OSBMaxDBPerNode            string
	OSBMetadata                interface{}
	OSBDashboardOAuth2ClientID string
	OSBDashboardSecret         string
	OSBDashboardRedirectURI    string
}

Note, for the record, I'm thinking now that some of the fields in this object which aren't currently prefixed are really also specific to the API.  Know that, and let's look at what this would look like applying the pattern I described:
type ServiceClass struct {
	metav1.TypeMeta
	kapi.ObjectMeta

	// BrokerName is the reference to the Broker that provides this service.
	// Immutable.
	BrokerName string

	Bindable      bool
	Plans         []ServicePlan
	PlanUpdatable bool // Do we support this?

	// Note for the record I think these names are terrible;
	// they are merely for discussion and not meant as suggestions

	APIOptions ServiceClassAPIOptions
}

// In the future, we can support other broker APIs by adding
// new pointer fields to this struct
type ServiceClassAPIOptions struct {
    OpenServiceBroker *OpenServiceBrokerAPIServiceClassOptions
}

type OpenServiceBrokerAPIServiceClassOptions struct {
	GUID                    string
	Tags                    []string
	Requires                []string
	MaxDBPerNode            string
	Metadata                interface{}
	DashboardOAuth2ClientID string
	DashboardSecret         string
	DashboardRedirectURI    string
}

It's arguable that this is just an example of the single table inheritance pattern.  There are a bunch of different names for this pattern and the different pieces of it.  Anyway....
I'm posting this for discussion.  There are some things that need to be thought through like exactly which fields are really OSB-specific and which are more universal, how to deal with mismatched options in the future (IE, service class is provided by an OSB broker and someone makes an instance with $OTHER_THING options).

I feel like we should get #210 in before this, or else face a difficult rebase.

@krancour completely agree.

I am now of the opinion that this was a premature idea, and that we should not worry about this before MVP 2 is finished.  When we decide to make a v1beta1 API, then it will be appropriate to think about this.

Closed by #834


[SDP-354] Version un-posting

Make sure you have checked off the following before you issue your Pull Request:

[X] Added unit tests for new functionality
[X] Passed all unit tests using rails test with 90%+ coverage
[X] Added cucumber tests for any new functionality
[X] Passed all cucumber tests using bundle exec cucumber
[X] Passed overcommit hooks, including running all code through Rubocop

I'm now getting the following error in the ruby tests
FormsControllerTest#test_should_destroy_form [/Users/andrewg/projects/SDP-Vocabulary-Service/test/controllers/forms_controller_test.rb:120] Minitest::Assertion: Expected response to be a <3XX: redirect>, but was a <204: No Content>

Made that fix caught by Andy.


Bug: Child workspace can be set as base workspace

Description
The module allows for the child workspace to be set as the base workspace of the base workspace
Steps to Reproduce

Create a new workspace "Parent workspace" with base workspace "Live"

Create a new workspace "Child workspace" with base workspace "Parent workspace"

Edit "Parent workspace" and change the base workspace to "Child workspace"

Click "Save changes"

Expected behavior
It should not be possible to select the "Child workspace" as the base workspace of the "Parent workspace"
Actual behavior
If you save the workspace, both workspaces disappear from the list. Users who have their personal workspaces based on one of the workspaces get a 500 error when going to the content page.

Thx for the report. Interesting, this is also possible in the default workspace module and therefore a core bug.


Carefully implement Scope.members

#70 introduced Scope.members, but only implemented it in SemanticdbScope.members because the implementation for other scopes needs migration from HashMap to LinkedHashMap, which may hurt performance. Let's do this experiment and see where that leads us.

No longer relevant with the new approach put forth in https://github.com/twitter/rsc/pull/75.


🐞 - MaskitPipe in Angular Standalone Component

Which package(s) are the source of the bug?
@maskito/angular
Playground Link
https://stackblitz.com/edit/angular-17-starter-project-zlwrjv?file=src%2Fmain.ts
Description
Trying to use MaskitoPipe in an Angular standalone component and following the example found in the sample docs at https://maskito.dev/frameworks/angular#pipe
Adding MaskitoPipe to the imports array on the component results in the following error:
The pipe 'MaskitoPipe' appears in 'imports', but is not standalone and cannot be imported directly. It must be imported via an NgModule.
Tried importing MaskitoModule instead, however, the pipe isn't applied. Tried adding MaskitoPipe to the providers array which also did not work and the pipe isn't applied.
Maskito version
1.9.0
Which browsers have you used?

[ ] Chrome
[ ] Firefox
[X] Safari
[ ] Edge

Which operating systems have you used?

[X] macOS
[ ] Windows
[ ] Linux
[ ] iOS
[ ] Android

Hello there. Maskito 2.0 is not yet released, sorry for this misalignment with docs and code. We will release it soon, with 1.x versions you need to import MaskitoModule as it does not yet have standalone directives.


⚠ Avatar API Endpoint has degraded performance

In 71ea83d, Avatar API Endpoint (https://avatar.roblox.com/v1/avatar-rules) experienced degraded performance:

HTTP code: 200
Response time: 2178 ms

Resolved: Avatar API Endpoint performance has improved in eb9589e.


Do I need this Plugin if I add modules through Android Studio?

I plan on building my App Engine modules, including the servlets, endpoints, and cloud messaging, through Android Studio. Will all of the gradle settings automatically build or do I still need to incorporate this plugin for my project?
I am a bit confused when this plugin is needed.

The plugin is automatically added to any autogenerated module in AndroidStudio. If you are using those tools, you should see a build.gradle in your appengine module's base directory that includes this plugin.
In android studio, this plugin provides 2 things

the build rules to build an appengine project with special tools for endpoints
the integration points for the IDE to recognize that it is an appengine gradle project so it can do some appengine specific stuff.


Hide spinner when buttons are disabled

When hovering over a disabled button, the mouse pointer shows a spinner. This even happens while the page is loading (run button disabled) or after the page has loaded (stop and enter buttons).

@pdawyndt The buttons show a blocking icon, or do you refer to this icon as a spinner? The style classes for these buttons have been updated recently, which should allow closing this issue.

@pdawyndt Does the thumbs-up reaction imply that this issue can be closed again?

Yep.


Assert::true should behave the same as native assert()

Phpstan does not understand that Assert::true($var === 'x') means the $var is of type 'x' while with assert($var === 'x') it does.
The behaviour should be the same.

ok it's something else


tubes

In SF:931127, David pointed out that we have existing
tube terms in GO, that should be linked to the new
terms lumen formation, regulation of tube size etc.
So here is a suggestion to do that. Since not all tubes
are part of branched networks, I suggest creating a new
term (tube morphogenesis) as part of organogenesis and
moving lumen formation etc under this new term:
organogenesis ; GO:0009887
--<tube morphogenesis ; GO:NEW
----%branching morphogenesis ; GO:0001763
------<tube fusion ; GO:0035146
------%ureteric bud branching ; GO:0001658
------%primary tracheal branching (sensu Insecta) ;
GO:0007428
------%secondary tracheal branching (sensu Insecta) ;
GO:0007429
------%terminal branching of trachea, cytoplasmic
projection extension (sensu Insecta) ; GO:0007430
----<lumen formation ; GO:0035148
------%tracheal lumen formation ; GO:0035149
----<regulation of tube size
------%regulation of tracheal tube size ; GO:0035151
----%embryonic epithelial tube formation ; GO:0001838
------%neural tube formation ; GO:0001841
--------<neural fold formation ; GO:0001842
--------<neural tube closure ; GO:0001843
----%embryonic heart tube development ; GO:0035050 ??
----%respiratory tube development ; GO:0030323 ??
[GO:0035050 and GO:0030323  are probably too broad to
be children of tube morphogenesis. Could make a general
term' tubular organ development' aswell to group these?]
Individual terms can be added when required. eg
regulation of renal tube size < kidney development
regulation of salivary gland tube size
respiratory tube lumen formation
etc etc.
tube morphogenesis
related synonym: tubulogenesis
Creation and organization of the structure of a tube.
Epithelial and endothelial tubes form the basic
structure of many organs and tissues, including lung
and trachea, kidney, the mammary gland, the vascular
system and the gastrointestinal and urinary-genital
tracts. Tube shape and organization varies from the
single-celled excretory organ in Caenorhabditis elegans
to the branching trees of the mammalian kidney and
insect tracheal system.
PMID: 14624839
I'd also like to expand the definition of branching
morphogenesis slightly to include epithelial aswell as
endothelial tubes
from
The creation of a division or offshoot from a main
stem. Examples in animals would include blood vessels,
nerves, lymphatics and other endothelial tubes.
to
The creation of a division or offshoot from a main
stem. Examples in animals would include blood vessels,
nerves, lymphatics and other epithelial or endothelial
tubes.
comments/suggestions would be welcome.
Thanks,
Becky
Reported by: beckyfoulger
Original Ticket: "geneontology/ontology-requests/1680":https://sourceforge.net/p/geneontology/ontology-requests/1680

thanks www.movied.org


Release the original transcript?

I have noticed that all transcripts of audios are post-processed, so that all the texts are uppered. I want to know if you can release the original text with punction, that would be more helpful! thank you for your team contribution.

I have noticed that all transcripts of audios are post-processed, so that all the texts are uppered. I want to know if you can release the original text with punction, that would be more helpful! thank you for your team contribution.

Thank you for your feedback. Unfortunately, the original text with punctuation and case was lost during the forced alignment process.