saud-learning-services / panopto-video-analytics

Interface for getting viewing data from Panopto sessions
Apache License 2.0
3 stars 1 forks source link

Update Nov 4th #3

Closed markoprodanovic closed 3 years ago

markoprodanovic commented 4 years ago

Nov 4th Update and Notes

I’ve been able to take the video timeline and break it down into “chunks”:

5% of total video 20 chunks

[
    {
        'session_id': 84cef7f7-f168-4a80-9a5a-ac100144db29,
        'chunk_index': 0,
        'chunk_start': 0.0000,
        'chunk_end': 1.5596,
        'chunk_id': 84cef7f7-f168-4a80-9a5a-ac100144db29-0
    },
    {
        'session_id': 84cef7f7-f168-4a80-9a5a-ac100144db29,
        'chunk_index': 1,
        'chunk_start': 1.5596,
        'chunk_end': 3.1192,
        'chunk_id': 84cef7f7-f168-4a80-9a5a-ac100144db29-1
    },
    ...
    ...
    ... 
    {
        'session_id': 84cef7f7-f168-4a80-9a5a-ac100144db29,
        'chunk_index': 19,
        'chunk_start': 29.6324,
        'chunk_end': 31.1920,
        'chunk_id': 84cef7f7-f168-4a80-9a5a-ac100144db29-19
    }
]

I’ve also been able to go through each user and compute a unique “coverage” list: a list of tuples representing viewing ranges across the timeline

So even if someones viewing activity has a lot of entries like this:

Screen Shot 2020-11-04 at 3 42 13 PM

Their coverage would look like this:

[(0.0, 31.305298999999977)]

i.e. viewed the entire video

notice that times (seconds) are sometimes off by a few milliseconds

Or somebody who’s has gaps in their viewing would appear something like [(0.0, 3.316318), (10.190626, 31.289296999999983)]

i.e. watched everything except for between 3.31 and 10.19

I’m still noticing ironing out a few bugs but I’m close. So now we know, for each user, what parts of the video they did/didn’t watch.

I’ll also be able to compare this to the chunks list, and see how many unique users viewed each chunk (that’s next!)

markoprodanovic commented 3 years ago

archived