我想在flv文件中写下audiodata。
我发现flv中的视频标签结构为
Name Expression Description
codecID (byte & 0x0f) » 0 2: Sorensen H.263, 3: Screen video, 4: On2 VP6, 5: On2 VP6 Alpha, 6: ScreenVideo 2
frameType (byte & 0xf0) » 4 1: keyframe, 2: inter frame, 3: disposable inter frame
在flex代码中,它就是这样编写的
// VIDEODATA 'header'
v.writeByte(0x13); // frametype (1) + codecid (3)
那是什么意思?他们是否在十六进制值0X13中描述了frametype和codecid?
对于音频
soundType (byte & 0x01) » 0 0: mono, 1: stereo
soundSize (byte & 0x02) » 1 0: 8-bit, 1: 16-bit
soundRate (byte & 0x0C) » 2 0: 5.5 kHz, 1: 11 kHz, 2: 22 kHz, 3: 44 kHz
soundFormat (byte & 0xf0) » 4 0: Uncompressed, 1: ADPCM, 2: MP3, 5: Nellymoser 8kHz mono, 6: Nellymoser, 11: Speex
答案 0 :(得分:1)
是。 (byte & 0x0f) >> 0
表示codecID包含在byte
的低四位中(十六进制f =二进制1111)。同样,(byte & 0xf0) >> 4
表示frameType存储在byte
的高四位中。所以0x13中的1是帧类型(关键帧),3是codecID(屏幕视频)。