fix: wav format audio, #2317

This commit is contained in:
jialin
2025-07-16 13:06:01 +08:00
parent f4d6abace7
commit 14d60264c7
9 changed files with 68 additions and 24 deletions
@@ -2,7 +2,11 @@ import SimpleAudio from '@/components/audio-player/simple-audio';
import IconFont from '@/components/icon-font';
import UploadAudio from '@/components/upload-audio';
import HotKeys, { KeyMap } from '@/config/hotkeys';
import { convertFileToBase64, readAudioFile } from '@/utils/load-audio-file';
import {
audioTypeMap,
convertFileToBase64,
readAudioFile
} from '@/utils/load-audio-file';
import {
ClearOutlined,
CustomerServiceOutlined,
@@ -28,12 +32,6 @@ import '../style/message-input.less';
import ThumbImg from './thumb-img';
import UploadImg from './upload-img';
const audioTypeMap: Record<string, string> = {
'audio/wav': 'wav',
'audio/mp3': 'mp3',
'audio/mpeg': 'mp3'
};
const AudioWrapper = styled.div`
padding-block: 10px;
height: max-content;
@@ -303,7 +301,7 @@ const MessageInput: React.FC<MessageInputProps> = forwardRef(
try {
const base64Audio = await convertFileToBase64(data.file);
const audioData = await readAudioFile(data.file);
console.log('audioData====', message.imgs);
console.log('audioData====', audioData, message.imgs);
setMessage((pre) => {
return {
...pre,
@@ -421,6 +419,7 @@ const MessageInput: React.FC<MessageInputProps> = forwardRef(
)}
{actions.includes('upload') && message.role === Roles.User && (
<UploadAudio
maxFileSize={1024 * 1024}
type="text"
accept={'.mp3,.wav'}
size="middle"
@@ -1,6 +1,10 @@
import CopyButton from '@/components/copy-button';
import UploadAudio from '@/components/upload-audio';
import { convertFileToBase64, readAudioFile } from '@/utils/load-audio-file';
import {
audioTypeMap,
convertFileToBase64,
readAudioFile
} from '@/utils/load-audio-file';
import {
CustomerServiceOutlined,
EditOutlined,
@@ -18,12 +22,6 @@ import {
} from '../../config/types';
import UploadImg from '../upload-img';
const audioTypeMap: Record<string, string> = {
'audio/wav': 'wav',
'audio/mp3': 'mp3',
'audio/mpeg': 'mp3'
};
interface MessageActionsProps {
data: MessageItem;
actions: MessageItemAction[];
@@ -88,6 +86,7 @@ const MessageActions: React.FC<MessageActionsProps> = ({
{actions.includes('upload') && data.role === Roles.User && (
<UploadAudio
type="text"
maxFileSize={1024 * 1024}
accept={'.mp3,.wav'}
size="small"
shape="default"