-
Notifications
You must be signed in to change notification settings - Fork 191
[ENH] Add audio/video recordings to behavioral experiments #2231
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
Add comprehensive support for audio and video recordings in behavioral experiments: - Add audio file extensions (mp3, wav) and video file extensions (mp4, mkv, avi) with corresponding _audio and _video suffixes - Document usage of audio/video recordings in beh directory for capturing vocalizations, speech, facial expressions, and body movements - Add metadata schema for audio/video device information and stream properties - Include privacy warnings about personally identifiable information in human subject recordings - Update behavioral experiments title to remove "with no neural recordings" restriction, clarifying data can be stored with or without neural recordings - Add examples for file organization including multi-angle recordings and split files - Define optional entities: task, acquisition, run, recording, split
…ee macros - Change section title from 'Behavioral experiments' to 'Behavioral recordings' - Convert file tree examples to use MACROS___make_filetree_example for consistent rendering - Address review comments from @yarikoptic in PR #2231
effigies
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall this makes sense to me. It would be good to get some feedback from contributors to related BEPs, such as eye-tracking (20), motion (29), stimuli (44) and physio (45). Even if this PR doesn't propose adding this as an associated file to those data types, the potential is there and it's worth getting opinions and identifying potential conflicts.
cc @bids-standard/bep029 @bids-standard/bep044
cc @mszinte @julia-pfarr @oesteban (BEP020)
cc @m-miedema @smoia @SouravKulkarni (?) (BEP045)
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #2231 +/- ##
=======================================
Coverage 82.81% 82.81%
=======================================
Files 22 22
Lines 1693 1693
=======================================
Hits 1402 1402
Misses 291 291 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Co-authored-by: Chris Markiewicz <[email protected]>
|
OK, I have submitted a PR to the website to make this an official BEP here: bids-standard/bids-website#759 |
Comparison: vs PR #2022Summary
Key Differences
Notable Distinctions
These PRs are complementary—one captures what the subject does (behavioral recordings), the other captures what's shown to the subject (stimuli). @neuromechanist , thoughts? |
| description: | | ||
| Width of the video in pixels (for example, `1920`). | ||
| type: integer | ||
| minimum: 1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it would be quite valuable to expose at least some details on the underlying codec(s) used for audio/video within the files, so e.g. we could assess if e.g. browser would play it etc?
|
thanks @bendichter - you have described the issue. if |
+1000 Indeed, add PET to the list. Looking beyond |
|
@oesteban, @satra, Thanks for engaging on this. I'm having trouble understanding what changes you're suggesting to this PR though. Are you asking for specific modifications to the proposed specification text, or is this a broader concern about BIDS organizational principles? If there's something actionable I can do here, I'm happy to consider it. But if the concern is about how BIDS has historically organized modalities, that seems like a separate discussion from whether audio/video/events should live together in beh/. |
Yes it is in my case. I haven't been able to follow on this particular PR so please don't take my message for an objection. |
same here. and it is not an objection, but that people coming to this will see two conflicting grouping mechanisms. a note added to the PR to the general section (or in the beh section) in relation to these two grouping mechanisms would help people understand the difference and perhaps help addressing (by some group) in the future. |
|
Here are the issues relating to potentially changing the folder organization within BIDS, I think it is better to discuss it among those and leave this BEP in alignment with current state of allowing P.S. Also in general let's prefer commenting on the diff, instead of using the main thread here, since we cannot easily group of related comments out from within main thread. |
IMHO, this is a problem of today. It'd be great that BIDS 2.0 had an elegant/more consistent response. However, BIDS needs to address this for future BEPs (cc/ @ericearl) |
|
Let's continue on that in
|
whereas split already has to do with splitting large files:
though I can see in your case why you might want to use part, if you are splitting the stimulus up into logical components, like chapters of an audiobook. I don't mind terribly if we use different approaches for this. |
which is pretty much the case with every
fwiw, I will not miss an opportunity of promoting my https://github.com/mykrok where I capture my photos during behavior tasks ;) on a more serious note, could be selected frames from a video for feeding into deeplabcat etc, photos done by location -specific cameras upon subject approaching that location (e.g. in a maze), etc.
FWIW - could be video recording of real people from e.g. YouTube thus having different terms etc. This aspect is IMHO an interesting demonstration case pointing to the duality of such data (and thus requiring coherent annotation) -- for someone "captured behavior" could be a source of analytics (expressed emotions etc, like was done for https://studyforrest.org "stimuli" -- Forrest Gump movie) and for others -- would be used a stimuli (IIRC @mvdoc had that in his fMRI experiment), and for someone then both bringing BBQS flavor in here of bringing behavior qualities into analytics over neural data.
I feel also that |
|
I do understand why these decisions were made on the stimulus side. My question is specifically about whether we want to make changes to homogenize.
I'd rather extend from the existing definitions of entities in the BIDS schema, rather than trying to extend from the English definition. In BIDS.
I don't see a strong argument for changing this BEP so I'd like to leave it as:
and to not use |
I echo @yarikoptic points. Also for image, no one mentioned it could be only one image ;). Another question here is whether we should allow subdirs to group multiple images, multi-part videos? I think BEP044 allows that (should double check and make an example for).
Yes, will do. Same for adding
BEP044 extends the definition of
My bias comes from the literal meaning of the word, as split (according to old Google) means to break or cause to break forcibly into parts, especially into halves or along the grain. Therefore, part is "more general" in common sense, and does not carry the bias of "especially in halves." Even following the current BIDS definitions, it is assumed that splits are the files of the same size. This assumption might be quite salient for behavioral files as size could be the deciding factor to splitting, but for stimuli, there are several other ways to create parts, importantly, based on content. For example,
Please consider that videos containing participants and their responses could often have more restrictions (and therefore, licenses) compared to the main anonymized dataset. |
- Add new `_audiovideo` suffix for files containing both audio and video streams - Update documentation to distinguish between audio-only, video-only, and combined recordings - Split AudioVideoStreams sidecar table into separate AudioStreams and VideoStreams tables - Add example files and JSON sidecars for audiovideo recordings - Update schema suffixes to include audiovideo definition
|
@neuromechanist can we please try to keep the discussion here to this PR? We can discuss whether split or part (or both) is more appropriate for stimuli in your thread, but I'd prefer to keep this to what should be allowed here. I would rather not support
I originally had this in and @effigies pushed back, saying that would make this PR substantially more complex. I agree. I'd rather move forward with what we have now. We can add subdirectories later if we need to, since that would be a purely additive change to the schema. Regarding copyright on participant recordings: that's a fair point. I'll add an optional |
…iments Add `_image` suffix for storing still images captured during behavioral experiments in the `beh` directory. Changes include: - Add `.jpg` and `.png` as supported image file extensions - Document use cases: pose estimation training frames, behavioral setup snapshots, and extracted video frames - Update privacy/PII warnings to include images alongside audio/video - Add ImageProperties sidecar table and example files - Update AudioVideoDevice macro to AudioVideoImageDevice
- Add License field to AudioVideoImageDevice sidecar schema - Update documentation to include images in audio/video section headings - Add note explaining licensing considerations for recordings containing identifiable participant data
May I ask this long response be moved to #2296, which @yarikoptic opened for that purpose? Others will likely refuse to answer here not to pollute this PR with the tangent discussion, which may lead a confused reader to think that this message from a maintainer is the last word on the issue. |
|
Would |
fix #1771
edit by @yarikoptic: preview - https://bids-specification--2231.org.readthedocs.build/en/2231/modality-specific-files/behavioral-experiments.html