簡體   English   中英

使用ffmpeg庫將.264轉換為.ts

[英]Convert .264 to .ts using ffmpeg library

我目前正在將h.264基本流(帶有postfiix .264的文件)轉換為傳輸流(帶有postfix .ts的文件)​​。 我已經使用ffmpeg命令行“ ffmpeg -i in.264 -an -vcodec copy -f mpegts out.ts”成功完成了轉換。

現在,我想通過調用ffmpeg的庫,使用自己的C ++代碼實現此轉換。 我已經下載了預編譯的ffmpeg庫(libavcodec,libavformat等)。 我的輸入h.264是預先錄制的文件,而不是實時流,因此是我的輸出.ts文件。 所以我的問題是我應該調用庫中的哪些函數來實現轉換?

在Linux中安裝ffmpeg之后,您將看到一個名為ffmpeg.c的示例文件。 在此文件中有很多選項可以設置解碼參數,例如opt_audio_codec,opt_video_codec,opt_audio_rate,opt_video_rate,opt_default等。只需從命令中設置必要的參數即可(-i in.264 -an -vcodec copy -f mpegts out.ts)在從ffmpeg.c文件的“ main”功能調用“ transcode”或“ av_encode”功能之前,請使用適當的功能。

它不像列出庫調用那樣簡單。 這是一個舊的教程 ,可以幫助您開始閱讀輸入文件。 ffmpeg源文件中還包含一個名為解碼_encoding.c的示例。 這些應該可以幫助您入門。

您無需在自己的代碼中執行此操作。 您可以改為以編程方式生成ffmpeg進程。 在Windows上使用CreateProcess ,或在Linux上spawn

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM