視頻拉流 Linux安裝FFmpeg

来源:https://www.cnblogs.com/Javame/archive/2018/12/14/10117934.html
-Advertisement-
Play Games

1 下載最新源碼包並解壓 2安裝yasm 3安裝ffmpeg 4安裝成功 輸入ffmpeg列印了相關信息,表示安裝成功 安裝nginx-rtmp 1下載nginx-rtmp-module 2下載編譯nginx 執行拉流 ...


 

1 下載最新源碼包並解壓

$ wget http://ffmpeg.org/releases/ffmpeg-3.1.3.tar.bz2
$ tar jxvf ffmpeg-3.1.3.tar.bz2

2安裝yasm

$ yum install yasm

3安裝ffmpeg

$ cd ffmpeg-3.1.3
$ ./configure
$ make
$ make install

4安裝成功

輸入ffmpeg列印了相關信息,表示安裝成功

# ffmpeg 
ffmpeg version 3.1.3 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-11)
  configuration: 
  libavutil      55. 28.100 / 55. 28.100
  libavcodec     57. 48.101 / 57. 48.101
  libavformat    57. 41.100 / 57. 41.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 47.100 /  6. 47.100
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  1.100 /  2.  1.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Use -h to get full help or, even better, run 'man ffmpeg'

安裝nginx-rtmp

1下載nginx-rtmp-module

yum install git

git clone https://github.com/arut/nginx-rtmp-module.git  

2下載編譯nginx

yum -y install pcre-devel
yum -y install openssl openssl-devel
yum install gcc gcc-c++ 
wget http:
//nginx.org/download/nginx-1.8.1.tar.gz tar -zxvf nginx-1.8.1.tar.gz cd nginx-1.8.1 ./configure --prefix=/usr/local/nginx --add-module=../nginx-rtmp-module --with-http_ssl_module make && make install

修改nginx.conf
#user  nobody;
worker_processes  1;
 
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
 
#pid        logs/nginx.pid;
 
 
events {
    worker_connections  1024;
}
rtmp {
 
    server {
 
        listen 28099;
 
        chunk_size 4000;
 
        # TV mode: one publisher, many subscribers
        application mylive {
 
            # enable live streaming
            live on;
 
        }
    }
}
 
http {
    include       mime.types;
    default_type  application/octet-stream;
 
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';
 
    #access_log  logs/access.log  main;
 
    sendfile        on;
    #tcp_nopush     on;
 
    #keepalive_timeout  0;
    keepalive_timeout  65;
 
    #gzip  on;
 
    server {
        listen       28088;
        server_name  localhost;
 
        #charset koi8-r;
 
        #access_log  logs/host.access.log  main;
 
        location / {
            root   html;
            index  index.html index.htm;
        }
 
        #error_page  404              /404.html;
 
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
 
        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}
 
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}
 
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }
 
 
    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;
 
    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}
 
 
    # HTTPS server
    #
    #server {
    #    listen       443 ssl;
    #    server_name  localhost;
 
    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;
 
    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;
 
    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;
 
    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}
 
}

執行拉流

ffmpeg -re  -rtsp_transport tcp -i 'rtsp://11*.10:9090/dss/monitor/params?cameraid=1000118$0&substream=1' -vcodec copy -vprofile baseline   -strict -2  -f flv -s 1280x720 -q 10 'rtmp://15*2:28099/mylive/wangyong'

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 最近捯飭到一臺很老的機器,裝Win7吧卡的不要不要的,思來想去的,搞個CentOS來玩玩,玩玩python的一些個人項目,一般裝機啥的,都要做啟動盤啥的,但是,這個都的話有很多網友已經分享了很多好的文章,所以呢,這裡就不介紹怎麼刻錄U盤/光碟鏡像啦。 其實Linux操作系統的U盤啟動和我們平時安裝w ...
  • hello,大家好,我是葉秋! 上一期呢,給大家介紹瞭如何給樹莓派安裝系統,有細心的朋友就會發現上一期安裝系統的文章漏了一點點知識,不知道機智的你是否有發現呢~~(尷尬😅)下次一定註意。。😂 在第五步 使用putty 連接樹莓派的時候,是使用的ssh 連接的,所以呢樹莓派一定要開啟ssh,樹莓派 ...
  • Linux 伺服器安裝Windows字體 直接上步驟: Windows字體包下載鏈接:https://pan.baidu.com/s/1ks9a70snHo02CTuqTrQhhg 提取碼:7aw5 (1)在/usr/share/fonts/下創建一個目錄存放Windows字體 (2)將字體上傳到創 ...
  • Redhat yum源是收費的,沒有註冊的Redhat機器是不能使用yum源的。 1、當前系統環境: 系統版本:Red Hat Enterprise Linux Server release 7.3 (Maipo) 軟體環境:系統預設是自帶了yum程式的,需要卸載,安裝CentOS的 2、更換yum ...
  • 使用CleanMyPC保持您的PC清潔並像新的一樣運行。它掃描整個電腦以清理垃圾文件,加速您的PC並提高其性能。CleanMyPC不僅僅是一臺PC清潔工 - 它是關註電腦的必備工具。【有能力請支持正版 官網:https://macpaw.com/】 ...
  • 字元串拼接查詢 案例一:拼接字元串(多條件查詢) $where = ''; //定義字元串,用於拼接滿足條件的數據欄位 $value = []; // 定義空數組,用於接收值 if(!empty($nickname)){ $where .= ' AND nickname = :nickname'; ...
  • 下載並安裝lsi MegaRAID raid卡 管理工具 下載網址:http://www.avagotech.com/support/download search 在搜索框里搜索"megacli",在搜索結果中找到Management Software and Tools (188) 下 找到 O ...
  • TI DSP 6657 SRIO 簡介 [TOC] SRIO 協議介紹 TI 的 KeyStone 系列設備中實現了 RapidIO 協議,實現 RapidIO 的部分外設,被 TI 稱為 SRIO (Serial RapidIO。 因此 SRIO 就是 RapidIO 在 TI 器件上的實現。 但 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...