mozilla :: #media

11 Sep 2017
03:15kentuckyfriedtakahecpearce: How many are on Windows vs Linux?
03:15* kentuckyfriedtakahe looks
03:18kentuckyfriedtakahe0.51% Windows, 0.02% OSX and 4.21% Linux
03:20cpearcekentuckyfriedtakahe: odd that OSX would fail at all.
03:21kentuckyfriedtakahecpearce: it is supposed to be 0, but obviously didn't quite get there for some reason
05:28jyamattwoodrow|away: so you don't want the stuff in bug 1352016? I'm still hoping we can get a solution in beta 56 before its too late.
05:28firebot NEW, thick green line on the right and/or bottom of the HTML5 video
05:29jyaOne of the issue is that how broken cards or drivers behave vary. So I'm not sure we can cover all cases easily.
05:32jyaAh, safari on ios doesn't show a valid frame for either!
05:44jyaKentuckyfriedtakahe if you could weigh in on bug 1352016.
05:44firebot NEW, thick green line on the right and/or bottom of the HTML5 video
05:45jyaBackground info is that on AMD cards with older drivers, not that old was fixed in January. They don't handle alignment properly with nv12
05:45jyaOn nvidia, Tesla based cards have a problem there too.
05:46kentuckyfriedtakahejya: does that mean we need to do a readback when the size is not a multiple of 8 ?
05:46jyaSo rather than default back to rgb which cause a performance hit on Intel devices, I only convert to rgb on those AMD and nvidia specific cards
05:46kentuckyfriedtakaheYeah. I read the email thread.
05:47jyakentuckyfriedtakahe: performing the conversion/copy from nv12 to rgb happened to fix the problem
05:47jyaI'm not sure if the issue is related to a specific size.
05:48kentuckyfriedtakahejya: just wondering because of the mention of "alignment"
05:48jyaI asked on Bugzilla if people could play the 132 pixels video just fine
05:48kentuckyfriedtakaheCould they?
05:49jyaCould be. But that's for AMD. I wish we had has responsive folks at nvidia
05:49kentuckyfriedtakaheWe have a guy at nVidia
05:49jyakentuckyfriedtakahe: the test only check the center of each square to see if they have the right colours. It doesn't check the edges.
05:50kentuckyfriedtakahewhere should I start reading the bug or do you want me to read the whole thing?
05:51jyaI've only just asked. So haven't got answers yet.
05:52jyaI know that my approach works. And disabling nv12 does work for them.
05:52jyaWhich is better than disabling the D3D11 decoder and use the d3d9 instead
05:53jya(which happen to do a copy conversion too) but with the old locking method
05:54jyaAh ah my 2yo heard me saying that I didn't think he should go to school because he's sick. Has come to us with at least 3 new ailments begging not to go to kinder
05:55kentuckyfriedtakahejya: I can probably repro the AMD issue on my machine at work
05:57jyaMake sure you have older driver than 21.x
05:58kentuckyfriedtakahejya: it would be ideal if we can detect the issue
05:59jyaIt would be yes.
05:59jyaBut code freeze is coming at us quickly
06:00jyaFor some devices, they had the green line in the first third part of the screen
06:07kentuckyfriedtakahejya: gerald just landed a patch that blacklists D3D11 support on 8086:0116 cards
06:07kentuckyfriedtakaheso Intel similarlly affected.
06:08kentuckyfriedtakaheI bet this is only an issue for certain video geometries.
06:09kentuckyfriedtakahejya: bug 1378722
06:09firebot UNCONFIRMED, Facebook video playback issue causes Intel HD GPU (0x0116) restart
06:10jyakentuckyfriedtakahe: isn't that fixed with the blacklisting of 6th gen intel locking? (it reverts to a different locking)
06:10kentuckyfriedtakahejya: I don't know
06:10geraldkentuckyfriedtakahe: Did I? I just blacklisted a few missing driver versions. :-P
06:10jyathough Bas said he likely fixed that issue adding a new lock
06:11kentuckyfriedtakahejya: there is something wrong with that pattern. stuff breaks, add locks.
06:12jyakentuckyfriedtakahe: it's D3D11 driver locking
06:12jyaall crashes pointed to a race issue (outside of our control)
06:29jyakentuckyfriedtakahe: in any case, I spent most of my sunday working on that nv12 issue (I wanted to make sure there would be no performance impact, like don't want to check if things are enabled every single time you perform allocation. Had to understand how those features are detected and pass to the GPU process)
06:29jyawould be nice if reviews were done purely for their technical aspects, and the decision to have such feature being done by a product manager or some kind
06:32kentuckyfriedtakahethe tricky thing is trying to cover all the different hardware combinations
06:32kentuckyfriedtakaheso we should email intel as well
06:33* kentuckyfriedtakahe is pulling the trampoline apart before it gets dark
06:37jyakentuckyfriedtakahe: there's been no report on intel issues
06:38jyaand seeing it's the majority of our users, the probability that it would get reported should be greater than amd or nvidia no?
07:36kentuckyfriedtakahejya: you're saying that the green window in 1378722 is different?
07:36kentuckyfriedtakaheoh yeah.. that is actually a driver crash
07:36kentuckyfriedtakahelet me ping YouTube on the Intel thing
07:38jyakentuckyfriedtakahe: I don't know. You disable d3d11, when that just may not be the issue at all
07:39jyaMaybe we should stop asking people to turn off thst pref.
07:39jyaBecause it's typically not what is broken
07:40jyagerald: can you please back that out before we know more? In particular if disabling nv12 solves the issue?
07:42geraldI could ask a friendly sheriff, as it's still on autoland... Are you sure? All I did was fill a hole in the version numbers for an igd...dll.
07:42geraldjya: ^
07:44kentuckyfriedtakahejya: my thinking (at the time, which was some time ago) was that the difference between d3d9 and d3d11 wasn't worth loosing *too* much sleep over
07:44kentuckyfriedtakahewe have a 8086:0116 on the Microsoft Surface v1 in the office
07:44jyakentuckyfriedtakahe: that thinking is no longer of value though. You typically aren't comparing d3d9 decoder VS d3d11
07:45jyaIt just happens that the d3d9 decoder convert to rgb first, so it hides the nv12 issue
07:45kentuckyfriedtakahejya: of course. d3d9 also has a readback which is uggglleeey
07:45jyaThe locking used in d3d9 is also problematic and blocks the entire GPU thread
07:46jyaIt's bad.
07:46jyaIf the issue is with nv12 (I've asked to poster to check), then we know it's a dupe.
07:46kentuckyfriedtakaheyes. I agree that d3d11 is better.
07:47kentuckyfriedtakahebut both d3d9 and d3d11 with rgba conversion are better than software decoding
07:47jyaCan't just continue to blacklist whenever we have a report. Soon there will be no HW adapters left
07:47geraldThis one was older than previously-blacklisted versions.
07:48jyakentuckyfriedtakahe: in any case, please stop asking people to disable dxva d3d11, it doesn't give us much data to analyse the problem
07:48kentuckyfriedtakahejya: ok
07:48geraldShould we de-blacklist more of them then?
07:49kentuckyfriedtakahegerald: why were they blacklisted in the first place?
07:49geraldProbably due to crash reports, let me check...
07:49KWierso|afkgerald: looks like aryx is around if you need a backout
07:50geraldKWierso|afk: Thanks
07:50jyagerald: if it's an old version we can keep that in for now
07:50jyaHopefully the user will respond before it hits central
07:51jyaCan backout later.
07:51KWierso|afkjya: ping aryx to make sure it doesn't get merged
07:51kentuckyfriedtakahejya: my general thinking has been to not loose too much sleep over using d3d9 instead of d3d11
07:52jyakentuckyfriedtakahe: we should have a series of things to ask people to try, before going with the hammer
07:53geraldjya: We used to have "igd10umd32.dll:,,, (older ones...)", I added
07:53geraldand to test, people can always overwrite the blacklists in about:config
07:53kentuckyfriedtakahejya: do you feel like writing up that series?
07:54jyakentuckyfriedtakahe: I'll write something up yes.
07:57kentuckyfriedtakahejya: maybe we need to write "decoder doctor II" which automatically tries the things.
07:58kentuckyfriedtakaheor someone could write an "advanced video playback options" extension
08:00geraldjya: If that's any use, I started blocking igd10umd32.dll in bug 1274127
08:00firebot FIXED, crash in igd10umd32.dll@0x14b17c; igd10iumd32.dll@0x12d7bc, @0x12e1cc, @0x178a5f
08:01jyaThat's prior nv12, so maybe it doesn't matter
08:02jyaAnd as kentuckyfriedtakahe said (twice) it's not worth losing sleep over
10:20jyajw_wang: got a url for thst twitch video?
10:55jesuppadenot: ping
10:59jesuppadenot: about to be afk for an hour and a bit - do you think you'll be getting to the switch-to-APM patches today? Note that I think this also gets rid of the downsample-to-32KHz when processing is in use (though it still bypasses if it isn't). 44100 will be upsampled to 48000
10:59* jesup afk
12:01jyagerald, kentuckyfriedtakahe : in bug 1378722 it ws nv12 too !
12:01firebot FIXED, Facebook video playback issue causes Intel HD GPU (0x0116) restart
12:01jyanow seeing that his HW decoding is enabled, and that it machines display all green stuff, why didn't the sanity test work !??
13:04padenotjesup, I'll get to it today
13:16padenotjesup, I've asked how to get infos about sandbox violations, I've been told that they don't have anything
13:16padenotjesup, which really surprised me
13:49padenotachronop, ping
13:49achronoppadenot: pong
13:50padenotachronop, are you looking at the crash that seem to happen when plugging/unplugging a device ?
13:50padenotachronop, see mreavy's ping this weekend
13:50achronopI try to repro
13:57mjfabr: ping
14:02bwujya: kentuckyfriedtakahe: From kaku's telemetry, the crash rate for those blacklisted HW decoder is quite low.
14:03padenotachronop, which crash are you looking at
14:03jyabwu: they are blacklisted, so how could they even cause a crash?
14:03achronoppadenot: I try to repro bug 1398356 but I hit something else
14:03firebot NEW, Tab crash when unplugging headset durring webrtc call
14:04bwujya: we re-enabled it on nightly and see how often it will crash
14:04padenotachronop, what is this new thing ?
14:05achronoppadenot: it's described here bug 1398788
14:05firebot NEW, Deadlock on webrtc call Audio+Video when plug or uplug EarPOds (3.5mm plug)
14:05bwujya: Bug 1393399
14:05firebot FIXED, Deblacklisting HW decoding and add Telemetry to see the decoder recovery time.
14:08padenotachronop, well, there is no MSG in those backtraces
14:08padenotachronop, no wonder video is not working :-)
14:08jyabwu: this is a different one we were talking about today
14:08padenotachronop, break in mozilla::MediaStreamGraph::~MediaStreamGraph
14:08jyaone where we blacklist those intel version to force using the D3D9 decoder
14:09padenotI'm taking a short break
14:12bwujya: yeah it is different. I just want to add that now the crash rate of those blacklisted driver is quite low.
14:19jesuppadenot: thanks
14:28achronoppadenot: video freeze but breakpoint is not hit
14:37pehrsonsachronop: did you see my comment?
14:38pehrsonscan you repro with msg lifetime logs?
14:39achronoppehrsons: I saw your message, I can try the lifetime logs ...
14:44abrmjf: pong
15:45firebotBug 1361336 FIXED, Audio output device cannot be changed.
15:45padenotbwu, yes, thanks, I'm writing the a? request at the moment
15:46bwupadenot: Thanks for helping chunmin on these.
15:47padenotbwu, you're welcome, thanks to him for fixing the issue in the first place !
15:49padenotbwu, hop, done !
15:50bwupadenot: Sweet! I can have a good sleep now. :-)
15:50padenotbwu, sleep well !
16:44jyamattwoodrow|away: you're up late, not in NZ?
16:59jesupabr: ping
16:59abrjesup: pong
17:00jesupabr: from Sep 1 --- jesup abr: bug 1395310 - thoughts? DataChannel connections are silent, and at one level are equivalent to WebSockets (and thus our decision to not require permissions) -- but websockets are server<->client, not client<->client, and so are much less &quot;interesting&quot; for things like WebTorrent distribution, and thus his concern. The use for content mirroring overall seems far...
17:00jesup...less compelling in...
17:00firebot UNCONFIRMED, WebRTC should be behind permission dialog like microphone access
17:01jesup ...practice, though some people proposed and even trialed doing so, I don&#39;t think it really works well in practice - but I suppose that is a consideration as well, as bandwidth for many (mobile) users isn&#39;t by any means unlimited.
17:02abrSo, weve had this discussion a number of times in a number of venues, and the conclusion across pretty much all of the WebRTC industry is that prompting for setting up a PC would be nonsense and high friction.
17:03abrThe solution for the problem he highlights is the thing that weve historically called the eye of sauron approach, which I presume you recall
17:03drnoabr, jesup: while I agree that a prompt for data connections is nonsense, maybe in the light of Safaris upcoming Type 3 releasing of local IP addresse we should discuss if we should switch from Type 2 to Type 3 as well?
17:04jibyeah the issue conflates ip exposure and torrent sourcing liability, the two issues raised I think
17:05abrdrno mode 3 ruins a number of extremely interesting and useful dc-only use cases
17:05jesupPart of the previous discussion/agreement was based on there being little incentive for people to waste major amounts of bandwidth (or open people up to IP-sniffing-based lawsuits); those assumptions may no longer hold. And this could be really painful if sites do hidden bandwidth use for e.g. torrents if you&#39;re on mobile (limited) data
17:05jibi.e. LAN games
17:05abrdrno: Think of flyweb-type usage
17:06abrjesup: Can you speak to no longer hold?
17:07drnoabr: Im aware of that. But I think since we last talked about it we see/have seen more abuse of DC only PCs
17:07abrdrno: Sure; but those can be called out after the fact with effectively no harm (assuming youre talking about ad network use)
17:07jesupyes - that&#39;s the tension - it&#39;s very useful for some cases, and inability to ask for LAN IPs for datachannels hurts some usecases we care about. But making that the default obviously has issues, and so does &quot;how do we ask&quot;. But forcing use-cases to ask for audio jsut to enable local datachannels is even more problematic
17:08drnoabr: what do you mean by after the fact?
17:08abrOkay, so WRT mode 2 versus 3 I feel very strongly that we should do what the eventual RFC says. If you think it says the wrong thing, take it to
17:08abrdrno: Buy placing an icon somewhere obvious that lets users know that a PC is in use somewhere on the page
17:09drnoabr: that is the eye of sauron, right?
17:09abrdrno: yes
17:09abrdrno: That will get the attention of enough technically savvy users that a shame them into stopping approach will (probably) work
17:10drnoabr: if we head down that road, maybe we could throw in the mix that the eye of sauron becomes some kind of switch which turns on privavcy?
17:10abrdrno: You mean like tracking protection?
17:11abrThe big issue I have with switching to mode 3 (or even the existance of mode 3) is that its solving something that sounds like an issue to people who dont really understand the implications, while providing no real privacy or security benefits.
17:11drnoabr: not really. I mean more that if we add a UI element anyway, then lets concider to not making it just a passive indicate (which already good), but let people click it and turn one mode 3 or even 4 if they feel uncomfortable
17:12abrNo one has described a plausible attack that having your local IP address facilitates. Its easy to hype up into something that sounds like the end of the world, but its really an utter non-issue.
17:12abrdrno: Ah, okay. Interesting.
17:12drnoabr: plus we could track how many users click it ;)
17:15fippoabr: i think chrome saw some attacks earlier this year where this enabled exploit kits to find out the local routers ip. faster than by scanning all rfc 1918 spaces
17:16drnoabr, jesup: in regards to bandwidth usage we could talk about limiting the DC bandwidth by default to something low, until the user has given consent
17:16jesup&quot;no longer hold&quot; - it&#39;s become clear that there are incentives for some &#39;hidden&#39; uses of bandwidth - and that can cause issues with caps/etc, and can cause some legal exposure (silent webtorrent). The biggest plus is that major sites woulnd&#39;t take the webtorrent risk-of-exposure, but in the shady world of distribution of copyrighted files, websites might.
17:16abrfippo: Maybe? The best youre doing there is reducing by a factor of 3. Youre talking about single-digit seconds of speed improvement
17:17abrOn behalf of Texas, Id like to welcome all of yall to our fine state. :)
17:17abrOh, wrong channel. :)
17:17jesupMost of us will be there...
17:17mjfabr: There is never a wrong channel for that!
17:18mjfAlthough I cant understand why Minneapolis in December wasnt an option
17:19drnomjf: no hotels? :D
17:19mjfLOL - Im sure thats exactly the reason!
17:20fippoabr: more like 255x i think but... yes, the attacks would have been possible without this
17:21* mjf looks right past the snow plows
17:22jesupfippo: you can parallelize the scan, so faster than 255x (though 10.* addresses make for more fun)
17:24fippoabr: -- i interpret this (together with the lack of SRD in other graphs) as: &quot;at least 2 out of 3 peerconnections are used only for ip discovery&quot;
17:26jibthose dirty crooks, not even spec-compliant
17:30dveditzabr: also allows fingerprinting individuals on a shared NAT (corp, school, mobile)
17:37abrdveditz: Sure, but so does the User agent header, the Accept header, the Connection header, the Encoding header, the Language header, the list of plugins, the platform, the cookies preferences (allowed or not), the Do Not Track preferences (yes, no or not communicated), the timezone, the screen resolution and its color depth, the use of local storage, the use of session storage, a picture rendered with the HTML Canvas element, a picture rendered
17:37abrWebGL, the presence of AdBlock, the list of fonts, and a host of other things.
17:37abrThe guidance here is dont extend the surface unnecessarily
17:37abrBut this isnt unnecessary
17:39dveditzMost of the stuff you list the Tor browser tries to regularize so it&#39;s not distinguishing. For local IP all they could do was completely disable the feature.
17:39abrdveditz: Oh, we definitely need to give them a knob to tune things like this.
17:39abrBut thats not firefox
17:40ngAustin in December, just in time for Cedar season!
17:40dveditzdo we have any telemetry on how often this feature is used? I bet it&#39;s 50x more used by ads than sites legitimately transferring data
17:41abrdveditz: youd need a control to interpret that number. I propose using web pages that read off of canvas elements.
17:42abrdveditz: The problem is that ad networks are pervasive, and advanced web apps are not
17:42abrdveditz: So youll get swamped by bad actors
17:43dveditz&quot;web pages that read canvas&quot; can also be the ads trying to track you
17:43abrdveditz: Thats my point.
17:43abrI hypothisize that its used for that far more frequently than for anything youd consider legit
17:43dveditzI think that&#39;s *my* point :-)
17:44dveditzthe percentage of legit use is small enough that peerconnection should have a permission request like (combined with?) the camera/mic request
17:45abrWe have a *lot* of web features that range from moderately to extremely useful for their intended purpose. Theyre also useful for fingerprinting, and the web is a swamp. So these features - I surmise all of them - will have far more tracking use than intended use.
17:45abrShould we prompt for them all?
17:45abrI mean, Tor does.
17:45abrBut thats Tors job
17:45abrIt errs on the side of making the web unsuable for the purpose of privacy
17:45abrOur job is to provide the best privacy that we can while not ruining the experience.
17:46abrBut I have a hard time beleiveing that you could draw a meaningful line between the fingerprinting properties of PC versus these other features
17:47abrAnd if youre not going to propose doorhanging all of them, I assert that youll need a better reason than this is the one that someone brought up most recently.&quot;
17:47jibdveditz: should reading canvas have permission request?
17:48dveditzjib: why not? make them write-only
17:49dveditz(sorry, in a mtg so I can&#39;t give a considered response on how/why that&#39;s different)
18:27jesupabr: so what are our realistic options? 1) do nothing, 2) switch to mode 3, 3) Add bandwidth limits per-connection if there&#39;s no approval (reduce incentive, reduce damage in case of caps) - note the limits can be progressive (unlimited up to a MB, then caps bw up to 100MB, then majorly caps bandwidth or blocks). Note however this can be gamed in all sorts of ways (N connections, replace... when it gets limited, etc), 4) pop a request for DC-only peerconnection (#include standard problems), 5) allow a website to ask for full access explicitly to avoid default limits (#include standard problems), 6) eye-of-sauron combined with one of 1-5, and with the option for some of them to grant permissions from there (again, #include standard problems, though perhaps eye-of-sauron...
18:27jesup...may help us some here)
18:29abrBW caps ruin the local cases also
18:29* fippo wonders if still works
18:29abrMy preference is (1) and (6)
18:29fippo(oh hey, two years old...)
18:31abrfippo: Ive asked for these to be migrated to webextensions so people can use them in Firefox 57+. Not sure how thats going
18:32jesupabr: yes
18:33jesupabr: asked who?
18:33abrjesup: Filed a bug, pinged Andy, IIRC
18:33abrjesup: In any case, the issues around IP handling have been hashed out an awful lot, and the current state of things is where the conversation has landed (and Ill point out that weve had the conversation many times, and it always came back to the same conclusion). Unless theres new data to consider (and ad networks are now demonstrably doing what we knew they were going to do doesnt count), I beleive its a waste of energy to
18:33abrdiscussion up again.
18:34abrjesup: Let me find the bug
18:35firebotBug 1281833 NEW, Add webrtcUI WebExtension calls
18:37jesupabr: yeah - part of why I pinged you here instead of discussing in the bug. I will say that until I have proof that there&#39;s in-the-wild hidden-webtorrents, I&#39;m not in any rush to revisit for that. Bandwidth caps are more likely if people are really using it as distributed CDNs, but I don&#39;t see those being used much in practice (it&#39;s a nice idea, not quite so useful in most cases, though...
18:37jesup...I&#39;m sure there are some isolated ones)
18:38jesupThese were not discussed or discussed enough in the original (and subsequent) discussions, but I don&#39;t see smoking guns there that demand immediate action
19:17padenotjust did a call between firefox nightly osx and someone using the iphone app, it was nice
19:18padenotsome weird talkback in my analog headphones, weirdly, not sure what&#39;s up
19:19padenotnot sure talkback is the right term. my own voice (of course slightly delayed) in my headphones
19:20fippopadenot: hrm... i fixed a weird bug which might have caused this earlier today. let me check if the fix was deployed...
19:20fipposhould be deployed
19:21padenotthe call was between paris and london on ridiculous fiber links, network latency is much lower than any audio latency, not sure if it was local or remote audio
19:25fippopadenot: if it happens again try muting hard by pasting `document.querySelectorAll(&quot;audio&quot;).forEach(el => el.muted = true)` -- if you hear any audio after that i have more work to do (or there is a caching issue)
20:58achronopfippo: I get my voice back on appear
20:59achronopfippo: and the other side the same
21:00achronopfippo: as soon as is not my error I am fine
21:22Caspy7do we stop drawing GIFs when off screen? Or at least in unfocused tabs?
22:01rilliankentuckyfriedtakahe: 1:1?
22:53kentuckyfriedtakaheCaspy7: yes
12 Sep 2017
No messages
Last message: 9 days and 4 hours ago