{"action":"created","issue":{"url":"https://api.github.com/repos/cocos2d/cocos2d-x/issues/15875","repository_url":"https://api.github.com/repos/cocos2d/cocos2d-x","labels_url":"https://api.github.com/repos/cocos2d/cocos2d-x/issues/15875/labels{/name}","comments_url":"https://api.github.com/repos/cocos2d/cocos2d-x/issues/15875/comments","events_url":"https://api.github.com/repos/cocos2d/cocos2d-x/issues/15875/events","html_url":"https://github.com/cocos2d/cocos2d-x/pull/15875","id":160852064,"number":15875,"title":"[big refactoring] Audio latency fix for Android. Support to preload effects on Android now.","user":{"login":"dumganhar","id":493372,"avatar_url":"https://avatars.githubusercontent.com/u/493372?v=3","gravatar_id":"","url":"https://api.github.com/users/dumganhar","html_url":"https://github.com/dumganhar","followers_url":"https://api.github.com/users/dumganhar/followers","following_url":"https://api.github.com/users/dumganhar/following{/other_user}","gists_url":"https://api.github.com/users/dumganhar/gists{/gist_id}","starred_url":"https://api.github.com/users/dumganhar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dumganhar/subscriptions","organizations_url":"https://api.github.com/users/dumganhar/orgs","repos_url":"https://api.github.com/users/dumganhar/repos","events_url":"https://api.github.com/users/dumganhar/events{/privacy}","received_events_url":"https://api.github.com/users/dumganhar/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/cocos2d/cocos2d-x/labels/module:audio","name":"module:audio","color":"207de5"},{"url":"https://api.github.com/repos/cocos2d/cocos2d-x/labels/platform:android","name":"platform:android","color":"fbca04"}],"state":"closed","locked":false,"assignee":{"login":"dumganhar","id":493372,"avatar_url":"https://avatars.githubusercontent.com/u/493372?v=3","gravatar_id":"","url":"https://api.github.com/users/dumganhar","html_url":"https://github.com/dumganhar","followers_url":"https://api.github.com/users/dumganhar/followers","following_url":"https://api.github.com/users/dumganhar/following{/other_user}","gists_url":"https://api.github.com/users/dumganhar/gists{/gist_id}","starred_url":"https://api.github.com/users/dumganhar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dumganhar/subscriptions","organizations_url":"https://api.github.com/users/dumganhar/orgs","repos_url":"https://api.github.com/users/dumganhar/repos","events_url":"https://api.github.com/users/dumganhar/events{/privacy}","received_events_url":"https://api.github.com/users/dumganhar/received_events","type":"User","site_admin":false},"assignees":[{"login":"dumganhar","id":493372,"avatar_url":"https://avatars.githubusercontent.com/u/493372?v=3","gravatar_id":"","url":"https://api.github.com/users/dumganhar","html_url":"https://github.com/dumganhar","followers_url":"https://api.github.com/users/dumganhar/followers","following_url":"https://api.github.com/users/dumganhar/following{/other_user}","gists_url":"https://api.github.com/users/dumganhar/gists{/gist_id}","starred_url":"https://api.github.com/users/dumganhar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dumganhar/subscriptions","organizations_url":"https://api.github.com/users/dumganhar/orgs","repos_url":"https://api.github.com/users/dumganhar/repos","events_url":"https://api.github.com/users/dumganhar/events{/privacy}","received_events_url":"https://api.github.com/users/dumganhar/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/cocos2d/cocos2d-x/milestones/29","html_url":"https://github.com/cocos2d/cocos2d-x/milestones/3.13","labels_url":"https://api.github.com/repos/cocos2d/cocos2d-x/milestones/29/labels","id":1768287,"number":29,"title":"3.13","description":"","creator":{"login":"minggo","id":488203,"avatar_url":"https://avatars.githubusercontent.com/u/488203?v=3","gravatar_id":"","url":"https://api.github.com/users/minggo","html_url":"https://github.com/minggo","followers_url":"https://api.github.com/users/minggo/followers","following_url":"https://api.github.com/users/minggo/following{/other_user}","gists_url":"https://api.github.com/users/minggo/gists{/gist_id}","starred_url":"https://api.github.com/users/minggo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/minggo/subscriptions","organizations_url":"https://api.github.com/users/minggo/orgs","repos_url":"https://api.github.com/users/minggo/repos","events_url":"https://api.github.com/users/minggo/events{/privacy}","received_events_url":"https://api.github.com/users/minggo/received_events","type":"User","site_admin":false},"open_issues":7,"closed_issues":168,"state":"open","created_at":"2016-05-16T09:52:30Z","updated_at":"2016-08-24T09:41:55Z","due_on":"2016-08-29T00:00:00Z","closed_at":null},"comments":200,"created_at":"2016-06-17T09:52:04Z","updated_at":"2016-08-24T10:21:19Z","closed_at":"2016-07-18T02:22:41Z","pull_request":{"url":"https://api.github.com/repos/cocos2d/cocos2d-x/pulls/15875","html_url":"https://github.com/cocos2d/cocos2d-x/pull/15875","diff_url":"https://github.com/cocos2d/cocos2d-x/pull/15875.diff","patch_url":"https://github.com/cocos2d/cocos2d-x/pull/15875.patch"},"body":"PLEASE DONT MERGE BEFORE DEVELOPERS TEST IT. AND MORE COMMENTS NEED TO BE ADDED.\r\n\r\nThis Pull Request has done the following things:\r\n\r\n* Supports to preload small audio files and cache them with PCM data buffer\r\n* MP3/Ogg/... files are decoded to PCM data by OpenSLES API\r\n* Decoded PCM buffer data matches the best sample rate & buffer size in frames of device by using resampling source code in Android Source (Android 6.0, platform/frameworks/av)\r\n* Big refactoring for the implementation of AudioEngineImpl for Android, better class responsibility\r\n* Mixing audio clips by ourself, in this way, we only need a single OpenSLES AudioPlayer for playing many clips and this will fix latency of making a AudioPlayer active and play a track. For now, we only support 32 audio clips being played simultaneously. But AudioEngine module has limited  it to 24 clips by default.\r\n* Adds audio performance test case\r\n* Supports to preload audio files asynchronously.\r\n\r\nPlease help to test it on the Android devices which have low performance. Thanks :)"},"comment":{"url":"https://api.github.com/repos/cocos2d/cocos2d-x/issues/comments/242019000","html_url":"https://github.com/cocos2d/cocos2d-x/pull/15875#issuecomment-242019000","issue_url":"https://api.github.com/repos/cocos2d/cocos2d-x/issues/15875","id":242019000,"user":{"login":"piotrros","id":8133606,"avatar_url":"https://avatars.githubusercontent.com/u/8133606?v=3","gravatar_id":"","url":"https://api.github.com/users/piotrros","html_url":"https://github.com/piotrros","followers_url":"https://api.github.com/users/piotrros/followers","following_url":"https://api.github.com/users/piotrros/following{/other_user}","gists_url":"https://api.github.com/users/piotrros/gists{/gist_id}","starred_url":"https://api.github.com/users/piotrros/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/piotrros/subscriptions","organizations_url":"https://api.github.com/users/piotrros/orgs","repos_url":"https://api.github.com/users/piotrros/repos","events_url":"https://api.github.com/users/piotrros/events{/privacy}","received_events_url":"https://api.github.com/users/piotrros/received_events","type":"User","site_admin":false},"created_at":"2016-08-24T10:21:19Z","updated_at":"2016-08-24T10:21:19Z","body":"Today for testing I only have Nexus 6P and old lenovo tablet with android 4.4.4, which I mentioned before.\r\n\r\nThat's strange that it can't decode .ogg files, because as for as I know it should be the most compatible audio format. That's why I use it."}}
{"actor":{"display_login":"piotrros"}}