Opened 14 years ago
Closed 14 years ago
#9199 closed defect (Fixed)
Non default options cause fatal errors
Reported by: | Owned by: | beirdo | |
---|---|---|---|
Priority: | minor | Milestone: | 0.25 |
Component: | Apps - Nuvexport | Version: | 0.23.1 |
Severity: | high | Keywords: | |
Cc: | Ticket locked: | no |
Description
Several bugs effecting use on Debian
Custom height & width all other options default (xdiv).
START WIDTH / HEIGHT BUG
Specifying non-default heights throws this error:
Input #0, rawvideo, from '/tmp/fifodir_9303/vidout':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0.0: Video: rawvideo, yuv420p, 720x576, 25 tbr, 25 tbn, 25 tbc
-crop* is deprecated in favor of the crop avfilter -crop* is deprecated in favor of the crop avfilter -crop* is deprecated in favor of the crop avfilter -crop* is deprecated in favor of the crop avfilter Option 'padtop' has been removed, use the pad filter instead ffmpeg: failed to set value '86' for option 'padtop'
: possible solution: http://roundup.ffmpeg.org/issue1931
To encode: Humf: Uncle Hairy's Keys Use the following commands: First pass...
system call: mkdir -m 0755 /tmp/fifodir_8865/
forking: /usr/bin/nice -n19 /usr/bin/mythtranscode --showprogress -p '0' -c '1022' -s '2010-11-05T15:52:00' -f "/tmp/fifodir_8865/" --honorcutlist --fifosync
forking: cat /tmp/fifodir_8865/audout > /dev/null
forking: /usr/bin/nice -n19 ffmpeg -threads 2 -y -f s16le -ar 48000 -ac 2 -f rawvideo -pix_fmt yuv420p -s 720x576 -vf aspect=1.77777777777778 -r 25.000 -i /tmp/fifodir_8865/vidout -vf aspect=1.77777777777778 -r 25.000 -deinterlace -croptop 8 -cropright 10 -cropbottom 8 -cropleft 10 -vf pad 712:400:4:4 -s 712x400 -vcodec libxvid -b '768k' -minrate '32k' -maxrate '1536k' -bt '32k' -bufsize 65535 -flags +mv4+loop+aic+cgop -trellis 1 -mbd 1 -cmp 2 -subcmp 2 -b_qfactor '150' -b_qoffset '100' -bf '1' -pass 1 -passlogfile '/tmp/xvid.8865.log' -f avi /dev/null Final pass...
system call: mkdir -m 0755 /tmp/fifodir_8865/
forking: /usr/bin/nice -n19 /usr/bin/mythtranscode --showprogress -p '0' -c '1022' -s '2010-11-05T15:52:00' -f "/tmp/fifodir_8865/" --honorcutlist
forking: /usr/bin/nice -n19 ffmpeg -threads 2 -y -f s16le -ar 48000 -ac 2 -i /tmp/fifodir_8865/audout -f rawvideo -pix_fmt yuv420p -s 720x576 -vf aspect=1.77777777777778 -r 25.000 -i /tmp/fifodir_8865/vidout -vf aspect=1.77777777777778 -r 25.000 -deinterlace -croptop 8 -cropright 10 -cropbottom 8 -cropleft 10 -vf pad 712:400:4:4 -s 712x400 -vcodec libxvid -b '768k' -minrate '32k' -maxrate '1536k' -bt '32k' -bufsize 65535 -flags +mv4+loop+aic+cgop -trellis 1 -mbd 1 -cmp 2 -subcmp 2 -b_qfactor '150' -b_qoffset '100' -bf '1' -pass 2 -passlogfile '/tmp/xvid.8865.log' -acodec libmp3lame -async 1 -ab '128k' -f avi './Humf - Uncle Hairy'\s Keys.avi'
Cleaning up temp files.
END WIDTH / HEIGHT BUG
Denoise selected all other options default (xdiv).
START DENOISE
Selecting denoise throws this error: Use of uninitialized value in numeric lt (<) at /usr/share/nuvexport/export/ffmpeg.pm line 243, <STDIN> line 15.
-- script debug output --
To encode: Humf: Uncle Hairy's Keys Use the following commands: First pass... Use of uninitialized value in numeric lt (<) at /usr/share/nuvexport/export/ffmpeg.pm line 243, <STDIN> line 15.
system call: mkdir -m 0755 /tmp/fifodir_8733/
forking: /usr/bin/nice -n19 /usr/bin/mythtranscode --showprogress -p '0' -c '1022' -s '2010-11-05T15:52:00' -f "/tmp/fifodir_8733/" --honorcutlist --fifosync
forking: cat /tmp/fifodir_8733/audout > /dev/null
forking: /usr/bin/nice -n19 ffmpeg -f rawvideo -s 720x576 -r 25.000 -i /tmp/fifodir_8733/vidout -f yuv4mpegpipe - 2> /dev/null | /usr/bin/nice -n19 yuvdenoise -r 16 -f 2> /dev/null | /usr/bin/nice -n19 ffmpeg -threads 2 -y -f s16le -ar 48000 -ac 2 -f yuv4mpegpipe -s 720x576 -vf aspect=1.77777777777778 -r 25.000 -i - -vf aspect=1.77777777777778 -r 25.000 -deinterlace -croptop 8 -cropright 10 -cropbottom 8 -cropleft 10 -s 512x288 -vcodec libxvid -b '768k' -minrate '32k' -maxrate '1536k' -bt '32k' -bufsize 65535 -flags +mv4+loop+aic+cgop -trellis 1 -mbd 1 -cmp 2 -subcmp 2 -b_qfactor '150' -b_qoffset '100' -bf '1' -pass 1 -passlogfile '/tmp/xvid.8733.log' -f avi /dev/null Final pass... Use of uninitialized value in numeric lt (<) at /usr/share/nuvexport/export/ffmpeg.pm line 243, <STDIN> line 15.
system call: mkdir -m 0755 /tmp/fifodir_8733/
forking: /usr/bin/nice -n19 /usr/bin/mythtranscode --showprogress -p '0' -c '1022' -s '2010-11-05T15:52:00' -f "/tmp/fifodir_8733/" --honorcutlist
forking: /usr/bin/nice -n19 ffmpeg -f rawvideo -s 720x576 -r 25.000 -i /tmp/fifodir_8733/vidout -f yuv4mpegpipe - 2> /dev/null | /usr/bin/nice -n19 yuvdenoise -r 16 -f 2> /dev/null | /usr/bin/nice -n19 ffmpeg -threads 2 -y -f s16le -ar 48000 -ac 2 -i /tmp/fifodir_8733/audout -f yuv4mpegpipe -s 720x576 -vf aspect=1.77777777777778 -r 25.000 -i - -vf aspect=1.77777777777778 -r 25.000 -deinterlace -croptop 8 -cropright 10 -cropbottom 8 -cropleft 10 -s 512x288 -vcodec libxvid -b '768k' -minrate '32k' -maxrate '1536k' -bt '32k' -bufsize 65535 -flags +mv4+loop+aic+cgop -trellis 1 -mbd 1 -cmp 2 -subcmp 2 -b_qfactor '150' -b_qoffset '100' -bf '1' -pass 2 -passlogfile '/tmp/xvid.8733.log' -acodec libmp3lame -async 1 -ab '128k' -f avi './Humf - Uncle Hairy'\s Keys.avi'
Cleaning up temp files.
END DENOISE
Debian ffmpeg version detection, codec support detection issues
Please see attached modified nuvexport version and compare to the latest, the changes were necessary to get nuvexport to work at all on debian. The modified version will successfully complete a run (if no options are changed). Codecs are not all correctly detected either I currently get the following format options.
Using ffmpeg for exporting. What would you like to do?
- Export to XviD
- Export to DVD
- Export to DivX
- Export to ASF
- Export to MP3
- Export to PSP (disabled)
- Export to MP4 (iPod) (disabled)
- Export to .nuv and .sql
- Quit
Choose a function:
FFMPEG VERSION USED
$ ffmpeg --version FFmpeg version SVN-r24504, Copyright (c) 2000-2010 the FFmpeg developers
built on Oct 4 2010 17:31:43 with gcc 4.4.5 configuration: '--enable-libdc1394' --prefix='/usr' --extra-cflags='-Wall -g ' --cc='ccache cc' '--enable-shared' '--enable-libmp3lame' '--enable-gpl' '--enable-libvorbis' '--enable-pthreads' '--enable-libfaac' '--enable-libxvid' '--enable-postproc' '--enable-x11grab' '--enable-libgsm' '--enable-libtheora' '--enable-libopencore-amrnb' '--enable-libopencore-amrwb' '--enable-libx264' '--enable-libspeex' '--enable-nonfree' '--disable-stripping' '--enable-avfilter' '--enable-libdirac' '--enable-avfilter-lavf' --disable-decoder='libdirac' '--enable-libschroedinger' --disable-encoder='libschroedinger' '--enable-version3' '--enable-libopenjpeg' '--enable-libvpx' '--enable-librtmp' --extra-libs='-lgcrypt' '--disable-altivec' '--disable-armv5te' '--disable-armv6' '--disable-vis' libavutil 50.23. 0 / 50.23. 0 libavcore 0. 0. 0 / 0. 0. 0 libavcodec 52.84. 0 / 52.84. 0 libavformat 52.77. 0 / 52.77. 0 libavdevice 52. 2. 0 / 52. 2. 0 libavfilter 1.26. 1 / 1.26. 1 libswscale 0.11. 0 / 0.11. 0 libpostproc 51. 2. 0 / 51. 2. 0
ffmpeg: missing argument for option '-version'
=====
Let me know if you need further details or would like me to test anything.
Attachments (1)
Change History (14)
Changed 14 years ago by
Attachment: | ffmpeg.pm.modified added |
---|
comment:1 Changed 14 years ago by
Owner: | changed from xris to beirdo |
---|---|
Status: | new → assigned |
comment:3 Changed 14 years ago by
Status: | assigned → infoneeded |
---|
Could you get me the version number of yuvdenoise, please?
comment:4 Changed 14 years ago by
$ yuvdenoise -v
INFO: [yuvdenoise] yuvdenoise version 1.9.0 INFO: [yuvdenoise] Using the following thresholds/settings: INFO: [yuvdenoise] Gauss-Pre-Filter [Y,U,V] : [0,0,0] INFO: [yuvdenoise] Median-Pre-Filter [Y,U,V] : [0,0,0] INFO: [yuvdenoise] Temporal-Noise-Filter [Y,U,V] : [0,0,0] INFO: [yuvdenoise] Median-Post-Filter [Y,U,V] : [0,0,0] INFO: [yuvdenoise] Renoise [Y,U,V] : [0,0,0] INFO: [yuvdenoise] HQ-Mode : off
ERROR: [yuvdenoise] Couldn't read YUV4MPEG header: bad header magic!
Also a ffmpeg update came through today..
$ ffmpeg --version FFmpeg version 0.6.1, Copyright (c) 2000-2010 the FFmpeg developers
built on Nov 15 2010 11:39:17 with gcc 4.4.5 configuration: --enable-libdc1394 --prefix=/usr --extra-cflags='-Wall -g ' --cc='ccache cc' --enable-shared --enable-libmp3lame --enable-gpl --enable-libvorbis --enable-pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-x11grab --enable-libgsm --enable-libtheora --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-libspeex --enable-nonfree --disable-stripping --enable-avfilter --enable-libdirac --enable-avfilter-lavf --disable-decoder=libdirac --enable-libschroedinger --disable-encoder=libschroedinger --enable-version3 --enable-libopenjpeg --enable-libvpx --enable-librtmp --extra-libs=-lgcrypt --disable-altivec --disable-armv5te --disable-armv6 --disable-vis libavutil 50.15. 1 / 50.15. 1 libavcodec 52.72. 2 / 52.72. 2 libavformat 52.64. 2 / 52.64. 2 libavdevice 52. 2. 0 / 52. 2. 0 libavfilter 1.19. 0 / 1.19. 0 libswscale 0.11. 0 / 0.11. 0 libpostproc 51. 2. 0 / 51. 2. 0
ffmpeg: missing argument for option '-version'
comment:5 follow-up: 6 Changed 14 years ago by
Status: | infoneeded → assigned |
---|
First off... the yuvdenoise issue. I can not recreate that here. Granted I have an older version of ffmpeg, but the identical version of yuvdenoise.
Use of uninitialized value in numeric lt (<) at /usr/share/nuvexport/export/ffmpeg.pm line 243, <STDIN> line 15.
This is not an error, this is a warning. It is where it is trying to compare the version of yuvdenoise, but somehow it is not working on your system.
Secondly, the "codec detection" is a non-bug. If you try using the two disabled options, it will tell you what is missing on your system. Judging by the two listed, your ffmpeg does not support writing aac audio. A known issue that you get by using Debian.
That leaves us with only one "bug". That is that ffmpeg once AGAIN changed its command line in a newer revision. I so hate their inconsistancy. I'll ponder on this, and what to do to fix it.
comment:6 follow-up: 7 Changed 14 years ago by
Replying to beirdo:
This is not an error, this is a warning. It is where it is trying to compare the version of yuvdenoise, but somehow it is not working on your system.
yuvdenoise is waiting for datas. You may try to use the -h flags to have something more readable.
Secondly, the "codec detection" is a non-bug. If you try using the two disabled options, it will tell you what is missing on your system. Judging by the two listed, your ffmpeg does not support writing aac audio. A known issue that you get by using Debian.
This ffmpeg package come from the debian-multimedia.org repository. This package has been build with all options enabled :
$ ffmpeg -codecs | grep -i aac
DEA aac Advanced Audio Coding
EA libfaac libfaac AAC (Advanced Audio Codec)
That leaves us with only one "bug". That is that ffmpeg once AGAIN changed its command line in a newer revision. I so hate their inconsistancy. I'll ponder on this, and what to do to fix it.
ffmpeg 0.6.1 is the current stable release. I think you must support stable release.
Christian
comment:7 follow-up: 8 Changed 14 years ago by
Replying to Christian Marillat <marillat@…>:
Replying to beirdo:
This is not an error, this is a warning. It is where it is trying to compare the version of yuvdenoise, but somehow it is not working on your system.
yuvdenoise is waiting for datas. You may try to use the -h flags to have something more readable.
What was reported as a bug was not in fact a bug. If it's stuck waiting for data, it's likely because ffmpeg is being screwy, once again.
This ffmpeg package come from the debian-multimedia.org repository. This package has been build with all options enabled :
$ ffmpeg -codecs | grep -i aac
DEA aac Advanced Audio Coding
EA libfaac libfaac AAC (Advanced Audio Codec)
As you are not the original poster, you can not speak to what his copy of nuvexport would say if he chose the disabled options. I said aac in particular as this is a common issue that happens with license-crippled versions of ffmpeg. But to find out the actual issue, the user needs to go into nuvexport and see what was being detected as missing.
That leaves us with only one "bug". That is that ffmpeg once AGAIN changed its command line in a newer revision. I so hate their inconsistancy. I'll ponder on this, and what to do to fix it.
ffmpeg 0.6.1 is the current stable release. I think you must support stable release.
There is no requirement that we "must" support any release at all. ffmpeg is notorious for jerking their users around by changing the command line arguments repeatedly and for no apparent good reason.
Anyways, I await feedback from the original poster on the matter of the disabled codecs, but I still need to decide on how to proceed with this. I'm tired of endlessly tweaking ffmpeg command lines.
comment:8 Changed 14 years ago by
Replying to beirdo:
Replying to Christian Marillat <marillat@…>:
Replying to beirdo:
This is not an error, this is a warning. It is where it is trying to compare the version of yuvdenoise, but somehow it is not working on your system.
yuvdenoise is waiting for datas. You may try to use the -h flags to have something more readable.
What was reported as a bug was not in fact a bug. If it's stuck waiting for data, it's likely because ffmpeg is being screwy, once again.
Do you have noticed that yuvdenoise isn't ffmpeg ?
As I'm saying in my previous comment use the -h option with yuvdenoise.
As you are not the original poster, you can not speak to what his copy of nuvexport would say if he chose the disabled options. I said aac in particular as this is a common issue that happens with license-crippled versions of ffmpeg. But to find out the actual issue, the user needs to go into nuvexport and see what was being detected as missing.
Read again my previous reply. This ffmpeg package has been compiled by me, so I know what I'm talking about. This ffmpeg version has been build with all options included non-free codecs.
ffmpeg 0.6.1 is the current stable release. I think you must support stable release.
There is no requirement that we "must" support any release at all. ffmpeg is notorious for jerking their users around by changing the command line arguments repeatedly and for no apparent good reason.
You need to take the decision which version of ffmpeg should work with nuvexport.
comment:9 Changed 14 years ago by
Status: | assigned → infoneeded |
---|
This ticket is awaiting input from the original poster on what nuvexport says it is missing when he attempts to use the disabled exporters. If you can not provide that precise information, you are not adding salient information to this ticket.
comment:10 Changed 14 years ago by
Also, for the original poster:
Please uncomment all the stuff you commented in your ffmpeg.pm file you posted. That stuff is there for a reason, and your commenting it out is, in fact, what may be causing your issues with yuvdenoise. I will not accept that as a change to be committed, so please help debugging by using the actual code being supported. Thanks.
comment:11 Changed 14 years ago by
Hi, as mentioned earlier the stable ffmpeg 0.6.1 is now on my system, is it okay if I continue this bug from there. ffmpeg are been very unhelpful changing their flags so frequently, I hope it doesn't deter you, nuvexport is the only viable script I know of to handle mass myth exports easily.
I've uncommented as suggested and now get:
bedlore@wave-master:~[2010-11-16 23:39:31]$ nuvexport --debug Use of uninitialized value in numeric lt (<) at /usr/share/nuvexport/export/ffmpeg.pm line 104. Use of uninitialized value in numeric lt (<) at /usr/share/nuvexport/export/ffmpeg.pm line 104. Use of uninitialized value in numeric lt (<) at /usr/share/nuvexport/export/ffmpeg.pm line 104. Use of uninitialized value in numeric lt (<) at /usr/share/nuvexport/export/ffmpeg.pm line 104. Use of uninitialized value in numeric lt (<) at /usr/share/nuvexport/export/ffmpeg.pm line 104. Use of uninitialized value in numeric lt (<) at /usr/share/nuvexport/export/ffmpeg.pm line 104. Use of uninitialized value in numeric lt (<) at /usr/share/nuvexport/export/ffmpeg.pm line 104.
Loading MythTV recording info. 97%
Using ffmpeg for exporting. What would you like to do?
- Export to XviD (disabled)
- Export to DVD (disabled)
- Export to DivX (disabled)
- Export to ASF (disabled)
- Export to MP3 (disabled)
- Export to PSP (disabled)
- Export to MP4 (iPod) (disabled)
- Export to .nuv and .sql
- Quit
comment:12 Changed 14 years ago by
I plan on making this all work by building an ffmpeg binary as part of the mythtv install. We have a snapshot of their code anyways, it's just a little more work to get the binary built. This way we have a well-controlled version that will be the same across all distros, and will support exactly what mythtv supports as it will use our snapshotted libraries (shared).
This will take me a bit of time, but this is the plan. At that point I will have one set of command line arguments to support, and it will only change when we re-snapshot ffmpeg.
comment:13 Changed 14 years ago by
Milestone: | unknown → 0.25 |
---|---|
Resolution: | → Fixed |
Status: | infoneeded → closed |
Fixed in MythTV/nuvexport@c18508f2044
nuvexport now uses the mythffmpeg built from the ffmpeg synced in MythTV's codebase. No other ffmpeg will any longer be supported.
Note, that to get full support, you may need to configure MythTV with: --enable-libmp3lame --enable-libxvid --enable-libx264
modified nuvexport version to work with Debian