Cmd FFmpeg无法识别目录I';我把它寄给

Cmd FFmpeg无法识别目录I';我把它寄给,cmd,ffmpeg,Cmd,Ffmpeg,我正在创建一个程序,它接收一个音频文件,将其分解为30秒的音频文件,并将这些文件发送到谷歌的语音识别API以转录音频。我使用FFmpeg分解原始音频文件,生成30秒的文件。它工作了大约20分钟,我没有做任何更改,但现在它给了我一个错误,说没有这样的文件或目录存在 下面是它给我的错误: C:\Users\hmkur\Desktop\Python\Transcribing_Audio_GoogleAPI_Python>ffmpeg -i source/valve.flac -f segment

我正在创建一个程序,它接收一个音频文件,将其分解为30秒的音频文件,并将这些文件发送到谷歌的语音识别API以转录音频。我使用FFmpeg分解原始音频文件,生成30秒的文件。它工作了大约20分钟,我没有做任何更改,但现在它给了我一个错误,说没有这样的文件或目录存在

下面是它给我的错误:

C:\Users\hmkur\Desktop\Python\Transcribing_Audio_GoogleAPI_Python>ffmpeg -i source/valve.flac -f segment -segment_time 30 -c copy parts/out%01d.flac
ffmpeg version 4.2.1 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 9.1.1 (GCC) 20190807
  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'source/valve.flac':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    encoder         : Lavf58.29.100
  Duration: 00:11:42.54, start: 0.000000, bitrate: 129 kb/s
    Stream #0:0(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : ISO Media file produced by Google Inc.
[segment @ 000001f8e84bd100] Opening 'parts/out0.flac' for writing
[segment @ 000001f8e84bd100] Failed to open segment 'parts/out0.flac'
Could not write header for output file #0 (incorrect codec parameters ?): No such file or directory
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
    Last message repeated 1 times

文件夹“source”和“valve.flac”都存在,文件夹“parts”和文件“out0.flac”也存在。我最初尝试的是wav文件格式,切换到flac,它工作了大约20分钟,然后停止工作。

你的源代码
valve.flac
实际上不是flac,所以你不能在这里使用
-c copy
。@Gyan为什么它实际上不是FLAC文件格式?你怎么知道这不是FLAC?当我查看这些文件的属性时,它说它们是.flac格式的。请参阅“source/valve.flac”中的行
Input#0、mov、mp4、m4a、3gp、3g2、mj2
。它属于MP4文件系列。@Gyan我如何使文件成为真正的flac或让ffmpeg将其识别为flac?生成源文件的应用程序必须正确命名文件。如果这超出了您的控制范围,请运行
ffprobe-show\u entries format=format\u name-v0-of compact=p=0:nk=1 yourfile.ext
。这将打印检测到的格式。检查它是否显示
flac
。如果有,请保留
-c copy
,否则将其删除。