{"action":"closed","number":1088,"pull_request":{"url":"https://api.github.com/repos/HandBrake/HandBrake/pulls/1088","id":160583495,"html_url":"https://github.com/HandBrake/HandBrake/pull/1088","diff_url":"https://github.com/HandBrake/HandBrake/pull/1088.diff","patch_url":"https://github.com/HandBrake/HandBrake/pull/1088.patch","issue_url":"https://api.github.com/repos/HandBrake/HandBrake/issues/1088","number":1088,"state":"closed","locked":false,"title":"contrib: nlmeans prefilter passthru mode fixes","user":{"login":"chrisd8088","id":28857117,"avatar_url":"https://avatars1.githubusercontent.com/u/28857117?v=4","gravatar_id":"","url":"https://api.github.com/users/chrisd8088","html_url":"https://github.com/chrisd8088","followers_url":"https://api.github.com/users/chrisd8088/followers","following_url":"https://api.github.com/users/chrisd8088/following{/other_user}","gists_url":"https://api.github.com/users/chrisd8088/gists{/gist_id}","starred_url":"https://api.github.com/users/chrisd8088/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrisd8088/subscriptions","organizations_url":"https://api.github.com/users/chrisd8088/orgs","repos_url":"https://api.github.com/users/chrisd8088/repos","events_url":"https://api.github.com/users/chrisd8088/events{/privacy}","received_events_url":"https://api.github.com/users/chrisd8088/received_events","type":"User","site_admin":false},"body":"Hi -- Here are two potential fixes for the nlmeans filter, specifically for the prefilter pass-thru mode.\r\n\r\nFirst, I noticed commit 29a49a8 updated one nlmeans_prefilter() call, but there's another in the flush function which may need to be updated too.\r\n\r\nSecond, from the code and comments it seemed that the intent of the pass-thru mode was to cause the prefilter's result to be the filter's output, skipping the actual nlmeans filter: when the pass-thru flag is true, nlmeans_prefilter() is called but not nlmeans_plane(), and the intro comments say that prefilter enum 2049 means: \"Mean 3x3 passthru (NLMeans off, prefilter is the output)\".\r\n\r\nHowever, I found that the using 2049 or any prefilter+2048 enum setting simply produced output identical to the input.  I believe this is because nlmeans_prefilter() is writing into the src->mem_pre buffer but that is then ignored if nlmeans_plane() is skipped.  Simply writing the prefilter output to src->mem instead was sufficient, in my tests, to cause the prefilter results to be output from the filter.\r\n\r\nI hope these are helpful possible fixes; if not, my apologies!  (Thanks for the great implementation of nlmeans, BTW ... so much faster with the parallelization than ffmpeg's!)  Thanks, Chris.","created_at":"2017-12-30T08:47:48Z","updated_at":"2017-12-30T11:27:31Z","closed_at":"2017-12-30T11:27:31Z","merged_at":null,"merge_commit_sha":"8ba7604e7ff1393dbf7d95359383257fdc0a2495","assignee":{"login":"bradleysepos","id":70239,"avatar_url":"https://avatars1.githubusercontent.com/u/70239?v=4","gravatar_id":"","url":"https://api.github.com/users/bradleysepos","html_url":"https://github.com/bradleysepos","followers_url":"https://api.github.com/users/bradleysepos/followers","following_url":"https://api.github.com/users/bradleysepos/following{/other_user}","gists_url":"https://api.github.com/users/bradleysepos/gists{/gist_id}","starred_url":"https://api.github.com/users/bradleysepos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradleysepos/subscriptions","organizations_url":"https://api.github.com/users/bradleysepos/orgs","repos_url":"https://api.github.com/users/bradleysepos/repos","events_url":"https://api.github.com/users/bradleysepos/events{/privacy}","received_events_url":"https://api.github.com/users/bradleysepos/received_events","type":"User","site_admin":false},"assignees":[{"login":"bradleysepos","id":70239,"avatar_url":"https://avatars1.githubusercontent.com/u/70239?v=4","gravatar_id":"","url":"https://api.github.com/users/bradleysepos","html_url":"https://github.com/bradleysepos","followers_url":"https://api.github.com/users/bradleysepos/followers","following_url":"https://api.github.com/users/bradleysepos/following{/other_user}","gists_url":"https://api.github.com/users/bradleysepos/gists{/gist_id}","starred_url":"https://api.github.com/users/bradleysepos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradleysepos/subscriptions","organizations_url":"https://api.github.com/users/bradleysepos/orgs","repos_url":"https://api.github.com/users/bradleysepos/repos","events_url":"https://api.github.com/users/bradleysepos/events{/privacy}","received_events_url":"https://api.github.com/users/bradleysepos/received_events","type":"User","site_admin":false},{"login":"jstebbins","id":709720,"avatar_url":"https://avatars0.githubusercontent.com/u/709720?v=4","gravatar_id":"","url":"https://api.github.com/users/jstebbins","html_url":"https://github.com/jstebbins","followers_url":"https://api.github.com/users/jstebbins/followers","following_url":"https://api.github.com/users/jstebbins/following{/other_user}","gists_url":"https://api.github.com/users/jstebbins/gists{/gist_id}","starred_url":"https://api.github.com/users/jstebbins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jstebbins/subscriptions","organizations_url":"https://api.github.com/users/jstebbins/orgs","repos_url":"https://api.github.com/users/jstebbins/repos","events_url":"https://api.github.com/users/jstebbins/events{/privacy}","received_events_url":"https://api.github.com/users/jstebbins/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/HandBrake/HandBrake/pulls/1088/commits","review_comments_url":"https://api.github.com/repos/HandBrake/HandBrake/pulls/1088/comments","review_comment_url":"https://api.github.com/repos/HandBrake/HandBrake/pulls/comments{/number}","comments_url":"https://api.github.com/repos/HandBrake/HandBrake/issues/1088/comments","statuses_url":"https://api.github.com/repos/HandBrake/HandBrake/statuses/efc143ef2934ba932c62f034290975b912fb4ae9","head":{"label":"chrisd8088:nlmeans-prefilter","ref":"nlmeans-prefilter","sha":"efc143ef2934ba932c62f034290975b912fb4ae9","user":{"login":"chrisd8088","id":28857117,"avatar_url":"https://avatars1.githubusercontent.com/u/28857117?v=4","gravatar_id":"","url":"https://api.github.com/users/chrisd8088","html_url":"https://github.com/chrisd8088","followers_url":"https://api.github.com/users/chrisd8088/followers","following_url":"https://api.github.com/users/chrisd8088/following{/other_user}","gists_url":"https://api.github.com/users/chrisd8088/gists{/gist_id}","starred_url":"https://api.github.com/users/chrisd8088/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrisd8088/subscriptions","organizations_url":"https://api.github.com/users/chrisd8088/orgs","repos_url":"https://api.github.com/users/chrisd8088/repos","events_url":"https://api.github.com/users/chrisd8088/events{/privacy}","received_events_url":"https://api.github.com/users/chrisd8088/received_events","type":"User","site_admin":false},"repo":{"id":115697909,"name":"HandBrake","full_name":"chrisd8088/HandBrake","owner":{"login":"chrisd8088","id":28857117,"avatar_url":"https://avatars1.githubusercontent.com/u/28857117?v=4","gravatar_id":"","url":"https://api.github.com/users/chrisd8088","html_url":"https://github.com/chrisd8088","followers_url":"https://api.github.com/users/chrisd8088/followers","following_url":"https://api.github.com/users/chrisd8088/following{/other_user}","gists_url":"https://api.github.com/users/chrisd8088/gists{/gist_id}","starred_url":"https://api.github.com/users/chrisd8088/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrisd8088/subscriptions","organizations_url":"https://api.github.com/users/chrisd8088/orgs","repos_url":"https://api.github.com/users/chrisd8088/repos","events_url":"https://api.github.com/users/chrisd8088/events{/privacy}","received_events_url":"https://api.github.com/users/chrisd8088/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/chrisd8088/HandBrake","description":"HandBrake's main development repository ","fork":true,"url":"https://api.github.com/repos/chrisd8088/HandBrake","forks_url":"https://api.github.com/repos/chrisd8088/HandBrake/forks","keys_url":"https://api.github.com/repos/chrisd8088/HandBrake/keys{/key_id}","collaborators_url":"https://api.github.com/repos/chrisd8088/HandBrake/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/chrisd8088/HandBrake/teams","hooks_url":"https://api.github.com/repos/chrisd8088/HandBrake/hooks","issue_events_url":"https://api.github.com/repos/chrisd8088/HandBrake/issues/events{/number}","events_url":"https://api.github.com/repos/chrisd8088/HandBrake/events","assignees_url":"https://api.github.com/repos/chrisd8088/HandBrake/assignees{/user}","branches_url":"https://api.github.com/repos/chrisd8088/HandBrake/branches{/branch}","tags_url":"https://api.github.com/repos/chrisd8088/HandBrake/tags","blobs_url":"https://api.github.com/repos/chrisd8088/HandBrake/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/chrisd8088/HandBrake/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/chrisd8088/HandBrake/git/refs{/sha}","trees_url":"https://api.github.com/repos/chrisd8088/HandBrake/git/trees{/sha}","statuses_url":"https://api.github.com/repos/chrisd8088/HandBrake/statuses/{sha}","languages_url":"https://api.github.com/repos/chrisd8088/HandBrake/languages","stargazers_url":"https://api.github.com/repos/chrisd8088/HandBrake/stargazers","contributors_url":"https://api.github.com/repos/chrisd8088/HandBrake/contributors","subscribers_url":"https://api.github.com/repos/chrisd8088/HandBrake/subscribers","subscription_url":"https://api.github.com/repos/chrisd8088/HandBrake/subscription","commits_url":"https://api.github.com/repos/chrisd8088/HandBrake/commits{/sha}","git_commits_url":"https://api.github.com/repos/chrisd8088/HandBrake/git/commits{/sha}","comments_url":"https://api.github.com/repos/chrisd8088/HandBrake/comments{/number}","issue_comment_url":"https://api.github.com/repos/chrisd8088/HandBrake/issues/comments{/number}","contents_url":"https://api.github.com/repos/chrisd8088/HandBrake/contents/{+path}","compare_url":"https://api.github.com/repos/chrisd8088/HandBrake/compare/{base}...{head}","merges_url":"https://api.github.com/repos/chrisd8088/HandBrake/merges","archive_url":"https://api.github.com/repos/chrisd8088/HandBrake/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/chrisd8088/HandBrake/downloads","issues_url":"https://api.github.com/repos/chrisd8088/HandBrake/issues{/number}","pulls_url":"https://api.github.com/repos/chrisd8088/HandBrake/pulls{/number}","milestones_url":"https://api.github.com/repos/chrisd8088/HandBrake/milestones{/number}","notifications_url":"https://api.github.com/repos/chrisd8088/HandBrake/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/chrisd8088/HandBrake/labels{/name}","releases_url":"https://api.github.com/repos/chrisd8088/HandBrake/releases{/id}","deployments_url":"https://api.github.com/repos/chrisd8088/HandBrake/deployments","created_at":"2017-12-29T07:17:28Z","updated_at":"2017-12-29T07:17:33Z","pushed_at":"2017-12-30T08:34:21Z","git_url":"git://github.com/chrisd8088/HandBrake.git","ssh_url":"git@github.com:chrisd8088/HandBrake.git","clone_url":"https://github.com/chrisd8088/HandBrake.git","svn_url":"https://github.com/chrisd8088/HandBrake","homepage":"https://handbrake.fr","size":74171,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":null,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"HandBrake:master","ref":"master","sha":"f3a811ae043ed5641d17c0fcf1ec79560746cc90","user":{"login":"HandBrake","id":627269,"avatar_url":"https://avatars2.githubusercontent.com/u/627269?v=4","gravatar_id":"","url":"https://api.github.com/users/HandBrake","html_url":"https://github.com/HandBrake","followers_url":"https://api.github.com/users/HandBrake/followers","following_url":"https://api.github.com/users/HandBrake/following{/other_user}","gists_url":"https://api.github.com/users/HandBrake/gists{/gist_id}","starred_url":"https://api.github.com/users/HandBrake/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HandBrake/subscriptions","organizations_url":"https://api.github.com/users/HandBrake/orgs","repos_url":"https://api.github.com/users/HandBrake/repos","events_url":"https://api.github.com/users/HandBrake/events{/privacy}","received_events_url":"https://api.github.com/users/HandBrake/received_events","type":"Organization","site_admin":false},"repo":{"id":41215835,"name":"HandBrake","full_name":"HandBrake/HandBrake","owner":{"login":"HandBrake","id":627269,"avatar_url":"https://avatars2.githubusercontent.com/u/627269?v=4","gravatar_id":"","url":"https://api.github.com/users/HandBrake","html_url":"https://github.com/HandBrake","followers_url":"https://api.github.com/users/HandBrake/followers","following_url":"https://api.github.com/users/HandBrake/following{/other_user}","gists_url":"https://api.github.com/users/HandBrake/gists{/gist_id}","starred_url":"https://api.github.com/users/HandBrake/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/HandBrake/subscriptions","organizations_url":"https://api.github.com/users/HandBrake/orgs","repos_url":"https://api.github.com/users/HandBrake/repos","events_url":"https://api.github.com/users/HandBrake/events{/privacy}","received_events_url":"https://api.github.com/users/HandBrake/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/HandBrake/HandBrake","description":"HandBrake's main development repository ","fork":false,"url":"https://api.github.com/repos/HandBrake/HandBrake","forks_url":"https://api.github.com/repos/HandBrake/HandBrake/forks","keys_url":"https://api.github.com/repos/HandBrake/HandBrake/keys{/key_id}","collaborators_url":"https://api.github.com/repos/HandBrake/HandBrake/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/HandBrake/HandBrake/teams","hooks_url":"https://api.github.com/repos/HandBrake/HandBrake/hooks","issue_events_url":"https://api.github.com/repos/HandBrake/HandBrake/issues/events{/number}","events_url":"https://api.github.com/repos/HandBrake/HandBrake/events","assignees_url":"https://api.github.com/repos/HandBrake/HandBrake/assignees{/user}","branches_url":"https://api.github.com/repos/HandBrake/HandBrake/branches{/branch}","tags_url":"https://api.github.com/repos/HandBrake/HandBrake/tags","blobs_url":"https://api.github.com/repos/HandBrake/HandBrake/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/HandBrake/HandBrake/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/HandBrake/HandBrake/git/refs{/sha}","trees_url":"https://api.github.com/repos/HandBrake/HandBrake/git/trees{/sha}","statuses_url":"https://api.github.com/repos/HandBrake/HandBrake/statuses/{sha}","languages_url":"https://api.github.com/repos/HandBrake/HandBrake/languages","stargazers_url":"https://api.github.com/repos/HandBrake/HandBrake/stargazers","contributors_url":"https://api.github.com/repos/HandBrake/HandBrake/contributors","subscribers_url":"https://api.github.com/repos/HandBrake/HandBrake/subscribers","subscription_url":"https://api.github.com/repos/HandBrake/HandBrake/subscription","commits_url":"https://api.github.com/repos/HandBrake/HandBrake/commits{/sha}","git_commits_url":"https://api.github.com/repos/HandBrake/HandBrake/git/commits{/sha}","comments_url":"https://api.github.com/repos/HandBrake/HandBrake/comments{/number}","issue_comment_url":"https://api.github.com/repos/HandBrake/HandBrake/issues/comments{/number}","contents_url":"https://api.github.com/repos/HandBrake/HandBrake/contents/{+path}","compare_url":"https://api.github.com/repos/HandBrake/HandBrake/compare/{base}...{head}","merges_url":"https://api.github.com/repos/HandBrake/HandBrake/merges","archive_url":"https://api.github.com/repos/HandBrake/HandBrake/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/HandBrake/HandBrake/downloads","issues_url":"https://api.github.com/repos/HandBrake/HandBrake/issues{/number}","pulls_url":"https://api.github.com/repos/HandBrake/HandBrake/pulls{/number}","milestones_url":"https://api.github.com/repos/HandBrake/HandBrake/milestones{/number}","notifications_url":"https://api.github.com/repos/HandBrake/HandBrake/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/HandBrake/HandBrake/labels{/name}","releases_url":"https://api.github.com/repos/HandBrake/HandBrake/releases{/id}","deployments_url":"https://api.github.com/repos/HandBrake/HandBrake/deployments","created_at":"2015-08-22T16:32:28Z","updated_at":"2017-12-30T08:16:04Z","pushed_at":"2017-12-30T11:27:29Z","git_url":"git://github.com/HandBrake/HandBrake.git","ssh_url":"git@github.com:HandBrake/HandBrake.git","clone_url":"https://github.com/HandBrake/HandBrake.git","svn_url":"https://github.com/HandBrake/HandBrake","homepage":"https://handbrake.fr","size":74174,"stargazers_count":2615,"watchers_count":2615,"language":"C","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":332,"mirror_url":null,"archived":false,"open_issues_count":131,"license":null,"forks":332,"open_issues":131,"watchers":2615,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/HandBrake/HandBrake/pulls/1088"},"html":{"href":"https://github.com/HandBrake/HandBrake/pull/1088"},"issue":{"href":"https://api.github.com/repos/HandBrake/HandBrake/issues/1088"},"comments":{"href":"https://api.github.com/repos/HandBrake/HandBrake/issues/1088/comments"},"review_comments":{"href":"https://api.github.com/repos/HandBrake/HandBrake/pulls/1088/comments"},"review_comment":{"href":"https://api.github.com/repos/HandBrake/HandBrake/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/HandBrake/HandBrake/pulls/1088/commits"},"statuses":{"href":"https://api.github.com/repos/HandBrake/HandBrake/statuses/efc143ef2934ba932c62f034290975b912fb4ae9"}},"author_association":"NONE","merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":null,"comments":1,"review_comments":0,"maintainer_can_modify":false,"commits":2,"additions":12,"deletions":3,"changed_files":1}}
{"actor":{"display_login":"bradleysepos"}}