- From: Greg Billock <gbillock@google.com>
- Date: Sun, 21 Jul 2013 23:31:16 -0700
- To: Jim Barnett <Jim.Barnett@genesyslab.com>, Harald Alvestrand <hta@google.com>
- Cc: "public-media-capture@w3.org" <public-media-capture@w3.org>
- Message-ID: <CAAxVY9fetiQ0V15i4cEiDNZz70Mbxg646bvwcrz8_d8SHLUstw@mail.gmail.com>
Thanks, Jim and Harald. Encoding options are a big black hole, obviously. :-( I think if we use MediaTrackConstraints for this, we should mimic the MediaStreamTrack API ("constraints()/applyConstraints()") -- or perhaps have that mimic the recorder API if getConstraints/setConstraints is preferable -- so it's hinted they're the same type. Is that what you had in mind when you mentioned hoping to just be able to grab the type and semantics from a parallel instance? Or is there another potential spot to get it from? On Fri, Jul 19, 2013 at 12:00 PM, Jim Barnett <Jim.Barnett@genesyslab.com>wrote: > Greg,**** > > In general, get/setOptions is the least mature part of the spec. I’ve > been hoping that I would be able to inherit the options/settings interface > from another spec, but so far that hasn’t worked out. Further comments > in-line.**** > > ** ** > > *From:* Greg Billock [mailto:gbillock@google.com] > *Sent:* Friday, July 19, 2013 2:44 PM > *To:* public-media-capture@w3.org > *Subject:* MediaStream Recording options**** > > ** ** > > A couple more questions about the getOptions/setOptions methods.**** > > ** ** > > First, these APIs look dual, but in fact getOptions returns the set of > available options, not the options that have been set with setOptions. > Should this be renamed getAvailableOptions instead? That the > RecordingSettings and AvailableSettings are different types is a bit > confusing as well. Would renaming the methods be ergonomic enough to go > with a single RecordingSettings type?**** > > >> Something like this would make sense, but again I’m hoping to inherit > the API from another spec, so that all the Recording spec would have to do > is to define the specific options that it uses.**** > > ** ** > > Having getOptions return the set of current options might still be a good > idea.**** > > ** ** > > Second. Are the options meant to be user-consumed? That is, is the idea > that retrieved options can be presented to the user? Or is this meant to > just be manipulated directly by app code?**** > > >> They’re mostly intended for app use. We haven’t really thought about > presentation to the user. I wonder if we’d want an additional pretty-print > name or something like that. **** > > ** ** > > Third. Have you considered options relating to audio sampling? For example > a "audioBitDepth" and "audioSampleRate" might be really nice. I'm guessing > this set of options is intended as the spot where further encoding options > can be added in. How many of these are intended to go here directly as > settings keys as opposed to, say, params on the mime type?**** > > ** ** > > >> We really haven’t thought about this part. **** > > ** ** > > Fourth. "imageWidth" and "imageHeight" sound like photo capture sizes. The > comments on AvailableSettings makes it sound like this is capture size for > video as well, though. Is that right? Will this crop, downsample, or what? > I think this could use some additional documentation. Should these > parameters, for video, echo the names in MediaTrackConstraints? "width", > "height", "frameRate", etc.**** > > >> They may have started off as photo settings, and then not been > properly renamed when photo was moved to a different spec. Might it > confuse people if they echo the names for the MediaTrackConstraints? I’m > not sure. There’s been a fair amount of discussion about how the UA > may/should/must implement MediaStream constraints. The rough conclusion > has been that it can either use the settings on the underlying device, or > do postprocessing, but it’s not allowed to fake data (in other words, it > can downsample, but not upsample.) I imagine that similar considerations > apply here, but we haven’t written it up yet. This, again, is something I > would like to inherit from another spec (i.e. the general syntax and > semantics of settings.)**** > > ** ** > > Fifth. Is "takePhoto" and associated image parameters redundant to > MediaStream Image Capture? Any reason to have them in both spots? > Presumably the pre-encoding image capture will be lower latency and higher > fidelity.**** > > >> No, they’re redundant and I have removed them from the editor’s > draft. They were originally in the recording spec, then moved to a > separate spec. **** > > ** ** > > Thanks!**** > > ** ** > > -Greg Billock**** > > ** ** > > ** ** >
Received on Monday, 22 July 2013 06:31:43 UTC