用SDL库播放yuy2 Packed mode

简介: <p>#define SDL_YUY2_OVERLAY 0x32595559 /* Packed mode: Y0+U0+Y1+V0 */</p> <p> </p> <p> if (SDL_Init(SDL_INIT_VIDEO) < 0)<br>     {<br>         exit(1);<br>     }<br>     atexit(SDL_Quit);

#define SDL_YUY2_OVERLAY 0x32595559 /* Packed mode: Y0+U0+Y1+V0 */

 

 if (SDL_Init(SDL_INIT_VIDEO) < 0)
    {
        exit(1);
    }
    atexit(SDL_Quit);
 
    screen = SDL_SetVideoMode(720, 576, 32, SDL_SWSURFACE|SDL_ANYFORMAT);
    if ( screen == NULL )
 {
         exit(1);
    }
 
    SDL_Overlay* overlay = SDL_CreateYUVOverlay(w, h, SDL_YUY2_OVERLAY, screen);
    if (overlay == NULL)
    {
        exit(1);
    }
 
    pY = (unsigned char*)malloc(w*h*2);

  
        SDL_LockSurface(screen);
        SDL_LockYUVOverlay(overlay);
  
 
    fp = fopen("d:\\6082.dat", "rb");
    if (fp == NULL)
    {
        exit(1);
    }
 while (!feof(fp))
 {  
        fread(pY, 1, w*h*2, fp);
        memcpy(overlay->pixels[0], pY, w*h*2);
        SDL_UnlockYUVOverlay(overlay);
        SDL_UnlockSurface(screen);
  
        rect.w = w;
        rect.h = h;
        rect.x = rect.y = 0;
        SDL_DisplayYUVOverlay(overlay, &rect);
  
        SDL_Delay(40);
  
        i += 1;
    }
  fclose(fp);
    free(pY);
 
    SDL_FreeYUVOverlay(overlay);
    SDL_FreeSurface(screen);
 str.Format(_T("frmcnt:%d"),i);
 MessageBox(str);

 

相关文章
|
1月前
|
计算机视觉 数据格式
使用opencv在Qt控件上播放mp4文件
使用opencv在Qt控件上播放mp4文件
34 2
|
9月前
|
小程序
小程序 video 组件播放本地视频(黑屏无法播放,报错:MEDIA_ERR_SRC_NOT_SUPPORTED)
小程序 video 组件播放本地视频(黑屏无法播放,报错:MEDIA_ERR_SRC_NOT_SUPPORTED)
340 0
|
7月前
[笔记]音视频学习之SDL篇《六》使用SDL_ttf绘制True Type字体
[笔记]音视频学习之SDL篇《六》使用SDL_ttf绘制True Type字体
|
9月前
|
小程序 API
小程序背景音乐及音频播放demo(copy直接使用~)
小程序背景音乐及音频播放demo(copy直接使用~)
138 0
小程序背景音乐及音频播放demo(copy直接使用~)
|
9月前
实战--ffmpeg与sdl实现最简单的视频播放器
实战--ffmpeg与sdl实现最简单的视频播放器
69 0
|
存储 缓存 内存技术
SDL开发笔记(二):音频基础介绍、使用SDL播放音频
SDL开发笔记(二):音频基础介绍、使用SDL播放音频
SDL开发笔记(二):音频基础介绍、使用SDL播放音频
|
编解码 API
FFmpeg开发笔记(六):ffmpeg解码视频并使用SDL同步时间显示播放
FFmpeg开发笔记(六):ffmpeg解码视频并使用SDL同步时间显示播放
FFmpeg开发笔记(六):ffmpeg解码视频并使用SDL同步时间显示播放
QT使用QSound类播放WAV文件
QT使用QSound类播放WAV文件
274 0
|
Linux C++ Windows
MP4V2库与MP4AV库编译
最近在开发一个将RTP流存储为MP4文件的功能。其中针对MP4文件读写,用到了两个开源的库。其中MP4V2用于数据的读写,MP4AV用于对其中的数据帧进行分析。   MP4V2和MP4AV都是开源项目MPEG4IP的一部分,当前MPEG4IP已经不再维护。
2288 0
|
JavaScript 前端开发 索引
视频播放器之————JW Player参数详解
JW Player参数详解 1,安装 下载后,你可以得到一个例子,当用文本或HTML编辑器打开的时候,你可以发现swf是用一段短小的 javascript嵌入到页面上的。这个Javascript是Geoff Stearns写的swfobject.js,它解决了Flash需要激 活的麻烦。
2384 0