чт, 15 февр. 2024 г., 11:00 Andrew Randrianasulu <randrianas...@gmail.com>:
чт, 15 февр. 2024 г., 10:39 Ferdi Scholten<fe...@sttc-nlp.nl>:
The AMR audio format is not specified as a valid audio format for the
mp4 container (see *ISO
<
https://en.wikipedia.org/wiki/International_Organization_for_Standardization>/IEC
<https://en.wikipedia.org/wiki/International_Electrotechnical_Commission>
14496-14:2003)*. So managing to get it in does not mean it can be played
or transcoded by other software that conforms to the mp4 specifications.
Should you want it to be registered as such, you can do that here:
https://mp4ra.org/request
You can find all officially supported codecs and other streams on that
site as well.
not sure if individuals can do anything about it?
found this thread from 6 years ago
https://lists.ffmpeg.org/pipermail/ffmpeg-devel/2017-May/211446.html
anyway it does not mux correctly even in 3gp:
ffmpeg -i
/data/data/com.termux/files/home/storage/dcim/OpenCamera/VID_20240215_064913.mp4
-c:a copy -c:v copy vid-test.3gp
ffmpeg version 6.1.1 Copyright (c) 2000-2023 the
FFmpeg developers
built with Android (10552028, +pgo, +bolt, +lto, -mlgo, based on r487747d)
clang version 17.0.2 (
https://android.googlesource.com/toolchain/llvm-project
d9f89f4d16663d5012e5c09495f3b30ece3d2362) configuration: --arch=aarch64
--as=aarch64-linux-android-clang --cc=aarch64-linux-android-clang
--cxx=aarch64-linux-android-clang++ --nm=llvm-nm
--pkg-config=/home/builder/.termux-build/_cache/android-r26b-api-24-v1/bin/pkg-config
--strip=llvm-strip --cross-prefix=aarch64-linux-android- --disable-indevs
--disable-outdevs --enable-indev=lavfi --disable-static --disable-symver
--enable-cross-compile --enable-gnutls --enable-gpl --enable-version3
--enable-jni --enable-lcms2 --enable-libaom --enable-libass
--enable-libbluray --enable-libdav1d --enable-libfreetype --enable-libgme
--enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb
--enable-libopenmpt --enable-libopus --enable-librav1e --enable-libsoxr
--enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora
--enable-libv4l2 --enable-libvidstab --enable-libvo-amrwbenc
--enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264
--enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg
--enable-mediacodec --enable-opencl --enable-shared
--prefix=/data/data/com.termux/files/usr --target-os=android
--extra-libs=-landroid-glob --disable-vulkan --enable-neon
--disable-libfdk-aac
libavutil 58. 29.100 / 58. 29.100
libavcodec 60. 31.102 / 60. 31.102
libavformat 60. 16.100 / 60. 16.100
libavdevice 60. 3.100 / 60. 3.100
libavfilter 9. 12.100 / 9. 12.100
libswscale 7. 5.100 / 7. 5.100
libswresample 4. 12.100 / 4. 12.100
libpostproc 57. 3.100 / 57. 3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
'/data/data/com.termux/files/home/storage/dcim/OpenCamera/VID_20240215_064913.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
creation_time : 2024-02-15T03:54:16.000000Z
com.android.version: 11
Duration: 00:05:02.04, start:
0.000000, bitrate: 585 kb/s
Stream #0:0[0x1](eng): Video: h264 (Constrained Baseline) (avc1 /
0x31637661), yuv420p(tv, smpte170m/smpte170m/bt709, progressive), 640x480,
562 kb/s, SAR 1:1 DAR 4:3, 19.93 fps, 60 tbr, 90k tbn (default)
Metadata:
creation_time : 2024-02-15T03:54:16.000000Z
handler_name :
VideoHandle
vendor_id : [0][0][0][0]
Stream #0:1[0x2](eng): Audio: amr_nb (samr / 0x726D6173), 8000 Hz, mono,
fltp, 12 kb/s (default) Metadata:
creation_time :
2024-02-15T03:54:16.000000Z
handler_name : SoundHandle
vendor_id : [0][0][0][0]
[3gp @ 0xb40000789b073d70]
track 1: codec frame size is not set
Output #0, 3gp, to 'vid-test.3gp':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
com.android.version: 11
encoder :
Lavf60.16.100
Stream #0:0(eng): Video: h264 (Constrained Baseline) (avc1 /
0x31637661), yuv420p(tv, smpte170m/smpte170m/bt709, progressive), 640x480
[SAR 1:1 DAR 4:3], q=2-31, 562 kb/s, 19.93 fps, 60 tbr, 90k tbn (default)
Metadata:
creation_time : 2024-02-15T03:54:16.000000Z
handler_name : VideoHandle
vendor_id : [0][0][0][0]
Stream #0:1(eng): Audio: amr_nb (samr / 0x726D6173), 8000 Hz, mono, fltp,
12 kb/s (default) Metadata:
creation_time :
2024-02-15T03:54:16.000000Z
handler_name : SoundHandle
vendor_id : [0][0][0][0]
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream
#0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
[3gp @ 0xb40000789b073d70] fatal error, input is not a single packet,
implement a AVParser for it [vost#0:0/copy @ 0xb40000789b0730f0] Error
submitting a packet to the muxer: Operation not permitted
[out#0/3gp @ 0xb40000784b074350] Error muxing a packet
[3gp @ 0xb40000789b073d70] fatal error, input is not a single packet,
implement a AVParser for it [out#0/3gp @ 0xb40000784b074350] Error writing
trailer: Operation not permitted
[out#0/3gp @ 0xb40000784b074350] video:27kB audio:2kB subtitle:0kB other
streams:0kB global headers:0kB muxing overhead: unknown
size= 0kB
time=00:00:01.18 bitrate= 1.1kbits/s speed= 296x
Conversion failed!
====
so, bug?
Not a bug, that patch was never merged because these codecs are not part
of the mp4 specification.
quote:
So are you saying that there is no official specification for AMR in
MP4, and these files are only compatible with your proprietary
software?
We generally require a proper specification to ensure we mux files that
work.
Following the conversation it is apparent that ffmpeg does support AMR,
but only in the containers that offer such support such as the MOV
container for quicktime.
Quote from the conversation for that patch:
"I resolved our issue with the MOV changes and now have H.264 / AMR-NB
and
H.264 / AMR-WB recording to MOV using non-patched FFmpeg. The former
plays
in both QuickTime and the Windows 10 'Movies & TV' app, video and audio.
The MOV containing AMR-WB plays video only in QuickTime and neither in
the
Windows 10 'Movies & TV' app. This is equivalent to the MP4 files we
record with our proposed patch."
So, use the right container! It should work for MOV containers. If it does not
then it could be a bug.
_______________________________________________
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email
ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".