-
Notifications
You must be signed in to change notification settings - Fork 5
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
Wire up SSAI #73
Wire up SSAI #73
Conversation
bc430f7
to
77ab16e
Compare
private boolean isAdActive() { | ||
return bitmovinPlayer.isAd(); | ||
return bitmovinPlayer.isAd() || ssai.isAdBreakActive(); | ||
} |
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.
This implicitly enables tracking of
- PLAY_HEAD_TIME
- PLAYER_STATE
on theConvivaAdAnalytics
as it is already tracked for client side ads.
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.
When reporting the play head time, is the current format what the conviva backend expects or do we have to convert the time to a relative timestamp since the ad(break) started? 🤔
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.
Excellent question. I would assume no but let me double check.
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.
Unfortunately there is no documentation to be found about this. Let's leave it as-is for now as it makes the most sense for SSAI ads.
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.
Neat! Nice and easy to read solution 👍
conviva/src/main/java/com/bitmovin/analytics/conviva/ConvivaAnalyticsIntegration.java
Show resolved
Hide resolved
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 can't comment on the SSAI API integration code as it was already merged before but I think we should consider taking the tags produced by contentMetadataBuilder.build()
when passing adInfo
.
On the iOS integration I had to do that to fix errors showing up due to missing tags, like viewer ID and player name. These are documented as "Autocollected" but in practice that didn't happen on iOS.
The other option could be that on the iOS integration we only "patch" the "Autocollected" values.
What do you think?
I am a bit reluctant to just pass everything, as metadata might be explicitly set for the main content and not relevant for ads. The "patch auto collected" seems like a safe approach here. Edit: As discussed, on Android we don't seem to have these issues. |
Agree, after having a sleep on it came the "patch" idea up. I will continue with that approach. |
Problem
The SSAI API introduced in #72 is not yet used.
Changes
Limitations
On SSAI ad start we currently don't report initial values for resolution, bitrate and framerate. This will be done in a follow up PR.
Related Changes
#69
#72