byte, hex, int confusion with UART

I am trying to save the pictures taken by a camera board to save to an SD shield and came across a confusing part of the code that i’m not sure about and just need some clarification on.

void VC0706_compression_ratio(int ratio)
{
   if(ratio>63)ratio=63;
   if(ratio<13)ratio=13;
   int vc_comp_ratio=(ratio-13)*4+53;
   tx_vcbuffer[0]=VC0706_PROTOCOL_SIGN;
   tx_vcbuffer[1]=VC0706_SERIAL_NUMBER;
   tx_vcbuffer[2]=VC0706_COMMAND_WRITE_DATA;
   tx_vcbuffer[3]=0x05;
   tx_vcbuffer[4]=0x01;
   tx_vcbuffer[5]=0x01;
   tx_vcbuffer[6]=0x12;
   tx_vcbuffer[7]=0x04;
   tx_vcbuffer[8]=vc_comp_ratio;

   tx_counter=9;

   buffer_send();
}

VC0706_PROTOCOL_SIGN = 0x56, VC0706_SERIAL_NUMBER = 0x00, VC0706_COMMAND_WRITE_DATA = 0x31 were all defined earlier in the sketch and are also HEX numbers

The confusion comes in when all these HEX numbers are put into the global tx_vcbuffer all but the last go in as HEX?(i assume this because of how they are written). The last one though that goes into tx_vcbuffer[8] is an int, but does it get translated to HEX by the arduino? the camera IC only takes commands that are made up of different HEX combinations that get sent by the function buffer_send().

sorry if I didnt word this very clearly but any help would be greatly appreciated.

To the Arduino, they're all binary. Don't sweat it.

All numbers are stored in memory in binary. HEX is a representation of the binary number. 0x30, 48, and '0' are all the same in binary. Byte, int, long are data types. A byte is 8 bits, an int (for 8 bit AVR) is 16 bits and a long is 32 bits.

the camera IC only takes commands that are made up of different HEX combinations that get sent by the function buffer_send().

Is the camera expecting numbers or characters representing numbers ?

The camera board takes in different combinations of numbers, for example to tell the camera to reset the camera you would send it 0x56 0x00 0x26 0x00 Each of those just represents something different, 0x56 = tells camera to receive 0x00 = camera number since its the first and only one it 0x00 by default 0x26 = rest command 0x00 = amount or length in bytes of data to come after this which is none

'V' = tells camera to receive 0x00 = camera number since its the first and only one it 0x00 by default '&' = rest command