inline bool ff_media_packet_impl::CheckMD5(md5_byte_t _MD5[16]) const
{
    for (size_t i = 0; i < 16; ++i)
        if (_MD5[i] != m_MD5[i])
        {
            DT_LOG(error) << "validate packet failed";
            return false;
        }
    return true;
}
media_downloader::command_result_t media_downloader::cancel() 
{ 
    DT_LOG(debug) << "media_downloader::cancel";
    DT_ASSERT(NULL != impl_);
    return impl_->cancel(); 
}
media_downloader::~media_downloader()
{
    DT_LOG(trace) << "destroy media downloader" << "\n";
    delete impl_;
}
media_downloader::command_result_t media_downloader::pause() 
{ 
    DT_LOG(debug) << "media_downloader::pause";
    DT_ASSERT(NULL != impl_);
    return impl_->pause(); 
}
 ~media_downloader_Impl()
 {
     DT_LOG(trace) << "destroy media_downloader::Impl\n";
 }