-
Notifications
You must be signed in to change notification settings - Fork 475
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
Always parse target duration as integer #372
Conversation
Following the HLS spec, target duration is an integer value.
Closes #371 |
@@ -447,7 +447,7 @@ def _parse_byterange(line, state, **kwargs): | |||
|
|||
|
|||
def _parse_targetduration(**parse_kwargs): | |||
return _parse_simple_parameter(cast_to=float, **parse_kwargs) |
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 don't think I understand how this rounds up rather than down?
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 understood the problem does not happen when dumps
get called. It actually happens when the playlist is parsed. target_duration
was indeed being converted to float (as the diff shows)
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.
Oh, I see - in the tests/playlists.py
change, you're updating the test data directly.
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.
Yes! Do you think that’s a bad approach? I changed the test playlist because, after reading the specifications, I believe a playlist should not have a target duration as a float.
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's OK. At first I misunderstood the changes in this PR - I thought the test change was reflecting a new output behavior, but it was changed to reflect what's legal in the spec.
Following the HLS spec, target duration is an integer value.