DemuxPacket* CInputStream::ReadDemux() { DemuxPacket* pPacket = nullptr; try { pPacket = m_pStruct->DemuxRead(); } catch (std::exception &e) { CLog::Log(LOGERROR, "CInputStream::ReadDemux - error. Reason: %s", e.what()); return nullptr; } if (!pPacket) { return nullptr; } else if (pPacket->iStreamId == DMX_SPECIALID_STREAMINFO) { UpdateStreams(); } else if (pPacket->iStreamId == DMX_SPECIALID_STREAMCHANGE) { UpdateStreams(); } return pPacket; }
bool CInputStream::Open(CFileItem &fileitem) { INPUTSTREAM props; props.m_nCountInfoValues = 0; std::vector<std::string> values; for (auto &key : m_fileItemProps) { if (fileitem.GetProperty(key).isNull()) continue; props.m_ListItemProperties[props.m_nCountInfoValues].m_strKey = key.c_str(); values.push_back(fileitem.GetProperty(key).asString()); props.m_ListItemProperties[props.m_nCountInfoValues].m_strValue = values.back().c_str(); props.m_nCountInfoValues++; } props.m_strURL = fileitem.GetPath().c_str(); bool ret = false; try { ret = m_pStruct->Open(props); if (ret) m_caps = m_pStruct->GetCapabilities(); } catch (std::exception &e) { CLog::Log(LOGERROR, "CInputStream::Open - could not open stream. Reason: %s", e.what()); return false; } UpdateStreams(); return ret; }
bool CInputStream::Open(CFileItem &fileitem) { INPUTSTREAM props; std::map<std::string, std::string> propsMap; for (auto &key : m_fileItemProps) { if (fileitem.GetProperty(key).isNull()) continue; propsMap[key] = fileitem.GetProperty(key).asString(); } props.m_nCountInfoValues = 0; for (auto &pair : propsMap) { props.m_ListItemProperties[props.m_nCountInfoValues].m_strKey = pair.first.c_str(); props.m_ListItemProperties[props.m_nCountInfoValues].m_strValue = pair.second.c_str(); props.m_nCountInfoValues++; } props.m_strURL = fileitem.GetPath().c_str(); std::string libFolder = URIUtils::GetDirectory(m_parentLib); std::string profileFolder = CSpecialProtocol::TranslatePath(Profile()); props.m_libFolder = libFolder.c_str(); props.m_profileFolder = profileFolder.c_str(); bool ret = m_pStruct->Open(props); if (ret) m_caps = m_pStruct->GetCapabilities(); UpdateStreams(); return ret; }
void cSoundStreamRenderer::OnFrame(float dt) { if(!IsValid()) return; UpdateStreams(); UnmarkAllBindings(); };
DemuxPacket* CInputStream::ReadDemux() { DemuxPacket* pPacket = m_pStruct->DemuxRead(); if (!pPacket) { return nullptr; } else if (pPacket->iStreamId == DMX_SPECIALID_STREAMINFO) { UpdateStreams(); } else if (pPacket->iStreamId == DMX_SPECIALID_STREAMCHANGE) { UpdateStreams(); } return pPacket; }
/// <summary> /// Dispatch the message to the handler function /// </summary> /// <param name="hWnd">The handle to the window which receives the message</param> /// <param name="uMsg">The message identifier</param> /// <param name="wParam">The additional message information</param> /// <param name="lParam">The additional message information</param> /// <returns>If the message has been processed by handler function, TRUE is returned. Otherwise FALSE is returned and the message is handled by default dialog procedure</returns> LRESULT KinectWindow::DialogProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { switch (uMsg) { case WM_STREAMEVENT: UpdateStreams(); break; case WM_TIMEREVENT: UpdateTimedStreams(); break; case WM_INITDIALOG: NuiViewer::SetIcon(hWnd); break; case WM_SIZE: OnResize(); break; case WM_COMMAND: OnCommand(wParam); break; case WM_NOTIFY: OnNotify(lParam); break; case WM_CLOSE: OnClose(hWnd, wParam); break; case WM_DESTROY: PostQuitMessage(0); break; case WM_SHOWKINECTWINDOW: { if (0 != wParam) { ShowWindows(); } } break; default: break; } return FALSE; }
DemuxPacket* CInputStream::ReadDemux() { DemuxPacket* pPacket = nullptr; try { pPacket = m_pStruct->DemuxRead(); } catch (std::exception &e) { CLog::Log(LOGERROR, "CInputStream::ReadDemux - error"); return nullptr; } if (!pPacket) { return nullptr; } else if (pPacket->iStreamId == DMX_SPECIALID_STREAMINFO) { UpdateStreams(); } else if (pPacket->iStreamId == DMX_SPECIALID_STREAMCHANGE) { UpdateStreams(); } int id = 0;; for (auto &stream : m_streams) { if (stream.second->iPhysicalId == pPacket->iStreamId) { pPacket->iStreamId = id; return pPacket; } id++; } return pPacket; }
BOOL DVBTChannels_Service::UpdateService(DVBTChannels_Service *pNewService) { if (bManualUpdate) return FALSE; BOOL bChange = (serviceId != pNewService->serviceId) || // serviceId changed or (logicalChannelNumber != pNewService->logicalChannelNumber) || // lcn changed or (serviceName == NULL) || // current name isn't set yet or ((pNewService->serviceName) && // new name is set and (_wcsicmp(pNewService->serviceName, L"") != 0) && // new name isn't blank and (_wcsicmp(serviceName, pNewService->serviceName) != 0)); // new name has changed if (bChange) { BOOL bExistingData = (serviceId != 0) || (logicalChannelNumber != 0) || (serviceName != NULL); if (bExistingData) (log << "Updating Service Information\n").Write(); else (log << "New Service Information\n").Write(); LogMessageIndent indent1(&log); if (bExistingData) { (log << "Original Values\n").Write(); LogMessageIndent indent2(&log); PrintServiceDetails(); } serviceId = pNewService->serviceId; strCopy(serviceName, pNewService->serviceName); if (pNewService->logicalChannelNumber != 0) logicalChannelNumber = pNewService->logicalChannelNumber; if (bExistingData) { (log << "New Values\n").Write(); LogMessageIndent indent2(&log); PrintServiceDetails(); } else { PrintServiceDetails(); } } bChange |= UpdateStreams(pNewService); return bChange; }
DemuxPacket* CDVDDemuxPVRClient::Read() { DemuxPacket* pPacket = g_PVRManager.ReadDemuxStream(); if (!pPacket) return CDVDDemuxUtils::AllocateDemuxPacket(0); if (pPacket->iStreamId == DMX_SPECIALID_STREAMINFO) { UpdateStreams((PVR_STREAMPROPS*)pPacket->pData); CDVDDemuxUtils::FreeDemuxPacket(pPacket); return CDVDDemuxUtils::AllocateDemuxPacket(0); } else if (pPacket->iStreamId == DMX_SPECIALID_STREAMCHANGE) { Reset(); CDVDDemuxUtils::FreeDemuxPacket(pPacket); return CDVDDemuxUtils::AllocateDemuxPacket(0); } return pPacket; }
bool CInputStream::Open(CFileItem &fileitem) { INPUTSTREAM props; std::map<std::string, std::string> propsMap; for (auto &key : m_fileItemProps) { if (fileitem.GetProperty(key).isNull()) continue; propsMap[key] = fileitem.GetProperty(key).asString(); } props.m_nCountInfoValues = 0; for (auto &pair : propsMap) { props.m_ListItemProperties[props.m_nCountInfoValues].m_strKey = pair.first.c_str(); props.m_ListItemProperties[props.m_nCountInfoValues].m_strValue = pair.second.c_str(); props.m_nCountInfoValues++; } props.m_strURL = fileitem.GetPath().c_str(); std::string libFolder = URIUtils::GetDirectory(m_parentLib); props.m_libFolder = libFolder.c_str(); bool ret = false; try { ret = m_pStruct->Open(props); if (ret) m_caps = m_pStruct->GetCapabilities(); } catch (std::exception &e) { CLog::Log(LOGERROR, "CInputStream::Open - could not open stream. Reason: %s", e.what()); return false; } UpdateStreams(); return ret; }