H264 幀率的計算
這兩天做h264 rtmp協議上傳需要計算幀率,踩了很多坑記錄下.
第一步當然要解析sps,解析sps的資料網上很多。
關鍵得到兩個值:1、num_units_in_tick;2、time_scale;
fps=time_scale/num_units_in_tick;
這個值是不準確的,網上查了各種資料說nuit_field_based_flag=1時要除以2,值=0時不用除,查了H.264官方中文版看了這個值和幀率貌似有點關係;
開始看ffmpeg原始碼如何解析nuit_field_based_flag,decode_picture_timing這個接口裡根據sps->pic_struct_present_flag來確定有沒有該值,測試檔案該值為0,只能放棄;
記起來mplayer解析h264檔案的幀率是對的,於是看mplayer原始碼,原來:
fixed_frame_rate_flag=1時fps才要除以2,於是從sps中解析出fixed_frame_rate_flag至此解決:
fps=time_scale/num_units_in_tick;
if (fixed_frame_rate_flag==1)
{
fps = fps/2;
}
相關推薦
H264 幀率的計算
這兩天做h264 rtmp協議上傳需要計算幀率,踩了很多坑記錄下. 第一步當然要解析sps,解析sps的資料網上很多。 關鍵得到兩個值:1、num_units_in_tick;2、time_scale; fps=time_scale/num_units_in_tick; 這
live555 場編碼H264 幀率異常問題
最近在折騰live555 RTSP伺服器,遇到一個碼流幀率異常問題:用vlc客戶端rtsp取流播放的時候 感覺像 慢放; 用elecard分析了碼流,發現是場編碼,幀率是25fps; 而幀編碼的碼流用vlc 取流播放 並沒有發現異常;
MPEG4碼流的幀率計算
MPEG4標準協議中。 VOL頭中的Vop_time_increment_resolution和VOP頭中的Vop_time_increment,一起確定了碼流所採用的幀率。 VOL頭中的Vop_time_increment_resolution,指示了vop_time_i
Unity3D-計算幀率FPS
網上有很多計算FPS的方法,一般計算沒有達到百分之百準確的幀率,只有更接近實際幀率的計算方式。 下面是本人測試多種方法之後覺得比較接近實際幀率的計算方式。 public class FPS : MonoBehaviour { [SerializeFie
從H264/H265碼流中獲取寬、高及幀率
在做碼流分析時,影象解析度、幀率這類的基本資訊,當然不可少。本文介紹如何從NAL中計算到影象寬、高,還有解析度。於是H264和H265有相似性,就在一起寫了。 一、從碼流獲得寬、高 1、H264 寬高可從SPS欄位計算得到,公式如下: Width = (pic_width_in_mb
H264解碼SPS獲取寬高和幀率
#include <stdio.h> #include <stdint.h> #include <string.h> #include <math.h> typedef unsigned intUINT; typed
視訊位元速率,幀率和解析度及H264介紹
視訊位元速率,幀率和解析度到底哪一個影響電影的清晰度 位元速率:影響體積,與體積成正比:位元速率越大,體積越大;位元速率越小,體積越小。 位元速率就是資料傳輸時單位時間傳送的資料位數,一般我們用的單位是kbps即千位每秒。也就是取樣率,單位時間內取樣率越大,精度就越高,
H.264(H264)解碼SPS獲取解析度和幀率
#include <stdio.h> #include <stdint.h> #include <string.h> #include <math.h> typedef unsigned int UINT; typedef
解析h264 sps中獲取幀率和解析度記錄
從live555中提取程式碼出來,可以成功獲取解析度和幀率,幀率主要是獲取num_units_in_tick和time_scale兩個引數; 其中遇到了以下問題: 與網友類似的問題,這裡截取了他的問題 發現一個奇怪的事情:如果h264的 profile是 main,那麼在v
音視訊 幀率 位元速率 檔案大小 計算
錄製 視訊 過程中,視訊幀率視訊設定幀率為25, 而此時 從採集裝置過來的 資料流也是25frame/s ,如是 我十分好奇音訊有沒有類似幀率一說, 百度到如下資料:感覺十分 清楚的說明了 該問題: 取樣率Sample Rate指單位時間內對媒體物件的取樣次數
Android流暢度之幀率
package 獲取 執行 info oot 實測 target blank 記錄 背景:app改版,人為感受卡頓,需要客觀數據支撐觀點。故,搜索各種性能指標,並理解之。(這是一篇摘要文......) 首先,明確人為感受的性能不好屬於下面哪種: 1. 響應時間,界面跳轉後響
音頻幀大小計算
我們 說明 一秒 位深度 20M 間隔 大小 通道 采樣率 假設音頻采樣率 = 8000,采樣通道 = 2,位深度 = 16,采樣間隔 = 20ms 首先我們計算一秒鐘總的數據量,采樣間隔采用20ms的話,說明每秒鐘需采集50次,這個計算大家應該都懂,那麽總的數據量計算為
二層交換機交換容量和包轉發率計算
轉發 間隙 單位 環境 不能 數據包 大數據量 cnblogs 就是 這是在中關村網站截取的H3C S5048E二層交換機參數,以此交換機參數為例子計算。 標註:評價一臺二層交換機性能,不能只看接口速率和接口數量,還要從交換容量和
QQ空間掉幀率優化實戰
app 面板 更多 授權 手遊 eal 遊戲開發者 表示 png 商業轉載請聯系騰訊WeTest獲得授權,非商業轉載請註明出處。 WeTest 導讀 空間新業務需求日益增多,在業務開發階段的疏忽,或者是受到其他業務的影響(比如一些非空間的業務網絡回包或者邏輯在主線程進行
幀率與碼率的概念
幀率 碼率 音視頻有許多概念,幀率跟碼率,是其中兩個常見的概念。 讀者經常會聽到“刷新的幀率是多少”或“碼率比較高所以要求網速要比較好”等表達。 本文介紹音視頻的幀率與碼率的概念。 小程之前還介紹了音視頻的其它概念,讀者可以關註“廣州小程”微信公眾號,並在“音視頻->基礎概念與流程”菜單項中查閱
盤點20款主流應用FPS,最Skr幀率測試方法都在這裏!
被人 cpu 應該 騰訊視頻 8.0 計算過程 雲測試 解決方法 得到 一、FPS是什麽? FPS即Frames per Second(每秒顯示的幀數),用於測量顯示幀數的度量。幀數為0說明頁面處於靜止,只要頁面動起來,這個幀數就會有變化,然後再趨於靜止,頁面滾動起來幀數整
二手車成新率計算方法
spa n) size 狀態 設備 100% 二手 計算方法 -s 成新率:反映評估現象的現行價值與其全新狀態重置價值的比率(反應設備新舊程度) 計算方法:①等速折舊法 CY=[(Yg-Y)/Yg]×100% CY:成新率
PCB 加投率計算實現基本原理--K最近鄰算法(KNN)
最近鄰 plist 控制 str 驗收 階段 分享圖片 數據量 出現 PCB行業中,客戶訂購5000pcs,在投料時不會直接投5000pcs,因為實際在生產過程不可避免的造成PCB報廢, 所以在生產前需計劃多投一定比例的板板, 例:訂單 量是5000pcs,加投3%,那就
OpenCV 讀取視訊,設定起始幀、結束幀及如何獲取幀率
//讀取視訊 VideoCapture capture(“1.avi”); if (!capture.isOpened()) { return 0; } long totalFrameNumber=capture.get(CV_CAP_PROP_FRAME_COUNT);//獲取視訊的總幀數 c
影象處理--視訊之幀率和位元速率
幀率(FPS) 幀率就是在1秒鐘時間裡傳輸的圖片的幀數,也可以理解為圖形處理器每秒鐘能夠重新整理幾次。會影響畫面流暢度,並與畫面流暢度成正比(即幀率越大,畫面越流暢;幀率越小,畫面越有跳動感)。 如果位元速率為變數,則幀率也會影響體積,幀率越高,每秒鐘經過的畫面越多,需要的位元速