{"action":"created","issue":{"url":"https://api.github.com/repos/BelaPlatform/Bela/issues/61","repository_url":"https://api.github.com/repos/BelaPlatform/Bela","labels_url":"https://api.github.com/repos/BelaPlatform/Bela/issues/61/labels{/name}","comments_url":"https://api.github.com/repos/BelaPlatform/Bela/issues/61/comments","events_url":"https://api.github.com/repos/BelaPlatform/Bela/issues/61/events","html_url":"https://github.com/BelaPlatform/Bela/issues/61","id":169744485,"number":61,"title":"libpd: unsupported objects","user":{"login":"giuliomoro","id":4260604,"avatar_url":"https://avatars.githubusercontent.com/u/4260604?v=3","gravatar_id":"","url":"https://api.github.com/users/giuliomoro","html_url":"https://github.com/giuliomoro","followers_url":"https://api.github.com/users/giuliomoro/followers","following_url":"https://api.github.com/users/giuliomoro/following{/other_user}","gists_url":"https://api.github.com/users/giuliomoro/gists{/gist_id}","starred_url":"https://api.github.com/users/giuliomoro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/giuliomoro/subscriptions","organizations_url":"https://api.github.com/users/giuliomoro/orgs","repos_url":"https://api.github.com/users/giuliomoro/repos","events_url":"https://api.github.com/users/giuliomoro/events{/privacy}","received_events_url":"https://api.github.com/users/giuliomoro/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2016-08-06T12:24:26Z","updated_at":"2016-09-03T20:04:19Z","closed_at":null,"body":"At least:\r\n```\r\n[sigmund~]\r\n[fiddle~]\r\n[netreceive]\r\n[netsend]\r\n[key]\r\n[keyup]\r\n[keydown]\r\n[keyname]\r\n```\r\n\r\n(One of) the issue(s) with `[fiddle~]` is that it tries to use `pd_fft()` which is defined in 'src/d_fft_fftw.c', which is not compiled by libpd, according to [this](https://github.com/libpd/libpd/wiki/unused-source-list).\r\n\r\n`[netreceive]` and `[netsend]` need to be reimplemented so that\r\n1. they do not cause mode switches, and\r\n1. they are heavy-compatible (probably with a `[r netreceive]` and `[s netsend]`, though it is not clear how to best deal with multiple instances. In fact, `[netsend]` currently works).\r\nActually `[netsend]` currently works but causes mode switches.\r\n\r\nThe `[key*]` family is:\r\n1. handled by the GUI, and\r\n2. requires a way to connect a keyboard, whether it is stdin or a USB keyboard \r\n"},"comment":{"url":"https://api.github.com/repos/BelaPlatform/Bela/issues/comments/244567046","html_url":"https://github.com/BelaPlatform/Bela/issues/61#issuecomment-244567046","issue_url":"https://api.github.com/repos/BelaPlatform/Bela/issues/61","id":244567046,"user":{"login":"giuliomoro","id":4260604,"avatar_url":"https://avatars.githubusercontent.com/u/4260604?v=3","gravatar_id":"","url":"https://api.github.com/users/giuliomoro","html_url":"https://github.com/giuliomoro","followers_url":"https://api.github.com/users/giuliomoro/followers","following_url":"https://api.github.com/users/giuliomoro/following{/other_user}","gists_url":"https://api.github.com/users/giuliomoro/gists{/gist_id}","starred_url":"https://api.github.com/users/giuliomoro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/giuliomoro/subscriptions","organizations_url":"https://api.github.com/users/giuliomoro/orgs","repos_url":"https://api.github.com/users/giuliomoro/repos","events_url":"https://api.github.com/users/giuliomoro/events{/privacy}","received_events_url":"https://api.github.com/users/giuliomoro/received_events","type":"User","site_admin":false},"created_at":"2016-09-03T20:04:19Z","updated_at":"2016-09-03T20:04:19Z","body":"I am not sure what is broken about it, it just segfaults at creation or when the DSP callback is called, I am not sure.\r\nI noticed that there is something wrong with the FFT library that underlies [fiddle~] so maybe it is the same issue?\r\nWill try to have a look at it soon.\r\n\r\nPartially related: I should specify that while `[block~]` and `[switch~]` are supported, if you specify a block size larger than the buffer-size of Bela (which is user-defined, defaults to 16, up to 128), then you will likely have issues if you perform some occasional but intense task (e.g.: if you are trying to do a large  FFT). Because of the way Pd is implemented, this FFT will be computed all in one audio callback, which will most likely make you miss your deadline with the audio clock. For this we should implement some sort of \"transparent threading\".\r\nSimilar issues may occur with objects which operate on large blocks of data, unless they internally implement some threading.These issues exist also on mainline PureData, but are often masked by large buffer sizes and additional buffering within the software.\r\n\r\nThis is NOT the reason why [fiddle~] and [sigmund~] do not work at the moment, but may be a reason(again, depending on how the objects are implemented internally) why they will not work straight away after I fixed the segfault."}}
{"actor":{"display_login":"giuliomoro"}}