{"action":"created","issue":{"url":"https://api.github.com/repos/openpeer/ortc/issues/471","repository_url":"https://api.github.com/repos/openpeer/ortc","labels_url":"https://api.github.com/repos/openpeer/ortc/issues/471/labels{/name}","comments_url":"https://api.github.com/repos/openpeer/ortc/issues/471/comments","events_url":"https://api.github.com/repos/openpeer/ortc/issues/471/events","html_url":"https://github.com/openpeer/ortc/issues/471","id":148750064,"number":471,"title":"Clarification on behavior when codecPaloadType is unset on encoding","user":{"login":"murillo128","id":1070835,"avatar_url":"https://avatars.githubusercontent.com/u/1070835?v=3","gravatar_id":"","url":"https://api.github.com/users/murillo128","html_url":"https://github.com/murillo128","followers_url":"https://api.github.com/users/murillo128/followers","following_url":"https://api.github.com/users/murillo128/following{/other_user}","gists_url":"https://api.github.com/users/murillo128/gists{/gist_id}","starred_url":"https://api.github.com/users/murillo128/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/murillo128/subscriptions","organizations_url":"https://api.github.com/users/murillo128/orgs","repos_url":"https://api.github.com/users/murillo128/repos","events_url":"https://api.github.com/users/murillo128/events{/privacy}","received_events_url":"https://api.github.com/users/murillo128/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/openpeer/ortc/labels/1.1","name":"1.1","color":"0052cc"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":6,"created_at":"2016-04-15T19:38:46Z","updated_at":"2016-04-16T13:25:58Z","closed_at":null,"body":"> codecPayloadType of type payloadtype\r\n\r\n> For per-encoding codec specifications, give the codec Payload Type here. If unset, the browser will choose.\r\n\r\nI assume that it will choose based on the same mechanism used when no encodings are set: \r\n\r\n> If unset, the browser will  set codecPayloadType to codecs[j].payloadType where j is the index of the first codec that is not \"cn\", \"dtmf\", \"red\", \"rtx\", or a forward error correction codec."},"comment":{"url":"https://api.github.com/repos/openpeer/ortc/issues/comments/210814616","html_url":"https://github.com/openpeer/ortc/issues/471#issuecomment-210814616","issue_url":"https://api.github.com/repos/openpeer/ortc/issues/471","id":210814616,"user":{"login":"robin-raymond","id":2962646,"avatar_url":"https://avatars.githubusercontent.com/u/2962646?v=3","gravatar_id":"","url":"https://api.github.com/users/robin-raymond","html_url":"https://github.com/robin-raymond","followers_url":"https://api.github.com/users/robin-raymond/followers","following_url":"https://api.github.com/users/robin-raymond/following{/other_user}","gists_url":"https://api.github.com/users/robin-raymond/gists{/gist_id}","starred_url":"https://api.github.com/users/robin-raymond/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robin-raymond/subscriptions","organizations_url":"https://api.github.com/users/robin-raymond/orgs","repos_url":"https://api.github.com/users/robin-raymond/repos","events_url":"https://api.github.com/users/robin-raymond/events{/privacy}","received_events_url":"https://api.github.com/users/robin-raymond/received_events","type":"User","site_admin":false},"created_at":"2016-04-16T13:25:58Z","updated_at":"2016-04-16T13:25:58Z","body":"FYI -I assume all above is in the context of a sender exclusively.\r\n\r\n>So there can be just two encodings:\r\n\r\nNo, there can be as many encodings as you want. You could send the same codec at different resolutions for example;\r\n\r\n>(given that the browser, \"somehow\", knows that we want simulcast).\r\n\r\nIt's not \"somehow\". If you specified 2 encodings without any layer dependency then you get simulcast of 2 streams.\r\n\r\n>And, if there are no encodings:\r\n>The browser must create two encodings given that two media codecs are provided into codecs\r\n\r\nNo, that's not correct.\r\n\r\nYou could list 10 media codecs and 1 encoding without the `codecPayloadType` specified; There would be only one stream sent with the first media codec picked. You could list 2 encodings without the `codecPayloadType` specified; There would be 2 encodings both using the SAME first media codec in the list. Those 9 other media codecs would be ignored entirely.\r\n\r\nIf you listed no encodings on a sender, then that's identical to specifying a single encoding without a payload type without any other specific encoding attributes specified on the encoding. (NOTE: The receiver has a different meaning for no encodings as it means N possible switched streams could match based on PT alone);\r\n\r\nThus N encodings = N RTP media streams for a sender; No encodings = 1 RTP media stream for a sender, first media codec used; [Again I'm ignoring FEC or RTX redundancy as they are part of the same encoding(s)]\r\n"}}