`
willzh
  • 浏览: 300745 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

如何用 ffmpeg 获取多音轨视频文件的各个音轨

阅读更多
1. 先用ffmpeg查看视频文件信息:

# ffmpeg -i a.MPG
Input #0, mpeg, from 'a.MPG':
  Duration: 00:00:32.32, start: 245.117611, bitrate: 8581 kb/s
    Stream #0.0[0x1e0]: Video: mpeg2video, yuv420p, 720x480 [PAR 32:27 DAR 16:9], 9800 kb/s, 59.94 tbr, 90k tbn, 59.94 tbc
    Stream #0.1[0x31]: Subtitle: dvdsub
    Stream #0.2[0x81]: Audio: ac3, 48000 Hz, 5.1, s16, 384 kb/s
    Stream #0.3[0x82]: Audio: ac3, 48000 Hz, 5.1, s16, 384 kb/s
    Stream #0.4[0x80]: Audio: ac3, 48000 Hz, 5.1, s16, 448 kb/s
    Stream #0.5[0x83]: Audio: ac3, 48000 Hz, stereo, s16, 160 kb/s
    Stream #0.6[0x84]: Audio: ac3, 48000 Hz, stereo, s16, 160 kb/s
    Stream #0.7[0x85]: Audio: ac3, 48000 Hz, stereo, s16, 192 kb/s
    Stream #0.8[0x2d]: Subtitle: dvdsub
    Stream #0.9[0x2e]: Subtitle: dvdsub
    Stream #0.10[0x2f]: Subtitle: dvdsub
    Stream #0.11[0x24]: Subtitle: dvdsub
    Stream #0.12[0x30]: Subtitle: dvdsub
    Stream #0.13[0x2a]: Subtitle: dvdsub
    Stream #0.14[0x2b]: Subtitle: dvdsub
    Stream #0.15[0x2c]: Subtitle: dvdsub
    Stream #0.16[0x23]: Subtitle: dvdsub


2. 转制音频文件
可以看到Audio的Stream有2-7个,分别获取这几个audio音轨的命令是:
ffmpeg -i a.MPG -map 0:2 a.2.wav 
ffmpeg -i a.MPG -map 0:3 a.3.wav
ffmpeg -i a.MPG -map 0:4 a.4.wav
...
ffmpeg -i a.MPG -map 0:7 a.7.wav

a.%d.wav (2-7) 即是输出的几个音轨的音频文件。



0
0
分享到:
评论

相关推荐

    ffmpeg获取音视频基本信息

    1. **获取视频时长**:使用 `ffprobe` 命令可以获取视频的总时长。例如,输入 `ffprobe -i input.mp4 -show_entries format=duration -v quiet -of default=noprint_wrappers=1:nokey=1`,其中 `input.mp4` 是你的...

    FFmpeg+SDL播放视频

    2. 使用FFmpeg的avformat_open_input打开视频文件,avformat_find_stream_info获取流信息。 3. 遍历所有流,找到视频流,通过avcodec_find_decoder找到相应的解码器,avcodec_alloc_context3创建解码上下文,avcodec...

    ffmpeg无损合并视频

    在“ffmpeg无损合并视频”的场景下,我们主要讨论如何利用FFmpeg将多个视频文件无损地拼接在一起,保持原始视频的质量不变。 FFmpeg的核心功能之一就是视频和音频的合并。在无损合并过程中,关键在于选择正确的编码...

    视频和音频使用ffmpeg进行合并

    5. **处理多音轨或多视频流**:如果你的视频文件有多个音轨或视频流,你可以通过指定流选择器(如 `-map 0:a:1` 选择第二个音频流)来选择要合并的特定轨道。 6. **添加元数据和时间戳**:合并后,你可能还需要更新...

    在QT平台上用ffmpeg将多路视频合成一起播放 合成视频的代码在combine文件中

    2. **读取多路视频流**:使用ffmpeg的`avformat_open_input`函数打开视频文件,`avformat_find_stream_info`获取流信息,然后通过`av_read_frame`读取每一帧数据。多路视频意味着你需要分别对每个视频文件执行这些...

    ffmpeg-4.0的so文件

    综上所述,`ffmpeg-4.0`的so文件是Android开发者实现音视频处理功能的重要资源,其兼容性和提供的头文件使得在Android 10设备上集成FFmpeg变得可行且高效。开发人员需关注FFmpeg的更新,合理利用其特性,同时注意...

    用ffmpeg转换视频格式.pdf

    使用 `ffmpeg -i video.avi` 命令可以获取视频文件的详细信息,包括编码、时长、分辨率等。 2. **N 个图片转化视频**: `ffmpeg -f image2 -i image%d.jpg video.mpg` 该命令将同一目录下的所有按顺序命名的图片...

    无损视频合并ffmpeg

    这里,`-f concat`指定使用`concat`demuxer,`-safe 0`是为了允许FFmpeg读取相对路径,`-i inputs.txt`指定了输入文件,`-c copy`表示我们希望无损地复制音频和视频流,而不是重新编码,最后的`output.mp4`是输出...

    ffmpeg 图片压缩成视频

    这个命令告诉FFmpeg使用24帧/秒的帧率,输入文件是按数字递增命名的jpg图片(例如,0001.jpg, 0002.jpg等),输出为libx264编码的MP4视频,像素格式为yuv420p。 3. C++ API 使用: 在C++程序中,可以使用FFmpeg的...

    ffmpeg编码成mpeg4或h264文件

    本篇文章将深入探讨如何使用FFmpeg将原始视频或音频编码为MPEG-4或H.264格式。 MPEG-4与H.264是两种广泛应用的视频编码标准。MPEG-4标准不仅包含了视频编码,还涉及到音频、交互式多媒体等,而H.264(也称为AVC,...

    ffmpeg 提取MP4视频中的音频mp3

    FFmpeg还支持许多高级功能,例如调整音频质量、设置比特率、处理多音轨等。例如,如果你希望设定音频比特率为128kbps,可以在命令中添加`-b:a 128k`: ```bash ffmpeg -i input.mp4 -vn -acodec libmp3lame -b:a ...

    FFmpeg使用手册(FFmpeg官方文档中文翻译)

    - 多音轨与多语言:通过`-map`选项选择输入文件中的特定音轨或字幕轨。 - 字幕处理:`-vf subtitles=subtitles.srt`添加硬字幕,`-i subtitles.srt`添加软字幕。 - 视频分析:`ffprobe`工具用于获取媒体文件的元...

    ffmpeg批量剪辑视频片头片尾.rar

    在批处理文件中,使用`for`循环遍历指定目录下的所有视频文件,然后调用FFmpeg命令进行剪辑。例如: ``` for %%i in ("C:\videos\*.mp4") do ( ffmpeg -ss 00:00:05 -i "%%i" -c copy -t 00:00:30 "C:\output\%%...

    ffmpeg入门各个文档电子书

    FFmpeg 是一个强大的开源多媒体处理工具,用于处理音频、视频以及图像文件。它包含了多个组件,如 FFmpeg 命令行工具、libavcodec 编解码库、libavformat 多媒体容器处理库、libavfilter 过滤器库和 libavutil 基础...

    Ffmpeg视频教程

    Ffmpeg是一款强大的跨平台音视频处理工具集,广泛应用于音视频转码、流媒体采集、播放、录制以及后期编辑等多个领域。接下来,我们将详细讲解Ffmpeg的基础概念、安装配置方法、基本命令行参数及常用功能,并结合实际...

    FFmpeg可执行程序官方文档.rar

    这在处理多音轨、字幕等复杂多媒体文件时非常有用。 4. **滤镜与特效**:FFmpeg的libavfilter库提供了一系列过滤器,用于视频和音频的处理。例如,可以使用裁剪滤镜裁剪视频画面,使用水印滤镜添加文字或图片水印,...

    利用FFmpeg将mkv视频转换为H.264

    在提供的文件列表中,我们看到有`FFMepg_to_mp4.cpp`和`stdafx.cpp`,这可能是使用C++编程语言编写的一个小型应用程序,用于调用FFmpeg库进行视频转换。在C++中,使用FFmpeg库需要包含相应的头文件,并链接FFmpeg的...

    FFMPEG完美入门资料_ffmpeg_

    此外,你还会了解到FFmpeg如何处理多音轨、多视频流的文件,以及如何进行时间线编辑。对于更高级的用法,如自定义编码器、解码器,或者开发基于FFmpeg的应用程序,资料可能也会提供一些基础引导。 总的来说,...

    ffmpeg视频水印,分片.zip

    在这个“ffmpeg视频水印,分片.zip”压缩包中,包含的是关于如何使用FFmpeg为视频添加水印以及进行视频分片的操作教程。下面将详细介绍这两个关键知识点。 一、FFmpeg视频水印 视频水印通常是为了保护版权或增加...

Global site tag (gtag.js) - Google Analytics