andreydelpozo2 / ffmbc

Automatically exported from code.google.com/p/ffmbc
0 stars 0 forks source link

map audio from multiple source files into one output stream stops prematurely #78

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
======================================
start with three files, one file with 1 stream of video and two files each with 
1 stream of 1 channel audio 

encode to one output file with 1 video stream and 1 audio stream with 2 channels

What is the expected output?
============================
all frames of video and multiplexed audio

What do you see instead?
========================
one frame of video and multiplexed audio

What version of the product are you using?
==========================================
ffmbc 0.7rc4 (and also tested with ffmbc 0.6.1)

On what operating system?
=========================
Ubuntu GNU/Linux 10.04 LTS 32 bit

Please provide any additional information below:
================================================
ffmbc -v 3 -threads 4 -shortest -i "in_V00.mov" -i "in_A00.wav" -i "in_A01.wav" 
-vf "scale=720:576:1" -vcodec dvvideo -aspect 16:9 -bff -acodec pcm_s16le -ar 
48000 -ac 2 -map_audio_channel 1:0:0:0:1:0 -map_audio_channel 2:0:0:0:1:1 -y 
"in_V00-out.mov"
FFmbc version 0.7-rc4
Copyright (c) 2008-2011 Baptiste Coudurier and the FFmpeg developers
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'in_V00.mov':
  Metadata:
    major_brand: qt  
    minor_version: 0
    compatible_brands: qt  
    creation_time: 2012-01-12 12:56:28
    encoder: FFmbc 0.7
  Duration: 00:07:35.96, start: 0.000000, bitrate: 28800 kb/s
    Stream #0.0(eng): Video: dvvideo, yuv420p, 720x576i bff [PAR 64:45 DAR 16:9], 28800 kb/s, 25.00 fps
Input #1, wav, from 'in_A00.wav':
  Duration: 00:07:35.95, start: 0.000000, bitrate: 768 kb/s
    Stream #1.0(und): Audio: pcm_s16le, 48000 Hz, 1 channels, s16, 768 kb/s
Input #2, wav, from 'in_A01.wav':
  Duration: 00:07:35.95, start: 0.000000, bitrate: 768 kb/s
    Stream #2.0(und): Audio: pcm_s16le, 48000 Hz, 1 channels, s16, 768 kb/s
[scale @ 0xa9810c0] w:720 h:576 fmt:yuv420p -> w:720 h:576 fmt:yuv420p flags:0x4
Output #0, mov, to 'in_V00-out.mov':
  Metadata:
    encoder: FFmbc 0.7
    Stream #0.0(und): Video: dvvideo, yuv420p, 720x576i bff [PAR 64:45 DAR 16:9], 28800 kb/s, 25.00 fps
    Stream #0.1(und): Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
  Stream #1.0 -> #0.1 [channel: 0 -> 0]
  Stream #2.0 -> #0.1 [channel: 0 -> 1]
Press [q] to stop, [?] for help
[mov @ 0xa984760] replacing header in front, copying  0.14MB                    

frame=    1 fps=  0 q=0.0 Lsize=     141kB time=00:00:00.00 bitrate=   
0.0kbits/s    
video:141kB audio:0kB global headers:0kB muxing overhead 0.584722%

If I remove -shortest then the above command works correct, except that we 
cannot run without -shortest because our input files may not be the same length 
(audio being infinity long, for instance, by using /dev/zero for an audio 
input).

There was a concern here that perhaps the issue was due to our patch that made 
map and map_audio_channel work together better, so I tested a similar command 
line on a clean build of FFmbc 0.6.1: with the same result.

ffmbc -v 3 -threads 4 -shortest -i "in_V00.mov" -i "in_A00.wav" -i "in_A01.wav" 
-vf "scale=720:576:1" -vcodec dvvideo -aspect 16:9 -top 0 -acodec pcm_s16le -ar 
48000 -ac 2 -map_audio_channel 1:0:0:0:1:0 -map_audio_channel 2:0:0:0:1:1 -y 
"in_V00-out.mov"
FFmbc version 0.6.1
Copyright (c) 2008-2011 Baptiste Coudurier and the FFmpeg developers
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'in_V00.mov':
  Metadata:
    major_brand: qt  
    minor_version: 0
    compatible_brands: qt  
    creation_time: 2012-01-12 12:56:28
    encoder: FFmbc 0.7
  Duration: 00:07:35.96, start: 0.000000, bitrate: 28800 kb/s
    Stream #0.0(eng): Video: dvvideo, yuv420p, 720x576i bff [PAR 64:45 DAR 16:9], 28800 kb/s, 25.00 fps
Input #1, wav, from 'in_A00.wav':
  Duration: 00:07:35.95, start: 0.000000, bitrate: 768 kb/s
    Stream #1.0(und): Audio: pcm_s16le, 48000 Hz, 1 channels, s16, 768 kb/s
Input #2, wav, from 'in_A01.wav':
  Duration: 00:07:35.95, start: 0.000000, bitrate: 768 kb/s
    Stream #2.0(und): Audio: pcm_s16le, 48000 Hz, 1 channels, s16, 768 kb/s
[scale @ 0x9958e00] w:720 h:576 fmt:yuv420p -> w:720 h:576 fmt:yuv420p 
flags:0x4 interlaced:1
Output #0, mov, to 'in_V00-out.mov':
  Metadata:
    encoder: FFmbc 0.6.1
    Stream #0.0(und): Video: dvvideo, yuv420p, 720x576p [PAR 64:45 DAR 16:9], 28800 kb/s, 25.00 fps
    Stream #0.1(und): Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
  Stream #1.0 -> #0.1 [channel: 0 -> 0]
  Stream #2.0 -> #0.1 [channel: 0 -> 1]
Press [q] to stop encoding
[mov @ 0x993a140] replacing header in front, copying  0.14MB                    

frame=    1 fps=  0 q=0.0 Lsize=     141kB time=00:00:00.00 bitrate=   
0.0kbits/s                 
video:141kB audio:0kB global headers:0kB muxing overhead 0.579167%

Original issue reported on code.google.com by mark.him...@gmail.com on 12 Jan 2012 at 3:02

GoogleCodeExporter commented 9 years ago
Should be fixed in rc5

Original comment by baptiste...@gmail.com on 12 Jan 2012 at 5:49