On 10/15/2015 01:43 AM, Hans Verkuil wrote:
Mauro, Pawel, Junghak, Shuah, Laurent,
Thanks for pulling this together.
Please check the time I've guesstimated for your topics and let me know if you need more/less time!
Shuah/Mauro: which MC topics should we do in the workshop? We have already a lot of topics, so dropping one or more MC topics if they are premature would help.
There is a substantial amount of work that is already complete and could benefit from a focussed review at the work-shop. This includes the MC Next Gen work Mauro/Javier did as well as the ALSA MC Next Gen work I did.
Mauro: I do think it will be useful if you do an overview of the current status of the MC work, that will certainly be of interest of non-core developers that are attending, and probably even of the core developers.
Also one additional topic:
Hans/Laurent:
How should poll() work for output streams: for write() it should block if there are no internal buffers available, but for stream I/O it makes more sense to block if there are no buffers to dequeue. Currently for stream I/O it blocks if all buffers are in use (i.e. the write() case). Do we need a separate V4L2_EVENT to signal whether a buffer can be dequeued? Or change the poll semantics?
Time: 30 min
Regards,
Hans
On 10/12/15 16:25, Hans Verkuil wrote:
Hi all,
This is the draft version of the agenda for the media workshop in Korea. I am assuming that all presenters are subscribed to this mailinglist.
Note: the MC topics are tentative. I've placed them at the end, since they might change. They also have a tendency to take over the discussion, so let's do the smaller topics first :-)
Mauro, do you know which room we'll be in?
I am assuming that we start at 9 am and continue until approx. 5:30 pm. Do you know when the lunch break is?
I guessed at the duration of the various topics: please check and let me know if you need more/less time!
Draft agenda for the media workshop October 26, 2015, Seoul, South Korea
Please be on time! We start at 9 am, we have a full agenda, so we want to make good use of the time.
9:00-9:15: Get laptops hooked up, the projector running, wireless configured, your coffee cup filled, etc. etc. :-) 9:15-9:30: Hans: Introduction
9:30-10:15: Pawel: Update on codec APIs
10:15-10:30: Mauro: kABI documentation improvements
10:30-11:00: Junghak: new uAPI for DVB to use streaming I/O
11:00-11:15: Break
I will be away giving a talk on the ALSA MC Next Gen work from 11:15 - 12:05
http://korealinuxforum2015.sched.org/event/f59175cc49f866dbc9bebc36f86fe663#...
If Media work-shop attendees want to attend the above talk, you will have to adjust the time for that. Might not be a bad idea, this talk will go in depth into the ALSA MC Next Gen work and covers one of the MC Next Gen topics.
11:15-11:30: Hans: Proposal for adding support for HW colorspace conversion.
If you want to attend the above talk, you will have to adjust the time for that.
11:30-12:30: Hans: Should we replace v4l2_buffer with a new struct that is y2038-safe and that can be cleaned up and extended? (Think proper support for HW timestamps, etc.). See: https://patchwork.linuxtv.org/patch/31413/
And perhaps use this redesign to add support for multiple streams over one video node? I saw an example where the HW combines two streams into one, basically an m2m device, but today you'd need three nodes: two out and one capture in order to implement this.
12:30-13:30: Lunch
13:30-14:00: Hans: Status update of the CEC framework patch series. Discuss if we should really integrate with the RC core (not convinced about this).
14:00-14:30: Hans: Should the v4l2 core just call try_format to validate the format passed in by VIDIOC_CREATE_BUFFERS? Few drivers validate the format and if they do they usually do only partial validation. It's unclear what should happen here. Always calling try_format would also help the vb2 core code.
MC discussions: very tentative, and I'm just listing the topics without scheduling them and in no particular order:
Mauro: Discuss dynamic subtree removal
Hans: How to implement VIDIOC_SUBDEV_QUERYCAP?
Shuah: ENT_F_IO appears to be too generic, requiring additional steps to determine what kind of IO function it is really is. I propose preserving and allowing enough uniqueness to enable drivers to tag the functions when they create them. For example, if AUDIO functions are all tagged ENT_F_IO, bridge driver has to determine what kind of IO it really is. This requires finding the Interface entity associated with the function entity or comparing entity name strings. Instead, if a function can be tagged as Audio Capture when it gets created, these additional steps aren't necessary.
I think we could still discuss this even if we decide MC Next Gen topics are premature.
Shuah: Discuss snd-usb-audio control interface mapping to media. snd-usb-audio creates a control device file which could be exposed in a media graph. In some cases, it is a simple mixer control. Expose ENT_F_MIXER entity with an associated interface node MEDIA_INTF_T_ALSA_CONTROL
I think we could still discuss this even if we decide MC Next Gen topics are premature. I am about to two more patches to add mixer and control support.
17:15-17:30: Hans: Discuss future improvements to the workshop format. Right now (as is clear from this schedule) the discussions are very technical, which makes it hard for non-core developers to attend. Perhaps we should do a split format: a half or full day of status updates, discussions to improve application integration, followed by core-developer-only discussions.
Regards,
Hans
media-workshop mailing list media-workshop@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/media-workshop