{"action":"created","issue":{"url":"https://api.github.com/repos/OpenVisualCloud/SVT-AV1/issues/779","repository_url":"https://api.github.com/repos/OpenVisualCloud/SVT-AV1","labels_url":"https://api.github.com/repos/OpenVisualCloud/SVT-AV1/issues/779/labels{/name}","comments_url":"https://api.github.com/repos/OpenVisualCloud/SVT-AV1/issues/779/comments","events_url":"https://api.github.com/repos/OpenVisualCloud/SVT-AV1/issues/779/events","html_url":"https://github.com/OpenVisualCloud/SVT-AV1/issues/779","id":520044264,"node_id":"MDU6SXNzdWU1MjAwNDQyNjQ=","number":779,"title":"poor command line line interface","user":{"login":"stax76","id":11410540,"node_id":"MDQ6VXNlcjExNDEwNTQw","avatar_url":"https://avatars3.githubusercontent.com/u/11410540?v=4","gravatar_id":"","url":"https://api.github.com/users/stax76","html_url":"https://github.com/stax76","followers_url":"https://api.github.com/users/stax76/followers","following_url":"https://api.github.com/users/stax76/following{/other_user}","gists_url":"https://api.github.com/users/stax76/gists{/gist_id}","starred_url":"https://api.github.com/users/stax76/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stax76/subscriptions","organizations_url":"https://api.github.com/users/stax76/orgs","repos_url":"https://api.github.com/users/stax76/repos","events_url":"https://api.github.com/users/stax76/events{/privacy}","received_events_url":"https://api.github.com/users/stax76/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2019-11-08T14:27:39Z","updated_at":"2019-11-08T14:34:02Z","closed_at":null,"author_association":"NONE","body":"There are certain CLI traditions and similarities between x264, x265 and nvencc, following traditions and similarities makes the lives of CLI users and GUI authors easier, knowledge and code could be shared.\r\n\r\n1. Executable name should be reasonable short, easy to remember and type, example: git, cmd or wt (new windows terminal)\r\n\r\n2. it's a tradition that short switches start with a single dash - and long switches start with double dash -- and there are libraries for parsing, it's OK doing it differently like powershell but in doubt I suggest to follow the tradition.\r\n\r\nhttps://en.wikipedia.org/wiki/Getopt\r\n\r\n3. switches should use identical names and parameters as other encoders if possible\r\nhttps://x265.readthedocs.io/en/latest/cli.html#cmdoption-preset\r\n\r\n4. there should be good documentation for both CLI --help, -h and online with anchors, there should be switch type information like int, float etc. and there should be categories like Analysis, Slice Decision, IO, Performance etc.\r\n\r\n5. config file and cli parameters should be identical\r\n\r\nhttps://mpv.io/manual/master/#configuration-files\r\n\r\nhttps://github.com/ytdl-org/youtube-dl/blob/master/README.md#configuration\r\n\r\n6. switches should have a long version --long and a short version -l and not only one of both.\r\n\r\n7. I don't know if it's already supported, y4m input support is important\r\n\r\nI'm creator of the oldest and most feature rich encoder GUI staxrip that started 2002 with divx, we've built countless encoder gui's, for av1 so far two, one for aomenc and one for rav1e, both encoders are too slow for end users so it was probably a waste of time, many people request to build a third gui for svt-av1 but I have doubts, a poor cli and poor documentation is an indication that an encoder will fail, maybe nvidia will soon have a better av1 encoder that everybody will use.\r\n\r\nSorry for being so direct and not using more kind language, it's not my strength, due to intuition I'm not very optimistic about svt-av1, I hope that I'm wrong and it will be a success."},"comment":{"url":"https://api.github.com/repos/OpenVisualCloud/SVT-AV1/issues/comments/551850633","html_url":"https://github.com/OpenVisualCloud/SVT-AV1/issues/779#issuecomment-551850633","issue_url":"https://api.github.com/repos/OpenVisualCloud/SVT-AV1/issues/779","id":551850633,"node_id":"MDEyOklzc3VlQ29tbWVudDU1MTg1MDYzMw==","user":{"login":"1480c1","id":8345542,"node_id":"MDQ6VXNlcjgzNDU1NDI=","avatar_url":"https://avatars0.githubusercontent.com/u/8345542?v=4","gravatar_id":"","url":"https://api.github.com/users/1480c1","html_url":"https://github.com/1480c1","followers_url":"https://api.github.com/users/1480c1/followers","following_url":"https://api.github.com/users/1480c1/following{/other_user}","gists_url":"https://api.github.com/users/1480c1/gists{/gist_id}","starred_url":"https://api.github.com/users/1480c1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/1480c1/subscriptions","organizations_url":"https://api.github.com/users/1480c1/orgs","repos_url":"https://api.github.com/users/1480c1/repos","events_url":"https://api.github.com/users/1480c1/events{/privacy}","received_events_url":"https://api.github.com/users/1480c1/received_events","type":"User","site_admin":false},"created_at":"2019-11-08T14:34:02Z","updated_at":"2019-11-08T14:34:02Z","author_association":"CONTRIBUTOR","body":"Afaik, the executable is supposed to be more of an example implementation and this was designed to have the end users use the library directly or through ffmpeg/other wrappers, so probably the design quality of the application was not as high of a priority as much as the quality of the internal encoder itself."}}
{"actor":{"display_login":"1480c1"}}