【问题标题】:WAVEFORMATEX - how to read codecdata at the end?WAVEFORMATEX - 最后如何读取编解码器数据?
【发布时间】:2010-06-01 07:48:24
【问题描述】:

我有一个 WAVEFORMATEX 结构,其末尾有一些编解码器数据(10 个字节)。

我正在使用 C++。

最后如何访问数据? (这是一个纯技术问题)。

我试过了:

WAVEFORMATEX* wav = (WAVEFORMATEX*)pmt->pbFormat;
    WORD me = wav->cbSize;
    wav = wav + sizeof(WAVEFORMATEX);
    BYTE* arr = new BYTE[me];
    memcpy(arr, (BYTE*)wav, me);

没用。

谢谢

罗伊

【问题讨论】:

    标签: c++ media wav


    【解决方案1】:

    你在指针算术上犯了一个小错误。之后

    wav = wav + sizeof(WAVEFORMATEX);
    

    wav 点远远超出缓冲区的末尾(因为 wav 不是 CHAR* 而是 WAVEFORMATEX*)。你需要写:

    wav = wav + 1;
    

    【讨论】:

    • 嗨,请你帮我my question我正在尝试这样做大约一个月,但我没有成功,请帮助我,任何想法都可能会有所帮助
    • @mopebi 是的,没问题。
    猜你喜欢
    • 2016-12-10
    • 2013-04-22
    • 1970-01-01
    • 1970-01-01
    • 2017-07-04
    • 2017-07-26
    • 2022-12-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多