欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linux驅(qū)動(dòng)開(kāi)發(fā)_mplayer播放器開(kāi)發(fā)

DS小龍哥-嵌入式技術(shù) ? 來(lái)源:DS小龍哥-嵌入式技術(shù) ? 作者:DS小龍哥-嵌入式技 ? 2022-05-24 09:56 ? 次閱讀

USB wifi (360) : 如何從官網(wǎng)下載源碼進(jìn)行代碼移植、安裝相關(guān)無(wú)線工具、讓嵌入式設(shè)備支持WIFI。

任務(wù)1: 安裝mplayer播放器并學(xué)習(xí)使用方法

圖片格式、音樂(lè)文件(.mp3)、視頻文件(mp4)…….

學(xué)習(xí)文件編程: bmp圖片格式、JPG(jpeglib)。

視頻編碼解碼: ffmpeg庫(kù)。

Mplayer播放器: 源碼開(kāi)源,可以下載、可以更改….。 (X11)

??安裝libmad庫(kù)方法

1.?在linux系統(tǒng)目錄下創(chuàng)建libmad文件夾: mkdir /work/libmad -p

2.?將libmad源碼解壓到 /work/libmad目錄下:

[root@wbyq libmad-0.15.1b]# tar xvf /mnt/hgfs/linux-share-dir/libmad-0.15.1b.tar.gz

3.?配置源碼,生成Makefile文件

[root@wbyq libmad-0.15.1b]# ./configure CC=arm-linux-gcc --enable-fpm=arm --host=arm-linux --disable-debugging --prefix=$PWD/_install

4.?將Makefile文件第129行的-fforce-mem選項(xiàng)去掉

5.?編譯安裝

[root@wbyq libmad-0.15.1b]# make && make install

6.?將生成的.so文件拷貝到開(kāi)發(fā)板的lib目錄下。

??安裝mplayer播放器

1.?在/work目錄下創(chuàng)建一個(gè)mplayer文件夾

2.?將源碼解壓到mplayer目錄下

3.?配置mplayer源碼生成Makefile文件

./configure --prefix=$PWD/_install --cc=arm-linux-gcc --host-cc=gcc --target=arm-linux --enable-cross-compile --enable-mad --disable-gui --disable-menu --disable-x11 --yasm="" --extra-cflags=-I/work/libmad/libmad-0.15.1b/_install/include/ --extra-ldflags=-L/work/libmad/libmad-0.15.1b/_install/lib/

4.?編譯源碼: make

編譯成功之后會(huì)在當(dāng)前目錄下生成mplayer可執(zhí)行文件,將該可執(zhí)行文件拷貝到開(kāi)發(fā)板根文件系統(tǒng)的/bin目錄下即可。

5.?播放測(cè)試

[root@tiny4412 ]#mplayer -zoom -x 800 -y 480 /work/video_file/Video_2018-12-11.wmv

??Mplayer播放器使用方式:

1.?主模式,運(yùn)行mplayer播放器,播放器將占用當(dāng)前的終端,在主模式下mplayer程序不能后臺(tái)運(yùn)行。

默認(rèn)從鍵盤(pán)上(表示輸入)獲取輸入信號(hào)對(duì)播放器進(jìn)行控制。

2.?從模式: 將mplayer播放器當(dāng)做子進(jìn)程啟動(dòng),父進(jìn)程可以通過(guò)管道與子進(jìn)程之間進(jìn)行通信

進(jìn)程間通信: 無(wú)名管道/命名管道(FIFO)、消息隊(duì)列、內(nèi)存映射(mmap)、內(nèi)存共享、信號(hào)。

創(chuàng)建子進(jìn)程的函數(shù): fork函數(shù)。

??聲卡驅(qū)動(dòng)使用

pYYBAGKMO06AFYEDAABno-3CUrE570.png

將該壓縮包拷貝到開(kāi)發(fā)板根文件系統(tǒng)目錄下,解碼,運(yùn)行聲卡啟動(dòng)腳本。

??在開(kāi)發(fā)板上解壓: [root@tiny4412 ]#tar xvf /mnt/Tiny4412_SoundCard_wm8960.tar -C /work/

poYBAGKMO0-AUi8rAAEPRQG1JvE963.pngpYYBAGKMO0-AWvXaAAC1jseZF64154.png

將耳機(jī)插在開(kāi)發(fā)板的音頻輸出口上即可聽(tīng)到聲音了。

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

/*
獲取標(biāo)準(zhǔn)輸入的數(shù)據(jù)、寫(xiě)給FIFO文件
*/
void *pthread_func(void *argv)
{
	int fd=open("/mplayer_fifo",2);
	if(fd<0)
	{
		printf("FIFO文件打開(kāi)失敗!\n");
		pthread_exit(NULL); //結(jié)束當(dāng)前線程
	}
	char buff[100];
	int len;
	while(1)
	{
		printf("請(qǐng)輸入命令:");
		fflush(stdin);  	   //刷新緩沖區(qū)
		fgets(buff,100,stdin); //從鍵盤(pán)上獲取數(shù)據(jù)  get_percent_pos  get_file_name
		len=strlen(buff); 	   // get_file_name [0~12] [13]='\n'
		write(fd,buff,len);    // get_file_name '\n'
		memset(buff,0,100);
	}
}

int main(int argc,char **argv)
{
	int pid;
	
	/*1. 創(chuàng)建無(wú)名管道*/
	int fds[2];
	pipe(fds);
	
	/*2. 創(chuàng)建子進(jìn)程*/
	pid=fork();
	
	/*子進(jìn)程代碼: mplayer播放器*/
	if(pid==0)
	{
		/*將子進(jìn)程的標(biāo)準(zhǔn)輸出重定向到管道寫(xiě)端*/
		dup2(fds[1],1);
		
		/*啟動(dòng)子進(jìn)程*/
		execlp("mplayer","mplayer","-zoom","-x","800","-y","480","-slave","-quiet","-input","file=/mplayer_fifo","/work/video_file/Video_2018-12-11.wmv",NULL);
	}
	else /*父進(jìn)程*/
	{
		char buff[100];
		int cnt=0;
		
		/*創(chuàng)建新的線程: 從鍵盤(pán)上獲取輸入的數(shù)據(jù),寫(xiě)給播放器的FIFO文件*/
		pthread_t threadID;
		pthread_create(&threadID,NULL,pthread_func,NULL);
		pthread_detach(threadID); //設(shè)置分離屬性
		
		while(1)
		{
			/*從管道的讀端讀取數(shù)據(jù): 讀取就是mplayer播放器輸出的數(shù)據(jù)*/
			cnt=read(fds[0],buff,100);
			buff[cnt]='\0';
			printf("播放器輸出的值=%s\n",buff);
		}
	}
	return 0;
}

任務(wù)2:制作視頻廣告機(jī)

廣告機(jī)應(yīng)用場(chǎng)景: 公交站臺(tái)、地鐵車(chē)廂、銀行前臺(tái)大廳、高速公路、公園….

1.?有些廣告機(jī)只有視頻播放,沒(méi)有聲音。

2.?廣告機(jī)都支持網(wǎng)絡(luò)視頻文件更新---->文件更新使用現(xiàn)成的服務(wù)器: FTP服務(wù)器、NFS服務(wù)器。

(1)?如何判斷服務(wù)器上那些文件需要下載到本地? 通過(guò)shell腳本代碼或者使用C語(yǔ)言。

(2)?更新的時(shí)間一般是固定的: 20:00 23:00 …… 通過(guò)時(shí)間函數(shù)判斷時(shí)間是否到達(dá)。

(3)?在視頻問(wèn)好更新的時(shí)候,視頻文件需要停止播放,可以在屏幕上顯示提示(正在更新…..)。

3.?廣告機(jī)需要支持自動(dòng)播放,播放一個(gè)自動(dòng)切換下一個(gè)、循環(huán)播放。

調(diào)用讀目錄、循環(huán)遍歷目錄、得到視頻文件、mplayer播放器需要使用子進(jìn)程方式啟動(dòng)。

廣告機(jī): 音量調(diào)整、選擇視頻播放…….都不是廣告機(jī)的功能---是視頻播放器的功能。

poYBAGKMO0-AeLV8AABwGfwDIe4766.png

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5094

    文章

    19184

    瀏覽量

    307900
  • 播放器
    +關(guān)注

    關(guān)注

    5

    文章

    402

    瀏覽量

    37538
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11350

    瀏覽量

    210477
  • mplayer
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    2504
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Linux驅(qū)動(dòng)開(kāi)發(fā)_mplayer播放器開(kāi)發(fā)

    介紹mplayer播放器的安裝、使用、以及兩個(gè)模式的使用;然后介紹廣告機(jī)項(xiàng)目的要求,實(shí)現(xiàn)辦法。 USB wifi (360) : 如何從官網(wǎng)下載源碼進(jìn)行代碼移植、安裝相關(guān)無(wú)線工具、讓嵌入式設(shè)備支持WIFI。
    的頭像 發(fā)表于 09-17 15:50 ?1512次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>驅(qū)動(dòng)</b><b class='flag-5'>開(kāi)發(fā)</b>_<b class='flag-5'>mplayer</b><b class='flag-5'>播放器</b><b class='flag-5'>開(kāi)發(fā)</b>

    ubuntu下mplyer播放器源碼移植

    MPlayer是一款開(kāi)源多媒體播放器,以GNU通用公共許可證發(fā)布。此款軟件可在各主流操作系統(tǒng)使用,例如Linux和其他類(lèi)Unix系統(tǒng)、Windows及Mac OS X系統(tǒng)。
    的頭像 發(fā)表于 09-29 14:45 ?1343次閱讀
    ubuntu下mplyer<b class='flag-5'>播放器</b>源碼移植

    【NanoPi NEO2試用體驗(yàn)】移植mplayer

    本帖最后由 20083200056 于 2017-7-23 16:00 編輯 移植mplayer象棋小子1048272975mplayer是一款開(kāi)源多媒體播放器,以gnu通用公共許可證發(fā)布。它
    發(fā)表于 07-23 15:57

    視頻播放器linux環(huán)境的應(yīng)用

    推薦一款linux環(huán)境下好用的視頻播放器mplayer沒(méi)有圖形化界面smplayer是mplayer的有圖形化界面的軟件
    發(fā)表于 07-19 06:51

    移植mplayer到mini2440播放rm只有聲音該怎么辦?

    系統(tǒng) :Ubuntu 9.04編譯:友善4.3.2早以前下了個(gè)MPlayer的源碼包,現(xiàn)在拿出來(lái)想移植到mini2440上,版本是MPlayer1.0rc2解壓后這樣配置./configure
    發(fā)表于 11-06 05:45

    嵌入式媒體播放器

    嵌入式設(shè)備中的廣泛使用,Linux系統(tǒng)上多媒體技術(shù)應(yīng)用要求更為凸顯。因而研制一種基于Linux、能支持各種媒體文件格式和傳輸協(xié)議的嵌入式媒體播放器,成為當(dāng)前媒體播放器的重要研究方向。
    發(fā)表于 11-05 06:49

    【悟空派H3開(kāi)發(fā)板免費(fèi)體驗(yàn)】03 體驗(yàn)音樂(lè)播放

    armbian-config,按照順序依次選擇 System -> Hardware -> analog-codec 最后是下載神器播放器mplayer sudo apt install
    發(fā)表于 10-06 20:17

    移植MPlayerlinux 2.6的方法

    使用的linux內(nèi)核為2.6.14.1 MPlayer版本為MPlayer-1.0pre7try2.bz2目前雖然已經(jīng)添加了mad的mp3庫(kù),但播放聲音文件回
    發(fā)表于 06-08 14:55 ?1894次閱讀

    基于Android系統(tǒng)的影音播放器設(shè)計(jì)

    本文以Android上影音播放器開(kāi)發(fā)為范例,詳細(xì)給出了Android上應(yīng)用的開(kāi)發(fā)方法。開(kāi)發(fā)的影音播放器在Android手機(jī)模擬
    發(fā)表于 04-11 11:41 ?3212次閱讀
    基于Android系統(tǒng)的影音<b class='flag-5'>播放器</b>設(shè)計(jì)

    基于嵌入式Linux流媒體播放器系統(tǒng)軟硬件解決方案

    本系統(tǒng)選用TQ2440 開(kāi)發(fā)板作為硬件平臺(tái),采用嵌入式Linux 操作系統(tǒng)給出流媒體播放器系統(tǒng)具體的軟硬件解決方案,設(shè)計(jì)了一款基于嵌入式Linux 的機(jī)頂盒媒體
    發(fā)表于 06-13 11:41 ?2859次閱讀
    基于嵌入式<b class='flag-5'>Linux</b>流媒體<b class='flag-5'>播放器</b>系統(tǒng)軟硬件解決方案

    數(shù)碼播放器開(kāi)發(fā)案例

    數(shù)碼播放器開(kāi)發(fā)案例說(shuō)明。
    發(fā)表于 05-19 11:07 ?6次下載

    Linux播放器開(kāi)發(fā)-Mplayer命令行使用介紹

    前面文章介紹了LinuxMplayer播放的交叉編譯、移植,在命令行上成功運(yùn)行了mplayer播放器,完成了視頻
    的頭像 發(fā)表于 08-14 09:10 ?7046次閱讀

    Linux播放器開(kāi)發(fā)-交叉編譯Mplayer

    MPlayer是一款開(kāi)源多媒體播放器,在主流的Linux、windows、Mac OS 都能運(yùn)行,主要廣泛用在Linux系統(tǒng)上; Mplayer
    的頭像 發(fā)表于 08-14 09:12 ?2958次閱讀

    HarmonyOS開(kāi)發(fā)案例:【視頻播放器

    使用ArkTS語(yǔ)言實(shí)現(xiàn)視頻播放器,主要包括主界面和視頻播放界面,
    的頭像 發(fā)表于 04-23 17:25 ?792次閱讀
    HarmonyOS<b class='flag-5'>開(kāi)發(fā)</b>案例:【視頻<b class='flag-5'>播放器</b>】

    HarmonyOS開(kāi)發(fā)案例:【視頻播放器

    使用ArkTS語(yǔ)言實(shí)現(xiàn)視頻播放器,主要包括主頁(yè)面和視頻播放頁(yè)面
    的頭像 發(fā)表于 04-24 14:52 ?996次閱讀
    HarmonyOS<b class='flag-5'>開(kāi)發(fā)</b>案例:【視頻<b class='flag-5'>播放器</b>】