File vbrfix-fix-endianness.diff of Package vbrfix
Fix errors due to different endianness writing output files.
--- a/vbrfixc/vbrfix.cpp
+++ b/vbrfixc/vbrfix.cpp
@@ -15,6 +15,7 @@
* *
***************************************************************************/
#include "vbrfix.h"
+#include "arpa/inet.h"
//#include "stdafx.h"//include in mfc version
int getXHpos(int ver,int chan);
VbrFix::VbrFix(){
@@ -345,11 +346,12 @@
return false;
}
void VbrFix::revWrite(long n){
- unsigned char *fred;
- fred=(unsigned char*)&n;
- unsigned char t[4];
- t[0]=fred[3];t[1]=fred[2];t[2]=fred[1];t[3]=fred[0];
- outmp3.fWrite(t,4);
+ unsigned long t = htonl(n);
+// unsigned char *fred;
+// fred=(unsigned char*)&n;
+// unsigned char t[4];
+// t[0]=fred[3];t[1]=fred[2];t[2]=fred[1];t[3]=fred[0];
+ outmp3.fWrite(&t,4);
//fwrite(t,4,1,outmp3);
}
void VbrFix::writeVbrHeader(){