Opened 9 years ago

Last modified 9 years ago

#4934 open enhancement

nut container can't hold qtrle

Reported by: Roger Pack Owned by:
Priority: wish Component: avformat
Version: git-master Keywords: nut
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug: nut container doesnt' seem to "like" qtrle streams

How to reproduce:

./ffmpeg_g -f lavfi -i testsrc=duration=10:size=1280x720:rate=30 -c:v qtrle -y yo.qtrle.nut
ffmpeg version N-75953-gc982d10 Copyright (c) 2000-2015 the FFmpeg developers
  built with Apple LLVM version 7.0.0 (clang-700.0.72)
  configuration: --extra-libs=-llzo2 --enable-debug --disable-optimizations --enable-libx264 --enable-gpl
  libavutil      55.  3.100 / 55.  3.100
  libavcodec     57.  5.100 / 57.  5.100
  libavformat    57.  3.100 / 57.  3.100
  libavdevice    57.  0.100 / 57.  0.100
  libavfilter     6. 11.100 /  6. 11.100
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.100 /  2.  0.100
  libpostproc    54.  0.100 / 54.  0.100
Input #0, lavfi, from 'testsrc=duration=10:size=1280x720:rate=30':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 1280x720 [SAR 1:1 DAR 16:9], 30 tbr, 30 tbn, 30 tbc
[nut @ 0x7fc962001000] No codec tag defined for stream 0
Output #0, nut, to 'yo.qtrle.nut':
  Metadata:
    encoder         : Lavf57.3.100
    Stream #0:0: Video: qtrle, rgb24, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 30 fps, 61440 tbn, 30 tbc
    Metadata:
      encoder         : Lavc57.5.100 qtrle
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> qtrle (native))
Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument

Change History (3)

comment:1 by Roger Pack, 9 years ago

Possibly related, if I encode it to ".avi" (which happily accepts the stream) then read it back into ffmpeg, it thinks it's "rawvideo"

$  ./ffmpeg_g -f lavfi -i testsrc=duration=10:size=1280x720:rate=30 -c:v qtrle -y yo.qtrle.avi
...
$ ./ffmpeg -i yo.qtrle.avi
ffmpeg version N-75952-gdd3615a Copyright (c) 2000-2015 the FFmpeg developers
  built with Apple LLVM version 7.0.0 (clang-700.0.72)
  configuration: --extra-libs=-llzo2 --enable-debug --disable-optimizations --enable-libx264 --enable-gpl
  libavutil      55.  3.100 / 55.  3.100
  libavcodec     57.  5.100 / 57.  5.100
  libavformat    57.  3.100 / 57.  3.100
  libavdevice    57.  0.100 / 57.  0.100
  libavfilter     6. 11.100 /  6. 11.100
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.100 /  2.  0.100
  libpostproc    54.  0.100 / 54.  0.100
Input #0, avi, from 'yo.qtrle.avi':
  Metadata:
    encoder         : Lavf57.3.100
  Duration: 00:00:10.00, start: 0.000000, bitrate: 84918 kb/s
    Stream #0:0: Video: rawvideo, bgr24, 1280x720, 85192 kb/s, SAR 1:1 DAR 16:9, 30 fps, 30 tbr, 30 tbn, 30 tbc
At least one output file must be specified

in reply to:  1 comment:2 by Carl Eugen Hoyos, 9 years ago

Component: undeterminedavformat
Keywords: nut added
Priority: normalwish
Status: newopen
Type: defectenhancement
Version: unspecifiedgit-master

Replying to rogerdpack:

Possibly related, if I encode it to ".avi" (which happily accepts the stream) then read it back into ffmpeg, it thinks it's "rawvideo"

The user is responsible what FFmpeg puts in a general purpose container like avi, you can use -vcodec qtrle to read it back.

comment:3 by Roger Pack, 9 years ago

current work around: use avi, though I'd prefer to use nut :)
You do have to specify it, as noted (though for other types you don't? weird)

./ffplay -vcodec qtrle yo.qtrle.avi

Last edited 9 years ago by Roger Pack (previous) (diff)
Note: See TracTickets for help on using tickets.