使用concat协议进行拼接两个mp4视频,报错:“Found duplicated MOOV Atom. Skipped”。ffmpeg -i "concat:1.mp4|2.mp4" -c copy output.mp4
原理上是因为 concat协议,实际上就只是把两个视频直接拼接,把后一个视频直接贴到前一个视频后面而已,因此只会适用于ts和flv等一些格式。mp4格式整体有一层容器,需要先解开容器再对提取的视频流进行拼接。解决方法:创建一个list.txt文件如下:file '/path/1.mp4'
file '/path/2.mp4'
file '/path/3.mp4'
                                    
                                    
                                
                                        正常情况下载视频:ffmpeg -i  m3u8-path  -c copy OUTPUT.mp4
ffmpeg -i  m3u8-path  -vcodec copy -acodec copy OUTPUT.mp4
ffmpeg -i https://test.com/playlist.m3u8 -c copy OUTPUT.mp4
下载加密的 m3u8:1. playlist.m3u8的文件#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:5
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-MEDIA-SEQUENC
                                    
                                    
                                
                                        场景现在很多高清视频都是MKV,但是Premiere等剪辑工具只支持 MP4 文件。可以使用 ffmpeg 不重新编码转换成MP4文件。等于文件复制的速度,非常快。MKV 介绍MKV 是Matroska的一种媒体文件,Matroska是一种新的多媒体封装格式,也称多媒体容器 (Multimedia Container)。它可将多种不同编码的视频及16条以上不同格式的音频和不同语言的字幕流封装到一个Matroska Media文件当中。MKV最大的特点就是能容纳多种不同类型编码的视频、音频及字幕流。mkv是一种后缀为MKV的视频文件频频出现在网络上,它可在一个文件中集成多条不同类型的音轨和字幕轨
                                    
                                    
                                
                                        一、常用命令
主要参数:
-i 设定输入流 
-f 设定输出格式 
-ss 开始时间 
视频参数:
-b 设定视频流量(码率),默认为200Kbit/s 
-r 设定帧速率,默认为25 
-s 设定画面的宽与高 
-aspect 设定画面的比例 
-vn 不处理视频 
-vcodec 设定视频编解码器,未设定时则使用与输入流相同的编解码器 
音频参数:
-ar 设定采样率 
-ac 设定声音的Channel数 
-acodec 设定声音编解码器,未设定时则使用与输入流相同的编解码器 
-an 不处理音频
 
二、常用功能
1. 视频格式转换
格式转换准确的说应该是视频容器转换
比如一个avi文
                                    
                                    
                                
                                        续接:https://javascript.net.cn/article?id=553
修改Nginx配置文件:
worker_processes  1;
error_log  logs/error.log debug;
events {
    worker_connections  1024;
}
rtmp {
    server {
        listen 1935;
        application live {
            live on;
        }
        application vod {
  
                                    
                                    
                                
                                        1. 查看机器上所有设备
ffmpeg -devices
ffmpeg version N-93466-g681957b88d Copyright (c) 2000-2019 the FFmpeg developers
  built with Apple LLVM version 10.0.0 (clang-1000.11.45.5)
Devices:
 D. = Demuxing supported
 .E = Muxing supported
 --
 D  avfoundation    AVFoundation input device 「摄像头」
 D  la
                                    
                                    
                                
                                        使用ffmpeg推流的场景:
1. 我的机器配置烂死了,无法做到x264实时压制然后推流,我只想复制视频流放个片。
2. 我想在服务器上无人值守转播内容。
 
续接上篇文章:https://javascript.net.cn/article?id=551
ffmpeg -re -i 1.mp4 -vcodec copy -f flv rtmp://localhost/live
或者
ffmpeg -re -i 1.mp4 -vcodec copy -acodec copy
 -b:v 800k -b:a 32k -f flv rtmp://localhost/liv
                                    
                                    
                                
                                        安装
在windows下由于官方已经编译好的nginx是不带nginx_rtmp_module的,故直接使用已经编译好的,
一个是github上的(https://github.com/illuspas/nginx-rtmp-win32)
一个是nginx for windows(http://nginx-win.ecsds.eu/download/nginx%201.7.12.1%20Lizard.zip,注意这是最后一个支持rtmp的版本,再高的非商业版本不会支持rtmp),nginx-rtmp-win32是一个较好的demo。
打开命令行,进入文件夹,启动nginx.exe。
                                    
                                    
                                
                                        
 !DOCTYPE html 
 html lang="en" 
 head 
     meta charset="UTF-8" 
     meta name="viewport" content="width=device-width, initial-scale=1.0" 
     meta http-equiv="X-UA-Compatible" content="ie=edge" 
     title Document /title 
 /head 
 body 
     script src="hls.js"  /script 
     video
                                    
                                    
                                
                                        
 !doctype html 
 html 
 head 
	 meta charset="utf-8" 
	 title Video.js /title 
	 link href="videojs/css/video-js.min.css" rel="stylesheet" 
 /head 
 body 
	 div class="m" 
		 video id="my-video" class="video-js" controls preload="auto" width="960" height="400" poster=""
			data-setup="
                                    
                                    
                                
        所有标签
    
    
 
         
            