FFmpeg 任意格式转mp4格式

命令格式:
ffmpeg -i [输入文件名] [参数选项] -f [格式] [输出文件]
1、参数选项:
(1) -an: 去掉音频
(2) -acodec: 音频选项, 一般后面加copy表示拷贝
(3) -vcodec:视频选项,一般后面加copy表示拷贝
2、格式:
(1) h264: 表示输出的是h264的视频裸流
(2) mp4: 表示输出的是mp4的视频
(3)mpegts: 表示ts视频流
刚开始百度的

`ffmpeg -i "车载录像20150320.dav" -vcodec copy -acodec copy "车载录像20150320.mp4"`

但是我有个文件这样并不能转换成功
最后变成

ffmpeg -f h264 -i 1.dav -c copy test.mp4

就可以输出了

package main

import (
	"bytes"
	"fmt"

	"log"
	"os/exec"
)
// ffmpeg -f h264 -i 141639-144539.dav -c copy test.mp4
func main() {

	cmdArguments := []string{"-f", "h264", "-i", "1.dav", "-c", "copy","2.mp4"}
	cmd := exec.Command("ffmpeg", cmdArguments...)
	var out bytes.Buffer
	cmd.Stdout = &out
	err := cmd.Run()
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("command output: %q", out.String())
}
如果没有输入文件,那么视音频捕捉(只在Linux下有效,因为Linux下把音视频设备当作文件句柄来处理)就会起作用。作为通用的规则,选项一般用于下一个特定的文件。如果你给 –b 64选项,改选会设置下一个视频速率。对于原始输入文件,格式选项可能是需要的。缺省情况下,ffmpeg试图尽可能的无损转换,采用与输入同样的音频视频参数来输出。(by ternence.hsu)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值