`
阿尔萨斯
  • 浏览: 4148948 次
社区版块
存档分类
最新评论

MFC中使用SDL播放音频没有声音的解决方法

 
阅读更多

本文所说的音频是指的纯音频,不包含视频的那种。

在控制台中使用SDL播放音频,一般情况下不会有问题。

但是在MFC中使用SDL播放音频的时候,会出现没有声音的情况。经过长时间探索,没有找到特别好的解决方案,但是有一种方式可以让声音播放出来:那就是让SDL显示图像(视频)时候的那个对话框弹出来,声音就会出现了。

具体的方法可以加载一张图片(比如说BMP),下图所示代码片段为加载BMP图片的代码。

	SDL_Surface *screen = SDL_SetVideoMode(640, 480, 8, SDL_SWSURFACE);
	SDL_Surface *image;
	/* Load the BMP file into a surface */
	image = SDL_LoadBMP("background.bmp");
	if (image == NULL) {
		return 0;
	}
	/*
	* Palettized screen modes will have a default palette (a standard
	* 8*8*4 colour cube), but if the image is palettized as well we can
	* use that palette for a nicer colour matching
	*/
	if (image->format->palette && screen->format->palette) {
		SDL_SetColors(screen, image->format->palette->colors, 0,
			image->format->palette->ncolors);
	}
	/* Blit onto the screen surface */
	if(SDL_BlitSurface(image, NULL, screen, NULL) < 0)
		fprintf(stderr, "BlitSurface error: %s\n", SDL_GetError());
	SDL_UpdateRect(screen, 0, 0, image->w, image->h);


不明白这是为什么,但是程序就可以出声了。

分享到:
评论

相关推荐

    FFMpeg基础库编程开发

    《ffmpeg基础库编程开发》482页 ...2 MFC中使用SDL播放音频没有声音的解决方法 465 附录B:经典代码示例 466 附录C:ffmpeg参数中文详细解释 477 附录D:ffplay的快捷键以及选项 479 附录E: ffmpeg处理rtmp流媒体 481

    ffplay for MFC (stable)

    它可以完成一个播放器播放视频的基本流程:解协议,解封装,视频/音频解码,视音频同步,视音频输出。此外还包含一些控制功能:播放,暂停/继续,前进,后退,停止,逐帧播放,全屏等功能。通过本程序可以学习视频...

    SDL入门教程.pdf

    并且能很好的在C++等高级语言中使用。在官方可以看到SDL所支持的语言很多。(Including Ada, C#, Eiffel, Erlang, Euphoria, Guile, Haskell, Java, Lisp, Lua, ML, Objective C, Pascal, Perl, PHP, Pike, Pliant...

    ffplay for MFC 1.0.1

    它可以完成一个播放器播放视频的基本流程:解协议,解封装,视频/音频解码,视音频同步,视音频输出。此外还包含一些控制功能:播放,暂停/继续,前进,后退,停止,逐帧播放,全屏等功能。通过本程序可以学习视频...

    FFmpeg再学习 -- FFmpeg+SDL+MFC实现图形界面视频播放器-附件资源

    FFmpeg再学习 -- FFmpeg+SDL+MFC实现图形界面视频播放器-附件资源

    ffmpeg基础开发资料自总结

    适合fresh man上手 ...2 MFC 中使用SDL 播放音频没有声音的解决方法 444 附录B:经典代码示例 445 附录 c:ffmpeg 参数中文详细解释 456 附录D:ffplay 的快捷键以及选项 458 附录E: ffmpeg 处理 rtmp 流媒体 459

    FFmpeg基础库编程开发

    目录 第一章 多媒体概念介绍 6 ...2 MFC中使用SDL播放音频没有声音的解决方法 465 附录B:经典代码示例 466 附录C:ffmpeg参数中文详细解释 477 附录D:ffplay的快捷键以及选项 479 附录E: ffmpeg处理rtmp流媒体 481

    Example01.zip

    使用FFmpeg3.4+SDL2实现播放视频文件或者RTSP地址的MFC工程,已实现音频的播放。使用VS2013开发的

    FFMPEG SDL编解码音视频图像网络处理工具集合pcaprtp码流数据包h264h265pcm

    自己没事时候做的音视频、图像处理、网络分析有关的MFC工具,赚点积分,王者荣耀风格,本版本由于CSDN大小限制,是阉割版安装包,32位64位皆可用,完整版2G左右太大传不了。工具包括FFMPEG原生万能视频解码器、音...

Global site tag (gtag.js) - Google Analytics