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
[inputstream] change addon interface to new C++ style #12325
Conversation
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.
some questions and suggstions
SUPPORTSSEEK = (1 << 3), | ||
|
||
/// supports pause | ||
SUPPORTSPAUSE = (1 << 4) |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
{ | ||
kodi::addon::CInstanceInputStream* addonInstance; | ||
|
||
bool (__cdecl* open)(AddonInstance_InputStream* instance, INPUTSTREAM&); |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
int (__cdecl* get_time)(AddonInstance_InputStream* instance); | ||
|
||
// IPosTime | ||
bool (__cdecl* pos_time)(AddonInstance_InputStream* instance, int); |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
int64_t (__cdecl* position_stream)(AddonInstance_InputStream* instance); | ||
int64_t (__cdecl* length_stream)(AddonInstance_InputStream* instance); | ||
void (__cdecl* pause_stream)(AddonInstance_InputStream* instance, double); | ||
bool (__cdecl* is_real_time_stream)(AddonInstance_InputStream* instance); |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
std::string name(addonBase->ID()); | ||
|
||
m_fileItemProps = StringUtils::Tokenize(listitemprops, "|"); | ||
for (auto &key : m_fileItemProps) |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
if (addon.asString() != addonBase->ID()) | ||
return false; | ||
else | ||
return true; |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
m_hasPosTime = m_addon->HasPosTime(); | ||
m_canPause = m_addon->CanPause(); | ||
m_canSeek = m_addon->CanSeek(); | ||
memset(&m_caps, 0, sizeof(m_caps)); |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
void CInputStreamAddon::DisposeStreams() | ||
{ | ||
for (auto &stream : m_streams) | ||
delete stream.second; |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
ca57499
to
1aa9f2b
Compare
Is updated. |
jenkins build this please |
Can someone help me to explain what on Windows now the second time fails? For me not related to this request but I'm not sure. |
Is the branch fresh rebased? there have been an ffmpeg version bunp some days ago.... |
thanx @AlwinEsch for this PR, we already approoved the changes in agile branch and it seems to be mostly identical. 👍 from my side. |
strange build machine error, disabled it |
This commit change the inputstream addon system to the new C++ style and remove the old parts. The parts from here are taken from kodi-agile and becomes mainly improved and optimized from @peak3d on next changes. Currently it supports only the same as the old, only a new interface way.
1aa9f2b
to
428b378
Compare
jenkins build this please |
Description
This commit change the inputstream addon system to the new C++ style
and remove the old parts.
The parts from here are taken from kodi-agile and becomes mainly improved
and optimized from @peak3d on next changes.
Currently it supports only the same as the old, only a new interface way.
Motivation and Context
How Has This Been Tested?
Screenshots (if appropriate):
Types of change
Checklist: