microsoftgraph / microsoftgraph/microsoft-graph-comms-samples
PolicyRecordingBot and FFMPEG: How do you recover video from received frames and timestamps?
Nobody has claimed this yet.
- Dominant language
- No language data
- Stars
- 253
- Forks
- 275
- Avg merge
- 1d 5h
- Merged PRs (30d)
- 1
Description
PolicyRecordingBot receives H264 frames (Buffer.Data) and some metadata related to them like Timestamp. This data can be read from VideoMediaReceivedEventArgs object.
As I understand, those frames are inter-frame compressed.
Also, I noticed that resolution of those frames can change.
Timestamps are like this one 39264692280552704. That represents year 125 if fed to new DateTime(39264692280552704), so I need to add 1899 years to get a real date.
I merged all the H264 frames in one file like input.h264 and saved all the timestamps in another file like metadata.json. In metadata.json, each object describes a single frame from input.h264.
My question is how to recover the source video from frames and timestamps that I received from Teams? Particularly, using FFMPEG.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with PolicyRecordingBot and the VideoMediaReceivedEventArgs data described in the issue, then review how FFMPEG handles the received H264 frames, timestamps, and changing resolution. Confirm the timestamp interpretation and define a reproducible recovery procedure; done means the issue has actionable guidance for reconstructing the source video.
Written by the indexing model from the issue text.
Assessment
- Domain
- audio-video-rtc
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100