React-Native FFmpeg-kit VideoCompress 命令不起作用

问题描述 投票:0回答:1

我正在使用 FFmpeg-kitReact-Native 套件

我想将 H264 编码为 HEVC。 但是ios中的Videotoolbox不起作用

我使用“ffmpeg-kit-react-native”:“^6.0.2” 这是我的代码

        // hevc_videotoolbox
        await FFmpegKit.execute(`-i ${videoUri} -c:v hevc_videotoolbox  -c:a aac -tag:v hvc1 -movflags +faststart -y ${outputUri}`);
      } else {
        await FFmpegKit.execute(`-i ${videoUri} -c:v hevc_omx -c:a aac -tag:v hvc1 -movflags +faststart -y ${outputUri}`);
      }

但是我得到了这样的错误

 LOG    libavutil      58.  2.100 / 58.  2.100
 LOG    libavcodec     60.  3.100 / 60.  3.100
 LOG    libavformat    60.  3.100 / 60.  3.100
 LOG    libavdevice    60.  1.100 / 60.  1.100
 LOG    libavfilter     9.  3.100 /  9.  3.100
 LOG    libswscale      7.  1.100 /  7.  1.100
 LOG    libswresample   4. 10.100 /  4. 10.100
 LOG  Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 
 LOG    Metadata:
 LOG      major_brand     :
 LOG  mp42
 LOG  
 LOG      minor_version   :
 LOG  1
 LOG  
 LOG      compatible_brands:
 LOG  isommp41mp42
 LOG  
 LOG      creation_time   :
 LOG  2024-08-29T02:42:24.000000Z
 LOG  
 LOG    Duration:
 LOG  00:00:23.10
 LOG  , start:
 LOG  0.000000
 LOG  , bitrate:
 LOG  1223 kb/s
 LOG  
 LOG    Stream #0:0
 LOG  [0x1]
 LOG  (und)
 LOG  : Video: h264 (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 640x360 [SAR 1:1 DAR 16:9], 1220 kb/s
 LOG  ,
 LOG  30 fps,
 LOG  30 tbr,
 LOG  600 tbn
 LOG   (default)
 LOG  
 LOG      Metadata:
 LOG        creation_time   :
 LOG  2024-08-29T02:42:24.000000Z
 LOG  
 LOG        handler_name    :
 LOG  Core Media Video
 LOG  
 LOG        vendor_id       :
 LOG  [0][0][0][0]
 LOG  
 LOG  Stream mapping:
 LOG    Stream #0:0 -> #0:0
 LOG   (h264 (native) -> hevc (hevc_videotoolbox))
 LOG  
 LOG  Press [q] to stop, [?] for help
 LOG  [hevc_videotoolbox @ 0x11af89120] Error encoding frame: -12905
 LOG  [hevc_videotoolbox @ 0x11af89120] popping: -542398533
 LOG  [vost#0:0/hevc_videotoolbox @ 0x11af88e50] Error initializing output stream: Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
 LOG  Conversion failed!

如何修复此错误?

我读了 堆栈溢出

  1. 打开输出流 #0.0 的编码器时出错 - 参数可能不正确,例如比特率、速率、宽度或高度

2.https://stackoverflow.com/questions/77734601/react-native-ffmpeg-having-unplayable-hevc-videos-that-still-have-audio

但该链接对我不起作用 我想在ios和android上使用react-native压缩视频以降低服务器成本

react-native ffmpeg android-ffmpeg video-compression
1个回答
0
投票

我有一个小问题,我正在尝试使用同一个包,但关于音频转换问题,当我尝试将带有 m4a 扩展名的文件转换为 mp3 时,它告诉我无法转换该文件,因为 getLogLevel 是null,我不知道如何解决它。

如果有人知道如何解决这个问题,我希望能及时回复。

© www.soinside.com 2019 - 2024. All rights reserved.