91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

學(xué)習(xí)使用FFmpeg進(jìn)行HLS打包

LiveVideoStack ? 來源:OTTVerse ? 作者:Krishna Rao Vijayanag ? 2022-05-09 10:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在本文中,我們將學(xué)習(xí)使用FFmpeg進(jìn)行HLS打包。使用FFmpeg的好處在于:你可以在不離開命令行的情況下,執(zhí)行提取視頻、調(diào)整視頻尺寸、轉(zhuǎn)碼、打包以及傳輸視頻的所有操作。

我們首先看一下為VOD(點(diǎn)播)創(chuàng)建HLS打包的所有步驟,然后再來了解HLS實(shí)時(shí)流的打包。

如果你想了解HLS播放列表的更多信息,可以訪問我們的m3u8文件合集:https://ottverse.com/free-hls-m3u8-test-urls/,查看使用不同用例的不同廠商的示例。如果你剛剛接觸HLS,請閱讀我們之前的文章:什么是HLS(HTTP Live Streaming)?理解ABR及其工作原理

事不宜遲,讓我們開始吧!

使用FFmpeg進(jìn)行HLS打包的基礎(chǔ)步驟

好,現(xiàn)在讓我們看下使用HLS打包點(diǎn)播文件的基礎(chǔ)步驟:

  1. 從磁盤讀取輸入視頻

  2. 將視頻縮放/調(diào)整(scale/resize)為所需的多種分辨率版本

  3. 將每個(gè)縮放后的視頻轉(zhuǎn)碼到所需碼率

  4. 音頻轉(zhuǎn)碼到所需碼率

  5. 將視頻與音頻組合,然后打包每一個(gè)音、視頻組合,再創(chuàng)建各TS視頻切片和播放列表(playlist)

  6. 創(chuàng)建一個(gè)主播放列表(master playlist),用于指向每個(gè)變體(variant)

現(xiàn)在,讓我們一步一步來解決。

FFmpeg將視頻調(diào)整為多種分辨率版本

第一步和第二步包括從磁盤中讀取視頻,然后將其調(diào)整為多種分辨率。上述操作僅需一個(gè)命令,如下所示:

ffmpeg -i brooklynsfinest_clip_1080p.mp4 -filter_complex "[0:v]split=3[v1][v2][v3];[v1]copy[v1out];[v2]scale=w=1280:h=720[v2out];[v3]scale=w=640:h=360[v3out]"

[0:v]指輸入文件的第一個(gè)視頻流。在我們的例子中,只有一個(gè)視頻流,它被分成3個(gè)輸出[v1][v2]、[v3]。它們每一個(gè)都作為FFmpeg縮放函數(shù)的輸入,該縮放函數(shù)接受一個(gè)高度和寬度數(shù)值用于執(zhí)行縮放。

這里,我們將輸入視頻調(diào)整為1080p、720p和360p。

這里的[v1out]、[v2out]、[v3out]是包含縮放過程的輸出變量。注意,這里我們假設(shè)縮放過程會(huì)保留長寬比(aspect ratio)。當(dāng)然,你可以在必要時(shí)使用letterboxing來處理。

審校者注:letterboxing是指將以寬銀幕比例拍攝的電影轉(zhuǎn)換到標(biāo)準(zhǔn)寬度的視頻格式時(shí),同時(shí)保留電影的原始寬高比,由此產(chǎn)生的視頻圖像上下都有黑條的這個(gè)過程;這些黑條是圖像的一部分(即視頻信號(hào)的每一幀)。LTBX是其縮寫,標(biāo)識(shí)如此格式化的電影和圖像。這個(gè)術(shù)語來自于信箱的形狀,信箱是墻壁或門上的一個(gè)槽,郵件通過它來傳遞,它是長方形的,寬于它的高度。下圖是一個(gè) 2.35:1比例的 widescreen 圖像經(jīng)過letterboxing 處理之后,放在 1.33:1 屏幕上的一個(gè)例子。如下:

fc51e34e-cf2b-11ec-bce3-dac502259ad0.png

除此之外,還有pillarboxing和windowboxing等常見轉(zhuǎn)換模式。

將視頻轉(zhuǎn)碼為多種碼率用于HLS打包

接著,我們進(jìn)入第三步和第四步:我們必須將視頻轉(zhuǎn)碼為多種碼率,正如ABR技術(shù)常做的那樣。

記住,我們已經(jīng)將視頻調(diào)整為所需的分辨率并存儲(chǔ)進(jìn) [v1out][v2out][v3out]的輸出。我們將直接使用它們作為轉(zhuǎn)碼步驟的輸入。

-map [v1out] -c0 libx264 -x264-params "nal-hrd=cbr:force-cfr=1" -b0 5M -maxrate0 5M -minrate0 5M -bufsize0 10M -preset slow -g 48 -sc_threshold 0 -keyint_min 48 -map [v2out] -c1 libx264 -x264-params "nal-hrd=cbr:force-cfr=1" -b1 3M -maxrate1 3M -minrate1 3M -bufsize1 3M -preset slow -g 48 -sc_threshold 0 -keyint_min 48 -map [v3out] -c2 libx264 -x264-params "nal-hrd=cbr:force-cfr=1" -b2 1M -maxrate2 1M -minrate2 1M -bufsize2 1M -preset slow -g 48 -sc_threshold 0 -keyint_min 48 -map a:0 -c0 aac -b0 96k -ac 2 -map a:0 -c1 aac -b1 96k -ac 2 -map a:0 -c2 aac -b2 48k -ac 2 

你能發(fā)現(xiàn)這里發(fā)生了什么嗎?我們已將三個(gè)變量[v1out][v2out][v3out]作為輸入,并使用libx264的slow預(yù)設(shè)置轉(zhuǎn)碼每個(gè)輸入到所需碼率。

注意:你也可以選擇你自己的編碼參數(shù),并根據(jù)自己的喜好和要求進(jìn)行修改。在這個(gè)示例中,我使用一些簡單的參數(shù)模擬CBR編碼。使用FFmpeg有無數(shù)方法可以轉(zhuǎn)碼你的視頻,你可以在預(yù)設(shè)置、crf值和CBR設(shè)置等不同參數(shù)組合之間任意選擇。

重要的是,我們已經(jīng)將-keyint_min設(shè)置為48,它會(huì)強(qiáng)制設(shè)置關(guān)鍵幀出現(xiàn)的周期,這在ABR轉(zhuǎn)碼技術(shù)中非常重要。

現(xiàn)在,我們進(jìn)行到下一個(gè)階段:為每一個(gè)碼率版本/變體(rendition/variant)創(chuàng)建HLS m3u8播放清單。

使用FFmpeg創(chuàng)建HLS播放清單(m3u8)

現(xiàn)在我們已經(jīng)有了將視頻轉(zhuǎn)碼為不同碼率變體的命令,讓我們來使用FFmpeg創(chuàng)建HLS點(diǎn)播播放列表。

下面是進(jìn)行HLS打包所需的重要設(shè)置:

  • hls_playlist_type=vod: 通過設(shè)置該值,F(xiàn)Fmpeg創(chuàng)建了一個(gè)點(diǎn)播播放列表,將#EXT-X-PLAYLIST-TYPE:VOD插入到m3u8頭部中,并強(qiáng)制hls_list_size為0。

  • hls_time seconds:我們需要使用它設(shè)置目標(biāo)切片長度(以秒為單位)。

  • 默認(rèn)值為2秒,當(dāng)2秒過去,切片將在下一個(gè)關(guān)鍵幀處被切片。

  • 之所以要求確保每個(gè)比特流變體在每N秒結(jié)束的時(shí)候都有一個(gè)關(guān)鍵幀(這點(diǎn)非常重要),因?yàn)锳BR要求切片時(shí)候的關(guān)鍵幀要對齊,這樣才能無縫切換。

  • hls_segment_type:這里有兩個(gè)值:mpegts或fmp4,用于指定創(chuàng)建TS片段或fmp4(CMAF)片段,這對創(chuàng)建HLS和DASH的單一數(shù)據(jù)流很有用。

  • -hls_flags independent_segments:當(dāng)確保播放列表中所有切片都以一個(gè)關(guān)鍵幀開始時(shí),將#EXT-X-INDEPENDENT-SEGMENTS添加到播放列表中。

  • hls_segment_filename filename 用于在打包過程中為所創(chuàng)建的視頻切片命名。

下面是為單一視頻文件創(chuàng)建播放列表的示例:

-f hls -hls_time 2 -hls_playlist_type vod -hls_flags independent_segments -hls_segment_type mpegts -hls_segment_filename stream_%v/data%02d.ts -var_stream_map “v:0,a:0 v:1,a:1 v:2,a:2” stream_%v/stream.m3u8

如果你看到最后一行,你會(huì)注意到一個(gè)名為var_stream_map的功能選項(xiàng)。它是做什么的?

var_stream_map是一個(gè)FFmpeg功能選項(xiàng),它幫助我們將各種視頻和音頻轉(zhuǎn)碼組合起來,以創(chuàng)建不同的HLS播放列表。如果你有兩個(gè)使用相同視頻但不同音頻的碼率版本,那么你可以選擇不同的視頻和音頻版本并將它們連接起來,而不是為了創(chuàng)建不同的播放列表而創(chuàng)建多個(gè)編碼。

比如,-var_stream_map "v:0,a:0 v:1,a:0 v:2,a:0"是指由a:0表示的音頻流被用于三種視頻碼率版本(rendition)。

FFmpeg獲取這些音頻和視頻的組合后,創(chuàng)建出名為stream_%v.m3u8的各變體的.m3u8 文件,其中%v 是一個(gè)迭代器,它從被打包的視頻流編號(hào)獲取對應(yīng)的值。

使用FFmpeg創(chuàng)建主播放列表(m3u8)

如果你已經(jīng)理解了如何使用FFmpeg創(chuàng)建HLS播放列表,那么使用FFmpeg創(chuàng)建主播放列表對你而言就很簡單了。如果你不知道什么是主播放列表的話,我可以告訴你:主播放列表就是一個(gè)文件,它列出了已由HLS打包的各個(gè)變體的播放列表。

為了使用FFmpeg創(chuàng)建主播放列表,只需將關(guān)鍵詞master_pl_name 添加到你的FFmpeg命令中,并提供你為主播放列表準(zhǔn)備的名稱。比如,如果你想稱“主播放列表”為“master.m3u8”,只需寫下如下命令:

-master_pl_name master.m3u8

這就可以了。在FFmpeg執(zhí)行該命令行之后,你將擁有一個(gè)HLS主播放列表,其中列出了其他播放列表的名稱。

使用FFmpeg-VOD進(jìn)行HLS打包的最終腳本

ffmpeg -i brooklynsfinest_clip_1080p.mp4 -filter_complex "[0:v]split=3[v1][v2][v3]; [v1]copy[v1out]; [v2]scale=w=1280:h=720[v2out]; [v3]scale=w=640:h=360[v3out]" -map [v1out] -c0 libx264 -x264-params "nal-hrd=cbr:force-cfr=1" -b0 5M -maxrate0 5M -minrate0 5M -bufsize0 10M -preset slow -g 48 -sc_threshold 0 -keyint_min 48 -map [v2out] -c1 libx264 -x264-params "nal-hrd=cbr:force-cfr=1" -b1 3M -maxrate1 3M -minrate1 3M -bufsize1 3M -preset slow -g 48 -sc_threshold 0 -keyint_min 48 -map [v3out] -c2 libx264 -x264-params "nal-hrd=cbr:force-cfr=1" -b2 1M -maxrate2 1M -minrate2 1M -bufsize2 1M -preset slow -g 48 -sc_threshold 0 -keyint_min 48 -map a:0 -c0 aac -b0 96k -ac 2 -map a:0 -c1 aac -b1 96k -ac 2 -map a:0 -c2 aac -b2 48k -ac 2 -f hls -hls_time 2 -hls_playlist_type vod -hls_flags independent_segments -hls_segment_type mpegts -hls_segment_filename stream_%v/data%02d.ts -master_pl_name master.m3u8 -var_stream_map "v:0,a:0 v:1,a:1 v:2,a:2" stream_%v.m3u8

讓我們看下該腳本的輸出。

它首先生成一個(gè)主播放列表,三個(gè)文件夾包含獨(dú)立的切片,以及三個(gè)變體的播放列表。

fc86401c-cf2b-11ec-bce3-dac502259ad0.png

下面是master.m3u8文件:

#EXTM3U#EXT-X-VERSION:6#EXT-X-STREAM-INF:BANDWIDTH=5605600,RESOLUTION=1920x1080,CODECS="avc1.640032,mp4a.40.2"stream_0.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=3405600,RESOLUTION=1280x720,CODECS="avc1.64001f,mp4a.40.2"stream_1.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1205600,RESOLUTION=640x360,CODECS="avc1.64001e,mp4a.40.2"stream_2.m3u8

你可以看到,主播放列表引用了分別用于1080p、720p和360p的HLS變體播放列表。

現(xiàn)在,我們來看看1080p HLS變體。它很明確地表明它是一個(gè)VOD播放列表,視頻切片都是獨(dú)立的,每個(gè)切片長度是2秒(按照我們的設(shè)置)。

#EXTM3U#EXT-X-VERSION:6#EXT-X-TARGETDURATION:2#EXT-X-MEDIA-SEQUENCE:0#EXT-X-PLAYLIST-TYPE:VOD#EXT-X-INDEPENDENT-SEGMENTS#EXTINF:2.002000,data00.ts#EXTINF:2.002000,data01.ts#EXTINF:2.002011,data02.ts#EXTINF:2.002000,data03.ts#EXTINF:2.002000,data04.ts#EXTINF:2.002000,data05.ts#EXTINF:2.002000,data06.ts#EXTINF:2.002000,data07.ts#EXTINF:2.002011,data08.ts#EXTINF:2.002000,data09.ts#EXTINF:0.041711,data10.ts#EXT-X-ENDLIST

使用FFmpeg進(jìn)行HLS直播打包

如果你想通過FFmpeg創(chuàng)建一個(gè)直播HLS播放列表,這個(gè)過程和我們剛剛講過的VOD步驟區(qū)別不是很大。下面是你需要做出的更改:

  1. 刪除-hls_playlist_type vod

  2. 添加-hls_list_size ,并將其設(shè)置為一個(gè)數(shù)字,該數(shù)字表示各個(gè)變體播放列表中的切片數(shù)(你希望設(shè)置的數(shù)字)。

比如,如果我們將-hls_list_size 設(shè)置為2,那么整個(gè)播放列表將只包含兩個(gè)切片,F(xiàn)Fmpeg將通過添加新的切片及刪除舊切片來重寫這個(gè)播放列表。

下面是一個(gè)示例:

#EXTM3U#EXT-X-VERSION:6#EXT-X-TARGETDURATION:2#EXT-X-MEDIA-SEQUENCE:1#EXT-X-INDEPENDENT-SEGMENTS#EXTINF:2.002000,data01.ts#EXTINF:2.002011,data02.ts

幾秒之后,切片data01.ts被刪除,并被切片data03.ts所取代。

#EXTM3U#EXT-X-VERSION:6#EXT-X-TARGETDURATION:2#EXT-X-MEDIA-SEQUENCE:2#EXT-X-INDEPENDENT-SEGMENTS#EXTINF:2.002011,data02.ts#EXTINF:2.002000,data03.ts

FFmepg中其他有用的HLS打包選項(xiàng)

最后,讓我們來快速瀏覽一些FFmpeg為點(diǎn)播和直播HLS打包所提供的一些其他有趣選項(xiàng):

  1. hls_base_url baseurl:可用于將baseurl表示的值追加到播放列表的每個(gè)條目。

  2. hls_fmp4_init_filename filename : 設(shè)置文件名為分片文件頭文件,默認(rèn)文件名為init.mp4。當(dāng)你把片段類型設(shè)置為fmp4而非mpegts時(shí),就會(huì)用到這個(gè)文件。

  3. hls_fmp4_init_resend:在m3u8文件每次刷新時(shí),重新發(fā)送init文件,默認(rèn)為0。


    審校者注:當(dāng)var_stream_map設(shè)置為兩個(gè)或多個(gè)變體流時(shí),文件名模式必須包含字符串"%v",這個(gè)字符串指定變體流索引在生成的init文件名中的位置。這時(shí)候可以結(jié)合上面的 hls_fmp4_init_resend 重新發(fā)送init文件。

  4. iframes_only : 將#EXT-X-I-FRAMES-ONLY添加到包含視頻切片并只能在 #EXT-X-BYTERANGE 模式下播放I幀的播放列表中。

結(jié)語

現(xiàn)在,我希望你已經(jīng)很好地理解了如何通過FFmpeg來執(zhí)行HLS流媒體協(xié)議轉(zhuǎn)碼和打包。有關(guān)使用 FFmpeg 進(jìn)行 HLS 打包的完整選項(xiàng)列表,請查看 FFmpeg文檔:

https://ffmpeg.org/ffmpeg-formats.html#hls-2。

審核編輯 :李倩


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

    關(guān)注

    1

    文章

    398

    瀏覽量

    26453
  • HLS
    HLS
    +關(guān)注

    關(guān)注

    1

    文章

    135

    瀏覽量

    25825
  • ffmpeg
    +關(guān)注

    關(guān)注

    0

    文章

    51

    瀏覽量

    7941

原文標(biāo)題:使用FFmpeg進(jìn)行HLS打包——FFmpeg簡單學(xué)

文章出處:【微信號(hào):livevideostack,微信公眾號(hào):LiveVideoStack】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    使用JPU對jpg圖像進(jìn)行轉(zhuǎn)換,使用的工具為ffmpeg,轉(zhuǎn)換出來的圖像顏色失調(diào)嚴(yán)重,請問這是什么情況?

    我正在使用JPU對jpg圖像進(jìn)行轉(zhuǎn)換,使用的工具為ffmpeg,轉(zhuǎn)換出來的圖像顏色失調(diào)嚴(yán)重,請問這是什么情況?
    發(fā)表于 02-05 07:19

    HLS設(shè)計(jì)中的BRAM使用優(yōu)勢

    高層次綜合(HLS)是一種將高級(jí)編程語言(如C、C++或SystemC)轉(zhuǎn)換為硬件描述語言(HDL)的設(shè)計(jì)方法。在FPGA設(shè)計(jì)中,設(shè)計(jì)者可以靈活地利用FPGA內(nèi)部的資源,如塊RAM(BRAM)。雖然
    的頭像 發(fā)表于 01-28 14:36 ?236次閱讀

    如何基于FFmpeg解碼ADPCM音頻

    的背景音、老舊 WAV文件的字節(jié)流中默默運(yùn)轉(zhuǎn);?FFmpeg,這位開源音視頻領(lǐng)域的"全能管家",正是與ADPCM對話的最佳橋梁。本篇將通過代碼和原理,完整拆解ADPCM的編解碼魔法。
    的頭像 發(fā)表于 01-27 16:39 ?664次閱讀
    如何基于<b class='flag-5'>FFmpeg</b>解碼ADPCM音頻

    如何基于FFmpeg解碼WMV3視頻

    在音視頻開發(fā)的世界里,WMV3 就像一位沉靜的老友——它曾是 Windows Media 時(shí)代的主角,如今雖已淡出主流視野,卻仍在企業(yè)錄像、歷史資料、監(jiān)控存檔中默默守候;而 FFmpeg,這位開源世界的“瑞士軍刀”,正是我們與這位老友對話的最佳翻譯官。
    的頭像 發(fā)表于 12-25 09:29 ?330次閱讀
    如何基于<b class='flag-5'>FFmpeg</b>解碼WMV3視頻

    瑞芯微RK3562平臺(tái)FFmpeg硬件編解碼移植及性能測試實(shí)戰(zhàn)攻略

    本文介紹瑞芯微RK3562平臺(tái),FFmpeg硬件編解碼移植及性能測試方法。FFmpeg簡介與實(shí)測數(shù)據(jù)FFmpeg簡介FFmpeg是一套多媒體框架,能夠解碼、編碼、轉(zhuǎn)碼、復(fù)用、解復(fù)用、流
    的頭像 發(fā)表于 11-28 19:02 ?1289次閱讀
    瑞芯微RK3562平臺(tái)<b class='flag-5'>FFmpeg</b>硬件編解碼移植及性能測試實(shí)戰(zhàn)攻略

    瑞芯微RK3588平臺(tái)FFmpeg硬件編解碼移植及性能測試實(shí)戰(zhàn)攻略

    本文介紹瑞芯微RK3588平臺(tái),FFmpeg硬件編解碼移植及性能測試方法。FFmpeg簡介與實(shí)測數(shù)據(jù)FFmpeg簡介FFmpeg是一套多媒體框架,能夠解碼、編碼、轉(zhuǎn)碼、復(fù)用、解復(fù)用、流
    的頭像 發(fā)表于 10-21 13:51 ?1738次閱讀
    瑞芯微RK3588平臺(tái)<b class='flag-5'>FFmpeg</b>硬件編解碼移植及性能測試實(shí)戰(zhàn)攻略

    dist打包好的工程,還能用env工具進(jìn)行配置嗎?

    就是我在BSP里面用scons —dist打包好一個(gè)工程后,把工程放到其它路徑進(jìn)行項(xiàng)目開發(fā),中間需要用menuconfig進(jìn)行配置,發(fā)現(xiàn)打不開了,想是不是打包出來的工程就無法配置了,請
    發(fā)表于 09-24 08:18

    【EASY EAI Orin Nano開發(fā)板試用體驗(yàn)】04-編譯及安裝帶有RKMPP的ffmpeg

    前言 在上一篇試用報(bào)告中已經(jīng)將QT安裝完畢,并正常啟動(dòng)了,接下來我們進(jìn)行安裝ffmpeg,但是如果我們直接使用apt來進(jìn)行安裝的話,那么其并不帶有瑞芯微的硬編解碼,所以需要我們來自己編譯ffm
    發(fā)表于 07-20 19:21

    如何在Unified IDE中創(chuàng)建視覺庫HLS組件

    最近我們分享了開發(fā)者分享|AMD Vitis HLS 系列 1 - AMD Vivado IP 流程(Vitis 傳統(tǒng) IDE)和開發(fā)者分享|AMD Vitis HLS 系列 2:AMD
    的頭像 發(fā)表于 07-02 10:55 ?1435次閱讀
    如何在Unified IDE中創(chuàng)建視覺庫<b class='flag-5'>HLS</b>組件

    使用AMD Vitis Unified IDE創(chuàng)建HLS組件

    這篇文章在開發(fā)者分享|AMD Vitis HLS 系列 1 - AMD Vivado IP 流程(Vitis 傳統(tǒng) IDE) 的基礎(chǔ)上撰寫,但使用的是 AMD Vitis Unified IDE,而不是之前傳統(tǒng)版本的 Vitis HLS。
    的頭像 發(fā)表于 06-20 10:06 ?2322次閱讀
    使用AMD Vitis Unified IDE創(chuàng)建<b class='flag-5'>HLS</b>組件

    如何使用AMD Vitis HLS創(chuàng)建HLS IP

    本文逐步演示了如何使用 AMD Vitis HLS 來創(chuàng)建一個(gè) HLS IP,通過 AXI4 接口從存儲(chǔ)器讀取數(shù)據(jù)、執(zhí)行簡單的數(shù)學(xué)運(yùn)算,然后將數(shù)據(jù)寫回存儲(chǔ)器。接著會(huì)在 AMD Vivado Design Suite 設(shè)計(jì)中使用此 HLS
    的頭像 發(fā)表于 06-13 09:50 ?1843次閱讀
    如何使用AMD Vitis <b class='flag-5'>HLS</b>創(chuàng)建<b class='flag-5'>HLS</b> IP

    dist打包好的工程,還能用env工具進(jìn)行配置嗎?

    就是我在BSP里面用scons —dist打包好一個(gè)工程后,把工程放到其它路徑進(jìn)行項(xiàng)目開發(fā),中間需要用menuconfig進(jìn)行配置,發(fā)現(xiàn)打不開了,想是不是打包出來的工程就無法配置了,請
    發(fā)表于 06-13 07:59

    打包機(jī)數(shù)據(jù)采集遠(yuǎn)程監(jiān)控系統(tǒng)方案

    在現(xiàn)代工業(yè)生產(chǎn)中,打包機(jī)作為產(chǎn)品包裝環(huán)節(jié)的關(guān)鍵設(shè)備,其穩(wěn)定運(yùn)行和高效管理對于企業(yè)的生產(chǎn)效率和產(chǎn)品質(zhì)量至關(guān)重要。然而,傳統(tǒng)的打包機(jī)管理模式往往依賴人工巡檢和現(xiàn)場操作,存在數(shù)據(jù)采集不及時(shí)、設(shè)備狀態(tài)監(jiān)控
    的頭像 發(fā)表于 05-28 13:52 ?584次閱讀
    <b class='flag-5'>打包</b>機(jī)數(shù)據(jù)采集遠(yuǎn)程監(jiān)控系統(tǒng)方案

    Vivado HLS設(shè)計(jì)流程

    為了盡快把新產(chǎn)品推向市場,數(shù)字系統(tǒng)的設(shè)計(jì)者需要考慮如何加速設(shè)計(jì)開發(fā)的周期。設(shè)計(jì)加速主要可以從“設(shè)計(jì)的重用”和“抽象層級(jí)的提升”這兩個(gè)方面來考慮。Xilinx 推出的 Vivado HLS 工具可以
    的頭像 發(fā)表于 04-16 10:43 ?1609次閱讀
    Vivado <b class='flag-5'>HLS</b>設(shè)計(jì)流程

    ffmpeg可以移植到SMT32H7嗎?

    找不到相關(guān)資料,ffmpeg移植到stm32的資源
    發(fā)表于 03-14 07:44