code: def _get_additional_media_fields(
      collection: SampleCollection,
  ) -> t.List[str]:
      additional = []
      opm_field = None
      for cls, subfield_name in _ADDITIONAL_MEDIA_FIELDS.items():
          for field_name, field in collection.get_field_schema(
              flat=True
          ).items():
              if not isinstance(field, fof.EmbeddedDocumentField) or (
                  cls != field.document_type
              ):
                  continue
  
              if cls == OrthographicProjectionMetadata:
                  opm_field = field_name
  
              additional.append(f"{field_name}.{subfield_name}")
  
      return opm_field, additional
  
imports: from enum import Enum
  import logging
  import shutil
  import struct
  import typing
  from functools import reduce
  import asyncio
  import aiofiles
  import strawberry
  import eta.core.serial
  import eta.core.utils
  import eta.core.video
  import fiftyone.core.fields
  import fiftyone.core.labels
  from fiftyone.core.collections import SampleCollection
  from fiftyone.utils.utils3d import OrthographicProjectionMetadata
  import fiftyone.core.media
label_desc: Use image node_id 2 for calling a global function with example usage: _get_additional_media_fields(collection) and returns: opm_field,  additional